{"product_id":"learn-enough-developer-tools-to-be-dangerous-9780137843459","title":"Learn Enough Developer Tools to Be Dangerous","description":"\u003cb\u003eBook Synopsis\u003c\/b\u003e\u003cbr\u003e\u003cb\u003eMichael Hartl\u003c\/b\u003e created the legendary \u003ci\u003eRuby on Rails Tutorial\u003c\/i\u003e that helped jumpstart thousands of web development careers. A cofounder and principal author at Learn Enough, Hartl previously earned a Ph.D. in physics at the California Institute of Technology (Caltech), where he received a Lifetime Achievement Award for Excellence in Teaching. He is also an alumnus of Harvard University and the world-renowned Y Combinator entrepreneur program.\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTrade Review\u003c\/b\u003e\u003cbr\u003e\u003cb\u003ePraise for Learn Enough Tutorials\u003c\/b\u003e \u003cbr\u003e \u003cbr\u003e\"Going through \u003ci\u003eLearn Enough Git\u003c\/i\u003e is wonderful. I am actually learning. . .  I've done three other Git tutorials and still felt so lost. Doing it all now makes so much sense. It's like a light bulb.\" \u003cbr\u003e--Janelle Staar \u003cbr\u003e \u003cbr\u003e\"I bought the \u003ci\u003eLearn Enough Command Line to Be Dangerous\u003c\/i\u003e last fall, and it's paid off sooooo many times in my new job. During my first week, I had a manager sitting right beside me giving me the 'go here, go there, do this, etc.' Having watched, read, and done the exercises, I was confident in getting around the CLI [command-line interface]--and even had him asking, 'What was that shortcut?' For this, I thank you. Now I need a 'Learn even more CLI to be dangerouser.'\" \u003cbr\u003e--Thomas Thackery \u003cbr\u003e \u003cbr\u003e\"I must say, this Learn Enough series is a masterpiece of education. Thank you for this incredible work!\" \u003cbr\u003e--Michael King \u003cbr\u003e \u003cbr\u003e\"I want to thank you for the amazing job you have done with the tutorials. They are likely the best tutorials I have ever read.\" \u003cbr\u003e--Pedro Iatzky\u003cbr\u003e\u003cbr\u003e\u003cb\u003eTable of Contents\u003c\/b\u003e\u003cbr\u003e\u003ci\u003ePreface xiii\u003c\/i\u003e \u003cbr\u003e \u003ci\u003eAbout the Author xix\u003c\/i\u003e \u003cbr\u003e \u003cbr\u003e \u003cb\u003ePart I: Command Line 1\u003c\/b\u003e \u003cbr\u003e \u003cbr\u003e \u003cb\u003eChapter 1: Basics 3\u003c\/b\u003e \u003cbr\u003e1.1 Introduction 5 \u003cbr\u003e1.2 Running a Terminal 6 \u003cbr\u003e1.3 Our First Command 10 \u003cbr\u003e1.4 Man Pages 15 \u003cbr\u003e1.5 Editing the Line 20 \u003cbr\u003e1.6 Cleaning Up 23 \u003cbr\u003e1.7 Summary 24 \u003cbr\u003e \u003cbr\u003e \u003cb\u003eChapter 2: Manipulating Files 25\u003c\/b\u003e \u003cbr\u003e2.1 Redirecting and Appending 26 \u003cbr\u003e2.2 Listing 30 \u003cbr\u003e2.3 Renaming, Copying, Deleting 35 \u003cbr\u003e2.4 Summary 40 \u003cbr\u003e \u003cbr\u003e \u003cb\u003eChapter 3: Inspecting Files 43\u003c\/b\u003e \u003cbr\u003e3.1 Downloading a File 43 \u003cbr\u003e3.2 Making Heads and Tails of It 46 \u003cbr\u003e3.3 Less Is More 49 \u003cbr\u003e3.4 Grepping 52 \u003cbr\u003e3.5 Summary 58 \u003cbr\u003e \u003cbr\u003e \u003cb\u003eChapter 4: Directories 61\u003c\/b\u003e \u003cbr\u003e4.1 Directory Structure 61 \u003cbr\u003e4.2 Making Directories 64 \u003cbr\u003e4.3 Navigating Directories 66 \u003cbr\u003e4.4 Renaming, Copying, and Deleting Directories 70 \u003cbr\u003e4.5 Summary 74 \u003cbr\u003e4.6 Conclusion 75 \u003cbr\u003e \u003cbr\u003e \u003cb\u003ePart II: Text Editor 77\u003c\/b\u003e \u003cbr\u003e \u003cbr\u003e \u003cb\u003eChapter 5: Introduction to Text Editors 79\u003c\/b\u003e \u003cbr\u003e5.1 Minimum Viable Vim 84 \u003cbr\u003e5.2 Starting Vim 85 \u003cbr\u003e5.3 Editing Small Files 89 \u003cbr\u003e5.4 Saving and Quitting Files 91 \u003cbr\u003e5.5 Deleting Content 96 \u003cbr\u003e5.6 Editing Large Files 97 \u003cbr\u003e5.7 Summary 101 \u003cbr\u003e \u003cbr\u003e \u003cb\u003eChapter 6: Modern Text Editors 103\u003c\/b\u003e \u003cbr\u003e6.1 Choosing a Text Editor 104 \u003cbr\u003e6.2 Opening 106 \u003cbr\u003e6.3 Moving 117 \u003cbr\u003e6.4 Selecting Text 119 \u003cbr\u003e6.5 Cut, Copy, Paste 127 \u003cbr\u003e6.6 Deleting and Undoing 132 \u003cbr\u003e6.7 Saving 135 \u003cbr\u003e6.8 Finding and Replacing 138 \u003cbr\u003e6.9 Summary 143 \u003cbr\u003e \u003cbr\u003e \u003cb\u003eChapter 7: Advanced Text Editing 145\u003c\/b\u003e \u003cbr\u003e7.1 Autocomplete and Tab Triggers 145 \u003cbr\u003e7.2 Writing Source Code 152 \u003cbr\u003e7.3 Writing an Executable Script 166 \u003cbr\u003e7.4 Editing Projects 175 \u003cbr\u003e7.5 Customization 188 \u003cbr\u003e7.6 Summary 191 \u003cbr\u003e7.7 Conclusion 193 \u003cbr\u003e \u003cbr\u003e \u003cb\u003ePart III: Git 195\u003c\/b\u003e \u003cbr\u003e \u003cbr\u003e \u003cb\u003eChapter 8: Getting Started with Git 197\u003c\/b\u003e \u003cbr\u003e8.1 Installation and Setup 200 \u003cbr\u003e8.2 Initializing the Repo 203 \u003cbr\u003e8.3 Our First Commit 204 \u003cbr\u003e8.4 Viewing the Diff 208 \u003cbr\u003e8.5 Adding an HTML Tag 210 \u003cbr\u003e8.6 Adding HTML Structure 216 \u003cbr\u003e8.7 Summary 220 \u003cbr\u003e \u003cbr\u003e \u003cb\u003eChapter 9: Backing Up and Sharing 221\u003c\/b\u003e \u003cbr\u003e9.1 Signing Up for GitHub 221 \u003cbr\u003e9.2 Remote Repo 222 \u003cbr\u003e9.3 Adding a README 227 \u003cbr\u003e9.4 Summary 234 \u003cbr\u003e \u003cbr\u003e \u003cb\u003eChapter 10: Intermediate Workflow 235\u003c\/b\u003e \u003cbr\u003e10.1 Commit, Push, Repeat 235 \u003cbr\u003e10.2 Ignoring Files 241 \u003cbr\u003e10.3 Branching and Merging 243 \u003cbr\u003e10.4 Recovering from Errors 252 \u003cbr\u003e10.5 Summary 258 \u003cbr\u003e \u003cbr\u003e \u003cb\u003eChapter 11: Collaborating 259\u003c\/b\u003e \u003cbr\u003e11.1 Clone, Push, Pull 260 \u003cbr\u003e11.2 Pulling and Merge Conflicts 269 \u003cbr\u003e11.3 Pushing Branches 283 \u003cbr\u003e11.4 A Surprise Bonus 292 \u003cbr\u003e11.5 Summary 295 \u003cbr\u003e11.6 Advanced Setup 296 \u003cbr\u003e11.7 Conclusion 302 \u003cbr\u003e \u003cbr\u003e \u003cb\u003eAppendix: Development Environment 305\u003c\/b\u003e \u003cbr\u003eA.1 Dev Environment Options 306 \u003cbr\u003eA.2 Cloud IDE 307 \u003cbr\u003eA.3 Native OS Setup 312 \u003cbr\u003eA.4 Conclusion 322 \u003cbr\u003e \u003cbr\u003e \u003ci\u003eIndex 323\u003c\/i\u003e","brand":"Pearson Education (US)","offers":[{"title":"Default Title","offer_id":48864176341335,"sku":"9780137843459","price":23.99,"currency_code":"GBP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0817\/1739\/5799\/files\/9780137843459.jpg?v=1722270749","url":"https:\/\/bookcurl.com\/products\/learn-enough-developer-tools-to-be-dangerous-9780137843459","provider":"Book Curl","version":"1.0","type":"link"}