https://dataintensive.net/ I can't recommend this book enough. I have a CS background, and still had quite a few "I can't believe this thing has been hiding in plain sight!" moments while reading it.
Ask HN: What overlooked class of tools should a self-taught programmer look into
21–30 of 416 posts
Re: Ask HN: What overlooked class of tools should a self-taught programmer look into
#22The things you’ve learned were mostly covered in my computer science curriculum. So I am going to second Robin_messsage his message.
Skim through a CS curriculum.
Re: Ask HN: What overlooked class of tools should a self-taught programmer look into
#23Sometimes, having a limited toolset would better focus you on the problem at hand. Then, once the challenge is clarified, the search for alternative ways to architecture and implement it would become practical.
If just for fun of exploring something new, pick whatever interests you in general, language, framework, a domain. Async processing and idioms?
Re: Ask HN: What overlooked class of tools should a self-taught programmer look into
#24VSCode or PyCharm (assuming you are still a Python developer) could be a good place to start. I'm always surprised when I see professional developers coding in Sublime Text and debugging with print statements (or their equivalent). Usually you have better options than that, especially for statically-typed languages - but even for JS and Python.
Re: Ask HN: What overlooked class of tools should a self-taught programmer look into
#25https://dataintensive.net/ I can't recommend this book enough. I have a CS background, and still had quite a few "I can't believe this thing has been hiding in plain sight!" moments while reading it.
I'm now torn between reading this one first or the Architecture of Enterprise Applications.
Re: Ask HN: What overlooked class of tools should a self-taught programmer look into
#26Re: Ask HN: What overlooked class of tools should a self-taught programmer look into
#27Earlier quoted context omitted.
You think a self-taught programmer might never encounter SQL?
Speaking as a technical development manager, I can say that many people have far less than adequate exposure to SQL, and that training people to use SQL effectively and safely is all too often a common requirement before letting them loose on the database. There are so many ways people misunderstand and misuse SQL and relational databases, it's honestly staggering. So, I second the OP. Learn SQL, and you'll stand out…
Re: Ask HN: What overlooked class of tools should a self-taught programmer look into
#28Property based testing aren't quite formal methods, but I think they are a good stepping stone. And they also somewhat force your code into an algebraic/functional style which also make it amenable to refactoring, better testing and is easier to understand.
Design tools like Swagger can help one think through services w/o diving into code. Code itself is a liability and should be thought of as "spending" not creating. Code is a debt.
Refactoring and code understanding tools, if you use PyCharm (you should, it is free in all senses), learn how to navigate into your libraries. Read you libraries.
Re: Ask HN: What overlooked class of tools should a self-taught programmer look into
#29Re: Ask HN: What overlooked class of tools should a self-taught programmer look into
#30 - [1] https://interpreterbook.com
- [2] https://www.martinfowler.com/books/dsl.html