
Peopleware: Productive Projects and Teams, 3rd Edition.Hello, Startup: A Programmer's Guide to Building Products, Technologies, and Teams.Soft Skills: The Software Developer's Life Manual.Clean Code: A Handbook of Agile Software Craftsmanship.Code Complete: A Practical Handbook of Software Construction, 2nd Edition.The Mythical Man-Month: Essays on Software Engineering.The Pragmatic Programmer: your journey to mastery, 20th Anniversary Edition, 2nd Edition.Think Like a Programmer: An Introduction to Creative Problem Solving.Design Patterns: Elements of Reusable Object-Oriented Software (aka The Gang of Four).Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems by Martin Kleppmann.Discrete Mathematics with Applications, 4th Edition.Structure and Interpretation of Computer Programs, 2nd Edition (aka SICP, available for free on the MIT website).Grokking Algorithms: An Illustrated Guide for Programmers and Other Curious People.Essential Algorithms: A Practical Approach to Computer Algorithms Using Python and C#, 2nd Edition.Introduction to Algorithms, 3rd Edition (aka CLRS).Compilers: Principles, Techniques, and Tools, 2nd Edition (aka The Dragon Book).The New Turing Omnibus: Sixty-Six Excursions in Computer Science.Gödel, Escher, Bach: An Eternal Golden Braid.Code: The Hidden Language of Computer Hardware and Software.The Elements of Computing Systems: Building a Modern Computer from First Principles.But How Do It Know? - The Basic Principles of Computers for Everyone.Is Scott Young's blog on how he completed the entire 4 year MIT Computer Science curriculum in 12 monthsĮdit 4: The Rails Tutorial by Michael Hartl is the Bible for learning Ruby on RailsĮdit 5: For deeper knowledge of OOP check out Sandi Metz’s POODRĮdit 4: The Bible for C Programming: K&R and of course for anything under the sun: & įor x86 assembly: Įdit: Wow, my first Reddit Gold!! Thank-you so much kind people!!Įdit2: Colt Steele has a good web dev course and is highly recommended to do in parallel with freecodecamp R/arduino for some embedded programming fun! Open Source Society University: This is a solid path for those of you who want to complete a Computer Science course on your own time, for free, with courses from the best universities in the World. Learn Java OOP (here is an excellent course): Java MOOCīuild your own operating system: NAND2TETRISĬave of Programming : All kinds of programming Stackoverflow is your friend where you can ask any question you have or bounce ideas off of others. Check out CS50, and the sub r/cs50 has a lot of like minded people like you. The instructor, Dave Malan is world class. I'd start with Harvard's CS50 on edx, it's the best course you'll find anywhere bar none.
