Short Bio:
                            Bob Cravens is a seasoned technology leader, software architect, and educator with a passion for empowering others through practical, real-world knowledge. As the founder of TekFoundry, Bob has dedicated his career to designing and delivering innovative software solutions that combine cutting-edge technology with elegant simplicity.
At TekCasts, Bob leverages over two decades of experience in software engineering, application architecture, and team leadership to create engaging, high-impact courses for developers and technology professionals. His instructional style is rooted in practical application, offering insights drawn from his extensive background in industries like medical devices and global technology consulting.
Bob’s expertise spans a variety of technologies and methodologies, including PHP/Laravel, FastAPI, and DevOps, as well as architecture best practices and team dynamics. Whether teaching foundational concepts or advanced strategies, he’s passionate about helping others turn complex challenges into streamlined solutions.
When not crafting elegant code or inspiring the next generation of tech innovators, Bob enjoys exploring the intersection of technology, business strategy, and creative problem-solving.
                        At TekCasts, Bob leverages over two decades of experience in software engineering, application architecture, and team leadership to create engaging, high-impact courses for developers and technology professionals. His instructional style is rooted in practical application, offering insights drawn from his extensive background in industries like medical devices and global technology consulting.
Bob’s expertise spans a variety of technologies and methodologies, including PHP/Laravel, FastAPI, and DevOps, as well as architecture best practices and team dynamics. Whether teaching foundational concepts or advanced strategies, he’s passionate about helping others turn complex challenges into streamlined solutions.
When not crafting elegant code or inspiring the next generation of tech innovators, Bob enjoys exploring the intersection of technology, business strategy, and creative problem-solving.
Videos
                Checkout Videos By This Instructor
            
            
            Coming Soon
        
    
     
        
        javascript,node
            16m:27s
        Dec 16, 2025
            Introduction to Middleware
Your Node.js server just got superpowers 💥We’re taking your app beyond the basics by introducing one of the most powerful architectural patterns in modern web development — middleware ⚙️
👉 In this episode, you’ll learn how to:
🚀 Implement your own middleware system from scratch in Node.js
🔒 Add authentication checks with custom middleware classes
🧠 Use router groups to apply middleware cleanly and efficiently
🪄 Chain multiple middleware functions to handle complex logic
🧩 Understand how frameworks like Express build on this same concept
By the end, your Node.js app will have a clean, modular flow that scales effortlessly 💪
💡 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
Previous episodes in this series:
- Sessions: https://tekcasts.com/play/javascript-on-the-server-sessions
- Validation Improvements: https://tekcasts.com/play/javascript-on-the-server-validation-improvements
- Flash Messages: https://tekcasts.com/play/javascript-on-the-server-flash-messages
- Authentication Basics: https://tekcasts.com/play/javascript-on-the-server-authentication-basics
Libraries / Docs mentioned:
- Node.js http: https://nodejs.org/api/http.html
- Node.js URL: https://nodejs.org/api/url.html
 
        
        javascript
            12m:53s
        Sep 9, 2025
            Introduction to Recursion
In this episode, we unlock the power of recursion — functions that call themselves! 🔄 You’ll see why recursion needs a clear exit point (the base case), and how this elegant approach can simplify tricky problems. Together, we’ll walk through three hands-on examples:⏱ A countdown timer that rockets to blast off!
✖️ Factorial computation (the classic recursion demo)
🔀 A recursive bubble sort that organizes chaos step by step
By the end, recursion will go from intimidating to intuitive — a tool you’ll actually want in your problem-solving toolkit. 🚀
 
        
        oop,php
            18m:5s
        Jun 12, 2025
            Invalid Form Submissions
In this video, we tackle the next critical part of the form experience—handling invalid submissions with grace. When a user submits a form with missing or incorrect data, we want to redirect them back, repopulate the form, and show helpful error messages. 💡Here’s what we build in version v19-redirect-with-errors:
- Define the ideal usage:
- session()->invalid($errors)->redirect_back();
- Then… we make it real! 💥
- Introduce invalid() and redirect_back() methods in the Session class
- Store transient $old and $errors values to survive the redirect and improve UX ✨
- Refactor Session::old() into a more flexible Session::flash() and flash_message() pattern 🔁
- Improve the old($key, $default) helper to escape HTML using htmlspecialchars() for security 🛡️
- Add a validation_message() helper to display specific errors next to form fields
- Update the review form:
- Loosen validation so comment is optional
- Add hidden rating input with default of 0
- Test with extreme values (e.g., rating=10, long name) to confirm validation is triggered
- Clean up temporary debug outputs (like var_dump()) and finalize the flow ✅
This update makes your app smarter, friendlier, and much more user-friendly when things go wrong. A polished user experience, even on failure? Now that’s pragmatic. 🚀
 
        
        browser,javascript
            9m:14s
        Oct 21, 2025
            jQuery - History & Syntax Sugar
Before React, Vue, and modern frameworks, jQuery ruled the web. 🌐✨Back in the early days, browsers didn’t always agree on how JavaScript should work. Every developer fought with quirks between Internet Explorer, Firefox, Safari, and Chrome. 😩 Enter jQuery — a library that smoothed over the chaos by providing a standardized abstraction. With $(), developers could write code once and trust it to work everywhere.
In this video, we’ll explore why jQuery was such a big deal, from DOM selection and chained syntax to event handling and AJAX requests. You’ll see how it simplified cross-browser headaches, why it became the backbone of web dev for a decade, and where it’s still used today (👋 WordPress plugins & legacy apps).
Finally, we’ll look at its modern replacements: native JS APIs and frameworks that now handle what jQuery once did.
 
        
        laravel,pulse
            18m:6s
        Mar 11, 2025
            Laravel Pulse: Install & Deploy to Production (Step-by-Step Tutorial)
🚀 Learn how to install and deploy Laravel Pulse in a production environment using Laravel Forge and Envoyer!In this tutorial, I’ll walk you through:
✅ Installing Laravel Pulse in your Laravel project
✅ Configuring it for real-time performance monitoring
✅ Deploying Laravel Pulse to production with Forge & Envoyer
✅ Best practices to keep Pulse running smoothly in production
🔧 Tools Used: Laravel Forge, Laravel Envoyer, Laravel Pulse
If you found this video helpful, don’t forget to like, comment, and subscribe for more Laravel content! 🔥
📌 Links & Resources:
👉 Laravel Pulse Docs: [https://pulse.laravel.com/]
👉 Laravel Forge: [https://forge.laravel.com/]
👉 Laravel Envoyer: [https://envoyer.io/]
#tekfoundry #tekcasts
 
        
        php
            17m:3s
        Mar 18, 2025
            Logic, Conditionals & Branching
In this video from the PHP for Beginners series, we explore logic, conditionals, and branching—key concepts that control the flow of your PHP programs. You’ll learn how to use if, else, and switch statements to make decisions in your code, allowing your programs to respond dynamically to different conditions.By the end of this lesson, you’ll have a strong understanding of conditional statements and how to apply them effectively in real-world scenarios.
🔹 Beginner-friendly explanations
🔹 Hands-on coding examples
🚀 Master PHP conditionals and take control of your code today!
 
        
        javascript
            6m:35s
        May 22, 2025
            Looping Through Arrays
Ready to do something with all those array items? In this episode, you’ll learn how to loop through arrays and apply logic to each value — one of the most common tasks in JavaScript!🎯 What you’ll learn:
• The classic for loop — great for full control
• The cleaner, modern for…of loop
• The elegant and expressive .forEach() method
• A fun mini-challenge: Loop through numbers and log which are even 🔍
🎥 What you’ll see:
• Step-by-step demos of each loop type
• Code that transforms and filters array data
• A clear comparison so you know when and why to use each loop
By the end, you’ll be confidently cycling through arrays and writing logic that reacts to each item. 🧠✨
 
        
        php
            18m
        Mar 19, 2025
            Loops
Loops are a fundamental part of programming, allowing you to execute code multiple times efficiently. In this video, part of the “PHP for Beginners” series, we break down the four main types of loops in PHP:✅ foreach – Perfect for looping through arrays effortlessly.
✅ for – Ideal when you know exactly how many times you need to iterate.
✅ while – Runs as long as a condition is true, great for dynamic scenarios.
✅ do…while – Similar to while, but always runs at least once.
By the end of this tutorial, you’ll understand when and how to use each loop, with clear explanations and examples. Whether you’re new to PHP or need a refresher, this video will help you master loops in no time!
 
        
        php
            22m:8s
        Mar 19, 2025
            Mixing Markup & Code
It’s time to take our PHP calculator from hardcoded values to real user input! In this video we introduce an HTML frontend to drive our calculator, making it interactive.Here’s what we cover:
✅ Creating an HTML form – Allow users to input expressions dynamically.
✅ PHP Superglobals – Understanding $_POST and how to handle form data.
✅ Mixing PHP & HTML – Embedding PHP inside markup to render values and conditionally show elements.
By the end of this tutorial, you’ll know how to build dynamic web pages that process user input using PHP—an essential skill for web development!
 
        
        javascript
            6m:55s
        Sep 25, 2025
            Modules & Imports
Time to break up the band 🎸—but in the best way possible! In this episode, we’ll see how ES Modules help you split your code into neat, reusable files and then pull them back together with ease.Here’s what we’ll cover:
📦 What modules are and why they make your code cleaner and more maintainable.
🔀 The difference between named and default exports.
📥 How to import modules into your project like a pro.
🌐 Setting up modules in the browser with type="module" (plus a sneak peek at Node.js).
We’ll walk through a math utility example, exporting functions and constants, then importing them back into main.js for instant reusability.
By the end, you’ll be ready to organize your projects like a seasoned developer, keeping your codebase modular, scalable, and stress-free. 🚀
 
        
        javascript,node
            15m
        Oct 14, 2025
            Modules and NPM
📦 In this video, we explore how Node.js uses modules and NPM to organize code, manage dependencies, and scale projects. You’ll see the difference between CommonJS and ES Modules, learn how to create a package.json, install and use packages like lodash, manage NPM scripts, and keep your project clean by uninstalling dependencies.💡 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 Modules: https://nodejs.org/api/modules.html
- NPM: https://www.npmjs.com/
- Lodash: https://www.npmjs.com/package/lodash
- NPM Scripts Docs: https://docs.npmjs.com/cli/v8/using-npm/scripts
            Coming Soon
        
    
     
        
        javascript,node
            9m:46s
        Nov 20, 2025
            MVC Page LifeCycle
Your MVC framework is about to come alive ⚡️So far, we’ve built the parts — now it’s time to see them in motion. In this episode, we’ll trace how every request flows through your application — from the moment it hits the server to the controller logic that shapes the response. 🌐
👉 In this episode, you’ll learn how to:
🚀 Follow the full request/response lifecycle in an MVC app
⚙️ Understand how routing, controllers, and views work together
📦 Parse request bodies and extract parameters dynamically
🧩 Connect the dots between HTTP, Router, and Controller layers
By the end, you’ll see your framework as a living, breathing system — where every part plays its role in delivering dynamic web pages 💻
💡 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 & Resources:
- Node.js Documentation: https://nodejs.org/en/docs/
- MDN HTTP Guide: https://developer.mozilla.org/en-US/docs/Web/HTTP
- MDN JavaScript Guide: https://developer.mozilla.org/en-US/docs/Web/JavaScript
 
        
        autoloading,namespaces,oop,php,psr-4
            10m:36s
        Mar 22, 2025
            Namespaces, PSR-4, and Autoloading
Say goodbye to messy, single-file chaos! 😵💫 In this video, we organize and supercharge our PHP projects by breaking them into multiple files. First, we manually load classes using the trusty require keyword 📜—but that’s just the beginning!Next, we introduce the PSR-4 standard, the industry gold standard for structuring PHP code 🏆. And to make life even sweeter, we harness the power of Composer’s autoloading ⚡—letting PHP automatically find and load classes like magic! ✨
By the end, you’ll be writing scalable, maintainable PHP code like a true OOP architect! 🏗️💻
 
        
        javascript
            13m:57s
        May 29, 2025
            Nested Structures & Loops w/Objects
As your programs grow more complex, you’ll often need to work with data inside of data. In this episode, we explore how to combine arrays and objects to model richer, more realistic structures.🎯 What you’ll learn:
• How to create and work with arrays inside arrays (like a game board)
• How to structure objects inside objects (like a user and their account)
• How to manage arrays of objects (like a list of students)
• How to handle arrays inside objects (like student grades)
🎥 What you’ll see:
• Code examples of each structure
• How to access nested values
• How to loop through nested data using for loops or for...of
By the end of this episode, you’ll understand how to organize complex data and access it confidently — a big step toward working with real-world applications! 🗃️🔁
 
        
        javascript
            8m:40s
        May 27, 2025
            Objects - Key / Value Pairs
Objects are one of the most powerful and flexible tools in JavaScript. In this episode, we’ll explore how to represent real-world things — like people, places, or ideas — using key/value pairs.🎯 What you’ll learn:
• What objects are and why they matter
• How to define and access object properties
• The difference between dot notation and bracket notation
• How to add, update, and delete properties dynamically
🎥 What you’ll see:
• A walkthrough of building a simple person object
• Real-time code edits and console logging
• Examples that mirror how data is structured in real apps
After this episode, you’ll see how objects give your data shape and make your code more expressive and organized. 🗂️📦
 
        
        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! 🧠⚡️
