Demystifying Bare-Metal Systems, Computer Vision, and AI for Students and Non-Technical Learners


Abstract

Most modern programming education introduces computing as an abstract black box: layers of Python libraries, web frameworks, and virtual runtimes that obscure the physical realities of the machine. While this top-down approach gets beginners writing high-level code quickly, it leaves them with no intuition for why their software slows down, leaks memory, or freezes their laptop.

To bridge this gap, I built rcre-learn: The Silicon Odysseyβ€”an open-access, 10-week educational journey and interactive web application designed specifically for high school students and non-technical enthusiasts.

Rather than teaching dry academic syntax, rcre-learn demystifies the real-world systems principles powering three of my high-performance C23 engines:

  1. rcre (Recep’s Code Run Everywhere): A zero-dependency ISO C23 Computer Vision & Machine Learning engine featuring linear memory arenas, OpenCV bit-exact parity, dynamic hardware abstraction (SIMD), and transformers.
  2. rcvc (Recep’s Computer Vision Code): A high-throughput planar imaging tool using Struct-of-Arrays (SoA) planar tiles and 64-byte cache line saturation.
  3. gnew-parallel (GNew Parallel): A high-speed scientific resource orchestrator featuring direct kernel execution (posix_spawnp), vector delimiter line splitting at 3+ GiB/s, and Apple Silicon / Linux resource sympathy.

🍁 Interactive Web Odyssey: You can play with the live 10-station interactive simulator and code inspector directly in your browser:
https://erolrecep.github.io/rcre-learn/
πŸ“¦ GitHub Repository: github.com/erolrecep/rcre-learn


1. The Core Philosophy: Physical Silicon Intuition

In rcre-learn, we discard intimidating jargon in favor of physical metaphors that ground abstract concepts in tangible intuition:

Concept The Traditional (Intimidating) Approach The rcre-learn Physical Metaphor
RAM & Addresses “Pointers store 64-bit hexadecimal memory addresses; beware of segmentation faults.” The Locker Room: Memory is a hallway of numbered lockers; a pointer is simply a card with a locker number on it.
Memory Allocation “Dynamically allocate heap memory using malloc() and remember to invoke free().” The Endless Whiteboard: An arena allocator is a whiteboard where you write along a line and wipe it clean with one O(1) swipe.
Cache Lines & Bandwidth “Optimize matrix striding to avoid L1 data cache misses.” The Colored Pencil Box: Compare rummaging through mixed packs of pencils (AoS) vs. grabbing a dedicated tray of red pencils (SoA).
Hardware Vectors “Invoke 128-bit ARM NEON or 256-bit AVX2 vector intrinsics.” The 8-Lane Highway: Compare a single cashier ringing up items one by one vs. an 8-arm robotic press stamping 8 additions at once.
Parallel Orchestration “Fork child processes, connect POSIX pipes, and monitor SIGCHLD.” The Air Traffic Control Tower: Bypassing shell bureaucracy to direct flights across Performance and Efficiency core runways.

2. The 10-Week Roadmap

The curriculum is divided into four thematic realms:

[Phase 1: Silicon Foundations]
  β”œβ”€β”€ Week 01: The Locker Room (Variables, Types & Addresses)
  └── Week 02: The Whiteboard (Linear Arenas & O(1) Rewinds)

[Phase 2: Light & Vision]
  β”œβ”€β”€ Week 03: The Digital Mosaic (Pixels & 15-bit Fixed-Point)
  β”œβ”€β”€ Week 04: Colored Pencils (SoA vs. AoS & Cache Lines)
  └── Week 05: The Magic Stencil (2D Convolutions & Sobel Edges)

[Phase 3: The Factory of Speed]
  β”œβ”€β”€ Week 06: The 8-Lane Highway (SIMD & Dynamic HAL Dispatch)
  β”œβ”€β”€ Week 07: The Stream Laser (Safe Fat-Pointer Slices)
  └── Week 08: The Master Dispatcher (Processes & Core Sympathy)

[Phase 4: Intelligence & Deployment]
  β”œβ”€β”€ Week 09: Teaching Silicon to Learn (Autograd & Attention)
  └── Week 10: The Alchemist's Portal (WebAssembly Live Vision)

3. The Interactive Web Odyssey

To make the learning experience hands-on from Day 1, the entire curriculum is paired with a standalone, client-side web application built in a warm autumn color palette:

(If the interactive frame does not display above, you can open the full-screen application at erolrecep.github.io/rcre-learn.)


4. Verification & Sanitizer Cleanliness

Every single weekly lesson comes with:

  • starter.c: Clean starter code with guided TODO markers.
  • solution.c: The reference C23 implementation.
  • test.c: Automated verification assertions.

Running make san inside the repository runs the entire 10-week verification battery under AddressSanitizer (ASan) and UndefinedBehaviorSanitizer (UBSan):

git clone https://github.com/erolrecep/rcre-learn.git
cd rcre-learn
make test   # Compiles and runs all 10 weekly test suites
make san    # Validates under ASan + UBSan (0 leaks, 0 undefined behaviors)

Getting Started

Whether you are a high school student curious about how computers actually work, an educator looking for visual systems programming curriculum, or an engineer exploring modern ISO C23 idioms:

πŸ‘‰ Explore the Live Journey: https://erolrecep.github.io/rcre-learn/
⭐ Star the Repository on GitHub: github.com/erolrecep/rcre-learn