Chris Woody Woodruff

@cwoodruff
668 Followers
653 Following
1.4K Posts

I like creating software solutions to solve problems. I am also a speaker, podcaster, and author on technology. I love htmx, server-side web dev, data, Web APIs, baseball and bourbon. .NET/Web Dev MVP

All of my posts are created using recycled electrons

Website/Bloghttps://woodruff.dev
GitHubhttps://github.com/cwoodruff
LinkedInhttps://www.linkedin.com/in/chriswoodruff/

htmxRazor v2.0.1 ships today. This is the Platform and DX release.

Six features: VS Code extension (97 snippets), JetBrains Rider plugin (81 live templates), CSS Anchor Positioning for tooltip and dropdown, an interactive component playground, a Theme Builder with CSS download, a SignalR connector, and a Kanban board with full keyboard navigation.

Targets .NET 10. No breaking changes. 1,838 tests.

dotnet add package htmxRazor --version 2.0.1

https://htmxRazor.com

Conway's Law runs in both directions. Everyone cites the forward direction: org structure determines system structure. Nobody talks about the reverse.

Restructure the system without restructuring the teams, and the teams will rebuild the system they are organized to produce. Communication patterns outlast code. The Slack channel outlasts the consolidation initiative.

Service boundaries are headcount requirements written in a different language.

https://simplicityfirstphilosophy.substack.com/p/conways-revenge

Conway's Revenge

How Your Org Chart Keeps Writing Code When Nobody Is Watching

The Simplicity-First Philosophy

The inaugural River City AI & Dev meetup is on April 15!

We're kicking things off with a live demo of Squad, a multi-agent AI orchestration framework that deploys a full team of specialists directly in your repo. Agents fan out in parallel, build, test, review, and ship pull requests. It's wild, and you need to see it.

πŸ“ Bamboo Grand Rapids
πŸ• 6:00 – 8:30 PM
https://rivercity-ai.dev/

#RiverCityAI #GrandRapids #AI #OpenSource #Developer #Michigan

The next #UnhandledException is now live. I was joined by @cwoodruff to chat about the power of keeping things simple in software development.
https://unhandledexceptionpodcast.com/posts/0085-simplicityfirst/ #dotnet #softwaredev

43% of engineering time is spent on coordination. That number compounds with service count. At 140 services, three engineers spent their entire time maintaining service contracts. Not shipping features. The Stripe survey puts it at $77K per developer per year. Run the math for your team: salary x 0.43 x headcount. That is the coordination tax.

https://simplicityfirstphilosophy.substack.com/p/the-architecture-tax

The Architecture Tax

Why Your Technical Decisions Are Your Biggest Budget Line Item

The Simplicity-First Philosophy

Your ARB has never rejected a proposal for being too complex. Only for the wrong kind of complex.

The board faces an asymmetric cost structure: bad rejections are immediate and attributed. Bad approvals are delayed and diffuse. Loss aversion does the rest.

The Governance Trap is how ARBs manufacture the complexity they were built to prevent:

https://simplicityfirstphilosophy.substack.com/p/the-governance-trap-how-architecture

The Governance Trap: How Architecture Review Boards Manufacture the Complexity They Were Built to Prevent

The board that was built to catch over-engineering became its most reliable sponsor.

The Simplicity-First Philosophy

River City AI & Dev (Grand Rapids, MI) is looking for speakers and sponsors!

Speak: AI tools, agents, dev workflows, or any tech topic you're excited about. All formats welcome.

Sponsor: support the community and get in front of West Michigan developers.

Meets every 3rd Wednesday β€’ http://rivercity-ai.dev

#RiverCityAI #GrandRapids #AI #SoftwareDev #OpenSource

Nobody designed the system. It accreted, one reasonable decision at a time.

A cache for performance. A config service for flexibility. A second API gateway because migration kept getting pushed.

112 boxes later: 40% of the engineering budget on maintenance. Features are taking weeks instead of days.

The Complexity Trap is structural. Five recognizable patterns. A way out.

Part 1 of new series:
https://simplicityfirstphilosophy.substack.com/p/the-system-nobody-designed

#SoftwareArchitecture #EngineeringLeadership

The System Nobody Designed

Why every reasonable decision adds up to a system nobody wanted

The Simplicity-First Philosophy

Shipped a major update to Baseball History, my open-source MLB stats project!

- 30+ REST API endpoints (no auth, OpenAPI spec, Scalar docs)
- Player Comparison Tool
- Awards & Voting explorer
- Postseason browser (1871–present)
- Salary Explorer (1985+)

Built with ASP.NET Core 10, htmx, and EF Core. Lahman DB, SQLite, fully open source.

https://github.com/cwoodruff/baseball-history

#OpenSource #Baseball #DotNet #htmx #Sabermetrics

#TechnologyAndFriends, Episode 896:
Chris Woodruff (@cwoodruff) and Joe Guadagno (@Jguadagno) on morespeakers com
https://youtu.be/WOSrI2cgk10
Chris Woodruff and Joe Guadagno on morespeakers com [EPISODE 896]

YouTube