1 option
Learn Ruby the Hard Way: : A Simple and Idiomatic Introduction to the Imaginative World of Computational Thinking with Code, Third Edition / Shaw, Zed.
- Format:
- Book
- Author/Creator:
- Shaw, Zed, author.
- Series:
- Zed Shaw's Hard Way
- Language:
- English
- Subjects (All):
- Ruby (Computer program language).
- Application software--Development.
- Application software.
- Physical Description:
- 1 online resource (336 pages)
- Edition:
- 1st edition
- Other Title:
- Simple and idiomatic introduction to the imaginative world of computational thinking with code
- Place of Publication:
- Addison-Wesley Professional, 2014.
- System Details:
- text file
- Summary:
- 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.
- Contents:
- Intro
- About This eBook
- Title Page
- Copyright Page
- Contents
- Preface
- Acknowledgments
- The Hard Way Is Easier
- Reading and Writing
- Attention to Detail
- Spotting Differences
- Do Not Copy-Paste
- Using the Included Videos
- A Note on Practice and Persistence
- A Warning for the Smarties
- Exercise 0. The Setup
- Mac OS X
- OS X: What You Should See
- Windows
- Windows: What You Should See
- Linux
- Linux: What You Should See
- Finding Things on the Internet
- Warnings for Beginners
- Exercise 1. A Good First Program
- What You Should See
- Study Drills
- Common Student Questions
- Exercise 2. Comments and Pound Characters
- Exercise 3. Numbers and Math
- Exercise 4. Variables and Names
- Exercise 5. More Variables and Printing
- Exercise 6. Strings and Text
- Common Student Question
- Exercise 7. More Printing
- Exercise 8. Printing, Printing
- Exercise 9. Printing, Printing, Printing
- Exercise 10. What Was That?
- Escape Sequences
- Exercise 11. Asking Questions
- Exercise 12. Prompting People for Numbers
- Exercise 13. Parameters, Unpacking, Variables
- Common Student Questions.
- Exercise 14. Prompting and Passing
- Exercise 15. Reading Files
- Exercise 16. Reading and Writing Files
- Exercise 17. More Files
- Exercise 18. Names, Variables, Code, Functions
- Exercise 19. Functions and Variables
- Exercise 20. Functions and Files
- Exercise 21. Functions Can Return Something
- Exercise 22. What Do You Know So Far?
- What You Are Learning
- Exercise 23. Read Some Code
- Exercise 24. More Practice
- Exercise 25. Even More Practice
- Exercise 26. Congratulations, Take a Test!
- Exercise 27. Memorizing Logic
- The Truth Terms
- The Truth Tables
- Exercise 28. Boolean Practice
- Exercise 29. What If
- Exercise 30. Else and If
- Exercise 31. Making Decisions
- Exercise 32. Loops and Arrays
- Exercise 33. While Loops
- Study Drills.
- Common Student Questions
- Exercise 34. Accessing Elements of Arrays
- Exercise 35. Branches and Functions
- Exercise 36. Designing and Debugging
- Rules for If-Statements
- Rules for Loops
- Tips for Debugging
- Homework
- Exercise 37. Symbol Review
- Keywords
- Data Types
- String Escape Sequences
- Operators
- Reading Code
- Exercise 38. Doing Things to Arrays
- What Arrays Can Do
- When to Use Arrays
- Exercise 39. Hashes, Oh Lovely Hashes
- A Hash Example
- What Hashes Can Do
- Making Your Own Hash Module
- The Code Description
- Three Levels of Arrays
- What You Should See (Again)
- When to Use Hashes or Arrays
- Exercise 40. Modules, Classes, and Objects
- Modules Are Like Hashes
- Classes Are Like Modules
- Objects Are Like Require
- Getting Things from Things
- A First Class Example
- Exercise 41. Learning to Speak Object Oriented
- Word Drills
- Phrase Drills
- Combined Drills
- A Reading Test
- Practice English to Code
- Reading More Code
- Exercise 42. Is-A, Has-A, Objects, and Classes
- How This Looks in Code
- Exercise 43. Basic Object-Oriented Analysis and Design
- The Analysis of a Simple Game Engine
- Write or Draw about the Problem
- Extract Key Concepts and Research Them
- Create a Class Hierarchy and Object Map for the Concepts
- Code the Classes and a Test to Run Them
- Repeat and Refine
- Top Down Versus Bottom Up
- The Code for "Gothons from Planet Percal #25"
- What You Should See.
- Study Drills
- Exercise 44. Inheritance Versus Composition
- What Is Inheritance?
- Implicit Inheritance
- Override Explicitly
- Alter Before or After
- All Three Combined
- Using super() with initialize
- Composition
- When to Use Inheritance or Composition
- Exercise 45. You Make a Game
- Evaluating Your Game
- Function Style
- Class Style
- Code Style
- Good Comments
- Evaluate Your Game
- Exercise 46. A Project Skeleton
- Creating the Skeleton Project Directory
- Final Directory Structure
- Testing Your Setup
- Using the Skeleton
- Required Quiz
- Exercise 47. Automated Testing
- Writing a Test Case
- Testing Guidelines
- Exercise 48. Advanced User Input
- Our Game Lexicon
- Breaking Up a Sentence
- Lexicon Tuples
- Scanning Input
- Exceptions and Numbers
- A Test First Challenge
- What You Should Test
- Exercise 49. Making Sentences
- Match and Peek
- The Sentence Grammar
- A Word on Exceptions
- The Parser Code
- Playing with the Parser
- Exercise 50. Your First Website
- Installing Sinatra
- Make a Simple "Hello World" Project
- What's Happening Here?
- Stopping and Reloading Sinatra
- Fixing Errors
- Create Basic Templates
- Exercise 51. Getting Input from a Browser
- How the Web Works
- How Forms Work
- Creating HTML Forms
- Creating a Layout Template
- Writing Automated Tests for Forms
- Exercise 52. The Start of Your Web Game
- Refactoring the Exercise 43 Game
- Sessions and Tracking Users
- Creating an Engine.
- Your Final Exam
- Next Steps
- How to Learn Any Programming Language
- Advice from an Old Programmer
- Appendix. Command Line Crash Course
- Introduction: Shut Up and Shell
- How to Use This Appendix
- You Will Be Memorizing Things
- The Setup
- Do This
- You Learned This
- Do More
- Paths, Folders, and Directories (pwd)
- If You Get Lost
- Make a Directory (mkdir)
- Change Directory (cd)
- List Directory (ls)
- Remove Directory (rmdir)
- Moving Around (pushd, popd)
- Making Empty Files (Touch, New-Item)
- Copy a File (cp)
- Moving a File (mv)
- View a File (less, MORE)
- Stream a File (cat)
- Removing a File (rm)
- Exiting Your Terminal (exit)
- Command Line Next Steps
- UNIX Bash References
- PowerShell References
- Index
- Where are the Companion Content Files?
- Code Snippets.
- Notes:
- Includes index.
- Online resource; Title from title page (viewed December 7, 2014)
- Description based on publisher supplied metadata and other sources.
- ISBN:
- 9780133135633
- 0133135632
- 9780133124484
- 0133124487
- OCLC:
- 897934088
The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.