Hi Jonathan,
I'll start directly - I would like to see the InstantCRUD
module
mentioned in your book. Since beginning I was designing it
as a kind
of learning material so inclusion in your book would be
important for
the validation of my whole work.
I do understand that you cannot describe every Catalyst
related module
there, and that the still a bit experimental nature of
Instant would,
most probably, not meet the criteria you use in choosing
modules. But
there is still some time and if you describe your criteria,
we
InstantCRUD authors can try to meet them by the deadline.
--
Zbyszek
On 9/6/06, Jonathan Rockway <jon jrock.us> wrote:
> Hello,
>
> Sorry for the delay in following up with you. I've
been trying to
> finish up some other projects so I can have some time
to work on writing
>
> Anyway, here's what I am thinking in terms of an
outline. Some chapters
> may make more sense if split up or combined. I'm cc-ing
the Catalyst
> developer list since there are a number of people who
are interested in
> helping with the book effort in one way or another, and
I'd like to keep
> them in the loop.
>
> Preliminary outline:
>
> 0. Prerequisites
> - where to learn about perl (perl knowledge assumed
for this book)
> - installing Catalyst
> - where to go for help
>
> 1. Creating a Catalyst app
> - making a skeleton application
> - setting up a DBIC database "model"
> - with "helpers"
> - setting up a TT "view"
> - writing a small "controller"
> - running your skeleton app
> - making changes and seeing the result
>
> 2. Expanding the application
> - creating a form
> - creating logic that parses a form
> - adding configurability via a config file
> - adding data to the database
> - etc., basic "CRUD" operations (CRUD =
create, retrieve, update, delete)
> * example for this section should be something like an
address book
>
> 3. Learning more about the database
> - [I'm thinking that Matt S. Trout, the author of
DBIx::Class, should
> write this chapter. Might not be appropriate as
"Chapter 3".]
>
> 4. Building a more complex, multi-page application.
Probably online
> shopping cart type of thing. Look up products, fill
out forms,
> create reports, etc.
> - Action chaining
> - Action classes
> - Sessions and Users (the big thing)
>
> 5. Exploiting Catalyst to ease implementation of
current hot web topics.
> - RSS feeds
> * logic behind making an "RSS" view and
mixing it with your HTML view
> - Javascript interface (AJAX)
> - this chapter is mostly to expose Catalyst features
through examples
> (people like "cool" things)
>
> 6. Building your own model. Perhaps implement a
filesystem-based wiki
> or blog. (Writing a filesystem-based blog is how I
learned Catalyst,
> and was the topic of my talk at the perl
conference.)
>
> 7. World tour of catalyst plugins and base classes (but
we might do this
> as we go along, or in section 5).
>
> 8. Testing (might build this gradually, rather than
wait until the end)
> - unit tests
> - WWW::Mechanizie
> - WWW::Selenium
>
> 9. Deploying the application
> - Apache + mod_perl
> - or FastCGI
> - Lighttpd
> - PARs for sending to end users
>
> 10. Where to go from here
> - Turn useful parts of your application into CPAN
modules
> - Hack on the Catalyst source
> - (etc.?)
>
> As always, thanks for your interest in Catalyst!
>
> Regards,
> Jonathan Rockway
>
> Douglas Paterson wrote:
> > Jonathan,
> >
> > Thanks for your reply, it has been very helpful.
There is general agreement
> > that a book showing people how to put together a
web application using
> > Catalyst is the best way forward at this point, so
I'm pleased that we're on
> > the right track.
> >
> > When you have a powerful and flexible system, you
do want to pick a path
> > through it for the reader. Sometimes, there can be
too much choice, and the
> > value of a book can just be picking that path.
> >
> > Are Catalysts's OO concepts pretty central to its
design? If they are, and
> > for an MVC framework I guess they would be, I
think it would probably be a
> > good idea to spend some time to get readers
comfortable with these.
> >
> > You say you are excited by this project - how much
of this would you be
> > interested in writing? At the very least, I think
you're in an excellent
> > position to help me put together an outline.
> >
> > Douglas
> >
> >
> > -----Original Message-----
> > From: Jonathan Rockway [mailto:jon jrock.us]
> > Sent: Wednesday, August 30, 2006 10:14 PM
> > To: douglasp packtpub.com
> > Subject: Re: [Catalyst] Catalyst Book Authoring
> >
> >
> >> Anyway, the book I was thinking of would show
the reader how to put
> >> together a website using Catalyst, with no
prior knowledge of Catalyst
> >> assumed. In your view, do you think that's the
book that would be
> >> welcomed by the community, or do you think
their needs are more "advanced"
> > than that?
> >
> > I think this is exactly what we need. The problem
(for beginners) with
> > Catalyst is that there are too many different ways
to do things. My
> > approach would be to walk the reader through
designing a typical web
> > application with a "restricted" set of
Catalyst features. Rather than focus
> > on the flexibility inherent in being able to use
any one of the 29 available
> > templating modules on CPAN, I would stick to just
the Template Toolkit (as
> > the View). The same goes for
DBIx::Class(::Schema) for the database model.
> > These are what most people use anyway, so this
approach will give the reader
> > maximum ability with minimum
remembering-the-names-of-CPAN-modules
> >
> > As the user gets more comfortable with the basics,
we can talk about the
> > more advanced Catalyst features. Towards the end
of the book, we can
> > briefly mention "other ways" to validate
forms, generate HTML or XML, read
> > databases, etc. The user will understand the
concept of modules and
> > Catalyst by now, so it will be pretty easy to
understand (and
> > appreciate) the flexibility that the CPAN
provides.
> >
> > I also think that a brief introduction to the
object orientation concepts
> > that Catalyst makes use of would be helpful, also.
Perl's OO didn't make
> > sense to me when I started learning perl, and I
think a lot of potential
> > readers will be in the same boat.
> >
> > Finally, I think it would also be nice to have
brief sidebars from time to
> > time covering useful concepts that aren't strictly
Catalyst related.
> > Maybe something about "Path::Class"
when talking about filenames, "YAML"
> > when talking about configuration files, etc.
> >
> > Anyway, thanks for your interest! I'm pretty
excited about this
> >
> > Regards,
> > Jonathan Rockway
> >
> >
> >
>
> _______________________________________________
> Catalyst-dev mailing list
> Catalyst-dev lists.rawmode.org
> http://lists.rawmode.org/mailman/listinfo/catalyst-dev
>
--
Zbigniew Lukasiak
http://brudnopis.blogs
pot.com/
_______________________________________________
Catalyst-dev mailing list
Catalyst-dev lists.rawmode.org
http://lists.rawmode.org/mailman/listinfo/catalyst-dev
|