Ruby29 phases · 114 topics
Progress
0 / 114
Foundations
Open Classes & Monkey Patching
method_missing & respond_to_missing?
define_method & Dynamic Definition
Core Concepts
Class Evaluation (class_eval, instance_eval)
Constant Lookup & Const_missing
Hook Methods (inherited, included, extended)
Intermediate Skills
DSL Building with instance_eval & block context
Binding & eval Context Manipulation
Block, Proc, Lambda Differences
Advanced Topics
Closures & Binding Capture
Symbol#to_proc & & Operator
Block Scope & Local Variables
Expert Level
Currying with Procs
Enumerable with Blocks
Block-Local Variables (Block Arguments)
Mastery
Module Include vs Prepend vs Extend
Module nesting & self
Method Resolution Order (MRO)
Ecosystem
Concern Pattern (ActiveSupport)
Namespace as Module
Module#ancestors & Lookup Path
Architecture
Autoloading with Zeitwerk
Refinement Scope & Activation
Refine vs Monkey Patch
Optimization
Refinement Inheritance
using Method & Scope Control
Refining Core Classes Safely
Deployment
Refinement & method_missing
Refinement Limitations
GC Generations (RGenGC)
Phase 11
Mark & Sweep Phases
Write Barriers
ObjectSpace & T_MASK
Phase 12
Memory Leak Detection (objspace)
GC Tuning Parameters
Reference Counted Objects (T_DATA, T_FILE)
Phase 13
Thread Basics & GVL
Mutex & ConditionVariable
Fiber & Cooperative Scheduling
Phase 14
Ractor (Ruby 3.0+)
Ractor Message Passing (send, receive)
Shareable vs Unshareable Values
Phase 15
Concurrent Ruby (ThreadPool, Future)
Ruby C API (VALUE, rb_define_method)
Creating Extension with extconf.rb
Phase 16
Memory Management in C (GC guards)
Exception Handling in C Extensions
Ruby Data Types & TypedData
Phase 17
Inline C with Rice
FFI with fiddle
RSpec DSL (describe, context, it)
Phase 18
RSpec Mocks (allow, expect, receive)
Minitest Spec & Assert
Factory Bot & Fixtures
Phase 19
Capybara Integration
VCR for HTTP Record/Replay
Property Testing (rantly)
Phase 20
DSL via instance_eval
DSL via block-passing & yield
Rake & Thor DSL
Phase 21
Config DSL Pattern
Builder DSL with method_missing
Matcher DSL (RSpec)
Phase 22
Internal vs External DSLs
Profiling with stackprof & ruby-prof
JIT Compilation (YJIT, MJIT)
Phase 23
Allocation Profiling
GC Tuning for Throughput
C Extension Hot Paths
Phase 24
Memory Instrumentation
Fiber vs Thread Performance
Case Pattern Matching (Ruby 3.0)
Phase 25
Array Pattern (in [a, *rest])
Hash Pattern (in {key: value})
Find Pattern (in [*, pattern, *])
Phase 26
Value & Variable Patterns
Pattern Matching Guards (if)
Deconstruct & Deconstruct Keys
Phase 27
taint & Trust Levels
$SAFE Levels (deprecated)
Command Injection Prevention
Phase 28
SQL Injection Prevention (Sanitize)
Rails Security (CSRF, XSS, Session)
Brakeman Static Analysis
Phase 29
Serialization & YAML.load Risks
Ruby RoadmapRuby
Space mark complete · Esc close · Drag pan · Wheel zoom