Saturday, October 13, 2012

Computers are not for building your ego

With cheap cycles and core, terseness should not be an end in itself. Nowadays it's more important for a language to be convenient for humans than to be cheap for the computer.

New computer science majors are in constant competition. Students constantly assert that their code is better than all the rest: "I compressed my code to fewer lines. I created faster running code. I wrote my code in less time." These naive students take pride in being better than their peers, but are blind to see their own flaws. In their communion with the computer, new programmers neglect other humans.
The first neglected group is their fellow programmers. Programmers need to read, understand and maintain each others code. Code that is fast or sparse may be unreadable for these fellow programmers.
The second neglected group is their fellow classmates. In the constant battle of egos, students undermine each other by pitting success against failure when they ought to support and encourage each other.
The third neglected group is the end user. The goal of software is to serve humanity and not to build the programmer's ego. Computers are not for building your ego; computers are for building others.

2 comments:

  1. I agree that a lot more emphasis should be placed on writing readable code. It makes all the difference when making modifications.

    ReplyDelete
  2. But... but... my code IS the best!

    ReplyDelete