[UPHPU] notes from austin php users group
John David Anderson
uphpu at johndavidanderson.net
Wed Dec 20 12:17:51 MST 2006
On Dec 19, 2006, at 11:19 AM, Joshua Simpson wrote:
> On 12/19/06, jtaber <jtaber at johntaber.net> wrote:
>
> It's not what PHP needs, it's what companies/developers need.
> Especially in a climate where excellent programmers are few and far
> between. Thus, good frameworks speed development, ensure standards,
> reduce errors, and reduce maintenance.
>
> I guess it depends on your personal definition of the word
> 'framework'. To me, it's come to symbolize a bloated, overextended
> set of tools that often imitates the authors' personal preferred
> language's (Java, C++, etc) that often detract usage or hide
> features of the native language.
Yeah, that's how.... wait. No, that's not it.
By framework, I mean a pile of code that comprises all the stuff you
need to put in 90% of the applications you build - thus enabling you
to cut to the chase rather than reinventing the wheel each time you
sit down to a new project. Well, that, and the code is tested by
thousands of people on varied environments, many of which contribute
free code and ideas to the said pile of code.
> Of course, if you mean 'a collection of libraries utilized for one
> specific purpose', then I certainly agree.
libraries != framework (re: Zend "Framework")
> Of course, extracting and removing boilerplate code, custom
> exceptions / error handling, automation, and sometimes unit testing
> is par for the course for any good development team. And, often,
> internally developed (if done correctly) frameworks will result in
> just as much (if not more!) reduced development time, debugging,
> maintenance while ensuring standards. Also, you don't have to deal
> with learning Yet Another Framework (tm), which can be just as hard
> as learning a new language (and counterintuitive to good said
> language's developers).
I don't mind internal frameworks or libraries, though they miss out
on community based advantages (free code, free testing).
> It takes time and talent to learn a foreign, bloated framework, too.
Yes, but 10 hours spent mastering something in trade for hundreds of
hours saved otherwise has been my personal experience. Not to mention
all the untold hours others have spent testing and writing components
that I never had to.
> If you spent your time reusing your own team's 'framework', you 1)
> grow as developers in the process, 2) get exactly what you want, 3)
> and don't have to rely on an outside team to get what you want. Of
> course, you can always modify the framework to suit your own
> ideals, but doesn't that defeat the process?
Assuming that the framework you "modify" isn't extensible, yeah. I
don't think I'd use one that isn't though. MVC setups are really
modular and extensible by definition, so I don't experience any sort
of lock-in you're talking about. There's a smart way to modify, and
many such modifications might already be available though the
community already anyway (unless they are extremely specific).
Making custom changes doesn't defeat the purpose - that *is* the
purpose. You're only going to need to write code that performs logic
specific to your application.
> If during your development time you slowly developed your own, you
> probably would've saved a lot of time spent trying out and learning
> various frameworks (and, in the end, be much more satisfied).
Sure, but again, you miss out on the community benefits. And, in a
sense, you've recreated your own wheel you can use over and over,
rather than just grabbing a free one off the shelf.
-- John
aka _psychic_
More information about the UPHPU
mailing list