Why A Framework Might Be Of Interest To You

If you answer 'yes' to any of the following questions, you could probably benefit from using a framework in your next project:

  • Do you have the sense you're cut and pasting a lot of code?
  • Are you performing the same repetitive tasks for each new project, ie:
    • handling permissions
    • user authentication
    • separating your code from the website's look and feel
    • caching
    • site navigation
    • creating installers
  • Are you grafting together bits of other peoples' solutions, ending up with a mish-mash of coding styles and approaches?
  • Do you feel your time to market estimates could be shorter if your projects were more organised?
  • Do you have trouble getting new developers on the team up to speed with existing projects?
  • Have you experienced problems dividing project tasks up amongst developers because there was code overlap?
  • Do you want to be able to recycle code that solves distinct business problems, just by inserting it as a component and switching the look and feel?

Answering 'yes' to one or more of these points indicates you could probably benefit from the more systematic approach offered by a framework. Check out some of the General/FrameworkFeatures that are available in this project.

There have also been some interesting comments in PHP circles recently on the use of frameworks:

from a sitepoint reader asking why bother with frameworks

Because it's useful to get standard foundations, the same way to build an app. It may be harder at the beginnning but then everyone speaks the same language. It's a reason why Java is popular.

from Alan Knowles dicussion of his Flexy framework

The result of this framework is that 10-20% of the total code for a project is application specific. giving a huge reduction in code size, and improving readibilty and maintainability considerably.

from Craig R. McClanahan, creator of Struts

  • “Hello, world” examples do not help build real apps
  • Most developers did not wish to deal with low level server functionality
  • Many people building web apps were newcomers to [insert programming lang here], as well as newcomers to the web