The BaseCode Podcast: Recent Episodes

JMac & Jess

The BaseCode Podcast is a collection of mini-series discussions between Jason McCreary and Jess Archer on practices for writing less complex, more readable code, testing, and building products.

View Details

Show Notes

  • Laravel Origins Documentary
  • Flood at Jess' house
  • Settlers of Catan
  • Bardcore + (Spotify playlist)
  • Development Stages
  • Laravel 9.x Shift
  • Shift in the Laravel Docs
  • Shift Workbench

View Details

Show Notes

  • Frequency illusion
  • Pagani Zonda
  • Tweet using the term nonda
  • Shift's Laravel 9.x repository
  • GitHub comparison tool

View Details

Show Notes

  • Laravel 9.x Shift
  • Laravel Upgrade Guide
  • Shifty Bits Newsletter #82
  • Class based routes in Laravel
  • Episode 2: Dead Code of The BaseCode Podcast
  • Configuring the code style applied by Shift

View Details

Show Notes

  • Example Pull Request for Laravel 9.x Compatibility
  • Can I upgrade Laravel
  • Laravel 9.x Shift
  • Programming by wishful thinking
  • Arrange, Act, Assert
  • Snapshot Testing
  • Test Fixtures
  • Tweet about InteractsWithProject trait

View Details

Show Notes

  • Pull Request for default model orderBy
  • Episode 14: The 5 Test Doubles
  • Tailwind Shifts
  • CI Generator
  • Pest Converter
  • Sharpening the saw
  • Sharp knives

View Details

Show Notes

  • Trailer: Laravel Documentary
  • Laravel Origins Premier
  • Grinding to $1,000,000 in revenue

View Details

Show Notes

  • Marvel Cinematic Universe
  • Laravel by the Numbers
  • Shift Workbench
  • Electron: Auto Update
  • Electron: Publish
  • Electron: Code Signing

View Details

Show Notes

  • Arduino auto clicker by Jess
  • Laravel dragon sticker from Yaz
  • Shift Workbench
  • Dark mode for Invoker by Di
  • Tweet about treehouse coding by Adrian Nürnberger
  • Modes in Vim

View Details

Show Notes

  • 7-Eleven Convenient Stores
  • PR #38025: Display exception for failed status assertions by Taylor Otwell
  • PR #38046: Display exception for failed validation assertions by Jess
  • Streamlining Laravel by JMac
  • Setting from URL in HTTP tests
  • Tweet about pricing by JMac
  • Value Propositions That Work
  • Human Shifts
  • Tweet about discounted launch prices by Sebastian Schlein
  • Shift Workbench
  • Shifty Plans

View Details

Show Notes

  • Laravel 9 Release
  • Abstract Syntax Tree
  • Rector
  • Nikic PHP Parser
  • Shift Blueprint
  • Getting Git

View Details

Show Notes

  • Desktop Apps with Electron by Marcel Pociot
  • Electron Builder
  • Vue Electron Builder
  • Alpine.js
  • Vue.js
  • Fable of the boiling frog
  • IPC in Electron
  • Shift Workbench

View Details

Show Notes

  • Shift Workbench Desktop app alpha release
  • Tweet about 90% is halfway done
  • Practicing YAGNI by JMac
  • Sunk Cost Fallacy
  • Shift Workbench

View Details

Show Notes

  • Burpril Challenge by Caneco
  • Code Refactoring on Wikipedia
  • Refactoring by Martin Fowler
  • Decomposition on Wikipedia
  • Decomposition vs Abstraction
  • Episode 9: Rule of Three
  • Refactor Fridays Live Streams on YouTube
  • Atomic Commits
  • Key points of Working Effectively with Legacy Code
  • Episode 6: Naming

View Details

Show Notes

  • Speak UP! Why We Should Use Big Words With Little Kids
  • Twins (1988)
  • Marc - Converting Bootstrap CSS project to Tailwind
  • Tailwind Converter Shift
  • Devin - Laravel security hardening
  • Enlightn: Boost your Laravel App's Performance & Security
  • spatie/backup package
  • Dyrynda - Time Travel
  • Laravel Time Traveling
  • Testing with Carbon
  • Back to the Future (1985)
  • Avengers: Endgame (2019)

View Details

Show Notes

  • Lighting for YouTube Videos
  • Question from João Santos
  • Tailwind Shifts
  • Episode 14 - The 5 Test Doubles
  • Laravel Facades
  • Mocking fluent interfaces with Mockery
  • Test Fixtures

View Details

Show Notes

  • West Sixth Brewing Amber Ale
  • Tailwind Shifts
  • Tweet from Marcus Poehls
  • Tailwind Configuration
  • Acorn JavaScript parser
  • Yii's CJSON class
  • JSON5
  • jsonc

View Details

Show Notes

  • Extreme Programming
  • Pair Programming
  • Jess's git aliases
  • JMac's dotfiles
  • Laravel shell aliases (including nah and mfs)
  • Pull Request for db:seed
  • Whipper Snipper
  • Adam Wathan's Tailwind live-streams
  • Building a service container from scratch (Jess's live-coding talk)
  • Red-Green-Refactor calculator TDD example

View Details

Show Notes

  • Geek Dad Jokes with Izzy
  • Timeboxing
  • Pomodoro Technique
  • What is Bullet Journaling?
  • Jess' side project
  • Laravel Spark

View Details

Show Notes

  • Laravel 8 Release Notes
  • Vimconf 2020
  • Can I upgrade Laravel yet?
  • Automated Laravel 8 compatibility PR
  • Handling exceptions in Laravel 8
  • Tidy up your tests with class based model factories
  • Laravel 8 model factory class
  • Mapping models with morphMap
  • Namespace Models Shift
  • Queuing closures
  • Job retry exponential backoffs

View Details

Show Notes

  • Laracon 2020
  • BaseLaravel
  • The Magic of Laravel Macros
  • Macroable classes
  • Episode 9: Rule of Three
  • Events
  • Weak Class
  • Eloquent: API Resources
  • Spatie Style Guide
  • Dyrynda Style Guide
  • Episode 1: Formatting
  • Gates and Policies
  • Laravel Jetstream
  • Expressive Eloquent Collections by Tim McDonald

View Details

Show Notes

  • Laravel Shift
  • laravel/laravel version diff
  • BaseLaravel
  • @stack Blade Directive
  • Portals in Vue 3
  • @includeWhen Blade Directive
  • @each Blade Directive
  • @once Blade Directive
  • Tweet: @if versus modern Blade directives comparison
  • View Components

View Details

Show Notes

  • The Laravel developer's guide to Vue SPAs by Jess Archer
  • Methods Are Affordances, Not Abilities
  • What is the difference between declarative and imperative programming?
  • Organizing your models from BaseLaravel
  • tlint - linter by Tighten

View Details

Show Notes

  • BaseLaravel: a field guide for streamlining Laravel applications
  • Tweet: Publishing an ebook
  • The Proximity Rule
  • Accessing the Request
  • Memoization or function cache
  • Fat Model, Skinny Controllers
  • Automated streamlining with the Laravel Fixer
  • Form Requests for more than validation
  • Laravel's Form Request

View Details

In this episode, JMac and Jess discuss some traditional object oriented programming practices which may or may not have a place within Laravel.

View Details

Show Notes

  • Tweet: Making a table to make tables
  • LumberJMac on Instagram
  • Tweet: The Otwell Table
  • Laravel's Service Container
  • Facade Class References
  • Episode 14 - The 5 Test Doubles
  • The bindings and singletons Properties
  • ValidatesWhenResolvedTrait
  • The prepareForValidation method

View Details

Show Notes

  • Laracon Online 2020
  • It's a problem when it's a problem
  • BaseLaravel
  • Tweet on boring code from Evan You
  • Laravel Up & Running by Matt Stauffer
  • Laravel: From Apprentice to Artisan by Taylor Otwell
  • Crafting maintainable Laravel applications at Laracon AU
  • "Broken Windows Theory" from Dead Code
  • "Painting the back of the cabinet" from The Ethos of Laravel

View Details

Show Notes

  • Getting Real by Basecamp
  • BaseCode Field Guide by JMac
  • The $61,392 Book Launch by Adam Wathan
  • The €963 Book Launch by Christoph Rumpel
  • The Mom Test by Rob Fitzpatrick
  • Jobs to be done
  • Authority by Nathan Barry

View Details

Show Notes

  • Laracon cancelled
  • Postmortem: Shift Database Outage
  • Tinkerwell
  • Laravel Linter

View Details

Show Notes

  • Laravel Vapor by JMac
  • Queues in Laravel
  • Is reinventing the wheel bad?
  • Tweet about Serverless Laravel by Jack Ellis
  • Idempotence
  • Abstract Syntax Tree
  • PHP Parser
  • Language Server Protocol

View Details

Show Notes

  • Tweet about JMac's Engagement
  • Why your team should not be upgrading your Laravel applications by JMac
  • Blueprint
  • Bullet Journalling
  • Microsoft's 4-day workweek

View Details

Show Notes

  • Tweet about JMac's Chili
  • Monorepositories on Wikipedia
  • GitLab Workflow
  • Building Laravel Shift on Full Stack Radio
  • Production-ready database queues
  • Laravel Forge
  • Laravel Vapor
  • Laravel Cashier
  • Laravel Spark
  • Laravel Socialite
  • Digital Ocean

View Details

Show Notes

  • Tailwind Converter Shift
  • Gifty Duck
  • Shift
  • A review of 2019 and goals for 2020 by JMac
  • Why I leave a job by JMac
  • Being a solopreneur has risks by Justin Jackson

View Details

Show Notes

  • Tips for PHPUnit Tests by Tim MacDonald
  • Sublime PHPUnit by Adam Wathan
  • Effective Code Review Checklist
  • Getting Started with Continuous Integration
  • Jess and JMac on Twitter

View Details

Show Notes

  • 10 Tips for Crafting Maintainable Laravel Applications
  • Outside-In Testing
  • Developer Ergonomics
  • Tweet about Spell Checking Tests
  • Testing validation in Laravel

View Details

Show Notes

  • Test Doubles by Martin Fowler
  • Tweet about Mockery Trait
  • Tweet about Test Double Priority
  • Push it to the boundary by J.B. Rainsberger

View Details

Show Notes

  • Laravel Snippet by Taylor Otwell
  • Building Blueprint Live Streams
  • Laracon AU
  • Introduction to TDD
  • Confident Laravel

View Details

In this episode, JMac and Jess discuss the different types of tests, when to use them, and ultimately what matters most is writing tests.

View Details

Show Notes

  • Laracon AU
  • Confident Laravel
  • Laravel Shift Automated Test Generator
  • Extreme Programming
  • The Pragmatic Programmer

View Details

Show Notes

  • Laravel Test Generator Shift by JMac
  • Implementation Patterns by Kent Beck
  • PHP: a factal of bad design
  • Symmetry in Practice by JMac
  • Jess and JMac on Twitter

View Details

Show Notes

  • Start testing your Laravel applications by JMac
  • The Wrong Abstraction by Sandi Metz
  • Rule of Three by Bob Nadler
  • Shape Up by Ryan Singer
  • Tiny Decisions and Emergent Design on Full Stack Radio

View Details

Show Notes

  • The Billion Dollar Mistake by Tony Hoare
  • Laravel HTTP Test Assertions by JMac
  • Empty Values in PHP
  • Introduce Null Object
  • Trilean Values

View Details

Show Notes

  • Removing Comments by Jason McCreary
  • "90% of code comments" meme
  • The Proximity Rule by Jason McCreary
  • Notes on Programming in C by Rob Pike ("Comments" section)

View Details

Show Notes

  • Clean Code by Uncle Bob
  • Two Hard Things quote by Phil Karlton
  • The Vim Learning Curve is a Myth by Ben Orenstein
  • String padding in Objective-C
  • Clarity over brevity in variable and method names by DHH
  • Send questions to JMac or Jess

View Details

Show Notes

  • Rate us in Apple Podcasts
  • return if in Ruby
  • BaseCode Refactoring Videos

View Details

Show Notes

  • The BaseCode Podcast
  • My Favourite Smells by Chris Wheeler
  • Scalar Types in PHP
  • Integer.times in Ruby
  • Carbon
  • ValueObject by Martin Fowler
  • Range Object by Martin Fowler
  • 5 Benefits of Immutable Objects
  • Enum Object in PHP

View Details

Show Notes

  • Shifty Plans
  • Guard statement in Swift
  • Cyclomatic Complexity
  • Map, Filter, Reduce in JavaScript

View Details

Show Notes

  • Outside-in testing
  • The Pragmatic Programmer
  • Broken Windows Theory
  • Are you a Boy Scout?
  • git add -p
  • Switch statements in Go
  • Refactoring UI Videos

View Details

Show Notes

  • Tailwind Color Picker by Jess
  • Seven Ineffective Coding Habits of Many Programmers by Kevlin Henney (Visual Honesty @ 22:10)
  • All the little things by Sandi Metz (Squint Test @ 5:10)

View Details

Show Notes

  • Jason McCreary
  • Jess Archer
  • BaseCode Field Guide
  • WTFs per minute
  • Implementation Patterns by Kent Beck