Rails presentation

So I gave a presentation on Rails to the Utah Java Users Group last
night. It went very well, I think. There were three presentations--I
was sandwiched between JDO and Tapestry. :slight_smile:

I've posted my presentation to my website, but there are a few
caveats:

聽聽1) it is 14 megs in size (I made use of screen capture videos). So,
聽聽聽聽聽be as kind to my host as possible. If anyone could mirror this,
聽聽聽聽聽or set up a bittorrent for it, etc...

聽聽2) it contains the presentation in both PDF and OOo formats. Either
聽聽聽聽聽way, you'll have to run the videos manually, because I'm sure the
聽聽聽聽聽links in the OOo version will be broken by packaging it up.

聽聽3) it is NOT a Rails tutorial--it was targeted at a roomful of Java
聽聽聽聽聽developers, most of whom had never seen a line of Ruby code in
聽聽聽聽聽their life. Thus, it is intended to demonstrate Rails' ease of
聽聽聽聽聽use, and how well it can perform "in the wild."

That said, you can view the presentation online, here:

聽聽http://ruby.jamisbuck.org/ujug-presentation/Ruby%20on%20Rails.html

Or, feel free to download the whole thing and take a look:

聽聽http://ruby.jamisbuck.org/ujug-presentation.tar.bz2

Enjoy!

- Jamis

路路路

--
Jamis Buck
jamis_buck@byu.edu
http://jamis.jamisbuck.org
------------------------------
"I am Victor of Borge. You will be assimil-nine-ed."

The big questions then are:

1) How did it go?

2) For those of us that might be planning Rails presentations to
non-Ruby audiences, what should we watch for/think about?

路路路

On Sat, 19 Feb 2005 03:48:24 +0900, Jamis Buck <jamis_buck@byu.edu> wrote:

So I gave a presentation on Rails to the Utah Java Users Group last
night. It went very well, I think. There were three presentations--I
was sandwiched between JDO and Tapestry. :slight_smile:

--
thanks,
-pate
-------------------------
ParseTree is a little brown stinky ferret that digs down a hole and
violently rips the
AST away from the warm bosom of ruby. In other words, we cheat, they
don't.

pat eyler wrote:

> So I gave a presentation on Rails to the Utah Java Users Group last
> night. It went very well, I think. There were three presentations--I
> was sandwiched between JDO and Tapestry. :slight_smile:

The big questions then are:

1) How did it go?

2) For those of us that might be planning Rails presentations to
non-Ruby audiences, what should we watch for/think about?

and

3) How many people were present in the audience?

Curt

路路路

On Sat, 19 Feb 2005 03:48:24 +0900, Jamis Buck <jamis_buck@byu.edu> wrote:

> So I gave a presentation on Rails to the Utah Java Users Group last
> night. It went very well, I think. There were three presentations--I
> was sandwiched between JDO and Tapestry. :slight_smile:

The big questions then are:

1) How did it go?

Really well, I think. The audience was very considerate, the questions
were very appropriate, and they laughed in all the right places. :slight_smile:
There were over 100 people there, too--the largest group I've ever
given a Ruby-based presentation to.

2) For those of us that might be planning Rails presentations to
non-Ruby audiences, what should we watch for/think about?

For me, I was trying to show a group of Java users how easy it is to
use Rails. So I avoided "teaching" Ruby syntax, and instead focused on
things like the code generation (which I demonstrated). They _really_
loved that Rails uses WordNet to suggest model and controller names
when there is a conflict. :slight_smile: If I had it to do over again, I'd
probably use more little things like that in the presentation.

I also tried to focus on Rails' performance, which I think is where
most of their interest was. These people were all pretty focused on
Java--using it in their workplace, etc., so it's not very likely that
any single presentation would ever convert them to Ruby if all it does
is focus on "cool". So I tried to give some performance metrics for
Basecamp and 43 Things (thanks very much to DHH and Eric Hodel for
their assistance!), and I think that really opened their eyes.

One thing that tripped me up: I was demonstrating a simple AR model:

  class Book < ActiveRecord::Base
    belongs_to :author
    validates_presence_of :name
    validates_presence_of :isbn
    validates_uniqueness_of :isbn
    validates_format_of :isbn, :with => /^[- \d]+$/
  end

I hadn't considered how foreign that might look to a non-Rubyist. :slight_smile:
I got the question "are those method calls?" And how do you explain
that in two sentences? Method calls, in the middle of a class
definition? I tried, but I think I just boggled them. So, beware. :slight_smile:

There were a few technical things I would do differently next time:

  1) Don't try to be clever and type out method comments in the screen
     capture videos. It might be nice for later, when you distribute
     the video, but during the presentation it just makes it lag.

  2) Keep the action in the videos as close to the top of the screen
     as possible, so that people sitting WAY in the back can see it
     better.

  3) Use a very high contrast color scheme for the syntax
     highlighting. Some of the colors were hard to read when
     projected.

  4) And last, something I just need to do better at in general when
     giving presentations to large groups: repeat every question that
     is asked of me, instead of just assuming everyone can hear it,
     and that *I* heard it correctly.

- Jamis

路路路

On 04:17 Sat 19 Feb , pat eyler wrote:

On Sat, 19 Feb 2005 03:48:24 +0900, Jamis Buck <jamis_buck@byu.edu> wrote:

--
Jamis Buck
jamis_buck@byu.edu
http://jamis.jamisbuck.org
------------------------------
"I am Victor of Borge. You will be assimil-nine-ed."

We can and should answer these questions for ourselves for the south.seattle.rb meeting. We obviously have a lot to learn about giving smooth/impressive presentations.

路路路

On Feb 18, 2005, at 11:17 AM, pat eyler wrote:

The big questions then are:
1) How did it go?
2) For those of us that might be planning Rails presentations to
non-Ruby audiences, what should we watch for/think about?

Curt Hibbs ha scritto:

The big questions then are:

1) How did it go?

2) For those of us that might be planning Rails presentations to
non-Ruby audiences, what should we watch for/think about?

and

3) How many people were present in the audience?

4) how was the interaction with Howard Lewis Ship? :slight_smile:

I also tried to focus on Rails' performance, which I think is where
most of their interest was. These people were all pretty focused on
Java--using it in their workplace, etc., so it's not very likely that
any single presentation would ever convert them to Ruby if all it

does

is focus on "cool". So I tried to give some performance metrics for
Basecamp and 43 Things (thanks very much to DHH and Eric Hodel for
their assistance!), and I think that really opened their eyes.

Would you mind elaborating on the figures in the slides a bit, with the
sort of comments you'd make in the talk?

I'm considering advocating Rails as an alternative to PHP for some
projects I'm likely to be involved it. We'd be using it backed by
postgres (on linux). The audience is a couple of guys familiar with
java, php and perl. I believe I can articulate the developer benefits
clearly, but I'm not really a sysadmin and so can't go into the detail
of what a statement like "43 things has load averages of 0.5 at
6.6pages/sec on dual processor 2ghz xeons" really means. I mean I can
look at the homepage size and do back of the envelope math to say "ok,
that's roughly sustaining 8mbit" but I don't really have any framework
to compare that to what PHP, Perl, or ASP would sustain in that
situation.

Howard was great. He's already been dabbling in the Ruby waters (he's
been known to post to this list, actually) so he was actually quite
curious about Rails. Don't expect him to change Tapestry to an ERb
style templating system anytime soon, though. :wink: I must say, I *am*
curious as to what it would take to plug a component-style model (ala
Tapestry) into Rails, though. I know others (on the Rails list) have
been asking for that, too.

I'm certainly satisfied with Rails' existing view system, though.

- Jamis

路路路

On 04:59 Sat 19 Feb , gabriele renzi wrote:

Curt Hibbs ha scritto:

>>The big questions then are:
>>
>>1) How did it go?
>>
>>2) For those of us that might be planning Rails presentations to
>>non-Ruby audiences, what should we watch for/think about?
>
>
>and
>
>3) How many people were present in the audience?
>

4) how was the interaction with Howard Lewis Ship? :slight_smile:

--
Jamis Buck
jamis_buck@byu.edu
http://jamis.jamisbuck.org
------------------------------
"I am Victor of Borge. You will be assimil-nine-ed."

I also tried to focus on Rails' performance, which I think is where
most of their interest was. These people were all pretty focused on
Java--using it in their workplace, etc., so it's not very likely that
any single presentation would ever convert them to Ruby if all it

does

is focus on "cool". So I tried to give some performance metrics for
Basecamp and 43 Things (thanks very much to DHH and Eric Hodel for
their assistance!), and I think that really opened their eyes.

Would you mind elaborating on the figures in the slides a bit, with the
sort of comments you'd make in the talk?

I'm considering advocating Rails as an alternative to PHP for some
projects I'm likely to be involved it. We'd be using it backed by
postgres (on linux). The audience is a couple of guys familiar with
java, php and perl. I believe I can articulate the developer benefits
clearly, but I'm not really a sysadmin and so can't go into the detail
of what a statement like "43 things has load averages of 0.5 at
6.6pages/sec on dual processor 2ghz xeons" really means.

Actually, page 14 should read "~200k hits/day", and that's 6 pages/sec per FastCGI process (we're running 30 total).

each box does ~100k hits/day of dynamic content without any noticeable load on the servers. (Load isn't noticeable until it hits at least 2, once you get to 4 you really start to feel things, because your commands get laggy and you have to nice things).

Basically, we could probably run the whole site off of one box for a few more months of growth.

I mean I can
look at the homepage size and do back of the envelope math to say "ok,
that's roughly sustaining 8mbit" but I don't really have any framework
to compare that to what PHP, Perl, or ASP would sustain in that
situation.

Our homepage is almost entirely pulled from memcache, we can serve *lots* of homepages.

PGP.sig (186 Bytes)

路路路

On 18 Feb 2005, at 13:34, jason_watkins@pobox.com wrote:

--
Eric Hodel - drbrain@segment7.net - http://segment7.net
FEC2 57F1 D465 EB15 5D6E 7C11 332A 551C 796C 9F04

I'd be happy to answer specific questions. Trying to narrate each
slide would take more time than I'm willing to spend on this right
now, though.

One thing I learned while I was giving the presentation: the load
number is the average number of processes waiting for a resource.
Didn't know that before. :slight_smile:

- Jamis

路路路

On 06:34 Sat 19 Feb , jason_watkins@pobox.com wrote:

> I also tried to focus on Rails' performance, which I think is where
> most of their interest was. These people were all pretty focused on
> Java--using it in their workplace, etc., so it's not very likely that
> any single presentation would ever convert them to Ruby if all it
does
> is focus on "cool". So I tried to give some performance metrics for
> Basecamp and 43 Things (thanks very much to DHH and Eric Hodel for
> their assistance!), and I think that really opened their eyes.

Would you mind elaborating on the figures in the slides a bit, with the
sort of comments you'd make in the talk?

--
Jamis Buck
jamis_buck@byu.edu
http://jamis.jamisbuck.org
------------------------------
"I am Victor of Borge. You will be assimil-nine-ed."

Jamis Buck ha scritto:

4) how was the interaction with Howard Lewis Ship? :slight_smile:

Howard was great. He's already been dabbling in the Ruby waters (he's
been known to post to this list, actually) so he was actually quite
curious about Rails. Don't expect him to change Tapestry to an ERb
style templating system anytime soon, though. :wink: I must say, I *am*
curious as to what it would take to plug a component-style model (ala
Tapestry) into Rails, though. I know others (on the Rails list) have
been asking for that, too.

I'm certainly satisfied with Rails' existing view system, though.

eheh.. but I was thinking of HiveMind vs Needle :wink:

Actually, page 14 should read "~200k hits/day", and that's 6 pages/sec
per FastCGI process (we're running 30 total).

each box does ~100k hits/day of dynamic content without any noticeable
load on the servers. (Load isn't noticeable until it hits at least 2,
once you get to 4 you really start to feel things, because your
commands get laggy and you have to nice things).

Basically, we could probably run the whole site off of one box for a
few more months of growth.

Thanks for the clarification, Eric. Sorry for the misrepresentation.
I'll fix the presentation and upload it again.

>I mean I can
>look at the homepage size and do back of the envelope math to say "ok,
>that's roughly sustaining 8mbit" but I don't really have any framework
>to compare that to what PHP, Perl, or ASP would sustain in that
>situation.

Our homepage is almost entirely pulled from memcache, we can serve
*lots* of homepages.

Very, very cool. :slight_smile:

- Jamis

路路路

On 07:58 Sat 19 Feb , Eric Hodel wrote:

--
Jamis Buck
jamis_buck@byu.edu
http://jamis.jamisbuck.org
------------------------------
"I am Victor of Borge. You will be assimil-nine-ed."

Thanks Eric. That's much more the sort of numbers I expected.

:slight_smile: The topic didn't come up, actually. I had to leave early, though,
so I didn't get much chance to talk with him face-to-face.

- Jamis

路路路

On 05:54 Sat 19 Feb , gabriele renzi wrote:

Jamis Buck ha scritto:

>>
>>4) how was the interaction with Howard Lewis Ship? :slight_smile:
>
>
>Howard was great. He's already been dabbling in the Ruby waters (he's
>been known to post to this list, actually) so he was actually quite
>curious about Rails. Don't expect him to change Tapestry to an ERb
>style templating system anytime soon, though. :wink: I must say, I *am*
>curious as to what it would take to plug a component-style model (ala
>Tapestry) into Rails, though. I know others (on the Rails list) have
>been asking for that, too.
>
>I'm certainly satisfied with Rails' existing view system, though.
>

eheh.. but I was thinking of HiveMind vs Needle :wink:

--
Jamis Buck
jamis_buck@byu.edu
http://jamis.jamisbuck.org
------------------------------
"I am Victor of Borge. You will be assimil-nine-ed."