What lives here

Fifty short lessons, one unbroken chain: every page ends with a link to the next one, so you can read the course start to finish without ever wondering where to click. Each lesson teaches one idea with short Ruby examples, and the longer deep dives live on their own pages under Ruby:

  1. Start here: What is Ruby and where it runs — then follow the chain through lesson 50.
  2. Language core, lessons 2-20: install, irb, first script, variables, numbers, strings, symbols, truthiness, conditions, loops, arrays, hashes, ranges, methods, blocks, string tools, files, exceptions, mixins.
  3. Design and tooling, lessons 21-30: classes, inheritance, enumerables, idioms, gems, minitest, debugging, encodings, time, JSON and YAML.
  4. Networking and metaprogramming, lessons 31-43: HTTP clients, sockets, REST APIs, output, metaprogramming, enumerators, pattern matching, arguments, rake, environment, logging, CSV, ERB.
  5. Finish, lessons 44-50: WEBrick, Rails in one lesson, two capstones (todo CLI and JSON API), performance, modern Ruby tour, and the hero roadmap with every lesson on one page.

Course tree

Chapter 0: Install guides ├── Install Ruby on Windows 11 ├── Install Ruby on Ubuntu ├── Install Ruby on Rocky Linux ├── Install Ruby on macOS ├── Install Ruby on FreeBSD └── Ruby in Docker Chapter 1: First steps ├── 01 What is Ruby and where it runs ├── 02 Install Ruby and check the version ├── 03 irb: the interactive shell └── 04 Your first Ruby script Chapter 2: Core types and control flow ├── 05 Variables ├── 06 Numbers ├── 07 Strings ├── 08 Symbols ├── 09 Truthiness: only false and nil ├── 10 Conditions ├── 11 Loops ├── 12 Arrays ├── 13 Hashes └── 14 Ranges Chapter 3: Methods, blocks and IO ├── 15 Methods ├── 16 Blocks, procs, lambdas ├── 17 String tools ├── 18 Files and IO ├── 19 Exceptions └── 20 Modules and mixins Chapter 4: Objects and tooling ├── 21 Classes and objects ├── 22 Inheritance ├── 23 Enumerables ├── 24 Duck typing and core idioms ├── 25 Gems and Bundler ├── 26 Testing with Minitest ├── 27 Debugging ├── 28 Encodings ├── 29 Time and date └── 30 JSON and YAML Chapter 5: Networking and metaprogramming ├── 31 HTTP clients ├── 32 Sockets ├── 33 REST APIs ├── 34 puts, print and p ├── 35 Metaprogramming ├── 36 Enumerators ├── 37 Pattern matching ├── 38 Arguments: splats and kwargs ├── 39 Rake tasks ├── 40 Environment and CLI ├── 41 Logging ├── 42 CSV └── 43 ERB templates Chapter 6: Rails, capstones and finish ├── 44 WEBrick server ├── 45 Rails in one lesson ├── 46 Capstone: todo CLI ├── 47 Capstone: JSON API ├── 48 Performance ├── 49 Modern Ruby tour └── 50 Hero roadmap: the whole course on one page Bonus: Threads and fibers └── Threads and fibers

How to use this course

Type every example, do not just read it. Run each snippet with ruby or paste it into irb before moving on - the course assumes your hands remember lesson 4 by the time lesson 16 arrives.

The classic Ruby rules apply from day one: two-space indent, snake_case names, and parentheses omitted where they add no meaning.

Search this site

Channel @aofeed Chat @aofeedchat

Contacts and cooperation:
I recommend our hosting beget.ru
Write to info@urn.su, info@aredel.com if you:
1. Want to write an article for our site or translate an article into your native language.
2. Want to place thematically relevant ads on the site.
3. Ads on my site pass maximum censorship. If you see an ad block unsuitable for school-age children, shocking or misleading - please contact us by e-mail
4. Found a mistake, inaccuracy, bug, etc. on the site. ... .......
5. Articles can be shared on social media by clicking a network icon: