

Don't write your own framework? - headShrinker

I have read many programming blogs over the years and read many 'how to become a better programmer' entries. Many list 'write your own language' as one of the more advanced lessons. I can how see how that would allow someone to learn about programming from a completely new angle.<p>I have also read many blogs, forums and threads discouraging people from writing their own framework. 'it's already been done and better then you can do it. don't try to reinvent the wheel.' I have written my own framework and I feel it had allowed me to grow in my understanding of programming. Why is writing a framework discouraged?<p>Is this a double standard in the program community or am I missing something?
======
mattbillenstein
I think you made the distinction already -- if you're just looking to learn,
sure, spin your own thing -- it's fun and you'll gain some perspective on why
existing frameworks probably work the way they do...

On the other hand, if you're building something for your job, for a production
deployment -- you should probably pick something that's established with ample
vetting in other production environments, documentation you can leverage, and
a community of users you can turn to if you need help.

------
dillon
In my opinion, people who wrote frameworks didn't listen to the criticism. If
writing your own framework means becoming a better programmer then go at it,
but that likely will also mean maintaining it yourself. Whereas other
frameworks are constantly being updated and improved.

This is slightly different than writing your own language. Using Python and
Django as an example, when python goes from Python 2.7 to Python 2.8, Django
will have to update to be able to use 2.8.

------
getonit
Rolling your own framework to the standard and complexity of, say, Zend, would
take an impractical amount of time. If that's the kind of thing you need, use
Zend.

If, however, you feel that anything more than a front controller, a registry
and some common sense is just ego-stroking, roll your own and enjoy ;)

