Over the years, I have seen many bad solutions that were built with outstanding tools. As I have said before – as others before me have said – a fool with a tool is still a fool. Decision makers like to pick so-called enterprise solutions, or best-of-breed tools. Good for them. However, in most cases, these tools provide a double-helping complexity along with their enterprise features, adding to the total-cost-of-ownership (TCO) of a software asset and decreasing the agility of the enterprise.
Therefore, I am big supporter of good-enough-technology. There are plenty of vanilla flavored but mission critical applications out there that do not require the most feature-rich tools. Some of us live in skyscrapers, but the rest of us live in houses. Construction techniques that are good for one type of structure are inappropriate for the other.
The question is not whether .NET is superior to PHP, or whether MySQL is superior to PostresSQL. It starts with the requirements, stupid! I feel myself getting cranky every time I read that a certain tool or approach is superior to another.
I assert: certain developers are superior to others regardless of the tool. Also, certain tools are superior to others in certain circumstances. In many circumstances, given the requirements, good enough is good enough!
Speaking of good enough, I am very impressed with SQLite. I find that it is a blindingly fast little database that can be used from PHP, Python, Java and C#. In PHP and Python, I was able to write my own functions anbd use them in SQL statements. If you have a client who does not require heavy support for concurrent database writing, if you are building a desktop application that is being accessed by a single user or if you need a good and reliable in-memory database, SQLite is more than good enough.
I have not put this database through its paces to see how well it runs on a website, but, given its speed, I expect that it releases resources quickly. As long as the web application does not require a lot of writing, I expect the SQLite could support many of the small website and web applications I have seen. Give it a try, and let me what you think.