Tanda-tanda bahwa Anda bukan seorang programmer
The following may not have any remedies if you still suffer from them after taking a programming course in school, so you will stand a better chance of advancing your career by choosing another profession.
1. Inability to determine the order of program execution
Symptoms
a = 5
b = 10
a = b
print a
- You look at the code above and aren’t sure what number gets printed out at the end
Alternative careers
- Electrician
- Plumber
- Architect
- Civil engineer
2. Insufficient ability to think abstractly
Symptoms
- Difficulty comprehending the difference between objects and classes
- Difficulty implementing design patterns for your program
- Difficulty writing functions with low cohesion
- Incompetence with Regular Expressions
- Lisp is opaque to you
- Cannot fathom the Church-Turing Thesis
Alternative careers
- Contract negotiator
- Method actor
3. Collyer Brothers syndrome
Symptoms
- Unwilling to throw away anything, including garbage
- Unwilling to delete anything, be it code or comments
- The urge to build booby-traps for defense against trespassers
- Unwilling to communicate with other people
- Poor organization skills
Alternative careers
- Antique dealer
- Bag lady
4. Dysfunctional sense of causality
Symptoms
- You seriously consider malice to be a reason why the compiler rejects your program
- When called on to fix a bug in a deployed program, you try prayer
- You take hidden variables for granted and don’t think twice about blaming them for a program’s misbehavior
- You think the presence of code in a program will affect its runtime behavior, even if it is never invoked
- Your debugging repertoire includes rituals like shining your lucky golf ball, twisting your wedding ring, and tapping the nodding-dog toy on your monitor. And when the debugging doesn’t work, you think it might be because you missed one or didn’t do them in the right order
Alternative careers
- Playing the slot machines in Vegas
5. Indifference to outcomes
Programming could still be a hobby for you, but it would be in society’s best interests to defend itself against your entry into the world of professional software development.
Symptoms
- You aren’t interested in fixing a bug that can be worked around by rebooting the computer
- Your installation program silently deploys unsolicited third party programs that are unrelated to the function of yours *
- You don’t use any ergonomic model when designing user interfaces, nor do you have any interest in usability studies
- Your program exhibits pretension and grandeur beyond its utility, eg: displaying splash screens over active programs while loading in the background, or placing multiple launch icons in premium desktop locations *
- Your program produces output to be read by another (eg: a browser), or implements a network protocol, and relies on the other party’s software to be significantly tolerant to spec violations
- You write busy-wait loops even when the platform offers event-driven programming
- You don’t use managed languages and can’t be bothered to do bounds checking or input validation
- Your user interfaces do not make the difficulty of accidentally invoking a function proportionate to its destructiveness (eg: the “Delete Database” button is next to “Save”, just as big, has no confirmation step and no undo)
- You don’t use whitespace, indentation or comments
* – These are actually imposed by management more often than by the programmer, who only implements them. We’d still group them together for the sake of this self-test, though, and at the most suggest that one seek employment at a better firm, while the other goes back to business school to learn less destructive ways of making a profit.
Alternative careers
- Debt collection
- Telemarketing
Did you enjoy this post? Why not leave a comment below and continue the conversation, or subscribe to my feed and get articles like this delivered automatically each day to your feed reader.


No comments yet.
Leave a comment
Line and paragraph breaks automatic, e-mail address never displayed, HTML allowed:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>