Swedish developer Henrik Warne wrote a nice piece last week about his top 5 surprises when he started as a software developer, 20 or so years ago. It made me harken back to my beginnings as a developer around that same time (surprisingly, I hadn't repressed memories of that experience) and think about what surprised me back then. My list of top surprises would overlap some with Henrik’s, but not entirely.
I agree that the level of interaction required with other people was a bit of a surprise; I had the same expectation that programming was a solitary endeavor. While I wasn’t doing any pair programming or anything, there sure were lots of meetings (staff meetings, client meetings, meetings with my supervisor, etc.). Boy, if I only knew how many more meetings were in my future I might never have left school.
I was also surprised by the importance of writing to programmers; that is, with words, sentences and paragraphs, not code. I like to write, so I was glad to discover this. Yes, I even liked writing specs and documentation; I was not your average developer.
However, the other things that surprised Henrik wouldn’t make my list, mainly because my background was very different from his. I didn’t study programming or computer science in school. I was an accidental programmer; my background was in math, statistics and economics. So, I didn’t have any real expectations about whether software was ever done, or the types of data structures that would be used or how that would impact the complexity of the final product. I was a blank slate as a programmer at that point.
No, the other top surprises for me would have been more along the lines of:
* I have to be in the office every day during the week, from 9(ish) to 5(ish)? Recall, I’d spent the previous eight years as an undergrad or graduate student.
* I have to wear pants in the office every day during the week? See previous surprise.
* I get paid to come into the office every day during the week? This one was a pleasant surprise. Ok, not a really a surprise, but very pleasant.
What about you? What surprised you most when you started writing code for a living?