Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
[flagged] Learn things that don't change (techworld-with-milan.com)
34 points by kugurerdem on May 22, 2024 | hide | past | favorite | 11 comments


Yes, the fundamentals don't change, but this blog is just affiliate link farming and the 40 (!) books it recommends includes a lot of non-fundamental rubbish.

Here's a much better list of around 7 books: https://teachyourselfcs.com/.


I remember feeling massively overwhelmed about what I should learn once I have some fundamentals down. I wanted to know and understand everything but that is impossible, so where do you start?

I decided I'd start with things immediately useful to me, so regex, SQL, Autohotkey (due to the software I was forced to use), then MS Access/Excel/VBA (because where I work these are still present) and then XML tech too.

I have also learn python and JavaScript because these are everywhere too. The only "out there" thing I've learned is dart/flutter because it seemed the path of least resistance to cross platform gui.

That being said I want to learn lisp, APL, and lua just for fun but I learn way better using something.


> Clean Code

> SOLID Principles

> OO Programming

> Design Patterns

What? No, no, no. Do not blindly take what someone on the Internet tells you are "things that don't change" and "things you absolutely must read/learn in 2024".

You will be potentially wasting a HUGE amount of time if you learn these things, unless you are dead set on becoming an enterprise Java developer.

This entire article seems like blog spam, isn't it just a way to make affiliate revenue from the books?


> You will be potentially wasting a HUGE amount of time if you learn these things,

Are you referring to the list you gave ? Because maybe with the exception of OO programming (which I still believe you should be aware of) I don't see the time wasted in knowing design patters and clean code ?


The premise of "design patterns" tend to be tightly coupled with the design of the language you are in, and most things called design patterns are specifically things that make sense in Java.


Many of the “design patterns” are antipatterns in other languages than Java.


Yeah, these books are outdated. A lot have changed.


We've got no idea what the future of the software industry looks like given the steamroller of generative AI that is working on the fundamentals. Someone at the stage of their career where these are new ideas should be weighing up the strategic risks of being in software at all.

Half this stuff I would just bounce off ChatGPT in the design phase for an opinion. Especially selecting the most appropriate algorithm; it has read a lot more of arxiv.org than I have.


While fundamentals are important to learn, there is also a huge benefit in learning specific tools and frameworks. There is no ”one size fits all” when it comes to software and more often than not, you need very customized solution for optimal performance. Moreover, learning to master a tool often means you are also able to improve it, which is part of the reason open-source tools usually improve with the loyal contributers!



Right, except everything is changing all the time.

Instead of sticking to the old things, learn to be flexible and adaptive.




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

Search: