Get a head start in a rapidly growing industry with help from a Silicon Valley insider
Computer science is one of the fastest growing industries in the world and shows no signs of slowing down. In The Self-Taught Computer Scientist: The Beginner's Guide to Computer Science, expert programmer and author Cory Althoff shows you the hands-on exercises, stories, and examples, you need to help you become a successful computer scientist.
You'll discover how to:
Understand computer science fundamentals, including how memory and compilers work, how the TCP/IP stack works, and how to pass a technical job interview Use data structures and algorithms, both of which are essential to a successful programming career Write your first programs in Python, an easy-to-use programming language ideal for beginners Perfect for self-taught programmers everywhere, The Self-Taught Computer Scientist will help you get up to speed and ready for a job in computer science whether you're brand new to coding or you've already learned a language or two.
As a self-taught programmer, I have dedicated a significant amount of time to studying courses, tutorials, and learning new languages and frameworks that proved beneficial for my projects. Initially, I felt competent as I was able to complete relevant projects. I also delved into computer science books, believing that I had a strong grasp of fundamental computer science skills and concepts. However, reading this book exposed the gaps in my knowledge, making me realize my weaknesses and motivating me to address them. Now, after gaining a much clearer understanding of algorithms and data structures, I feel significantly more confident in coding my projects. I can quickly assess the efficiency of the programs I write and identify areas for improvement. For self-taught programmers, this book is highly valuable as it imparts crucial concepts and brings structure to the otherwise unstructured material you might have learned in the past.
While there were a couple of typos that made some code snippets harder to understand, overall, the book was very informative. Python is used throughout the book but it did not overshadow the main theme like it did in the author's previous book "The Self-Taught Programmer". The author discussed big O notation, fundamental search and sort algorithms and data structures up to trees and graphs in a clear and concise manner. Many code snippets were provided along with explanations. I liked the recommendations for studying more advanced computer science topics. The book is useful for beginner programmers and as a refresher for those who haven't studied the topics in a while.
The book seems to be over-hyped by so many self-taught Python coders who think they learned computer science by reading it. Surprise, they learned almost nothing. The definitions in the book are vague, most algorithms are simply mentioned with little or no explanation and their implementations rely on many high-level features of Python programming language. As a result, a way more fitting title for the book would be "The Basics of CS for the Self-Taught Python coder". It won't teach you computer science, but rather just create an illusion that you've learned something.