The 5 software development books that had the most significant impact on my software development career.
1. Expert C Programming by Peter van der Linden, opened my eyes to the nuances of the C programming language and really made me appreciated that even with such a relatively simple language (just 32 keywords at the time) there is a lot required to master a programming language. Whilst, I only wrote C for a few years the understanding I gained helped me find and appreciate C++.
2. Design Patterns by Erich Gamma et al., is the book the convinced me to learn C++. Up to then Object Oriented Programming as it had been explained to me just looked like adding unnecessary baggage to C. The argument that OOP enabled code re-use seemed suspect.
Design Patterns showed me how useful OOP could be, though like many who read it I immediately ran off and over-used Singleton. 🤷♂️
3. Extreme Programming by Kent Beck, completely changed by approach to software development. After a few years of waterfall and V-model development I felt there had to be a better way to build large software projects. Kent’s idea to turn all the dials up to ten on the things that worked resonated. I started pushing for XP in the organisations I worked with and continue to use pair programming, TDD, short-iterations and CI.
4. The Pragmatic Programmer by Andrew Hunt and David Thomas did for my day to day coding habits what Extreme Programming did for my software development process. It includes (in the first edition) 70 tips that make you a better programmer, things that should be obvious - find bugs once - but are often overlooked and some that might not be - crash early.
5. The Practice of Programming by Brian Kernighan and Rob Pike, as one review put it: “much of the book is 'common sense' it is of the kind that only 10% of programmers have after years of working and gallons of coffee”.
I’d love to add: Effective Concurrency by Herb Sutter to the list, if he ever writes it. In the meantime the articles, if you can still find them, are an excellent way to really understand concurrency and parallelism.
Over the weekend I tried out @supabase with Vue and i loved the experience. Created a video on YouTube showing how to setup Supabase with Vue3 and implementing some basic auth. I’m going to create a full course on this in the upcoming months.
https://t.co/Qda7xq4LpN
Subscribe!
Hello so I started a YouTube to create tech content. Starting out with shorts.Kindly like my first video and subscribe. Subscribe oo😅Thank you! #techjinja#programming#javascript
Youtube : https://t.co/9rbTz5KZDu
I absolutely hate extensions functions, and how it's turned into the only calling conventions because you get to dot complete.
This is the worst local maximum in the indistry
I had to implement something similar a few days back. A simple cli with argument parser inside __main__.py and call it like *python -m my-app --action restore*. This is a very useful tip you shared. 👍🏽
Wow!🥹
$1,340 raised (from 7 donations) out of $4,500!🥹
Big thanks to those who have helped the cause both with donations and retweets! We truly appreciate your generous support.🙏🏿
We still need $3,160 to fund 21 people to the @DeepIndaba🤲🏿
#DLIndaba2023
https://t.co/Kf7vE5cyDN
Rust in Action by @timClicks . I like it's hands on approach, so you are actively building something along with learning the intricacies of Rust. You will implement some data structures along the way.
Or there is one book which just discusses implementing linked lists in rust - https://t.co/Rq8EaZu8Bu