January 15, 2026
7 min read
By Cruz Morales

The Five F's: A Developer's Philosophy for Shipping

PhilosophyDevelopmentFreelanceBest Practices

The Framework That Ships

Every developer has a mental framework for how they approach problems. Some are formal methodologies learned in school or bootcamps. Others are hard-won heuristics earned through late nights and production fires. The "Five F's" is one of those battle-tested frameworks—a pragmatic, no-nonsense approach to getting software out the door. But here's the thing: I can only remember four of them. So let's explore what the fifth one might be.

The Four F's We Know

1. Fuck It

This is the moment of decisive action. You've been stuck on a problem for too long. You've read the docs, scrolled through Stack Overflow, and tried every "sensible" approach. Nothing works. So you make a call: you're going to try something unconventional, potentially ugly, but something. This isn't about giving up—it's about breaking analysis paralysis. Sometimes the best code is the code that exists.

In practice, this looks like: using a library you've never touched before, hardcoding a value to unblock yourself, or skipping a "nice-to-have" feature to hit a deadline. It's the developer's version of "done is better than perfect."

2. Fix It

This is the cleanup phase. You shipped the "Fuck It" solution, and now you're dealing with the consequences. Maybe it's a bug report from a user, or maybe it's just your own conscience nagging you about that hardcoded API key. Either way, you go back and do it right. You write the proper error handling, add the tests you skipped, and refactor that nested ternary operator into something readable.

This is where discipline separates the pros from the amateurs. Anyone can ship fast and dirty. The real skill is in coming back and making it sustainable.

3. Feature It

This is my favorite. You built something that was supposed to be a workaround, a hack, or a temporary fix. But then users started using it. They loved it. What you thought was a bug turned out to be a feature. So instead of removing it, you lean into it. You document it, improve it, and make it official.

This is the developer's version of "happy accidents." It's also a reminder that users don't care about your original intent—they care about what works for them. Some of the best features in software history started as unintended behavior.

4. (Re)factor It

This is the long game. Your codebase has grown. What started as a simple script is now a sprawling application with multiple contributors. The "Fix It" patches are piling up, and the technical debt is getting expensive. So you take a step back and refactor. You extract functions, introduce abstractions, and maybe even rewrite entire modules.

Refactoring isn't just about making code "prettier"—it's about making it maintainable. It's an investment in the future velocity of your team. And for freelancers, it's how you ensure that you can hand off a project to a client without feeling guilty.

The Fifth F: 20 Possibilities

So what's the fifth F? I genuinely can't remember if there even was one, or if it's just a collective false memory from the developer hivemind. But that's okay—let's brainstorm what it could be. Here are 20 options, ranging from the practical to the philosophical:

  1. Finish It – The discipline to actually complete what you started, not just move on to the next shiny thing.
  2. Fork It – When the original project doesn't fit your needs, take it in a new direction.
  3. Fund It – Recognize when a project needs resources (time, money, people) to succeed.
  4. Frame It – Define the problem clearly before jumping to solutions.
  5. Formalize It – Turn your ad-hoc process into a repeatable system.
  6. Fortify It – Add security, error handling, and resilience to your code.
  7. Flatten It – Simplify your architecture; remove unnecessary complexity.
  8. Flex It – Make your code adaptable to changing requirements.
  9. Flaunt It – Ship it publicly, write about it, and own your work.
  10. Forget It – Know when to walk away from a sunk cost.
  11. Forgive It – Accept that your past code was the best you could do at the time.
  12. Fragment It – Break a monolith into microservices or modules.
  13. Freeze It – Lock down a stable version before making breaking changes.
  14. Fuel It – Invest in the tools, infrastructure, and learning that make you faster.
  15. Fuse It – Integrate disparate systems into a cohesive whole.
  16. Filter It – Remove noise, focus on what matters.
  17. Forecast It – Plan for future scale and edge cases.
  18. Facilitate It – Make it easier for others to contribute or use your work.
  19. Finesse It – Add polish, animations, and delightful details.
  20. Free It – Open-source it and let the community take it further.

Which One Resonates?

Honestly? They all do, depending on the context. That's the beauty of a framework like this—it's not prescriptive. It's a menu of mindsets you can adopt depending on where you are in the project lifecycle.

If I had to pick one as the "official" fifth F, I'd go with Finish It. Because at the end of the day, shipping is the only thing that matters. You can Fuck It, Fix It, Feature It, and Refactor It all you want, but if you never finish, none of it counts.

Key Insights

  • Frameworks Are Flexible: The Five F's (or Four, or Six) isn't a rigid methodology. It's a mental model that adapts to your needs.
  • Shipping Beats Perfection: Every one of these F's is in service of getting software into the hands of users. That's the ultimate goal.
  • Your Fifth F Might Be Different: Maybe your fifth F is "Fund It" because you're bootstrapping a startup. Or "Forget It" because you're learning to let go of projects that no longer serve you. That's okay. Make it your own.

Takeaway

The next time you're stuck on a problem, ask yourself: which F do I need right now? Do I need to Fuck It and just try something? Fix It and clean up my mess? Feature It and embrace the chaos? Refactor It and invest in the future? Or Finish It and finally ship?

The answer will guide you. And if you remember what the original fifth F was, please let me know. I'm genuinely curious.

Cruz Morales

Cruz Morales

Freelance developer specializing in AI integration and multi-stack development. Based in Madison, WI.

More Insights