Which books, courses, projects have improved your programming skills immensely?
Have you had any experience as a mediocre programmer where you coded mostly hit and miss style and then you did some project, read some book(s) or took some courses and you started to program like a scientific process and a mental model was formed and eventually became a good then a better programmer?
You started understanding programming languages much easier and better and were able to structure solutions in more elegantly and efficiently in code.
23 comments
[ 3.4 ms ] story [ 69.4 ms ] threadFree Udacity course by Peter Norvigs: https://www.udacity.com/course/design-of-computer-programs--...
Introduction to Algorithms (Thomas H. Cormen) : https://en.wikipedia.org/wiki/Introduction_to_Algorithms
The 'mental model and scientific process' has less to do with code alone, and more to do with the holistic act of working for a business. Development is just a part of it. Books will teach you best practices (and you should know best practices), but they won't teach you how to be an effective team-member, or cog in the business.
The extra learning that I do outside of work hours is all for me, keeping my skills up to date means that I've got a lot more options available if I need to move jobs.
You seems to have a certain inclinaison for scientific programming. I suppose it's in this area that you want to have better programming skill. The book that I heard a lot about is the following one (it's on my shelf) :
Some books are more generals and provide insightfull tips that I found quite helpfull : If you want improve you skill about a particular programm language, the best is learn every kog and what happend under the hood of you language. Books, Video, any things that will help in that direction, it depends of your choice . Usually it takes time to improve.There is many type of language and big difference inside those type : Scripting languages (python,bash,js...), compiled languages (c,c++,java,c#,...),... If you know different tools you are more likely to be able to use the right tools for the right jobs.
But the real advise is to be doing some real stuff : face real world problem
Take care !
MIT 6.824 Distributed Systems by Robert Morris - https://www.youtube.com/watch?v=cQP8WApzIQQ&list=PLrw6a1wE39...
Designing Data-Intensive Applications (DDIA) - https://dataintensive.net/
Crafting Interpreters - https://craftinginterpreters.com/
From my experience, a lot of devs who work in a full stack roles are stronger as backend devs but they have some basic understanding of how to build a frontend in one of the popular frameworks, such as React. If we are working with a good designer this is usually enough, but having a simple mental modal for how to make something look good really goes a long way. The way that this book was written gave me a good grasp of this by explaining it in a way similar to how I’d think about software (as opposed to being more vague and abstract, which a lot of design books aimed at designers tend to be).
Not programming skills related, but sometimes I read this blog in order to be more up-to-date: https://www.ratherlabs.com/blog
It's probably time to stop recommending Clean Code - https://qntm.org/clean
Long discussion at https://news.ycombinator.com/item?id=27276706
[1] https://fsharpforfunandprofit.com/
[2] https://fsharpforfunandprofit.com/series/designing-with-type...