Search looks for provided text the Title, Description, Classification, and Keywords for the video.

oop,php
4m:26s
May 27, 2025
Dynamic Photo Gallery
Time to showcase our images! In this video, we build a photo gallery page that lists all uploaded photos and links each one to its detailed view. 🧱Here’s what we’ll do:
Create a new show.view.php by copying and modifying index.view.php 🧬
Add a new route and controller method to handle the gallery page 🗺️
Display all photos in a clean list or grid, each with a clickable link to its detailed photo page 🔗
With version v14-photos-list, our app now lets users browse through all uploaded images—laying the foundation for interactivity and exploration. 🚀

oop,php
7m:43s
May 22, 2025
Dynamic Photo Page
Let’s make our photo pages come alive! In this video, we turn the static photo view into a fully dynamic experience by using the $_GET superglobal to load data based on query parameters. 🔍Here’s what we tackle:
Update the PhotoController to read the id from $_GET and query the database accordingly
Show a 404 error if the id is missing or the record isn’t found 🛑
Improve our error views (404 and 500) by rendering them within the layout for a consistent look 🎨
Refactor the View class to default to the main layout (layout.app) while still allowing overrides
Fix a potential infinite render loop in the layout logic 🐛
Clean up unnecessary calls to ->layout() by relying on the new default behavior 🧼
By the end, version v13-photo-query-param will serve up the right photo with the right layout—dynamically and elegantly. 🚀

encapsulation,oop,php
9m:39s
Mar 22, 2025
Encapsulation: Public & Private
Ready to lock down your PHP skills? 🚀 In this video, we crack open Encapsulation—a core OOP concept that keeps your code secure, organized, and powerful! 🔐I’ll break down what encapsulation is and why it matters, then dive into real-world examples. You’ll see how getters and setters help you access private properties safely, while letting you enforce business logic behind the scenes 🕵️♂️.
By the end, you’ll be writing cleaner, safer, and smarter PHP code like a pro! ⚡💻

javascript
16m:58s
Aug 28, 2025
Error Handling
Even the best-written code can run into unexpected situations — and that’s where error handling comes in. In this episode, you’ll learn how to make your programs more reliable by anticipating problems and handling them gracefully.� What you’ll learn:
- Why handle errors? The importance of defensive programming.
- try, catch, finally — how to catch problems without crashing your program.
- Throwing custom errors when you detect something invalid.
- Practical example with input validation (like stopping someone from dividing by zero).
� Why it matters:
Professional developers don’t just write code that works — they write code that fails gracefully. Error handling is what separates quick scripts from robust applications.
By the end of this episode, you’ll know how to protect your code against the unexpected — and keep your users from seeing cryptic crashes. �
Coming Soon

javascript
4m:6s
Sep 18, 2025
ES6 Classes
JavaScript leveled up with ES6, giving us a much cleaner, more intuitive way to write object-oriented code: the class keyword. ✨ In this episode, we’ll modernize our approach and see how classes make our code easier to read and maintain—while still being built on prototypes behind the scenes.Here’s what we’ll cover:
🆕 Introducing the class keyword and why it’s a game-changer.
🏗 Defining constructors, properties, and methods with sleek new syntax.
🐾 Creating instances and bringing our objects to life.
🔎 A peek under the hood—how classes are really just a friendlier way to work with prototypes.
By the end, you’ll be comfortable building your own classes and ready to wield this modern syntax like a pro. 🚀

php
9m:52s
Mar 19, 2025
Exceptions
Errors happen, but how you handle them makes all the difference! In this video we dive into PHP exceptions and how they improve error handling.We start by manually guarding against invalid data using if statements, then take it to the next level by introducing exceptions, covering:
✅ Throwing exceptions – How to signal when something goes wrong.
✅ Catching exceptions – Gracefully handling errors without breaking your code.
✅ Why exceptions are better than manual checks in many cases.
By the end of this tutorial, you’ll understand how to handle errors cleanly and professionally in PHP.

oop,php
33m:55s
Mar 27, 2025
Exceptions & Errors
When things go wrong in your PHP application, how do you handle it? 🤔 In this video, we dive into the art of exception handling and smart error management! 🎯🔹 Throwing & catching exceptions—what, when, and why? 🎭
🔹 Best practices for handling errors (logging, notifications, feature toggles) 📝
🔹 When to use try/catch blocks (external APIs, limited resources) 🔄
🔹 The role of a global exception handler 🛑
🔹 Throwing custom exceptions to make your code more meaningful 🏗️
🔹 Why exceptions can be expensive 💰 and how to use error objects instead ⚡
By the end, you’ll know exactly how to keep your application resilient, stable, and user-friendly! 💪 Let’s dive in! 🎬

oop,php
9m:48s
Apr 17, 2025
Extracting Layout Components
In this video, we take a major step toward cleaner, more maintainable code by refactoring our static HTML into reusable layout components. ✂️➡️🧩We’ll extract repeated sections of HTML into their own PHP partial view files:
• layout/_nav.view.php 🧭
• layout/_page_head.view.php 🧠
• layout/_header.view.php 🏷️
• layout/_page_foot.view.php 👣
This makes our pages easier to manage and sets the stage for a powerful layout system in future steps. 💡
By the end of this video, our project will be refactored and tagged as v3-layout-files—modular, organized, and ready to grow. 🚀

linux
10m:48s
Feb 3, 2025
File System - Create, Copy, Move, Link
This video is part of the Linux Crash Course series. This video will continue introducing the Linux File System. In this video you will learn how to create / remove directories, copy / move files, and everything you need to know about links.Github Repo: https://github.com/rcravens/linux-crash-course

linux
16m:41s
Feb 3, 2025
File System - Permission
This video is part of the Linux Crash Course series. This video will continue exploring the Linux File System. In this video you will learn about permissions and how to secure access to files.Github Repo: https://github.com/rcravens/linux-crash-course

linux
13m:51s
Feb 3, 2025
File System - Wildcards, Find, Search
This video is part of the Linux Crash Course series. This video will continue exploring the Linux File System. In this video you will learn how to search the file system for files or content inside those files.Github Repo: https://github.com/rcravens/linux-crash-course

linux
23m:8s
Feb 3, 2025
File System Basics - Navigation
This video is part of the Linux Crash Course series. This video will introduce the Linux File System. In this video you will learn how to navigate the file system.Github Repo: https://github.com/rcravens/linux-crash-course

oop,php
12m:54s
Jul 17, 2025
Final Review & Refactor
This video is all about the last layer of polish — a final walkthrough to tidy up code, views, and structure across the project. Here’s what we touched:🖼️ Views
- index.view.php: added wider screen support with max-w-7xl.
- Removed a duplicate header to clean up the layout.
🧱 Framework Cleanup
- Database.php: fixed IDE issues and added helpful annotations.
- globals.php: minor tweaks to smooth dev experience.
- Model.php: highlighted PHPDoc comments, reviewed skip(), take(), and orderBy() methods.
- Session.php and View.php: both got the “FII” treatment (Fix IDE Issues).
📦 Http Layer
- Policies:
- UserPolicy: FII.
- Controllers:
- AuthenticationController, PhotoController, RegisterController, ReviewController, and UploadController: all reviewed and cleaned up.
🌐 Public Entry Point
- index.php: adjusted try/catch block for better error handling and clarity.
🎯 And that wraps things up at v28-review-refactor — setting the stage for a maintainable, scalable app with a solid foundation.

oop,php
18m:18s
Jun 3, 2025
First Review & Refactor
It’s time to pause and sharpen the tools. In this video, we take a step back to review our progress and clean up our codebase, because maintainability is key to sustainable development. 🛠️Here’s what we tackle in version v16-framework-refactor:
Emphasize the value of regular review and refactor sessions 🧠
Review our entry point (public/index.php) and extract logic into a new App class 📦
Create Framework/App as a singleton with a start() method to centralize bootstrapping 🚀
Address messy relative paths like '../../' by creating a dedicated Path helper class 🧭
Build Framework/Path as a singleton and introduce helpers like app(), root(), require_app(), and require_root()
Refactor all path-related code to use these clean, expressive helpers 📁
Move globals.php into the Framework directory to keep framework-related code encapsulated
Clean up and clarify all require/import statements 🔄
This refactor sets us up for a cleaner, more organized foundation—making our mini-framework easier to navigate, extend, and love. 💡

oop,php
17m:11s
Jun 19, 2025
Fluent Validation
In this step, we introduced a flexible and expressive validation system.🧱 Created the Framework/Validation class and added a validate() helper to globals.php.
✍️ The goal was to write intuitive validation logic like:
validate('rating')->integer()->min(0)->max(5)->required();
validate('name')->string()->max(100);
validate('comment')->string()->max(1000);
🧪 This fluent API allowed chaining validation rules for each input field, improving both readability and maintainability.
🔧 We fixed the num_stars constraint in the migration SQL to properly enforce the rating range.
🧹 Ran the migration and reseeded the database to apply the changes.
🕵️ Also refined the reviews logic to default the name to “Anonymous” when one isn’t provided.
This new validation infrastructure enhances data safety and gives us a consistent, clean way to validate user input throughout the application.