Hello? Web Framework? You’re OK, ok?
December 1st, 2008
Image by guspim via FlickrNot that I hate/fear/don’t-use frameworks, but I was always bashing them and saying if I can choose between library vs. framework approach I will always prefer the library one. My philosophy didn’t change, but I will admit one thing.
I was helping out some Slovene start-up as an additional pair of hands to make sure they catch the deadline last week. They had project developed in PHP with CodeIgniter web-framework. All coding was done by outsourced programmers from ex-Russian countries. They used ODesk and switched quite a big number of programmers and ended up with two really great coders. It was very interesting experience to me to not be the project “leader” ( e.g. - the one who coded the most of it and also calls the shoots) and to work with them. I learned A LOT!
And I admit, concretely, the code of this project made in CI was probably more readable, easier to grasp than my code with the previous project of this company. Especially the front-end code. I could debate about the backend, but OK.
There are also some other very strong benefits of using a well known framework.
- When you are searching for programmers, you don’t spend days with them looking at the code, explaining the conventions and fighting about programming styles. You say.. project is in XY framework, get people that already know XY and they already know 90% of rules/conventions of coding this project.
- A lot of bulky boring code is already written so you get free cake sometimes, where you would otherwise not have time to bake it. For example the upload library had tons of checks for detecting image formats, sizes, XSS filters.
—
Ok, that’s it. This is not like I used a framework for the first time now and realized that I was “wrong all this time”. I used frameworks, not just of web kind, since I started programming… I think I relatively well know what benefits they have and what shortcomings, but for this case I admit it, my version of code would be more minimalistic in concepts but worse to get into for new programmers.

![Reblog this post [with Zemanta]](http://img.zemanta.com/reblog_e.png?x-id=416d300b-fa77-4a15-94ba-ae86ea240eed)