Hacker News new | ask | show | jobs
by chewxy 4703 days ago
The fundamentals change very little, and very slowly (barring a revolution in the theory side of things).

I recently decided that my surface-skimming knowledge of lambda calculus was severely lacking, and so I picked up a few books. One of the better written books was written in 1981. That was 33 years ago. What changed 5 years ago to now, is essentially "sugar" on top of the fundamentals.

One thing I did notice, especially with the node.js crowd (essentially where the "rockstar" programmer meme gained its popularity), is that a lot of old things are being re-discovered.

While there may be very good arguments for re-implementing things, and re-learning things (and I do that quite a lot too), I personally do not think that re-solving the problem in the old way in a new language/framework/whatever is really worthy to be considered an achievement.

And I think that is essentially what is wrong with the whole "rockstar" programmer meme. Want to be a rockstar or ninja or guru? Go dust up some old book on algorithms, and reimplement it in the trendy language of the day.

1 comments

  > ... especially with the node.js crowd (essentially where 
  > the "rockstar" programmer meme gained its popularity)...
The rockstar programmer meme is far, far older than node.js. It crops up any time the labor market for programmers becomes tight. It's a lazy way to (a) try to draw attention to your job ad, and (b) a cheap play to the reader's ego.

  > I personally do not think that re-solving the problem in 
  > the old way in a new language/framework/whatever is 
  > really worthy to be considered an achievement.
Not an achievement for the world at large, perhaps, but for the individual, it is certainly an achievement.
> Not an achievement for the world at large, perhaps, but for the individual, it is certainly an achievement.

It's also a good method to learn a new language in a somewhat predictable way. One of the first things I do when learning a new language is port or use something I am already familiar with to it. That way I can concentrate on the language itself and not so much the problem the code solves.