Wednesday, May 11, 2011

Programmer Myth

Myth: Programmers get to write code all day.

Truth: Most programmers spend a ton of time (in no particular order):

  • Carefully composing e-mails to other programmers/mailing lists/non-technical folks
  • Sitting in on meetings, working on mockups and DB schemas, worrying about performance implications of proposed features
  • Writing bug reports and searching through bug DBs
  • Supporting Production environment, scrambling to figure out why systems with numerous opaque layers are failing, digging through multi-GB log files with command line tools
  • Explaining downtime to users/higher ups
  • Contributing solutions to strangers’ problems
  • Reading documentation/books/programming blogs/release notes/vulnerability announcements
  • Searching for existing code that does what you want, maybe without knowing what that’s called
  • Installing, configuring, and testing a codebase then finding it won’t work for you
  • Googling error messages
  • Learning source control tools, bash, GNU utilities, and Linux file permissions (and/or the Windows equivalents)
  • Configuring IDEs, virtual machines, web servers, databases
  • Determining which tasks to prioritize from an endless supply