Ruby Programming Language

  1. Ruby Syntax and Basic Concepts
    1. "Hello, World!" Program
      1. Writing and Running the Program
        1. Understanding Output Methods
          1. Program Structure
          2. Comments
            1. Single-line Comments
              1. Multi-line Comments
                1. Documentation Comments
                  1. Best Practices for Commenting
                    1. Inline Comments
                    2. Variables and Constants
                      1. Local Variables
                        1. Naming Rules
                          1. Scope
                          2. Instance Variables
                            1. Syntax and Usage
                              1. Scope within Objects
                              2. Class Variables
                                1. Shared State
                                  1. Inheritance Behavior
                                  2. Global Variables
                                    1. Syntax and Usage
                                      1. When to Avoid
                                      2. Constants
                                        1. Definition and Usage
                                          1. Reassignment Warnings
                                          2. Naming Conventions
                                            1. Snake Case
                                              1. Uppercase for Constants
                                                1. Special Prefixes
                                                  1. @ for Instance Variables
                                                    1. @@ for Class Variables
                                                      1. $ for Global Variables
                                                  2. Data Types (Everything is an Object)
                                                    1. Numbers
                                                      1. Integers
                                                        1. Integer Class
                                                          1. Numeric Literals
                                                            1. Binary, Octal, and Hexadecimal
                                                            2. Floating-Point Numbers (Float)
                                                              1. Float Precision
                                                                1. Scientific Notation
                                                                2. Rational Numbers
                                                                  1. Creating Rational Objects
                                                                    1. Exact Arithmetic
                                                                    2. Complex Numbers
                                                                      1. Complex Class
                                                                        1. Mathematical Operations
                                                                        2. Numeric Methods
                                                                          1. Arithmetic Operations
                                                                            1. Comparison Methods
                                                                              1. Type Conversion
                                                                            2. Strings
                                                                              1. String Literals
                                                                                1. Single Quotes
                                                                                  1. Double Quotes
                                                                                    1. Percent Notation
                                                                                    2. String Interpolation
                                                                                      1. Expression Embedding
                                                                                        1. Formatting Options
                                                                                        2. Escape Sequences
                                                                                          1. Common Escape Characters
                                                                                            1. Unicode Escapes
                                                                                            2. Multiline Strings (Heredocs)
                                                                                              1. Heredoc Syntax
                                                                                                1. Indented Heredocs
                                                                                                2. String Encoding
                                                                                                  1. UTF-8 Default
                                                                                                    1. Encoding Methods
                                                                                                    2. Common String Methods
                                                                                                      1. Concatenation
                                                                                                        1. Substrings
                                                                                                          1. Case Conversion
                                                                                                            1. Splitting and Joining
                                                                                                              1. Searching and Replacing
                                                                                                                1. Pattern Matching
                                                                                                              2. Symbols
                                                                                                                1. Symbol Syntax
                                                                                                                  1. Symbol vs. String
                                                                                                                    1. Memory Efficiency
                                                                                                                      1. Immutability
                                                                                                                      2. Use Cases for Symbols
                                                                                                                        1. Hash Keys
                                                                                                                          1. Method Names
                                                                                                                            1. Constants
                                                                                                                          2. Booleans and nil
                                                                                                                            1. true and false Objects
                                                                                                                              1. nil Object
                                                                                                                                1. Truthiness and Falsiness
                                                                                                                                  1. Falsy Values
                                                                                                                                    1. Truthy Values
                                                                                                                                2. Operators
                                                                                                                                  1. Arithmetic Operators
                                                                                                                                    1. Addition, Subtraction, Multiplication
                                                                                                                                      1. Division and Modulo
                                                                                                                                        1. Exponentiation
                                                                                                                                        2. Assignment Operators
                                                                                                                                          1. Simple Assignment
                                                                                                                                            1. Compound Assignment
                                                                                                                                            2. Comparison Operators
                                                                                                                                              1. Equality and Inequality
                                                                                                                                                1. Relational Operators
                                                                                                                                                  1. Spaceship Operator
                                                                                                                                                  2. Logical Operators
                                                                                                                                                    1. AND, OR, NOT
                                                                                                                                                      1. Short-Circuit Evaluation
                                                                                                                                                      2. Range Operators
                                                                                                                                                        1. Inclusive Range
                                                                                                                                                          1. Exclusive Range
                                                                                                                                                          2. Ternary Operator
                                                                                                                                                            1. Conditional Expression
                                                                                                                                                              1. Usage Patterns
                                                                                                                                                              2. Operator Precedence
                                                                                                                                                                1. Precedence Rules
                                                                                                                                                                  1. Associativity
                                                                                                                                                                2. Input and Output
                                                                                                                                                                  1. Printing to the Console
                                                                                                                                                                    1. puts
                                                                                                                                                                      1. p
                                                                                                                                                                        1. printf
                                                                                                                                                                        2. Getting User Input
                                                                                                                                                                          1. gets
                                                                                                                                                                            1. chomp Method
                                                                                                                                                                              1. Input Validation
                                                                                                                                                                              2. Formatting Output
                                                                                                                                                                                1. String Formatting
                                                                                                                                                                                  1. Number Formatting