RSSAmplifier

Blog

Josh Owens

Developer, builder, AI-native. Thoughts on code and shipping software.

joshowens.devRSS feed ↗59 posts

Latest posts

My AI Coding Pipeline Has a Team of Rivals. It Rejects Code on Purpose.

Lincoln staffed his cabinet with the people who wanted his job. The A(i)-Team plugin staffs its pipeline with agents whose only job is to reject bad work, capped so nothing loops forever.

The Harness Tax

A `claude -p` call bills for its own furniture before your prompt even loads, and the fix that buys 4.4x on a quick call turns out to be almost worthless on a long agentic run, because they're two different taxes.

I Had 40 Engineers and AI Tools. Here's Why Adoption Still Stalled.

An engineering director's honest story of failed AI adoption: stalled workflows, review bottlenecks, and how to build an AI workflow your dev team will actually use.

I Told AI to Write Tests First. It Wrote 3,400 of Them.

TDD with AI agents sounded like the right call. Then I got 3,400 tests, half of them testing JSON files and config. Here's what I learned fixing it.

I Mass-Deleted My MCP Servers. Here's What I Use Instead.

MCP servers burn your most valuable resource: context. I replaced mine with skills and CLI tools. Same capabilities, a fraction of the overhead.

Your AI Doesn't Need Better Prompts. It Needs a Sprint Planning Session.

I was vibe coding with Claude for months. Then I started treating it like a real teammate — with PRDs, scoped tasks, and standing context. Everything changed.

Someone Put Claude in a Bash Loop Called Ralph Wiggum. It Changed How I Build Software.

A one-line bash script called Ralph Wiggum fixed context rot by restarting Claude in a loop. Then Anthropic broke it. That failure led me to subagents and changed how I build software.

Context Rot: Why Your AI Gets Dumber the Longer You Use It

Your AI starts brilliant and ends useless. It's called context rot — LLM performance degrades as context grows. Here's why it happens and how context engineering fixes it.

I Couldn't Find Anything in My Claude Chats, So I Accidentally Built a Life OS

How I turned 30+ scattered Claude chats into a 500-file markdown system that runs my entire life - in one month.

Changing code culture

Sometimes you want to improve your working environment, try these ideas to get started...

Dealing with Burnout

Being a developer can lead to burnout, learn to understand the signs

5 SEO Tips for JavaScripters

Take a few minutes and really spruce up your javascript app search results. Learn how...

Javascript is the gateway drug

Building your own Meteor Galaxy hosting setup with Digital Ocean

But does Meteor scale?

Using a CDN with your production Meteor app

Building an admin app as a microservice with Meteor.js

Build an admin app to keep logic seperate in Meteor.js

Why Meteor needs a conference

Being a developer can lead to burnout, learn to understand the signs

SSL and Meteor.js

Why add SSL to your website? Learn the how and why with Meteor

Easily debugging meteor.js

Sometimes you need to go deeper than console.log, learn how.

Fat Models, Skinny Templates

Have business logic for your Meteor app? Learn where to park it in your app...

Meteor Security 201

Securing Meteor publications is vital. Are you doing it right?

The curious case of the unknowing leaky Meteor security

Don't accidentally leak out private data. Learn how to properly setup Meteor.js

Facebook to acquire Meteor

Facebook is buying up Meteor. Just Kidding, April Fools :)

Environment Settings and Security with Meteor.js

Security of a meteor app is important. Is your app secure?

Using MongoDB geospatial index with Meteor.js

Learn how to find and index locations using MongoDB

Cucumber.js and Meteor - The why and how of it

Learn why you should test your javascript code?

Getting started with Meteor.js

A great list for getting started with Meteor.js

Google analytics events, goals, and Meteor.js

Making Meteor.js and Google Analytics work together

What is Meteor.js?

Learn more about what Meteor.js is...

Using MongoDB aggregations to power a Meteor.js publication

Need to aggregate data from collections? Learn how with Meteor.js and Mongo.

Adding comments to your Meteor.js app

Quickly add comments to your meteor app

Dealing with Timezones in javascript

Dealing with timezones can be tricky with javascript. Learn how...

What is Meteor.js club?

Want to meet other meteor folks?

Modulus vs Heroku vs Digital Ocean

Looking for a place to host your Meteor.js app?

Meteor Security 101

Thinking about launching a Meteor app? Learn how to secure it.

Meteor and Mongo Performance

Curious about how a top Meteor app is scaling? Learn here...

How to optimize your Mongo database for Meteor.js

Speed up your Meteor apps by optimizing MongoDB

Meteor and Angular - a match made in heaven?

Can Meteor.js and Angular.js work together?

How to scale a meteor.js app

Growing user base for your Meteor app. Learn to scale it up here...

Where is the ORM in Meteor?

Meteor doesn't have an ORM, let us look at some other options

How to organize your Meteor.js app

Organize your first Meteor.js with these simple tips.

How to upgrade your Meteor.js package to work for 0.9

Want to write your first meteor package? Learn how here...

What I've learned from a year with Meteor.js

What I've learned from a year with Meteor? Click here and watch my thoughts.

Why you shouldn't wait for Meteor 1.0 (to start using it)

Meteor.js is ready to use right now, find out why!

The 'deeper why' of open source

Do you use open source software? Think about the advantagous of giving back...

Being a maker is in my DNA

When did you get started learning tech? This is the story of how I got started

Building Communities are hard

Growing a community is hard.

The right tool for your job

Picking the right library or package can be hard, Here are things I look for...

Launch it, quick!

Got an idea for an app? Build it quick and learn what works...