Mark B. – tech

Signs that you shouldn’t be a 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

  1. You look at the code above and aren’t sure what number gets printed out at the end

Alternative careers

  1. Electrician
  2. Plumber
  3. Architect
  4. Civil engineer
  5. Artist

2. Insufficient ability to think abstractly

Symptoms

  1. Difficulty comprehending the difference between objects and classes
  2. Difficulty implementing design patterns for your program
  3. Difficulty writing functions with low cohesion
  4. Incompetence with Regular Expressions
  5. Lisp is opaque to you
  6. Cannot fathom the Church-Turing Thesis

Alternative careers

  1. Contract negotiator
  2. Method actor

3. Collyer Brothers syndrome

Symptoms

  1. Unwilling to throw away anything, including garbage
  2. Unwilling to delete anything, be it code or comments
  3. The urge to build booby-traps for defense against trespassers
  4. Unwilling to communicate with other people
  5. Poor organization skills

Alternative careers

  1. Antique dealer
  2. Bag lady

4. Dysfunctional sense of causality

Symptoms

  1. You seriously consider malice to be a reason why the compiler rejects your program
  2. When called on to fix a bug in a deployed program, you try prayer
  3. You take hidden variables for granted and don’t think twice about blaming them for a program’s misbehavior
  4. You think the presence of code in a program will affect its runtime behavior, even if it is never invoked *
  5. 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

* – Memory constraints, shifted offsets, and compiler peculiarities notwithstanding. See discussion on Reddit. Judge accordingly.

Alternative careers

  1. Playing the slot machines in Vegas

Contrapositives

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

  1. You aren’t interested in fixing a bug that can be worked around by rebooting the computer
  2. Your installation program silently deploys unsolicited third party programs that are unrelated to the function of yours *
  3. You don’t use any ergonomic model when designing user interfaces, nor do you have any interest in usability studies
  4. 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 *
  5. 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
  6. You write busy-wait loops even when the platform offers event-driven programming
  7. You don’t use managed languages and can’t be bothered to do bounds checking or input validation
  8. 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)
  9. 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

  1. Debt collection
  2. Telemarketing

 

Source : Software Engineering Tips

Advertisements
This entry was published on November 2, 2011 at 5:39 am and is filed under IT, News / Headlines / Update. Bookmark the permalink. Follow any comments here with the RSS feed for this post.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: