What I learnt pretending to be a programmer

  • 952
  • 13

It took me an Advanced Diploma and a Bachelor’s Degree in programming to work out that I’m actually a designer. My HECS bill makes me nauseous. However, observing programmers closely over the years has taught me one valuable thing.

“Being a programmer means committing yourself to a life of continued education. ” -frustrated software engineer

Nothing is linear about technological progression. Only 66 years seperated the Wright Brothers from the Moon landing. Da Vinci’s Ornithopter flying machine sketches were hundreds of years before that. Take that speed of advancement, put it on steroids, and you have a landscape that represents the internet. This looks good on graphs and presentations when pitching to investors, but it’s the cause of much angst between passionate programmers and their tools of choice. By the time they get really good at using a hammer, the hammer is a screwdriver.

The masses cry out when facebook rearranges a few buttons or widens a sidebar. They stop whinging after 10 minutes of self-training and then they’ve forgotten what the old layout looked like in the first place. Languages, frameworks, plugins and libraries are continuouesly maturing. Pretend they are teams; the players are software engineers. It’s very competitive and most of them think they are backing the winning horse.

My first (and current) office is a co-working space which happens to be the home of some of the world’s best rails developers. Rails is a modern web application framework that is characteristic by its ‘convention over configuration’ ideology. It’s referred to as oppinionated software. This means that the programmer only has to write new code for the areas in which their application differs from the standard. In theory, it allows the programmer to focus on solving the interesting problems instead of doing repetitive mundane crap. It’s not so much the benefits or drawbacks of the rails framework that interested me, it was the community.

They don’t teach rails at uni. So straight off the bat it eliminates that large segment of people inspired by the dot-com bubble to get IT degrees to earn good bucks. Java and .NET developers are a dime a dozen. Also the barrier to entry with learning rails is a little tricky. PHP by comparison is fairly easy to get up and running. Some view this in the negative, or as arrogant elitism. I tend to think the high barrier to entry is innocuous and unintentionally weeds out those who arn’t committed to their craft.

After frequently meeting lots of rails devs, you start to see the correlation between the demands to learn this discipline, and the personalities that are attracted to it. If I had only a few words to generalise them, it would be curious, determined, intelligent, and collaborators. They also tend to be musically inclined; as in, a lot of them play instruments. These traits mean that I see the community as a fellowship of full-time learners. These traits also breed entrepreneurialism, and it’s no surprise that Twitter, Groupon, Hulu, Github and Yammer all enjoyed early success on the back of the rails ethos.

9 tenths of the things I learned in my degree have little to do with what I do now. Apart from proving to my early employers that I could stick something out long term, the real value I gained from tertiary education was the ability to stay focused and quickly learn things. I love my job but it often requires arduous crash-course tutorials and monotonous reading.

Never underestimate the importance of your ability to self motivate and learn. Even the most exciting projects contain mind numbing tasks.

  • nacho10f

    “Java and .NET developers are a dime a dozen”

    huh?

    • http://peacock.st wernah

      There’s a lot of them around. I always get the impression that ruby/python developers are in such high demand. This is just an outsider observation though

      • Nicolas

        Well .NET/Java devs are in very high demand too… Post a CV on the net with one of thoses skills + associated frameworks and you’ll get dozens of interviews for a job. The salary is good too.

        Being a C#/Java dev you’ll have to work for most possible company in most domain and on big interresting projects.

        So that’s not that bad…

    • Darryl Parks

      Yeah this comment through me for a loop, “Java and .NET developers are a dime a dozen”.  Being in the Java field, I will admit there are a lot who claim to be Java developers.  I had a recruiter tell me a few months back that companies are searching nationwide looking for Java Developers, I too found it surprising how many companies were desperately looking.  Some of my thoughts were posted here: http://www.dzone.com/links/r/any_idiot_can_program.html

  • Pingback: Web development - Learning process | Pearltrees

  • http://www.omfgp.com rj

    I love this. I understand that adaptation skills will only help my value appreciate, but that only works after I’ve settled somewhere.

    Here’s what I would like to know:
    What skills increase your initial potential?
    What skills do I need to get my foot in the door?
    What do I need to know now so that I can start moving forward?

  • http://jordanarsenault.com Jordan Arseno

    Comparing Rails to PHP is like comparing apples to oranges. Try Rails to CodeIgniter, Cake, or Fuel.

  • http://twitter.com/iamhenrym/status/175277437234585602/ Henry Moran (@iamhenrym)

    “Being a programmer means committing yourself to a life of continued education. ” http://t.co/2nO8cwAm

  • http://peterchon.com peter

    Great read.

    Yes, discipline is key to everything.

  • http://clean-ruby.com Jim Gay

    Well said. The quote about committing to a life of continued education is spot on. There’s always something new to learn.

  • http://twitter.com/saturnflyer/status/175282055213621248/ Jim Gay (@saturnflyer)

    “@B4Some1Hears: Couple nice words about rails devs: http://t.co/CDEKkGGN

  • http://digitalhive.com.au Simon

    Jordan is spot on… Build a website from scratch in Ruby is comparative to PHP. Building a website in Rails is comparative to building a site in Zend2/Symfony2. Cake/Fuel/CI ewww :P

    Nice post though Wernah :) Any of the guys in inspire9 pushing up PHP 5.4 today? It’s damn fast!

    • http://peacock.st wernah

      I thought PHP was a more digestible term to those reading this article than listing a bunch of MVC frameworks. We’ve built a couple apps in CodeIgniter :)

  • Justin

    I’m one of the “dime a dozen” .NET dev’s and I am increasingly enjoying when I’m able to find the time to sit down for some well-thought design instead of pumping out the mass amounts of grey matter we are encouraged to produce. Luckily this mentality is increasingly well-regarded at my workplace. Thanks for the read.

  • http://rosaundlimone.de/2011/11/04/jedem-anfang-wohnt-ein-zauber-inne/ Jewel

    This is something I must do more research into, thanks for the article.

  • Pingback: Start your keyboards | voo-du (heg denu)

  • http://www.ymarket.org/calendar.php?s=f9587775b289ed01f265c56af9c43165&do=getinfo&day=2012-4-11&c=1 steam market

    I am no longer sure where you’re getting your info, but great topic. I must spend some time studying much more or figuring out more. Thanks for wonderful information I was looking for this information for my mission.

  • http://www.PACKRATCREATIONS.COM Hailey

    Good blogging!

  • Test

    How much you are worth is not what you should worry about. But worry about how much you’ve LEARNT about your craft.

    Do not worry about how good or bad your language is. But focus on yourself and the quality of your work. Measure the technique, not the language. Measure the solution, not the language. Quality…it’s the goal — nothing else.