

Anyone Can Ride Rails - should I write this book? - AstonJ

I was all fired up to write this, but have started to have second thoughts. What do you think - should I keep going?<p>Please be as frank and honest as you like. I will warn you in advance though that non-Rubyists might find my tone a little nauseating because I speak highly of Rails and Ruby - not just because I'm a genuine fan but because I see it as absolutely pivotal to keep my readers motivated and excited. (That was certainly what got me through all the books and resources when I was starting out, so apologies in advance for that!)<p>You can download what I have written so far from here: http://astonj.com/anyone-can-ride-rails.pdf
======
diasks2
I think you should keep going. In my opinion any materials that make it easier
for beginners to get started on programming are a net benefit to society. Over
the coming years I think there is going to be a divide between those that can
program and those that can't as technology continues to be an ever increasing
part of our lives. I am in full support of anything that helps break down the
barrier to jumping in and getting started.

Great start and I look forward to seeing the finished version. Keep us updated
on your progress.

~~~
AstonJ
I completely agree with you! I think programming has become a lot easier in
recent years, with the advent of languages such as Ruby and the sheer number
of well thought out learning materially, particularly centring around good
programming practises. And of course thanks to frameworks like Rails that do a
lot of the heavy lifting.

Thanks for the comment and support!

------
zafriedman
A few observations. One, you haven't written that many pages, in fact you've
written very, very few pages save for the preface and the like. This isn't an
issue on its own, except theres no Table of Contents so it's hard for me to
see where you are going to take it from here, or in other words what your
vision is. The obvious result of this is that it's pretty hard to provide
feedback. The flip side is of course, that you've demonstrated enough desire
and initiative within yourself to endeavor to start the book, so unless you
have a serious reason to stop, maybe forge ahead and try to finish what you
started.

One other thing that I just want to put in your head, I'm not sure if I'm even
going so far as to suggest it, is the possibility of flexing scope to write
perhaps a 50 page e-book, not dissimilar to the Sacha Greif ebook
(<http://sachagreif.com/ebook/>) but for getting from zero to the next book on
Rails for absolute beginners. The benefit of this would be that you could
probably spend about 20 hours writing it (I'm pulling this number out of my
ass, so I could be waaay off about this time estimate) and therefore you've
risked a much shorter amount of time, which I'm assuming is your main concern.

~~~
AstonJ
Hi, thank you for the feedback.

I started writing the book on the weekend, and have tried to include details
about the main concept and format (it's going to be split into three books).
As it's early days I've only really touched on what will actually be included,
but my thoughts so far are along these lines:

An introduction to Object Oriented Programming | Ruby basics | -why ruby |
-datatypes | -variables | -classes | -etc | An introduction to Rails and the
MVC architecture | -why rails etc | A Ruby on Rails tutorial - building your
first app! | -1 | -2 | -3 | -4 | -etc | Using Gems | Using Git | Deploying |
An introduction to Test Driven Development | \-------? | \-------? | \-------?
|

Originally I sought feedback from my friends, and as that's been very positive
I thought it wise to get opinions from a wider audience, such as on HN.

Thanks for the link to the Sacha Greif book - I will definitely check it out!

------
helen842000
I'm glad you start from a 'what you'll need' point of view. This is often
missed in most books where they just start with a code 1+1 example.

If you are aiming for total beginners - as in, new to programming and not just
new to Ruby/Rails then you might have to re-word your About this book section.

You mention TDD, Git, 'default Ruby stack' within the first 8 lines of the
book. While these are important points regarding the book - they only make
sense to programmers of some kind.

I think if you give away a sample chapter of your book then this will be the
first thing they read. You've got to convince the new folks you'll look after
them & that they will actually get as far as building their first app. You may
want to consider adding a book subtitle. I presume the readers you want to
attract might not even know what Rails is! Maybe something like - Anyone Can
Ride Rails - A fresh programming guide for enthusiasic beginners.

I like the informal tone as it's reassuring. I also second the what is
Ruby/Rails & why should I use them, what can I build with it etc?

~~~
AstonJ
Hi Helen - thank you for the feedback, you make some great points!

I definitely need to iron out who the target market is, but for the time being
I have expanded the note to include "(though you are introduced to these
topics later – so don't panic if you don't know what they are just yet)."

I think I had envisaged that people coming to this book would have already
made their minds up about learning Rails and perhaps already looked at some of
the other books but felt a bit out of their depth - so would have probably
come across some of the terms. Hence I though that I'd keep the more in-depth
explanations to their respective chapters. But yeah I totally see what you
mean so I may have to rethink that! Thanks again for the feedback.

~~~
helen842000
Hey Aston,

Glad to be of help. As a side note did you use a template for your ebook at
all to get started? The headings look great & it has a nice flow, thanks.

~~~
AstonJ
Hi Helen, I didn't use a template - it's just a bog standard Open Office
document and exported as a PDF :)

------
jfaucett
I don't want to discourage you, I'm just gonna give you my honest personal
thoughts. I think there is a lot of this kind of stuff on the web already.
What I think there is less of (maybe there's also less demand for it), is deep
rails or ruby VM type stuff. I do most of my programming in c/c++ though (so
I'm no ruby expert) and whenever I need to pick up a scripting language or
framework like rails, usually I try to grab something that has maximum code,
with bar minimum and to the point explanations, and get annoyed whenever
anyone talks about intro to OOP or starts explaining functions, variables,
etc. So obviously, I'm not your audience for this book.

Having said all that I don't want to be a downer here, I think its great
you're writing a book and possibly getting people interested in programming :)

~~~
AstonJ
Hi, thanks for the comment and encouragement!

If you're looking for books on the internals of Rails, this one could be right
up your street: <http://patshaughnessy.net/ruby-under-a-microscope>

If you're looking for more general but advanced books there are loads of
fantastic ones - some of my favourites are Eloquent Ruby, Design Patterns in
Ruby, Metaprogramming Ruby and there's Crafting Rails Applications for Rails
(though I haven't started this myself yet - but I hear it's very good).

------
thejteam
Is your target audience absolute beginners to programming or experienced
programmers who want to learn Rails?

One thing I Have never seen is a "why" you should learn Rails and what you can
do with it. What kind of web apps can I build? What can I do with it? Why
would I want to?

Personally, I don't go for the informal tone, but it wasn't over the top and
many books tend to go that way so no problem.

I like that it seems you won't be preaching about side technologies like git
or tdd. It is an added difficulty when people add extra complications to a
book, especially an intro level book. My personal opinion, don't go preachy on
formatting or style either, just use well written examples for people to learn
from and they will pick up your style.

~~~
excid3
I had similar thoughts on this. A lot of people express interest in learning
how to program. The problem is that the majority of things out there are don't
explain why, and choosing which language or framework to use ends up being a
flip of a coin.

I know this is how I chose to start programming in Python back in the day.
More or less flipped a coin between it and Ruby because there wasn't anything
I could find that explained why one might be better or worse for what I wanted
to accomplish.

~~~
AstonJ
Yes it can be tough - I agonised over Python and Ruby too, there was a lot
going for them both, but in the end I followed my heart as I just felt more
comfortable with Ruby :)

Thanks for the comment!

------
stevejalim
Why not see what the market thinks of your idea by trying the 'lean
publishing' route? Check out <http://leanpub.com> as one [good] way to do it.
It's working out pretty well for me so far. It would mean moving from
OpenOffice to Markdown formatting, but the whole Dropbox + Markdown approach
that Leanpub uses is pretty good and there is decent support for code blocks
etc

~~~
AstonJ
That's a great idea - thanks! Will definitely check out leanpub.

------
fawyd
I'm a RoR beginner with a little know-how from other languages like PHP and
think you should also include some other interesting parts like Stackoverflow,
GitHub, Heroku etc. There is plenty of stuff out there with no real
description for a programming-beginner. In my early days I have search for a
long time a good description for what a gem is. And this is only one example,
lol.

~~~
AstonJ
Hi, a glossary sounds like a great idea - thanks for the suggestion!

------
AstonJ
<http://astonj.com/anyone-can-ride-rails.pdf>

------
bharad
Nice start. I think you should keep going. This might be helpful.
[http://techcrunch.com/2012/01/28/why-every-entrepreneur-
shou...](http://techcrunch.com/2012/01/28/why-every-entrepreneur-should-self-
publish-a-book/)

What software do you use to write your book?

~~~
AstonJ
I started off writing in WriteRoom (I love the full screen mode) but then it
started to mess up my formatting so I moved to Open Office.

Thanks for the comment and link, I'm off to read it now :)

------
countessa
Okay - if you are going for the absolute beginner market, then, in my opinion,
you have too much front matter. I'm new to code, I want to build something
cool - let me at it now, not 20 pages in.

------
creativeone
I'm a ruby & rails beginner so I would definitely be interested in a book like
this.

~~~
AstonJ
Awesome, thanks for the comment.

------
eranation
Whatever will be your decision, this is a great book title!

~~~
AstonJ
Haha thank you! I love the name too :)

