Live data from Hacker News

Ask HN: How do you keep up with changing technologies?

news.ycombinator.com

31–38 of 38 posts

Re: Ask HN: How do you keep up with changing technologies?

#31
post #11

At the risk of being downvoted, I'd say to look at other stacks besides MS (esp. Linux, OS X, Iphone, Android). With the noted exception of Stackoverflow, most innovation in tech today does not involve MS.

A quick meta-tangent: "at the risk of being downvoted" adds little to the discussion in the best of times. "At the risk of being downvoted for criticizing Microsoft" adds little to the discussion and requires about as much courage as an American presidential candidate taking a principled stand strongly in favor of apple pie. A good portion of the innovation taking place these days is on the web, and the stacks at iss…

As for your quick meta tangent, I completely understand why the GP wrote that, it is quite normal for posts that even mention microsoft or one of their products, critically or in passing to get modded down.

http://news.ycombinator.com/item?id=944284

Re: Ask HN: How do you keep up with changing technologies?

#33
Well to answer your final point, there is never any absolute guarantee, but your best insurance against unemployment is to become really good at what you do. The second best is to make what you do be something commercially valuable. If you combine these two it's very unlikely you'll ever be unemployed for long.

Now to the first point. The most important part of learning is the process itself: ie learning the thing itself is less important than becoming good at learning. Once you have a sound grasp of the basics, the more diverse your curiosity and the deeper the insight you are able to gain into each specific technology, the easier it will be for you to pick up new ones. There's no excuse for ever becoming obsolete. Read widely, maintain your curiosity and keep learning.

Finally, the technologies you have picked may or may not be the way of the future. The future has a way of being unpredictable. Don't be so sure that you know what is going to happen that you close your eyes to what is actually happening.

Re: Ask HN: How do you keep up with changing technologies?

#35
I rarely have to force myself to step outside of my comfort zone, because it's not all that comforting to begin with. For many things I do, I keep thinking there must be a better way to do things -- sometimes a better way comes along and I'm satisfied for a year or so, but eventually you'll get to a point again where you get the feeling you've just written the same thing over and over, or where your project is slowly turning into an unmaintainable mess and you're looking for better ways to structure your application.

If the thing you're working on is modular enough, you should be able to use new technologies in new modules if it significantly improves any aspect of how you write code (maintainability, performance, time-to-market, etc..). You'll have to convince your team-members that using a new technology is worth it, but that's a good thing because you'll be more inclined to actually research the benefits of a new technology instead of just going with the latest fashion.

Re: Ask HN: How do you keep up with changing technologies?

#36
post #5

There are two facets to this question: what you can do as WesleyJohnson and what you can do within your organization. Your motivation is making sure WesleyJohnson has a job four years from now. Your organization's motivation is selling more $FOO at lower costs. You need to start identifying or creating happy synergies which align your organization's motivations with your personal motivations in terms of career growth…

A key component of my process was, after saving them a truckload or two of money, I would rigorously document what I did, how much we saved (metrics METRICS metrics), future places we could employ the technology/technique/whatever, etc

How do you generate the difference between the project that you got done with your method versus the project that wasn't done using a different method? Is it real cost of your way versus estimated cost of doing it the other way, are you re-writing a project that has already been written by a different team, or what? If the cost of the other way was an estimate, are the metrics trusted because you have a great track record with your estimates, or do you have some sort of estimate-aiding tools that your employer relies on and trusts?

Re: Ask HN: How do you keep up with changing technologies?

#37
I second the much mentioned idea of building timeless/technology independent skills. For example, use pure SQL as much as possible in your T-SQL procedures - this experience will transfer nicely to Postgres, Oracle, DB2, etc. Course, you'll have to convince employers that it transfers, but techies will know if you speak it or not.

Experiment with small pieces when you can. I'm working on learning a bit about REST programming with Ruby for a small web app/service I'm deploying at work. For someone who has been a back-end code guy, playing with the web frontend is . . . interesting.

Re: Ask HN: How do you keep up with changing technologies?

#38
I think it is incumbent on each of us, practitioners of this craft, to take responsibility for our own education in this field.

Vendors of software have an interest in what you learn, as it helps their products work better. And it can be useful to you as well. But if you rely on vendors to set your horizons, it won't necessarily work to your enlightened self interest.

Additionally, employers are not always going to have the same objective regarding what you learn. A medium or large company is interested in getting their projects done on a likely slipping schedule. They are not necessarily going to be aligned with your educational self-interest.

One defense against this is to see what other vendors are offering. If you are working on SQL Server learn what you can about how Oracle does things. If you are working in .net, learn a bit about Java (although that is not exactly a vendor-driven environment in the same way).

Another step is to look outside the vendor-influenced areas. Look at how things are done in the open source world. Understand some of the ideas behind the nosql movement. What is hadoop? memcached? For some of the technologies discussed on HN (which is certainly filled with talk of more recent technologies), dive into some of them a little. Expand your comfort zone.

If you have spent a lot of time in the OO world, check out some of the functional languages and why they might solve some problems more easily than the OO approach.

And perhaps find an interesting open source project and read lots of code.

I have been in the business several decades and am still learning new things constantly. While this sounds like a lot, perhaps develop a habit or routine of doing a little of this each day. If you have in your mind the goal of expanding your technical horizons, then you will see opportunities to learn.

Post reply on HN