Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Are you telling me that new shiny things are not always better that established, time tested and boring tech?

Sometimes I feel like we software engineers have the worst memory of any engineers.



I don’t even think it’s memory, it’s lack of experience. A lot of the battle-tested infrastructure is now abstracted away to the point that a lot of devs are hard-pressed to explain the difference between AWS’ ALB and NLB, much less name OSS versions of them.

Actually, load balancers are a great example. The number of times I’ve seen a team re-implementing HAProxy, but poorly, is entirely too high. The reasoning is always something along the lines of “we need this extremely specific feature.” OK, and have you even read the manual for HAProxy? Or if that feature truly doesn’t exist, did you consider implementing that separately?


True, the only right answer for a question like "Should we use X here?" is "It depends". Maybe NIH is the right answer in some specific case but not on another that seems quite similar to the first.

Some months ago I was re-enlightened when Anders Hejlsberg (creator of C# and TypeScript) explained why they chose Go for reimplementing the TypeScript compiler, instead of using any of those languages or something like Rust.

The way they defined the problem, the tests they did and how they justify their pick is how these kind of decisions should be made if we want to call ourselves engineers.


Kelsey Hightower gave an interesting talk on this - why understanding fundamentals will always matter more than the recent shiny new trend:

https://youtu.be/Jlqzy02k6B8




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: