

Chapter 7 ("Sign up") of the Ruby on Rails Tutorial book is out - mhartl
http://www.railstutorial.org/chapters/sign-up#top

======
eam
Thanks Michael! My friend and I are just starting a website and we decided to
do it using RoR even though our knowledge is close to none. We're both PHP
developers and thought that if we made a website in RoR we would learn it by
trial-and-error. I just heard about railstutorial.org today. I have skimmed
through your tutorial book and find it quite useful. I will definitely read it
in the next couple of days! (:

~~~
mhartl
You're welcome! Be sure to send me feedback on anything you find confusing or
if you find any errors. I should be able to fix them straightaway since my
publication process goes something like this:

    
    
      $ <fix problem>
      $ git commit -am "Fixed problem"
      $ deploy tutorial
    

This generates the HTML and builds the PDF from the same source, and then
pushes them both up to Heroku. It's very satisfying. :-)

------
fdschoeneman
For those of you clicking on this link who haven't yet looked at Michael's
tutorial, it's excellent. I'm not a developer, know no languages other than a
bit of html & css, and still had a fun time getting through chapters 1-4.
Michael is a very good writer (check out RailsSpace) and has spent a lot of
time thinking about the best way to teach.

RailsTutorial, like Ruby and Rails, just feels right.

\-- Fred

------
maurycy
Michael, thanks! Awesome work.

If I might suggest one improvement: I'd change @title with content_for. A
class attribute needlessly messes View and Controller.

~~~
mhartl
That's a good suggestion, and I'll definitely think about it. Early on in the
tutorial I'd prefer to keep it as-is for simplicity and to help motivate
instance variables. Also, it seems that setting instance variables in
controllers for use in views is a common pattern. But switching to content_for
at some point might make for a nice example of refactoring. (Good thing the
book has tests for page titles. ;-)

EDIT: Come to think of it, this might make for a good exercise.

------
gamache

      def create
        @user = User.new(params[:user])
        @title = "Sign up"
        render 'new'
      end
    

So the end user can mess around with the form, add is_admin=1 to the other CGI
params and end up with an admin account. (Or similar.) Fabulous.

~~~
ryanhuff
I don't see a problem with distilling an example to the basics when teaching
beginners. Your concern should certainly be addressed at some point in the
book though.

~~~
mhartl
Indeed. See my other comment. :-)

