Software engineers can lose themselves in solving difficult and abstract challenges. Here are 20 indicators that it's time to take a break.
by Alex Genadinik
Feb 9, 2011
As software engineers, we are often faced with difficult and abstract challenges. At times we can get quite carried away with solving our engineering problems and lose all track of time. This is my somewhat comical list of ways we can catch ourselves when we've been programming for too long.
You reverse camelback Irish names like mCcourt and mCdonalds.
You see yourself as the Moses of the "Mac or PC" debate, carrying around stone tablets with 10 reasons why your choice is the correct one. And most of the time you instigate the debates yourself just so you can quickly recite your reasons.
On family vacations, sea shells on the beach make you want to write your own UNIX shell -- better than the one you wrote after the previous family vacation -- and brag about it.
You impress the opposite sex by telling them you invented computers; and they actually believe you.
You impress young people by telling them how little RAM your computers had "back in the day" and how you were able to crunch so many formulas. They don't really understand you but always just nod to make you feel better.
You don't fear spiders, cockroaches, flies or bees. But P1 and P2 bugs give you nightmares.
After 20 years, you still don't understand what the "business guy" is talking about during company meetings. You use those meetings to load up on muffins.
When you overhear your coworkers debate whether it is better to use your allowed daily calories for beer or dessert, you think: "coffee, idiots."
Nothing makes you cringe more than hearing business guys talk about saving CPU cycles by implementing some versions of their half-baked architecture ideas.
Your work colleagues describe you as "very sweet when he is in a good mood" and the company fiscal calendar cycle coincides your elusive "good mood," which occurs quarterly.
You indicate how funny things are by adding an appropriate number of "ha's" to your default "haha" -- in typed and spoken languages. You switch to 'jajaja' when communicating laughter to people from other countries, hoping that it reads closer to their native language.
You once implemented four technical requirements in one game. (An old American TV show reference. Sorry for non-American audience).
On rare occasions when you hike outdoors, you consistently have to be rescued by helicopters because you don't really pay attention to warning messages on the trails since they are not actual errors.
The debate of whether "computers never do what you want them to do" and "computers do exactly what you tell them to do" has become your philosophical obsession and you are secretly writing a book on the topic.
You have a higher reputation on StackOverflow than Joel Spolsky and sell secrets for getting all the gold badges to other programmers.
Junior programmers at work are instructed not to bother you because you are doing something important, but no one really knows what it is (counting yourself on most days).
You have a poster of Joel Spolsky hanging over your bed and one of James Gosling stashed in the closet because you just can't get yourself to throw it away yet.
You do not know or really care about anyone else's job description in your company.
You find that newer languages just aren't made like they used to be and become nostalgic when you think back to those gigantic Java exception stack traces.
You now write code only in Shakespearean Iambic pentameter verse, 16 poetic lines of code at a time!
What signs make you realize that you'd better step away from the computer for a while? Tell us about them in the comments.
Alex Genadinik is a software engineer, SEO expert, and serial entrepreneur. He is currently working on a social site for hikers.