[Catalyst] Why scaffolding? Validation and Learning
paul at cybergestalt.net
Thu Aug 17 19:24:38 CEST 2006
Simon Wilcox wrote:
> I nearly threw Catalyst out of the window whilst fighting with one of the
> earlier tools (I forget which, call it traumatic amnesia :) as I just
> couldn't get it to do what I wanted it to do. Not understanding enough
> about what was going on under the hood meant that it was virtually
> impossible to figure out what was going on.
> In the end I went back to first principles and did things by hand. I think
> of it as a bit like learning to drive, you need to understand the basic
> principles before you can take shortcuts. This is the opposite of having
> training wheels on your bike of course, when you start simple and get more
> complicated. The problem with the latter approach is that you need to have
> a progression from simple to complicated and the scaffolding helpers just
> didn't give me that, it was all or nothing.
I'm glad someone brought this up. I have always found it is important
to know what is going on under the hood. Even with languages, like
Perl, when you start to get an understanding of how things work
internally, suddenly you are much more productive.
The "magic" Ruby on Rails videos show some impressive stuff. I
guarantee that the person in the videos is an expert. I also guarantee
that despite my decades of programming experience, having not used RoR
before, there is no way I can pick up RoR and make a blog in 5 minutes.
5 days, maybe. Second time around would be much shorter, of course.
The next level would be to describe what you want in human language and
have the software generate the app. Obviously we are not there yet.
The software is still dumb. It takes the form of helpers. "Magic"
helpers without sufficient intelligence inside are more of a hindrance
than a help.
There are two types of busy work: work that is pretty much common for
any development task and work that is based on the style of a particular
developer and thus not as much use to other developers. The crux in
developing a scaffolding is to include helpers for the first type of
work and the ability to "plug-in" the second type.
More information about the Catalyst