What is LLAMA?
Quite simply, it stands for: List, Load, Add, Modify, Archive (LLAMA) - these are the things we do with data when building applications.
And for those of you who don't know, CRUD stands for: Create, Read, Update, Delete
So this is great, right? It's much better sounding than CRUD, and who doesn't like llamas?! But, there's much more here than just an acronym change - here's an overview of some of the concepts behind LLAMA:
- Develop everything like an API
Developing applications like RESTful API's has several advantages: Functionality that is portable, functionality that is compartamentalized which makes for easier maintenance and smoother workflows.
- Never delete data!
That's why we have ARCHIVE instead of DELETE. With massive data storage available at insanely cheap prices, there is no reason to EVER delete data. Data is priceless, and it should be retained for who knows what - the things you can't think of needing it for now, but that you will wish you had it for in the future.
- Think big, code small.
By following an API-like coding model and rigidly leveraging LLAMA methods, you can create an application framework that is tiny and where up to 90% of the functionality relies on a single set of core methods. And this is why I am calling this, "Project Small".
LLAMA and its underlying concepts attempt to solve massive problems that are plaguing many application development teams:
- Insanely large codebases
- Immense costs associated with large development teams
- Massive learning curve when taking over an existing application
I will be setting up a website for this project and am hoping other developers in the community will get involved.