Continuing the discussion from Processing the last.interi archive:
In the modern era, software is commonly delivered as a service: called web apps , or software-as-a-service . The twelve-factor app is a methodology for building software-as-a-service apps that:
- Use declarative formats for setup automation, to minimize time and cost for new developers joining the project;
- Have a clean contract with the underlying operating system, offering maximum portability between execution environments;
- Are suitable for deployment on modern cloud platforms , obviating the need for servers and systems administration;
- Minimize divergence between development and production, enabling continuous deployment for maximum agility;
- And can scale up without significant changes to tooling, architecture, or development practices.
The twelve-factor methodology can be applied to apps written in any programming language, and which use any combination of backing services (database, queue, memory cache, etc).
I am personally surprised by how few people I talk to know about this; not because it is important, but because I hit the kool-aid so hard on this, all my froody friends didn’t catch the trend, and I learned a bunch of tech bro tech…
I think the concept is brilliant, but the execution is so heavily sponsored/so-opted by large infrastructure-as-service companies, it doesn’t really matter to the common technologists if they are trying to stay away from proprietary platforms.