Learn Ruby the Hard Way
Home > Computing and Information Technology > Computer programming / software engineering > Web programming > Learn Ruby the Hard Way: A Simple and Idiomatic Introduction to the Imaginative World Of Computational Thinking with Code(Zed Shaw's Hard Way Series)
Learn Ruby the Hard Way: A Simple and Idiomatic Introduction to the Imaginative World Of Computational Thinking with Code(Zed Shaw's Hard Way Series)

Learn Ruby the Hard Way: A Simple and Idiomatic Introduction to the Imaginative World Of Computational Thinking with Code(Zed Shaw's Hard Way Series)


     0     
5
4
3
2
1



Out of Stock


Notify me when this book is in stock
X
About the Book

You Will Learn Ruby! Zed Shaw has perfected the world’s best system for learning Ruby. Follow it and you will succeed–just like the hundreds of thousands of beginners Zed has taught to date! You bring the discipline, commitment, and persistence; the author supplies everything else. In Learn Ruby the Hard Way, Third Edition, you’ll learn Ruby by working through 52 brilliantly crafted exercises. Read them. Type their code precisely. (No copying and pasting!) Fix your mistakes. Watch the programs run. As you do, you’ll learn how software works; what good programs look like; how to read, write, and think about code; and how to find and fix your mistakes using tricks professional programmers use. Most importantly, you’ll learn the following, which you need to start writing excellent Ruby software of your own: • Installing your Ruby environment • Organizing and writing code • Ruby symbols and keywords • Basic mathematics • Variables and printing • Strings and text • Interacting with users • Working with files • Using and creating functions • Looping and logic • Arrays and elements • Hashmaps • Program design • Object-oriented programming • Inheritance and composition • Modules, classes, and objects • Project “skeleton” directories • Debugging and automated testing • Advanced user input • Text processing • Basic game development • Basic web development It’ll Be Hard At First. But Soon, You’ll Just Get It–And That Will Feel Great! This tutorial will reward you for every minute you put into it. Soon, you’ll know one of the world’s most powerful, popular programming languages. You’ll be a Ruby programmer. Watch Zed, too! The accompanying DVD contains 5+ hours of passionate, powerful teaching: a complete Ruby video course! Zed Shaw is an avid guitar player, programmer, and writer whose books teach people all over the world how to write software. His book Learn Python the Hard Way has been read by millions of people around the world. His software has been used by many large and small companies. His essays are often quoted and read by members of many geek communities. He is an entertaining and lively writer, who is sure to keep you laughing and make you think.

Table of Contents:
Preface 1 Acknowledgments 1 The Hard Way Is Easier 2 Reading and Writing 2 Attention to Detail 2 Spotting Differences 3 Do Not Copy-Paste 3 Using the Included Videos 3 A Note on Practice and Persistence 3 A Warning for the Smarties 4 Exercise 0: The Setup 6 Mac OS X 6 Windows 7 Linux 8 Finding Things on the Internet 10 Warnings for Beginners 10 Exercise 1: A Good First Program 12 What You Should See 14 Study Drills 16 Common Student Questions 17 Exercise 2: Comments and Pound Characters 18 What You Should See 18 Study Drills 18 Common Student Questions 19 Exercise 3: Numbers and Math 20 What You Should See 21 Study Drills 21 Common Student Questions 22 Exercise 4: Variables and Names 24 What You Should See 25 Study Drills 25 Common Student Questions 25 Exercise 5: More Variables and Printing 28 What You Should See 28 Study Drills 29 Common Student Questions 29 Exercise 6: Strings and Text 30 What You Should See 31 Study Drills 31 Common Student Question 31 Exercise 7: More Printing 32 What You Should See 32 Study Drills 33 Common Student Questions 33 Exercise 8: Printing, Printing 34 What You Should See 34 Study Drills 35 Common Student Questions 35 Exercise 9: Printing, Printing, Printing 36 What You Should See 36 Study Drills 37 Common Student Questions 37 Exercise 10: What Was That? 38 What You Should See 39 Escape Sequences 39 Study Drills 40 Common Student Questions 40 Exercise 11: Asking Questions 42 What You Should See 42 Study Drills 43 Common Student Question 43 Exercise 12: Prompting People for Numbers 44 What You Should See 44 Study Drills 44 Exercise 13: Parameters, Unpacking, Variables 46 What You Should See 46 Study Drills 47 Common Student Questions 47 Exercise 14: Prompting and Passing 50 What You Should See 50 Study Drills 51 Common Student Questions 51 Exercise 15: Reading Files 52 What You Should See 53 Study Drills 53 Common Student Questions 54 Exercise 16: Reading and Writing Files 56 What You Should See 57 Study Drills 57 Common Student Questions 58 Exercise 17: More Files 60 What You Should See 60 Study Drills 61 Common Student Questions 61 Exercise 18: Names, Variables, Code, Functions 62 What You Should See 63 Study Drills 64 Common Student Questions 65 Exercise 19: Functions and Variables 66 What You Should See 67 Study Drills 67 Common Student Questions 67 Exercise 20: Functions and Files 70 What You Should See 71 Study Drills 71 Common Student Questions 71 Exercise 21: Functions Can Return Something 74 What You Should See 75 Study Drills 75 Common Student Questions 76 Exercise 22: What Do You Know So Far? 78 What You Are Learning 78 Exercise 23: Read Some Code 80 Exercise 24: More Practice 82 What You Should See 83 Study Drills 83 Common Student Questions 83 Exercise 25: Even More Practice 84 What You Should See 85 Study Drills 87 Common Student Questions 87 Exercise 26: Congratulations, Take a Test! 88 Common Student Questions 88 Exercise 27: Memorizing Logic 90 The Truth Terms 90 The Truth Tables 91 Common Student Question 92 Exercise 28: Boolean Practice 94 What You Should See 96 Study Drills 96 Common Student Questions 96 Exercise 29: What If 98 What You Should See 99 Study Drills 99 Common Student Question 99 Exercise 30: Else and If 100 What You Should See 101 Study Drills 101 Common Student Question 101 Exercise 31: Making Decisions 102 What You Should See 103 Study Drills 103 Common Student Questions 103 Exercise 32: Loops and Arrays 106 What You Should See 108 Study Drills 108 Common Student Questions 108 Exercise 33: While Loops 110 What You Should See 111 Study Drills 112 Common Student Questions 112 Exercise 34: Accessing Elements of Arrays 114 Study Drills 115 Exercise 35: Branches and Functions 116 What You Should See 118 Study Drills 118 Common Student Questions 118 Exercise 36: Designing and Debugging 120 Rules for If-Statements 120 Rules for Loops 120 Tips for Debugging 121 Homework 121 Exercise 37: Symbol Review 122 Keywords 122 Data Types 124 String Escape Sequences 124 Operators 125 Reading Code 126 Study Drills 126 Common Student Question 127 Exercise 38: Doing Things to Arrays 128 What You Should See 129 What Arrays Can Do 129 When to Use Arrays 130 Study Drills 131 Common Student Questions 131 Exercise 39: Hashes, Oh Lovely Hashes 132 A Hash Example 133 What You Should See 135 What Hashes Can Do 136 Making Your Own Hash Module 136 The Code Description 140 Three Levels of Arrays 142 What You Should See (Again) 142 When to Use Hashes or Arrays 143 Study Drills 143 Common Student Questions 144 Exercise 40: Modules, Classes, and Objects 146 Modules Are Like Hashes 146 What You Should See 151 Study Drills 151 Common Student Question 151 Exercise 41: Learning to Speak Object Oriented 152 Word Drills 152 Phrase Drills 152 Combined Drills 153 A Reading Test 153 Practice English to Code 156 Reading More Code 156 Common Student Questions 156 Exercise 42: Is-A, Has-A, Objects, and Classes 158 How This Looks in Code 159 Study Drills 161 Common Student Questions 161 Exercise 43: Basic Object-Oriented Analysis and Design 164 The Analysis of a Simple Game Engine 165 Top Down Versus Bottom Up 170 The Code for ”Gothons from Planet Percal #25” 170 What You Should See 176 Study Drills 177 Common Student Question 177 Exercise 44: Inheritance Versus Composition 178 What Is Inheritance? 178 Composition 183 When to Use Inheritance or Composition 185 Study Drills 186 Common Student Questions 186 Exercise 45: You Make a Game 188 Evaluating Your Game 188 Function Style 189 Class Style 189 Code Style 190 Good Comments 190 Evaluate Your Game 191 Exercise 46: A Project Skeleton 192 Creating the Skeleton Project Directory 192 Testing Your Setup 195 Using the Skeleton 195 Required Quiz 195 Common Student Questions 196 Exercise 47: Automated Testing 198 Writing a Test Case 198 Testing Guidelines 201 What You Should See 201 Study Drills 202 Common Student Questions 202 Exercise 48: Advanced User Input 204 Our Game Lexicon 204 A Test First Challenge 206 What You Should Test 207 Study Drills 209 Common Student Questions 210 Exercise 49: Making Sentences 212 Match and Peek 212 The Sentence Grammar 213 A Word on Exceptions 213 The Parser Code 213 Playing with the Parser 216 What You Should Test 217 Study Drills 217 Common Student Question 217 Exercise 50: Your First Website 218 Installing Sinatra 218 Make a Simple ”Hello World” Project 219 What’s Happening Here? 220 Stopping and Reloading Sinatra 221 Fixing Errors 221 Create Basic Templates 222 Study Drills 223 Common Student Questions 223 Exercise 51: Getting Input from a Browser 224 How the Web Works 224 How Forms Work 226 Creating HTML Forms 227 Creating a Layout Template 228 Writing Automated Tests for Forms 229 Study Drills 230 Common Student Question 231 Exercise 52: The Start of Your Web Game 232 Refactoring the Exercise 43 Game 232 Sessions and Tracking Users 237 Creating an Engine 238 Your Final Exam 240 Next Steps 242 How to Learn Any Programming Language 243 Advice from an Old Programmer 246 Appendix: Command Line Crash Course 249 Introduction: Shut Up and Shell 249 The Setup 251 Paths, Folders, and Directories (pwd) 254 If You Get Lost 256 Make a Directory (mkdir) 257 Change Directory (cd) 260 List Directory (ls) 264 Remove Directory (rmdir) 269 Moving Around (pushd, popd) 273 Making Empty Files (Touch, New-Item) 276 Copy a File (cp) 277 Moving a File (mv) 281 View a File (less, MORE) 283 Stream a File (cat) 285 Removing a File (rm) 286 Exiting Your Terminal (exit) 289 Command Line Next Steps 290 Index 291

About the Author :
Zed Shaw is an avid guitar player, programmer, and writer whose books teach people all over the world how to write software. His book Learn Python the Hard Way has been read by millions of people around the world. His software has been used by many large and small companies. His essays are often quoted and read by members of many geek communities. He is an entertaining and lively writer, who is sure to keep you laughing and make you think.


Best Sellers


Product Details
  • ISBN-13: 9780321884992
  • Publisher: Pearson Education (US)
  • Publisher Imprint: Addison-Wesley Educational Publishers Inc
  • Height: 233 mm
  • No of Pages: 336
  • Series Title: Zed Shaw's Hard Way Series
  • Sub Title: A Simple and Idiomatic Introduction to the Imaginative World Of Computational Thinking with Code
  • Width: 179 mm
  • ISBN-10: 032188499X
  • Publisher Date: 23 Dec 2014
  • Binding: SF
  • Language: English
  • Returnable: Y
  • Spine Width: 19 mm
  • Weight: 560 gr


Similar Products

Add Photo
Add Photo

Customer Reviews

REVIEWS      0     
Click Here To Be The First to Review this Product
Learn Ruby the Hard Way: A Simple and Idiomatic Introduction to the Imaginative World Of Computational Thinking with Code(Zed Shaw's Hard Way Series)
Pearson Education (US) -
Learn Ruby the Hard Way: A Simple and Idiomatic Introduction to the Imaginative World Of Computational Thinking with Code(Zed Shaw's Hard Way Series)
Writing guidlines
We want to publish your review, so please:
  • keep your review on the product. Review's that defame author's character will be rejected.
  • Keep your review focused on the product.
  • Avoid writing about customer service. contact us instead if you have issue requiring immediate attention.
  • Refrain from mentioning competitors or the specific price you paid for the product.
  • Do not include any personally identifiable information, such as full names.

Learn Ruby the Hard Way: A Simple and Idiomatic Introduction to the Imaginative World Of Computational Thinking with Code(Zed Shaw's Hard Way Series)

Required fields are marked with *

Review Title*
Review
    Add Photo Add up to 6 photos
    Would you recommend this product to a friend?
    Tag this Book Read more
    Does your review contain spoilers?
    What type of reader best describes you?
    I agree to the terms & conditions
    You may receive emails regarding this submission. Any emails will include the ability to opt-out of future communications.

    CUSTOMER RATINGS AND REVIEWS AND QUESTIONS AND ANSWERS TERMS OF USE

    These Terms of Use govern your conduct associated with the Customer Ratings and Reviews and/or Questions and Answers service offered by Bookswagon (the "CRR Service").


    By submitting any content to Bookswagon, you guarantee that:
    • You are the sole author and owner of the intellectual property rights in the content;
    • All "moral rights" that you may have in such content have been voluntarily waived by you;
    • All content that you post is accurate;
    • You are at least 13 years old;
    • Use of the content you supply does not violate these Terms of Use and will not cause injury to any person or entity.
    You further agree that you may not submit any content:
    • That is known by you to be false, inaccurate or misleading;
    • That infringes any third party's copyright, patent, trademark, trade secret or other proprietary rights or rights of publicity or privacy;
    • That violates any law, statute, ordinance or regulation (including, but not limited to, those governing, consumer protection, unfair competition, anti-discrimination or false advertising);
    • That is, or may reasonably be considered to be, defamatory, libelous, hateful, racially or religiously biased or offensive, unlawfully threatening or unlawfully harassing to any individual, partnership or corporation;
    • For which you were compensated or granted any consideration by any unapproved third party;
    • That includes any information that references other websites, addresses, email addresses, contact information or phone numbers;
    • That contains any computer viruses, worms or other potentially damaging computer programs or files.
    You agree to indemnify and hold Bookswagon (and its officers, directors, agents, subsidiaries, joint ventures, employees and third-party service providers, including but not limited to Bazaarvoice, Inc.), harmless from all claims, demands, and damages (actual and consequential) of every kind and nature, known and unknown including reasonable attorneys' fees, arising out of a breach of your representations and warranties set forth above, or your violation of any law or the rights of a third party.


    For any content that you submit, you grant Bookswagon a perpetual, irrevocable, royalty-free, transferable right and license to use, copy, modify, delete in its entirety, adapt, publish, translate, create derivative works from and/or sell, transfer, and/or distribute such content and/or incorporate such content into any form, medium or technology throughout the world without compensation to you. Additionally,  Bookswagon may transfer or share any personal information that you submit with its third-party service providers, including but not limited to Bazaarvoice, Inc. in accordance with  Privacy Policy


    All content that you submit may be used at Bookswagon's sole discretion. Bookswagon reserves the right to change, condense, withhold publication, remove or delete any content on Bookswagon's website that Bookswagon deems, in its sole discretion, to violate the content guidelines or any other provision of these Terms of Use.  Bookswagon does not guarantee that you will have any recourse through Bookswagon to edit or delete any content you have submitted. Ratings and written comments are generally posted within two to four business days. However, Bookswagon reserves the right to remove or to refuse to post any submission to the extent authorized by law. You acknowledge that you, not Bookswagon, are responsible for the contents of your submission. None of the content that you submit shall be subject to any obligation of confidence on the part of Bookswagon, its agents, subsidiaries, affiliates, partners or third party service providers (including but not limited to Bazaarvoice, Inc.)and their respective directors, officers and employees.

    Accept

    New Arrivals


    Inspired by your browsing history


    Your review has been submitted!

    You've already reviewed this product!