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

javascript
12m:42s
Apr 29, 2025
Operators & Expressions
Now that you know how to store data, it’s time to work with it! In this episode, we’ll explore how JavaScript uses operators and expressions to perform calculations, compare values, and make decisions. 🚀🎯 Here’s what we’ll cover:
• Master arithmetic operators like addition, subtraction, multiplication, division, remainder, and exponentiation.
• Use assignment operators to update variable values quickly and efficiently.
• Compare values with comparison operators like ==, ===, !=, <, >, <=, and >=.
• Combine logic with logical operators: and (&&), or (||), and not (!).
🎥 Visual Walkthroughs:
• See real-world examples of manipulating numbers and booleans.
• Watch how combining different operators creates dynamic expressions.
• Practice thinking like a computer: true, false, and everything in between!
By the end of this episode, you’ll be writing powerful expressions and making JavaScript do some real thinking for you! 🧠⚡️

browser,javascript
29m:50s
Oct 7, 2025
Other Browser APIs
🌐✨ Unlock the Hidden Superpowers of Your Browser! ✨🌐Did you know your browser can remember things, track your location, talk to your clipboard, and even access your camera? 🚀 In this video, we’ll dive into the world of Browser APIs and see how JavaScript can hook into these powerful tools.
Here’s what you’ll learn:
🗄️ Storage APIs — localStorage, sessionStorage, and cookies (where do your app’s secrets live?)
📍 Geolocation — get your users’ coordinates (with their permission 😉)
🖥️ Navigator API — online/offline detection, device info, and more
📋 Clipboard & Notifications — small but mighty features for modern apps
📸 Camera Access — yes, your browser can take photos!
By the end, you’ll see your browser not just as a window to the web, but as a full-featured platform ready to power real-world apps. ⚡

javascript
7m:38s
May 13, 2025
Parameters, Return Values, and Scope
In this episode, we go deeper into how functions communicate — by receiving input, producing output, and knowing where variables “live.” 🧩🎯 Here’s what we’ll cover:
• How to pass data into functions using parameters and arguments.
• Use return values to get results back from functions.
• Understand scope — where your variables exist and who can see them:
• Local (block), function, and global scope.
• Get a taste of lexical scope with a simple nested function.
🎥 Visual Walkthroughs:
• Watch functions take in inputs and return meaningful results.
• See clear, visual examples of variable scope in action.
• Spot common mistakes like trying to access variables outside their scope.
After this episode, you’ll be writing smarter functions that take input, give output, and stay in their own lane! 🧠➡️🧪➡️📦

oop,php
22m:11s
Jul 8, 2025
Photo Deletion
🖼️ Improved Photo Show PageIn photo.show, hide the summary and reviews if none exist
🔗 Delete Route & Form
Add a new route using the DELETE method
In photo.show, display a delete form only if the logged-in user owns the photo
Include a hidden input field: _METHOD = DELETE
Update the Router class to detect the method via:
$_POST['_METHOD'] ?? $_SERVER['REQUEST_METHOD']
🔧 Controller Refactor
Split responsibilities:
ReviewController: keep only the store method, and fix redirect_back() usage
PhotoController: remove the store method
🧨 Destroy Method in PhotoController
Ensure the user is authenticated
Validate the photo exists
Validate ownership of the photo
Delete the photo file:
Add directory() method to the Photo model
Add convert_to_path() method to the Photo model
Delete the corresponding database record:
Add a delete() method to the base Model class
📌 That wraps up the deletion flow and lands us at v26-delete-photos — now users can clean up after themselves!

linux
38m:26s
Feb 3, 2025
Processes and Jobs - Monitor, Kill, Background Jobs, Crontab, SystemD
This video is part of the Linux Crash Course series. This video will cover how to manager processes and jobs. We will cover the following:1. How to monitor running processes
2. How to kill or stop existing processes
3. Run a script in the background as a job
4. Run a script at a scheduled interval (e.g., once per minute...) using crontab
5. Run a script as a service using systemd
Github Repo: https://github.com/rcravens/linux-crash-course

oop,php
12m:3s
Mar 22, 2025
Properties and Methods
Unlock the power of Properties and Methods in PHP OOP! In this action-packed lesson, we dive into public and private properties & methods, breaking down the magic of encapsulation 🔒. Watch as we create a class, instantiate objects, and interact with public properties & methods from the outside 🌎. But wait—what about private ones? 🤔 No worries! I’ll show you how to work with them inside the class like a pro.Get ready to level up your PHP skills one method at a time! ⚡👨💻

composer,packagist,php
8m:41s
Mar 11, 2025
Publishing Your Package on Packagist
Now it’s time to publish our package and make it available to the world! 🌍 We’ll walk through submitting our package to Packagist and using Composer to install it in a project.📌 What you’ll learn:
✅ Registering a package on Packagist
✅ Using Composer to install your package
✅ Replacing old code with the new package
By the end of this video, your PHP package will be live and ready for developers to use! 🚀
🔔 Subscribe for more PHP tutorials!
🔗 Resources:
• Packagist Guide

linux
32m:13s
Feb 3, 2025
Redirection and Pipes - Output & Input, Chaining Commands
This video is part of the Linux Crash Course series. This video will continue exploring the Linux File System. In this video I will discuss redirecting stdin, stdout, and stderr. In addition, we will look a chaining commands together using pipes.Github Repo: https://github.com/rcravens/linux-crash-course

php
8m:32s
Mar 19, 2025
Reusable Code
Writing clean, maintainable code is a key skill for any developer! In this video we take our calculator project to the next level by refactoring it for better structure and reusability.Here’s what you’ll learn:
✅ Refactoring code – Moving related logic into separate files.
✅ require & include – How to properly import and reuse PHP files.
✅ Why structured code matters – Better organization, easier maintenance, and reusability.
By the end of this tutorial, you’ll have a more structured, modular, and reusable PHP application—just like professional developers do!

oop,php
10m:34s
May 13, 2025
Router Infrastructure
Let’s bring structure and scalability to our routing system! In this video, we encapsulate all routing logic into a dedicated Router infrastructure class, giving us a clean and centralized way to manage routes. 🧭Here’s what we’ll accomplish:
• Move and rename load_route() into the new Router class as a static view() method 🔁
• Add static get() and post() methods to define routes declaratively 🚪
• Simplify how our application connects URLs to controllers using a centralized approach 🧠
By the end, we’ll have version v10-router-infra—a solid foundation for routing that’s clean, powerful, and easy to scale. 🚀
Coming Soon

javascript,node
11m:33s
Oct 23, 2025
Routing Basics
👉 Every time you type a URL, click a link, or submit a form, your server has to decide: what happens next? That’s where routing comes in.💥 In this video, we’ll break down Routing Basics in Node.js and learn how servers handle requests:
- How URLs, HTTP methods (GET, POST), and headers guide server responses.
- Writing simple routes to serve different pages (Home, About, Contact).
- Handling form submissions with POST requests.
- Returning JSON vs. HTML based on client preferences ⚡️.
🤖 By the end, you’ll understand how to map requests to responses — the foundation for building APIs, web apps, and more.
💡 Relevant Links
Previous TekCasts series:
- JavaScript for Beginners: https://tekcasts.com/play/javascript-for-beginners-what-is-javascript
- JavaScript in the Browser: https://tekcasts.com/play/javascript-in-the-browser-browser-runtime-environment
Official Docs:
- Node.js Documentation: https://nodejs.org/en/docs/
- MDN JavaScript Guide: https://developer.mozilla.org/en-US/docs/Web/JavaScript

oop,php
19m:31s
Jul 10, 2025
Second Refactor & Review
🧠 Model Hydration Fixes- Solved the issue where results weren’t instances of the child model class
- Introduced hydrate() and hydrate_rows() to handle model instantiation
- Added PHPDoc annotations with generics to assist with static analysis and better typing
- Updated type hints across Policies and Controllers for clarity and consistency
📦 Model Enhancements
- Added an update() method
- Introduced pagination support with skip() and take()
- Added sorting via order_by() and order_by_desc()
- Modified / route to use pagination
🛡️ New Policy Classes
- PhotoController: created Http/Policies/PhotoPolicy
- AuthController: created and used AuthPolicy
- RegisterController: created UserPolicy
- ReviewController: created ReviewPolicy
- UploadController: updated to use PhotoPolicy
- Fixed return $data in UploadController to include a proper URL
📌 All of that polish and organization lands us at v26-review-refactor — making the codebase smoother, smarter, and more maintainable.

browser,javascript
18m:11s
Sep 4, 2025
Selecting & Modifying Elements
Now that you know what the DOM is 🌳, it’s time to grab it, shape it, and make it dance 💃! In this video, you’ll learn how to find elements on the page and update them dynamically with JavaScript.We’ll cover:
🔎 Powerful ways to query the DOM (getElementById, querySelector, querySelectorAll)
📂 The difference between NodeLists vs HTMLCollections (and why it matters)
📝 How to read & update text/HTML with innerText, textContent, and innerHTML
🏷️ Working with attributes (getAttribute, setAttribute)
✅ Best practices to keep your DOM manipulation clean & safe (hint: don’t abuse innerHTML!)
💡 With live demos, we’ll query by IDs, classes, attributes, even complex CSS selectors — and then we’ll modify elements on the fly, from text and attributes to inline styles.
⚡ By the end of this video, you’ll have the skills to take control of your webpage’s content and structure like a true DOM wizard 🧙♂️!
Coming Soon

javascript,node
9m:50s
Oct 28, 2025
Serving HTML & Static Files
Your Node.js server is about to level up 💥So far, it’s been plain text — now it’s time to serve real web pages with HTML, CSS, JavaScript, and images like a true web server 🌐🔥
👉 In this episode, you’ll learn how to:
🚀 Use the fs module to load and serve full pages
⚙️ Set proper Content-Type headers so browsers render perfectly
🛡️ Protect your app from path traversal attacks
💻 Build a lightweight static file server from scratch — the core of every modern web app
By the end, your Node server won’t just respond… it’ll serve experiences ⚡️
💡 Relevant Links
Previous TekCasts series:
- JavaScript for Beginners: https://tekcasts.com/play/javascript-for-beginners-what-is-javascript
- JavaScript in the Browser: https://tekcasts.com/play/javascript-in-the-browser-browser-runtime-environment
Libraries mentioned:
- Node.js fs: https://nodejs.org/api/fs.html
- Node.js path: https://nodejs.org/api/path.html
- Node.js http: https://nodejs.org/api/http.html

oop,php
25m:6s
Jun 10, 2025
Sessions / Redirects / Flash Messages
Now that users can submit reviews, let’s give them feedback! In this video, we bring in sessions, redirects, and flash messaging to guide the user experience after form submissions. ✨Here’s what gets built in version v18-redirects-with-flash:
- Create a Session class as a singleton, with a handy global session() helper 🔐
- Initialize the session at app start and build a clean API like:
- session()->error('Missing required parameters.')->redirect('/');
- Implement error() and redirect() methods for smooth flow and messaging
- Fix the issue of persistent flash messages by introducing delete_transient_data() to clear session data after one request cycle
- Use Alpine.js to display flash messages dynamically with a snappy user experience ⚡
- Create a reusable _flash.view.php layout file for flash UI 💡
- Hook flash messages into the review flow by updating all dd('TODO') redirects in the PhotoController
- Bonus: Add current_route support in the Router to improve context-awareness in views 🧭
With sessions and flash messages in place, your app now speaks back to the user—clear, friendly, and fast. 🚀