All You Need to Know, and Nothing You Don't, About Core Tools for Software Development
Three of the core tools needed for modern software development are the Unix command line, a text editor, and version control with Git. But you don't need to learn "everything" about them, just how to use them efficiently to solve real problems. In Learn Enough Developer Tools to Be Dangerous, renowned instructor Michael Hartl teaches the specific concepts, skills, and approaches you need so you can learn to write apps, get hired, collaborate, and maybe even launch your own company.
Even if you've never used (or even heard of) these tools before, Hartl helps you quickly build technical sophistication and master the lore you need to succeed. Focused exercises help you internalize what matters, without wasting time on details pros don't care about. Soon, it'll be like you were born knowing this stuff--and you'll be suddenly, seriously dangerous.
Learn enough about . . . Running a terminal, entering and editing commands, and using man pages Manipulating and inspecting from basic copying to finding patterns Organizing files with directories Learning Minimum Viable Vim Basic and advanced editing techniques with editors like Atom and VS Code Using the human-readable Markdown language for writing quick documentation Formatting source code and writing executable scripts Getting started with Git and GitHub Using key Git commit, push, branch, merge, and more Collaborating on Git projects and resolving code conflicts Setting up dev macOS, Linux, Windows, and cloud Michael Hartl's Learn Enough series includes books and video courses that focus on the most important parts of each subject, so you don't have to learn everything to get started--you just have to learn enough to be dangerous and solve technical problems yourself.
Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.
I say this, because it is advanced topics, but basic knowledge in them. I really enjoyed it, and already knew a lot of this book, but it was good to get some new tips here-and-there.
Good introductory book to the most common tools used by devs.
The tools and concepts are thoroughly explained -- it is a book that clearly are written for absolute beginners who don't know basic things e.g. how to use git commit/push, how to exit vim, etc.
However, given how competitive the market has become for tech jobs, I would argue the tools mentioned in the book is now the bare minimum. These are definitely not enough to get you started in the tech industry, let alone to be "dangerous", whatever that might mean.
The better you know the basics, the more advanced you are.
Even as an experienced developer I picked up a few tidbits from this that I had somehow missed. I mostly bought it because I want something to give to my kids when they get a little older.
Very hands on. Covers just enough of the basics to point you in the right direction along with a lot of rabbitholes to go down if you are ambitious.
Covers: CLI, Text Editors (think VSCode, Atom, Sublime) and using Git (with a little GitHub thrown in).
This one is a demanding one. As the author promises you'll learn enough, but only if you can get through the book. And getting through is challenging, because it is - by design - incomplete at many points, and the reader is forced to develop what Michael Hart calls technical sophistication. If you really want to learn enough, this is the right way to start.