> One of the lovely things about being older is having the confidence to be able to be able to point out that the latest fad is just a warmed-over rehash of something old.
Sane advice. I'm 39, and I'm rather stunned to see 27yr olds calling themselves "old" and disillusioned with tech and what not ... let alone 17!
If you like to build things, hone your system level thinking .. which lasts longer than Angular/Backbone/whatever. (Heck I'm working with the intention of obsoleting them, based on old Smalltalk ideas!) If you like to build things the possibility of which average society has no idea of, hone your algorithmic thinking. I'm certainly more productive today than I was, say, a decade ago because I chose to focus on the ideas rather than specific tools during that time. I'm confident I can work with any tool at hand due to exactly what rayiner says. Good debugging skills, for example, don't die because you need to approach it scientifically.
rayiner - while you're right about the "if you know .." part, many companies today ask for specific skills and hirers don't know enough to say "we need guys to work on a Java code base, you know Smalltalk, you can handle it, hop onboard". So it is up to us tech folks who give these job specifications to hint at the broader kind of people we can accept.
With regards to your last point: it's also up to job seekers and employees to signal to organizations that they need to take professional development seriously. You have to fight the pressure to over-specialize and demand opportunities to learn new tools and techniques. There's a basic conflict of interest here between employer and employee: the employer wants a highly specialized cog they can replace when their needs change. The employee wants to develop a speciality, but also build a general base of skills and dabble in new technologies so he can stay employable for years down the road. Employees need to fight for their interest in this regard, and employers need to have the foresight to realize that the most talented people who have the most options will not take a job at a place that stifles their professional development.
I'm in my 50s, and I'm having a ton of fun with this new stuff.
After burning out at a startup that did everything in 68000 assembler (nice architecture...) in my 20s I'm getting back to dev work now and finding I still have aptitude and curiosity.
There is a lot happening. But the change has barely has started yet. I can see hints of new shapes coming over the horizon, and anyone who thinks they're going to be needing the same skills ten years from now is fooling themselves.
Imperative and functional styles have been around for decades already, it's true there's a lot of pointless reinvention (at worst) and refinement (at best) happening.
But very different things will start happening within the decade. IMO the fallout after the bootstrapping will be like nothing anyone has seen before.
The ability to think clearly and critically is certainly something I don't expect to be obsoleted in a decade. I do expect what I think about and think with to change though. Maintaining a curiosity about new ideas and how they relate to the old ones is a healthy trait to have that will help one survive such change.
Wolfram Language certainly looks like an interesting and somewhat new take on building systems using advanced computation. For those who're continuously curious about genuinely new ideas (not just rehashes) it will not be "nothing anyone has seen before" when it (whatever it is) finally happens. To them, it will be more like "hey, it's cool that this idea I've been dabbling with for the past 5 years is pretty powerful and feasible to use today, yippie!"
Minor ex: I had two Haskell "aha" moments - one around 1997 and one around 2000. The former was exposure to Haskore which offered a neat design that clearly illustrated the "separation of concerns" design principle. The second one was when I implemented an algorithm in Haskell in 4 hours and it worked like a charm and was more general than some C code for the same problem that I was hacking on for almost 2 weeks prior to that and which continued to be buggy. The language made a difference to how I thought about the problem, taking away many of the low level concerns. Back then, for the cases the C code worked, the Haskell code ran 60x slower. Today, Haskell is blazing fast compared to those years and pretty viable for just about anything. Yippie!
Sane advice. I'm 39, and I'm rather stunned to see 27yr olds calling themselves "old" and disillusioned with tech and what not ... let alone 17!
If you like to build things, hone your system level thinking .. which lasts longer than Angular/Backbone/whatever. (Heck I'm working with the intention of obsoleting them, based on old Smalltalk ideas!) If you like to build things the possibility of which average society has no idea of, hone your algorithmic thinking. I'm certainly more productive today than I was, say, a decade ago because I chose to focus on the ideas rather than specific tools during that time. I'm confident I can work with any tool at hand due to exactly what rayiner says. Good debugging skills, for example, don't die because you need to approach it scientifically.
rayiner - while you're right about the "if you know .." part, many companies today ask for specific skills and hirers don't know enough to say "we need guys to work on a Java code base, you know Smalltalk, you can handle it, hop onboard". So it is up to us tech folks who give these job specifications to hint at the broader kind of people we can accept.