82 things
2026
- Batten Down The Hatches
- The PHPocalypse
- Caring in the age of AI
- Ian Laravel New'd Again!
- 13 Billion Tokens
- Feel The AGI
- Tokenmogged
- Everybody Loves Jev
- I Am The Harness
- AI Psychosis Day
- It's Orbin' Time
- Do Things & Tell People
- What do we do now?
- Sweet Hang #5: My Psychosis Moment w/ Jesse Hanley
- Marketing As Engineering
- First Week as VP
- Rice On Your Nachos
- Aaron's a VP at Laravel?!
- Laravel is for the Builders
- Token Town Live - OpenAI & Hugging Face
- The Era of Sol
- Token Town Live
- This week at Try Hard Studios - July 17, 2026
- Eating The Burst
- Token Town Live - Sol Release Day!
- This week at Try Hard Studios - July 10, 2026
- High On Fable
- Token Town Live - Fable 5 Is Back!
- This week at Try Hard Studios - July 3, 2026
- Back In The Game
- You Do Have To Care w/ John Drexler & Daniel Coulbourne
- This week at Try Hard Studios - June 19, 2026
- Big, Audacious Goals
- This week at Try Hard Studios - June 12, 2026
- Token Town Live: Fable 5 Is Here
- Ian's Over AI Coding?!
- This week at Try Hard Studios - June 5, 2026
- Using a browser agent on the worst government website
- The Edge of Safety
- How to protect your agent's context
- Agent orchestration, simplified
- Codex reverse engineered my studio lights
- Do The Hardest Thing with Jesse Hanley
- Token Town 002 (Live)
- Ian Shipped Outro!
- The coding harness for your coding harness
- Token Town 001: What is Anthropic Doing?!
- Anthropic kneecaps 3rd party tools?
- Crush My Competitors
- Escaping the Underclass
- Two Grandmas Roll Up
- Escaping the Underclass
- Testing a New Solo Version
- The Bounds of My Pettiness
- LaraProm
- Charge It To The Game w/ John Drexler & Daniel Coulbourne
- Scope Explosion
- No Turning Back
- Build a deep research tool
- Old Man Yells At Cloud
- I made $10,000 from a vibecoded app
- Are designers cooked?
- Isolate The Claude
- Your new agentic development environment
- This week at Try Hard Studios - March 13, 2026
- Building w/ AI
- I Just YOLO'd It
- This week at Try Hard Studios - March 6, 2026
- This week at Try Hard Studios - February 27, 2026
- Let Ian Cook
- The Counselors
- Anti Slop Vibe
- We’re Going To Europe
- This week at Try Hard Studios - January 30, 2026
- The AI Is Out There
- This week at Try Hard Studios - January 23, 2026
- Inside The Token Factory
- Sweet Hang #4: Laravel AI SDK w/ Taylor Otwell
- faster.dev
- Do You Wanna Win?
- This week at Try Hard Studios - January 9, 2026
- Fight Fire With Fire
123 things
2025
- 2026 Predictions
- Token Machine
- Hearts & Minds
- This week at Try Hard Studios - December 12, 2025
- The Big Boy Plan
- This week at Try Hard Studios - December 5, 2025
- AI Bro
- Database School Launch 🚀
- This week at Try Hard Studios - November 21, 2025
- Sweet Hang #3: Matching Tattoos w/ John O'Nolan
- A Ruthless Capitalist
- This week at Try Hard Studios - November 14, 2025
- We've Got ARR!
- This week at Try Hard Studios - November 7, 2025
- Laravel New, Again
- This week at Try Hard Studios - October 30, 2025
- This week at Try Hard Studios - October 24, 2025
- Cash Cow Mode
- This week at Try Hard Studios - October 17, 2025
- Sweet Hang #2: Humans Still Required w/ Jeffrey Way
- Developer Dad
- This week at Try Hard Studios - October 10, 2025
- Vision Quest
- This week at Try Hard Studios - October 3, 2025
- Infinite Feed of Content
- This week at Try Hard Studios - September 26, 2025
- Sweet Hang #1: Fever Dream w/ Michele Hansen
- Bury The Hatchet
- The future of this channel
- This week at Try Hard Studios - September 19, 2025
- The database for all your AI needs
- Laravel New
- Inventing The Wheel
- This week at Try Hard Studios - September 5, 2025
- Young Forever
- This week at Try Hard Studios - August 29, 2025
- No More Amateur Hour
- Sharding Postgres without extensions with PgDog founder, Lev Kokotov
- Face Man of the Empire
- This week at Try Hard Studios - August 15, 2025
- Programming by wishful thinking
- Full Sleazy Lock In
- Rewriting SQLite from scratch (yes, really)
- This week at Try Hard Studios - August 8, 2025
- Laracon US Recap
- You Can Just Do Things - Laracon 2025
- Make your site faster with this one technique
- How I hacked Laravel to ignore missing route bindings
- Vibe coding a visual email editor with AI, Laravel & Vue
- This week at Try Hard Studios - July 25, 2025
- Downloading YouTube videos
- Hot Takes!
- I built a simple first-party tracking system for my ads
- This week at Try Hard Studios - July 18, 2025
- I transformed my personal site into a magazine-style layout
- Level up your design with this CSS property
- Up & To The Right
- Laravel Serializable Closure: serialize the unserializable
- So Overpowered
- Hacking the Laravel router
- Vitess for Postgres, with the co-founder of PlanetScale
- Money Mindset
- Making MySQL faster
- Speed up your Inertia.js website with these 7 tactics
- Steve's Leaving Try Hard?!
- No Sparkle Buttons
- Focus Hard
- Screencasting.com Launch Failure
- From Prisma Founder to LiveStore: Building local-first apps with Johannes Schickling
- Fabricated Hype
- From Layoff to Leap of Faith: The Try Hard Studios Story
- Use Your Brain
- How Durable Objects and D1 Work: A Deep Dive with Cloudflare’s Josh Howard
- Peak Bubbly
- New Laravel starter kit (with built-in billing)
- 20 years of hacking Postgres with Heikki Linnakangas (cofounder of Neon)
- Nothing Ever Happens
- Building a model reservation system with atomic locks
- The Big Announcement w/ Taylor Otwell
- Become known for a thing
- Strategies for increasing your odds of success
- Building AI into your software (without the hype)
- Developing your personal API | Aaron Francis
- Super Ultra Tilted
- You can't trust a nice guy
- Building a serverless database replica with Carl Sverre
- The Haters Were Right
- Designing the data model for our course platform (with Stripe)
- I built Cloudflare Images in PHP (to scale & compress images)
- Eye on the Future
- Bonus Episode: PHP × NYC Chaos-Cast™
- A cookieless, cache-friendly image proxy in Laravel (inspired by Cloudflare)
- Distribution & Taste w/ Adam Wathan
- The Power of Putting Yourself Out There w/ Aaron Francis
- I was a kid once too
- Getting Laid Off On Paternity Leave With Twins
- Mob Mentality
- Why Most Developers Overcomplicate Everything w/ Aaron Francis
- The Hourglass w/ Jordan Gal
- Explore vs. Exploit
- Aaron Francis: Building and Teaching Cool Things
- Aaron Francis is putting PHP in Your JS Files
- The Big Tweet
- Laravel's Big Day
- Balancing Your Use of AI with Aaron Francis
- Open source work
- Robber Baron Mentality
- Postgres on bare metal with the CEO of Prisma
- Navigating Fatherhood, Business, & Hardships
- Fusion: Write PHP inside your Vue and React components
- #33 - Aaron Francis on Fusion, TUIs and Content Creation
- Don't Be A Dummy
- Epic Bets: Practical Tips for Betting on Yourself with Aaron Francis
- Testing my TUI
- I built a way to write PHP alongside your frontend
- Introducing Fusion for Laravel
- Strategies for increasing your odds of success
- Right Off The Stage
- I built a GUI in the terminal (with PHP)
- The Big Reveal
- Zombification
- 99 Dev Problems with Aaron Francis
- The Existential Threat
141 things
2024
- Year in review: 2024
- Yes Man
- Side Project Podcast: Aaron Francis
- Aaron Francis: Laravel Solo, Courses, Screen casting
- 4 Hours to Save Santa's Workshop
- Unreliable Narrator
- Doing Too Much
- Publish your work, change your life
- Chasing Vanity
- Reputation is portable
- Reservable models in Laravel
- Moving from Redis to SQLite with Mike Buckbee
- The To-Done List
- This doesn't warrant a blog post
- Special Guest Aaron Francis
- Make 5x faster outbound requests in Laravel
- Setting up Tailscale and Synology for sharing video files
- Configuring (and viewing!) logs in Laravel
- Definitely For Profit
- Because I wanted to
- The Multi-Select with Caleb Porzio
- Building a TUI
- 10,000 Pennies
- 57 - Bonus: HBO Show Tiermaker!
- Joint stream with Joe Tannenbaum
- Building a new Laravel dev runner (as a TUI)
- Tier Maker
- Vectors in SQLite! (with libSQL)
- Try Hard Empire
- Launching Mastering Postgres!
- Create A Spectacle
- Mastering Postgres
- Bootstrapping an email service provider (with Jesse Hanley)
- Talking About Liquid
- Creating a Postgres platform with Monica & Tudor from Xata.io
- Statamic Roundtable with Jack McDade, John O'Nolan, Caleb Porzio, & Adam Wathan
- Tips for handling timezones in Postgres
- Heroku's glory days & Postgres vs the world, w/ Craig Kerstiens
- Launching Flux (Live) with Caleb Porzio
- SQLite is not weakly typed!
- Finding missing orders with a recursive CTE
- Building a Flyio driver for Laravel Sidecar
- Paid In Respect
- Building a Fly.io driver for Laravel Sidecar
- Free, fast, full text search: Laravel + Typesense
- Configuring (and viewing!) logs in Laravel
- Live Q&A re: $57M fundraise, Laravel Cloud, & the future of Laravel
- Special Announcement - Accel invests $57M into Laravel Products & Open-Source Framework
- How to Make $2,000,000 From Courses and Quit Your 9-To-5
- Clean up after yourself
- Stay Lean, Stay Clean with Caleb Porzio
- Laravel's higher order collection proxies
- Paige Against the Machine – Starting a Robopocalypse with Aaron Francis
- Zero to $125,000 in 30 Days: My Exact Course Launch Strategy
- Teaching Databases, Writing PHP, and Independent Work with Aaron Francis
- Don't undo what you haven't done
- Mostly NPTM with Caleb Porzio & Daniel Coulbourne
- How to Be Better than 96.487% of Developers
- The Milk of Texas
- Jank Free With Caleb Porzio
- An argument for logging off
- Interview with Aaron Francis
- Laravel tip: Higher order collection proxies (and Zevia)
- Ruby on Rails + SQLite with Stephen Margheim
- Developer to Business Owner
- Code tip: Don't undo what you haven't done
- File based routing in Inertia.js
- Aaron and Caleb Porzio talk wrappers
- Aaron Francis, Inc.
- Code tip: clean up after yourself (and a seltzer review)
- SQL for fun and profit
- The Contest
- Laravel Dusk: painless browser automation
- You're always doing something wrong
- Struggling with Laravel + Vite
- Idea About Ideas
- Luck Surface Area | Multithreaded Income Episode 43 with Aaron Francis
- SQLite's WAL mode is fast fast
- Just Do Stuff
- Building a Life OS
- Automating my life (or at least the boring parts)
- Building a Life OS
- Push The Button
- High Performance SQLite
- Launching High Performance SQLite
- Aaron Francis on being a Christian in tech
- How Aaron Francis Turned a Layoff Into a Thriving Educational Empire
- Beginning of the Empire
- Migrating from Postgres to SQLite with Kent C. Dodds
- One Big Bet
- Controlling randomness in Laravel (watch me code)
- Production SQLite with Turso and libSQL
- Livecoding: create a podcast from YouTube videos
- Mostly HVAC with Dan Myers, CEO of Flair
- SQLite is not weakly typed!
- Morning Person
- Offline-first, multiplayer SQLite
- Real-time monitoring for Laravel applications
- Elevate Your Video Developer Brand: Featuring Aaron Francis
- Laravel Pennant: first-party feature flags
- S-Tier Software with Taylor Otwell
- Making videos developers actually want to watch
- Distributed SQLite with Litestream and LiteFS
- Laravel adds a new email provider
- Business Dad
- DHH discusses SQLite (and Stoicism)
- Laravel vs React
- Laravel vs. JavaScript with Dax & Adam Elmore
- Laravel + Livewire todo app (and so much more)
- It's All Vibes
- Laravel Horizon: queue monitoring + configuration
- The Secret
- Laravel's secret weapon: macros (watch me code)
- DevRel, Content, Going out on Your Own w/Aaron Francis
- Make faster outbound requests with Laravel (10x faster, actually)
- AI Therapy Connoisseur
- Laravel Octane: supercharge your Laravel applications
- Fight or Win
- We're Gonna Make It
- Laravel + Cloudflare D1 speedrun
- Building side projects as layoff insurance
- YouTube Growth Secrets
- Ben steps away from Tuple
- Ben steps away from Tuple
- It Gets Harder
- Super Epic Crazy with Adam Wathan
- I got laid off (and what I'm doing next)
- Try Hard Studios
- What if you tried hard?
- The Layoff
- Indie Tycoon
- Careful, Careful!
- Do literally anything
- What's The Good Word?
- YouTube as a Business with Aaron Francis
- Real Dad Stuff
- My Mind Vise
- Your Glove Situation
- A Man of Culture
- It's Content, Baby!
- Products vs. Creator Businesses
98 things
2023
- Year in review: 2023
- Shipping SQLite to Lambda (with Laravel Vapor)
- Two new MySQL expressions
- Supercharge Markdown with Laravel
- Cody: the AI assistant that actually knows your codebase
- Static site generators & personal websites
- You Need Tinker Time with Adam Wathan
- Customizing Laravel Pulse
- Faster than a regular database index
- Ecosystem of Cards
- Programming Books w/ Aaron Francis
- Creating a custom Laravel Pulse card
- How I add millions of rows to MySQL (for performance testing)
- Rendering Blade components in Markdown
- We Didn't Have JSON In My Day
- Targeting only inline code elements with Tailwind Typography
- Write Laravel, not PHP (feat. Aaron Francis)
- You don't always need JOINs
- Launching Screencasting.com while having a job and a young family
- Make self-healing URLs with Laravel
- Self-healing URLs in Laravel
- Read the docs (don't skim them)
- Saving a SaaS on the weekend
- Storing feature flags as JSON (with indexing)
- Farming, Threadbois, & Meme Lords with Jeffrey Way
- Read the docs like a book
- Laravel's atomic locks
- Store 8 feature flags in 1 integer (Bitwise operations in MySQL)
- An Introduction to Laravel Nova
- SSG is dead. Long live cache.
- Nobody Uses Trucks For That
- The SQL Injection Slide with Sam Selikoff
- You don't need NoSQL (use MySQL)
- How To Level Up Your Video Content with Aaron Francis
- All Things Livewire with Caleb Porzio
- Easy database indexing strategies
- Your Computer Is Your Sanctuary
- Using MySQL to stop freeloaders (in only 8 minutes)
- I love my database GUI
- Late Night Bite
- No more Docker for PHP
- Your database will break in 2038 (or sooner)
- The Power of Sharing Expertise
- Database enums are weird
- Just Enough Laracons
- Growing an audience, making difficult decisions, launching screencasting.com
- INT(11) is a lie
- Galaxy Quadrant Theory
- Faster database indexes (straight from the docs)
- The End
- Forward Only!
- Screencasting
- The Week of Aaron
- Faster geospatial queries in MySQL
- PHP doesnt suck (anymore)
- Empanelling Aaron Francis
- He Likes a Manifesto
- Pagination in MySQL - offset vs. cursor
- The Year of Livewire
- The Secret Is to Get a Truck
- PHP doesn't suck (anymore)
- Colleen is having all the fun
- It's React in PHP
- The Pilot
- Stop using COUNT(id) to count rows
- Make your database queries 1000 times faster!
- Publishing your work
- PHP on the frontend! No more Javascript!
- Don't hide your database indexes!
- Burned out on Javascript
- On the precipice of something great
- Good tweets are good
- Datetimes versus timestamps in MySQL
- Storing money in MySQL (the right way)
- Generated hash columns in MySQL
- Finish your projects
- React Server Components are a bad choice (for shipping)
- Using redundant conditions to unlock indexes in MySQL
- MySQL case insensitive searching (don't use LOWER)
- Colleen is pumped
- Character sets and collations in MySQL
- PHP is the future
- We're HelloQuery now 👀
- Benchmarking, Type Systems, and Good Hustle
- Should a parent with young kids try to bootstrap a new startup?
- Why isn’t MySQL using my index?
- We didn't break up!
- MicroConf Recap
- Customer interviews lead to a new hypothesis
- MySQL for Developers with Aaron Francis
- Two Separate Businesses
- Plans for March (Subject to change)
- MySQL for Developers
- Video
- Hi Sinclair! (and recapping Laracon EU)
- The Nova launch and a (small) pivot
- Testing
- New year, new energy
60 things
2022
- Year in review: 2022
- Looking back, looking forward
- APIs
- Dynamically Generating Thousands of OG Images for a Viral Twitter Campaign
- Conferences
- We're back baby!
- Laravel's safety mechanisms
- Microservices in your monolith
- Live Streaming Tools and Toys
- Microservices in Your Monolith
- Deploying Torchlight
- Indexing JSON in MySQL
- Build your own luck
- Being a developer, content creator, and entrepreneur with Aaron Francis
- Aaron Francis on Torchlight
- Database performance for application developers
- Sometimes they say yes
- Pagination in MySQL
- Is COUNT(*) slow in MySQL?
- Use Cases
- Marketing for maintainers
- Half a Job You Love
- Publishing your work increases your luck
- Back from Vacation
- Developing Serverless Functions in Laravel
- The RailsConf At Home 2022 Ruby Podcast Panel
- Aaron & Colleen from Hammerstone
- Remix with Kent C. Dodds
- (Extra) RailsConf Podcast Panel
- Email Outreach, GitHub Actions, and a Demo Site
- The Rails SaaS Conference
- The Calls are Happening
- Glimmers of Hope
- We Sent the Email! And Made No Sales!
- Phoenix and LiveView with Chris McCord
- Chris Quit (ft. Aaron Francis)
- Laravel Nova 4.0
- It's Time to Business
- Hammerstone changes, Refine, and finalized Chipper pricing
- The Landing Page Lives!
- Some Big Changes
- Bullet Train Goes Open-Source
- Aaron's New Job, Balancing Client vs Product Work
- Origin Stories
- Refine, Sidecar, Laravel, and Serverless
- Is Rails Over? Aaron Goes Full Hipster
- Adding a microservice to your monolith
- Conferences and First Revenue 💸
- Bonus: Talking Twitter with Matt Swanson
- A little bit more Lambda
- Laracon is Tomorrow 😬
- How to use Twitter like an actual human being
- First Nova Install 🎉 and Prepping for Laracon
- All the Frontends, Onboarding Nova, and MySQL Stuff
- Balancing indie life with twins, marketing to developers, and growing your Twitter audience
- Sean Has Known All Along
- Efficient MySQL pagination using deferred joins
- Inertia server side rendering on Laravel Vapor
- Using Ziggy with Inertia server side rendering
- Back in the Saddle
46 things
2021
- Work and Family, with Matt Wensing
- Optimizing Time-to-UI and Next Steps for Livewire
- (Finally) Exiting the Trough of Despair
- React, Vue, Laravel, Rails, and Hotwire. Oh my!
- Bitmasking in Laravel and MySQL
- Using Laravel's schema builder outside of migrations
- Launch Day is in Sight
- Coffee, Renderless Components, and Confidence
- Efficient distance querying in MySQL
- Colleen Reaches Enlightenment
- Back in the Saddle
- Pheasants, Live Coding, Filters-in-a-filter
- Hiring a Personal CFO
- A little bit of Lambda
- Who _Are_ You?
- Hammerstone, a History
- 2 Jobs, Stabilizers, and Torchlight Clients
- Foreign Keys and Calvin & Hobbes
- Bonus Episode: A Deep Dive into Sidecar with Greg Skerman
- Colleen's First Week, Refine Pricing, and Acquiring a Product
- Riding Sidecar with Aaron Francis
- Billions with a "B"
- Hammerstone is Growing 👀
- Railsifying Refine, Torchlight, and the Myth of the MVP
- The exceeding cleverness of Laravel's atomic database locks
- Fixing images on Laravel Vapor with League\Commonmark
- Updates, Updates, Updates
- Laravel + Vue: ReferenceError document is not defined at insertStyleElement
- The perfect Vercel + GitHub Actions deployment pipeline
- Separate marketing + app sites with Laravel Jetstream and Inertia.js
- YNAB For Business? Progress in Rails, Demand for Laravel.
- Blogging with markdown in Laravel
- Sales Safari for Torchlight.dev & Wanting to Give Up
- Rough Week, Good Friday
- Healing Back Pain, Twitter Coincidences, and Torchlight.dev
- Rails Integration and Laravel Admin Panels
- Shedquarters
- Shedquarters, Refine Refinements, and Laravel Airdrop
- Reliably building frontend assets with NVM and Yarn (or NPM)
- Texas Weather, Hotwire Success, and Refinements
- Sean's Birthday, Mental Health, and Hotwire
- Andrew from Bullet Train Stops By
- Modularizing to improve the developer experience
- What's Your Name?
- Fixing "Laravel PackageManifest.php: Undefined index: name" in GitHub Actions
- Is making software Sisyphean?
4 things
6 things
38 things
2015
- The Top 5 Regrets of Dying People
- Living the Quiet Life
- Be Kind
- Subconscious Information Processing
- How Did It Become OK For People To Be Late For Everything?
- No Time For Something Important? Try Waking Up Earlier.
- I Never Finish Anyth
- The One With No Article
- We Are Just Not Here Anymore
- Stuff
- Twenty Six, Unmarried, and Childless.
- The Finite, Irreplaceable Hours of Your Life
- A Little Bit of Slope Makes Up For a Lot of Y-Intercept
- You Can Be Busy Or Remarkable, But Not Both
- Move Your Feet
- Find The Time
- Stop Taking Yourself So Seriously
- Cool Is Overrated
- Work vs Life
- There Is No Speed Limit
- How To Blog and Give Zero F***s.
- But You Did Not Persuade Me
- The Power Of Sponge Learning
- Confessions of a Recovering Lifehacker
- Introduction to Financial Accounting
- Tomorrow Is Not A Suitable Day For Doing Things
- Career Advice: Don't Try To Be The Best
- Dads: Be Doers
- Most People Won't
- Don't Follow Your Passion
- Entreporn: The Fallacy That Wastes Your Life
- Hang Around With People Who Get Sh*t Done
- Create Time For What Is Necessary
- Why I'd Rather Be Crazy Than Boring
- Do The Work.
- Luck Surface Area, or How To Create Luck.
- What have you tried?
- Do Things, Tell People
1 thing
13 things
2013
- Encrypting and encoding information in URLs with PHP
- My Aperture backup strategy
- Remaking "Snake" in Excel
- Using MySQL triggers to ensure immutability
- Yii and the asset pipeline: part 2
- Scheduling jobs with Yii
- Automating Yii migrations on Heroku
- Wrangling timezones in PHP, MySQL, and Yii
- Importing transactions into Mint
- Yii, Heroku, and the asset pipeline
- How I use Evernote and IFTTT
- Idea extraction gone terribly wrong
- Carving the statue of David