3 ms·
In this business, if you don't re-tool every few years you run a high risk of becoming obsolete during what should be your golden years because that is just abo
by jakejake 15y ago
In this business, if you don't re-tool every few years you run a high risk of becoming obsolete during what should be your golden years because that is just about when whatever skills you learned in college may have totally phased out.
It is very easy to feel that you're at the top of the game when you just come out of school and you're learning the latest bleeding-edge software development techniques. You may look at the old dudes like myself and think that we don't know what's going on. But unless you win the lottery or hit the jackpot then you have to keep re-tooling every 3-4 years. You cannot allow yourself to coast for very long. Just think about this - all of the time you've invested in learning whatever it is that you are doing now - you will have to re-do that same amount of effort every few years. It is sad because I think of all the hours I spend programming pascal text-based airline reservation systems. But alas those times are gone, I take from it what I can and move on.
I've been in this for 20 years and it has consistently been about 3-4 years I have to totally re-learn some new skills in order to stay competitive. Even the past few months I've been in the trenches learning backbone.js, require.js, building html5 apps, mobile apps. This stuff didn't exist even 5 years ago, let alone when I came out of school! It's not a major problem for me because I love learning new stuff anyway, but I have seen other people drop out of the industry because they only started in it for the paycheck.
- sliverstorm 15y agoIt depends on what you do. If you are a low-level operating systems guy, it's C, C++, and VCS all the way down- perhaps with a few newer tools, like better debuggers, added to the mix slowly over the years.
- jakejake 15y ago100% agree. I have noticed that too. The lower you go on the stack the more stable things seem to be. Writing javascript at the client browser level is just insane - it feels like a new must-know framework comes out every month!
- tomjen3 15y agoI am not so sure. I too develop in Javascript and it seems to me that most of the patterns used were carried over from the gang of four (with a few updates, since Javascript is nominally a functional programming language) which is well known in the Java community, but was originally written for C++ (or smalltalk). So sure something have to change, but retooling does not take nearly as long as it took to learn to program in the first place.
- jakejake 15y agoYou definitely don't start from zero each time, that's true. I still use things that I learned when coding in Pascal. Concepts of linked lists, recursion, etc. But consider this - when I started programming there was no such thing as the web! There was no browser, no javascript. Yet I make my living right now developing for all of those technologies. I was thinking technology was stabilizing a bit, but then all of a sudden mobile comes along! It seems like every 5 years there's some major game-changer. You have to really love this industry to keep up!
- tomjen3 15y agoBut mobile programming isn't that different from desktop programming -- true you have a smaller screen and the APIs are a little different and you can't use the mouse but at the same time you use the same concepts you had on the desktop and the smart-phone is basically an old computer with a touch-screen and GPS...