4 ms·
Instead of focusing on making a PHP framework that's like Rails, you should focus on "how can I boost developers' productivity in a unique way?" This is how lib
by Skoofoo 14y ago
Instead of focusing on making a PHP framework that's like Rails, you should focus on "how can I boost developers' productivity in a unique way?" This is how libraries and frameworks become popular. If you try to model your software after existing software, it'll only ever be second-best, at best.
Rails became popular despite few people knowing Ruby because it took full advantage of the language's expressiveness and ergonomics and had innovative abstractions.
Today we're slowly shifting towards things like Meteor, which combine back-end and front-end development and make it super simple to write dynamic single page web-apps.
The primary issue with your framework is that the PHP ecosystem is already saturated with traditional MVC frameworks. Most experienced web developers who care about their craft have been shunning PHP for a while now [1], and those who do use PHP will probably stick with a more stable, documented and in-demand framework like CakePHP.
The pragmatic thing to do would be to contribute to your favorite framework instead of making a new one, unless you can start something that boosts productivity in a unique way. Contributing doesn't have the same glamour as leading your own thing, but remember that this is open source -- we're all on the same side.
[1] http://me.veekun.com/blog/2012/04/09/php-a-fractal-of-bad-design/ http://me.veekun.com/blog/2012/04/09/php-a-fractal-of-bad-de...
- jtreminio 14y agoPeople keep bringing Cake up as some sort of state of the art PHP framework - it's not. It's right there next to CodeIgniter and Symfony1: best left to rot and not used for any new projects. Look to Zend Framework 2, Symfony2, Silex, hell even Laravel 4 for quality products.
- rhubarbcustard 14y agoAs a long-time CodeIgniter user I'm interested to know what Silex, Laravel etc have that CodeIgniter doesn't?
- jtreminio 14y agoSure, I'll list off a few reasons: * One of the biggest contributors to the community edition left and wrote a nice blog post about it [0] * CodeIgniter uses some very untestable patterns [1] * The way it allows loading classes is horrible [2] * It feels like a first-generation PHP framework because it is a first-generation PHP framework * It tries to do almost everything. A framework should have the bare minimum, and use outside libraries or libraries that were developed without the framework in mind. [0] http://philsturgeon.co.uk/blog/2012/12/5-things-codeigniter-cannot-do-without-a-rewrite http://philsturgeon.co.uk/blog/2012/12/5-things-codeigniter-... [1] $ci =& get_instance() [2] $this->load->library('typography');