views:

103

answers:

1

The answer may be based on 4 aspects:

1.- simplicity: we all hate write tons of code for simple tasks like in java, this is the reason why we use php, importing design patterns from java/university world is good, but usually independent developers like me need dev speed more than enterprise employees.

2.- backend: how easy will be building a backend in symfony 2 vs lithium?. not always we build a facebook like project and we need our preferred framework to get the job done on little projects too.

3.- community and docs

4.- performance: scale good with the minimum

A: 

As the lead developer of Lithium, my answer is going to be a little biased, but I'll try to address each one of your points in brief:

  1. I believe the code required to write a Lithium app is simpler and more concise than the corresponding Symfony code would be. We favor more declarative, idiomatic code, and less configuration.

  2. Lithium scales down to small applications quite well, even very tiny ones. See the "Route Handlers" section of this post for an example of how to design a micro-app in a single file: http://dev.lithify.me/lithium/wiki/blog/Lithium-0-9-The-Lambdas-are-awesome-Edition

  3. Lithium has fairly comprehensive (and growing) API documentation (http://lithify.me/docs/), as well as a set of tutorials (http://dev.lithify.me/drafts/source/en) and various other documentation, which we are developing a portal to aggregate. Our community is small, but very solid and growing rapidly. Also, we're fortunate enough to have some very high-ranking members of the PHP community in our user base, including PHP documentation and core code contributors, and popular conference speakers, including these guys: http://analog.coop, these guys: http://fictivekin.com/ and the founder and former lead developer of the Joomla project.

  4. Lithium's core code is fairly well optimized, but the most important part about it is that it doesn't remove any choices from you about your application's performance. Because there is always a trade-off between performance and speed of development, Lithium allows you to get up and running quickly, but makes it easy to change how the framework operates in order to performance-tune it to your specific needs. You can easily enable and disable features, and replace core classes with your own implementations.

Hope that helps!

Nate Abele