Let me paraphrase a popular sentence from Bible:
Let any programmer who is without sin be the first to throw a keyboard.
I’m sure that many keyboards would be thrown because many of us consider himself to be infallible and bulletproof. But is it right? Most of us don’t even realize our weaknesses and sins, but they are made every day.
Take a short moment to look at the list of programmer sins and take some longer time to consider them.
The following list of programmer sins was originally presented by Andrzej Staniszewski at conference Kariera IT in Gdańsk. Thank you, Andrzej for pointing this for us!
Each sin below is presented in following way:
0. Sin → Solution
7 programmer sins
1. I was thinking → I asked/consulted
Have you ever been working on some task given from e. g. your boss, for a long time, let’s say 3 days? And have sleepless nights thinking: „How this should be done?” And when boss saw your finished work, just said: „It’s completely wrong. You misunderstood me, I was thinking about something else!” I’m sure you have experienced the such or similar situation. And after all, you thought: „If I only ask for details…”
2. Individualist → Team
Quite similar to above. It is always better to consult team. Your teammate’s fresh point of view can improve your idea or bring new solutions. Don’t be such introvert, talk to other people.
3. Pride/confidence → Humility
Let’s assume you are working in your workplace for 20 years. You are good professional, very much appreciated by boss and coworkers. No one can do your job better than you. But you aren’t all-knowing person. Now you need to some task related to the area, which you are not familiar with. You know by chance, that there is some junior in your company, which specialize in that area. And now the scariest part – you should hide your pride into (big, for sure) box for a while and ask him for help, or although for advice.
4. Shame → Team, that I am part of
A good team should mobilize, not block. You can’t feel shame to express your opinions or to asking questions. Even for trivial things.
5. Rush → Well thought out
If you aren’t programmer from yesterday, you probably have at least one hotfix in your „portfolio”. You know that it will take revenge some day, in the worst possible moment. Take your time, think about solution three times, go for a 5-minute walk, return, think about it one more time. Now you are ready to do what you have to.
6. Works on my computer → Tested
Yeah, this one is a classic. Sometimes it is a result of our confidence (look at point 3). Any further comment is not needed.
7. Habits → Openness
People nature is to be afraid of everything new. New situations require from us learning new things and changing habits. The Very common approach is sticking with a weak job for years because of fear of stress generated by changing employer. Habits are basically not bad, but try to have only best of them. Always be open to new experiences.
Should I care?
How many of these sins apply to you? I’m sure at least one. Now, when you are aware of them, try to introduce the suggested solutions. I assure you that you’ll see the difference in a while. Your work will be easier, your coworkers, bosses, and clients will appreciate it.
Maybe you know some other programmer sins? If so, please share them in comments.