SkillByAIOpen interactive version →

Ruby

Learn Ruby 3: objects, blocks and lambdas, Enumerable, modules and mixins, pattern matching, metaprogramming and DSLs, gems, RSpec, YJIT and Rails basics.

Start course →

What you'll learn

Syllabus

Getting Started with Ruby

  1. What Ruby Is and Why Developers Love It
  2. Installing Ruby, irb, Gems and Bundler
  3. Variables, nil, Strings and Symbols

Control Flow, Collections and Blocks

  1. Conditionals, case and Ranges
  2. Arrays, Hashes and Enumerable
  3. Blocks, yield, Procs and Lambdas

Objects, Classes and Modules

  1. Classes, Attributes and Initialisation
  2. Modules, Mixins and Namespaces
  3. Inheritance, Visibility, Struct and Data

Methods, Errors and Pattern Matching

  1. Method Arguments and Conventions
  2. Exceptions and Error Handling
  3. Pattern Matching with case/in

Dynamic Ruby and Metaprogramming

  1. Duck Typing, Open Classes and Refinements
  2. Metaprogramming: send, define_method and method_missing
  3. Blocks and DSLs

Files, Text and Concurrency

  1. Files, JSON, CSV and Time
  2. Strings, Regular Expressions and Encodings
  3. Threads, the GVL, Fibers and Ractors

Gems, Testing and Code Quality

  1. Creating and Publishing Gems
  2. Testing with RSpec and Minitest
  3. RuboCop, Types and Performance

Rails, Scripting, Idioms and Revision

  1. A First Look at Ruby on Rails
  2. Automation, Rake and Command-Line Tools
  3. Idiomatic Ruby and Common Pitfalls
  4. Revision and Interview Questions