SAUCEY code?!

We've all heard of the SOLID principles, but have you heard about coding with SAUCE?

I doubt it, because I just made it up 😛.

So what's it all about, why do we need more acronyms?

Well, it's about a mindset in software development that I have tried to put my finger on over the years, rather than a set of hard and fast principles. The successful projects in my career have always been developed with this mindset. If you are developing with a SAUCE mindset you are likely to be producing high quality work. That and acronyms are just easier to remember.

Without further ado, here's what it stands for:

  • Scalable

  • Airtight

  • Usable

  • Consistent

  • Efficient

Scalable

Software should be scalable, in all of the following areas:

  • load it can handle
  • growth of the codebase
  • growth of team
  • support

Airtight

Software should be airtight, in all of the following areas:

  • requirements and acceptance criteria
  • security
  • architecture
  • input validation
  • tested logic paths
  • user journey
  • Software Development Life Cycle

Usable

Software should be usable, in all of the following areas:

  • UX
  • code maintainability / readability / extensibility
  • deployment
  • data structures
  • logging
  • support
  • documentation

Consistent

Software should be consistent, in all of the following areas:

  • UX
  • coding standards
  • data structures
  • industry standards

Efficient

Software should be efficient, in all of the following areas:

  • UX
  • performance
  • deployment
  • testing (automated)

Conclusion

I have tried over the years to summarize my attitude to software development and this acronym is what I have boiled it down to.

Perhaps next time you are working on a project, check the sauciness of your work before taking it to production. I'd love to hear of any improvements you notice after doing this.

Let me know in the comments if you think of something the acronym does not cover.