Skip to main content

Rails Conf 2009 Day 2 Trip Report

Posted by arungupta on May 6, 2009 at 5:39 AM PDT

This is a follow up post from href="http://blogs.sun.com/arungupta/entry/rails_conf_2009_day_2">David's
keynote.


cellspacing="2">
style="width: 288px; height: 216px;" alt=""
src="http://lh3.ggpht.com/_wIoV5EX5M-0/SgDf-P0O1DI/AAAAAAAAQwU/iuk_CYtCaNE/s288/IMG_5043.JPG">
Attended href="http://en.oreilly.com/rails2009/public/schedule/detail/8772">Women
in Rails
panel discussion. The panel, Sarah
Mei
, Lori
Olson
, and Desi
McAdam
(from L to R), had a very interesting discussion
around
the genuine problems and possible solutions of involving more women in
Rails community.



Sarah is trying to involve more women in the href="http://www.meetup.com/sfruby/">San Francisco Ruby
meetup. She plans to invite non-traditional audience like
those who never programmed before, other language programmers, and
similar. The details will be shared after performing the exercise for a
year. Lori started Calgary
Ruby Group
. She do lot of self promotion so that younger
women feel inspired. Desi is a co-founder of href="http://www.devchix.com/">devChix with the
purpose of "build a community of women developers". All the panelists
were very vocal about being visible, having a blog and twitter presence
is a good start.



Here are some random notes captured ...



Women
drop out because of kids, try to get a job and then come back with a
gap in the resume. It's difficult to get a new job at that time. Sarah
is trying to reach out to that group who have that gap in their resume.



Visbility
is important "She did that, I can do too!".



Data point: Women % in Rails community is
much less than in other development community, e.g. Java or .NET world.

Another data point: % of women is more in larger companies, not in
smaller companies. The
reason is facilities like maternity leave, training
(don't have evening hours to train themselves, can't sacrifice family
time), etc.



Real stats from 2006: Women participation in open source community is
2-3%,
20-25% in "enterprise"



Appeal from the panelist "Guys, help us, tell .NET developer that Rails
is not all
guys, spread the word.".



Here are some Q&As captured:



Q. Should
women be given free/discounted tickets to RailsConf ?

A. If women
can't pay for it, then devChix can help them. RailsConf have
helped before. It'll help if childcare is available.



Q. Why are
we only looking at CS ? Why not other areas who have the
development skills ?

A. Panel
do reach out to multiple audience and seeks help from everybody in
spreading the word. Women will be working on JavaScript and thinks she
is designer. A guy will read 3 blog entries and thinks he is developer.
There is a market salary differential between designer and developer.
Women need to be more public about their programming status.



Q. Women
won't present themselves as something they are not confident
because they'll be called upon. How do you fix it ?

A. Everybody
is learning. David's comment "I don't know everything in Rails" was
commended. Girls need to know if it's important then they can figure it
out. They are scared of messing the impression of their gender.



And of course there was a discussion on "Pr0ngate scandal":



Sarah:
Matt is not a bad guy, he made a mistake that lot of people make in
software development. If 1 out of 100 does not match the pattern of
software developer, then that "1" may not be a software developer. The
organizers of the conference did
not do anything wrong. I voted for the talk and trust the judgement of
the people. A negative feeling started developing but don't want to see
that honestly. We learned something from it. As a relatively young
community, this was bound to happen.



Lori: Not from the
presentation itself but form the community reaction to this event.
Blown
out of proportion because of the same reasons when there is a conflict
with
developers in same company. You can't argue with somebody regarding how
they feel. Can have a discussion, but argument is never going to be a
win for anyone. That's where the community reaction devolved.



Desi:
If Matt would've said "Oh Crap, I offended and wouldnt mean to offend
you.", everything would've been fine. To David: "Next time, do us a
favor and keep your mouth shut. It didn't help."



I was certainly expecting many more women to show up in the room but
there were very few. Anyway, read Desi's href="http://www.devchix.com/2009/05/05/panel-pre-post/">blog
entry about the panel. And I reached out to all three of them
for helping in any manner :)


cellspacing="2">
style="width: 114px; height: 58px;" alt=""
src="http://blogs.sun.com/arungupta/resource/glassfish-logo.png">
I
presented on href="http://en.oreilly.com/rails2009/public/schedule/detail/7720">Develop
with Pleasure, Deploy with Fun: GlassFish and NetBeans for a better
Rails experience, href="http://assets.en.oreilly.com/1/event/24/Develop%20with%20pleasure,%20Deploy%20with%20Fun_%20GlassFish%20and%20NetBeans%20for%20a%20better%20Rails%20experience%20Presentation.pdf">slides
here. The several concepts in the talk are explained in the
following bullets:
  • Directory-based deployment in href="http://blogs.sun.com/arungupta/entry/totd_71_jruby_and_glassfish">TOTD
    #71, href="http://blogs.sun.com/Jacobkessler/entry/capistrano_and_glass%3Fsh">Capistrano
    recipes
  • GlassFish Gem in href="http://blogs.sun.com/arungupta/entry/totd_70_jruby_and_glass%3Fsh">TOTD
    #70, href="http://blogs.sun.com/Jacobkessler/entry/capistrano_and_glass%3Fsh_now_with">Capistrano
    recipes
  • Merb support in href="http://blogs.sun.com/arungupta/entry/totd_53_scaffold_in_merb">TOTD
    #53
  • Sinatra support in href="http://blogs.sun.com/arungupta/entry/totd_80_sinatra_crud_application">TOTD
    #80
  • href="http://weblogs.java.net/blog/vivekp/archive/2009/04/plugin_any_ruby.html">Any
    Rack-based framework
  • nginx Deployment in href="http://blogs.sun.com/arungupta/entry/totd_81_how_to_use">TOTD
    #81
  • href="http://blog.headius.com/2009/04/apache-jruby-rails-glass%3Fsh-easy.html">Apache
    deployment
  • WAR deployment in href="http://blogs.sun.com/arungupta/entry/totd_73_jruby_and_glass%3Fsh">TOTD
    #73
  • NetBeans Develop/Deploy/Debug in href="http://blogs.sun.com/arungupta/entry/screencast_26_develop_run_debug">screencast
    #26
  • href="http://blogs.sun.com/arungupta/tags/rubyonrails+jmx">JMX-based
    management
  • Project Kenai
  • JRuby/GlassFish href="http://wiki.glassfish.java.net/Wiki.jsp?page=JRuby#section-JRuby-SuccessStories">Success
    Stories
  • Rails
    Bootcamp in San Francisco
    on May 19/20


cellspacing="2">
alt=""
src="http://media.xircles.codehaus.org/_projects/jruby/_logos/medium.png">
The
next talk of the day was href="http://en.oreilly.com/rails2009/public/schedule/detail/8711">JRuby:
State of the Art



Why JRuby on VM ?

  • Best memory management
  • Dynamic optimizations
  • Reliable native threads: run threads across multiple cores
  • Vast number of libraries
  • Interop with Java, Scala, Rhino, Jython, ...
  • Ubiquitous

Performance

  • Fastest production-ready Ruby implementation
  • Definitely faster than 1.8.6
  • JRuby -> Bytecode -> Native code ->
    Optimizations

Future JVM Work

  • "invokedynamic": Build fast dynamic invocation in JVM,
    JRuby support by June, allow Hotspot to do all optimizations across
    Ruby calls
  • Multi-language VM "Da Vinci Machine", Optimized tail calls,
    continuations, fixnums, value types

Threading

  • Only production-ready impl with real threads
  • Ruby thread is a normal thread that can run on multiple
    cores

Simple Rails App

  • 1 Controller/Mode/View, send 1000 reqs
  • 80% less memory in 10 instance example, 96% for 20 instances

GlassFish

  • Gem, WAR-based
  • nginx, Apache: mod_proxy

Ruby 1.9 is 80-90% complete, IRB works, RubyGems works



FFI

  • Call C functions directly from Ruby
  • Portable unlike extensions

Who uses JRuby ?

  • Kenai
  • Gravitor
  • King Pong (JRuby wrapping MonkeyEngine)
  • Oslo's Gardermoen Airport to href="http://explore.twitter.com/headius/status/1159156116">refuel
    planes
  • ThoughtWorks Mingle
    • No cross-platform SVN libraryfor Ruby
    • Bundling of installation
    • Security (ecnrypting source code)
    • Memory profile
    • Avoiding process proliferation
  • mix.oracle.com
    • 5 developers, 6 weeks for all development, 2887
      LOC
  • Trisano: Open source infectious disease reporting system
    • Ease of deployment
    • Every enterprise on the planet run Java
    • Extensive project roadmap

Check out interactive Q & A from the session in the following
video fragment:



rel="enclosure"
href="http://blip.tv/file/get/RCCommunity-JRubyStateOfTheArtQASession952.m4v"
onclick="play_blip_movie_2087723(); return false;"> alt="Video thumbnail. Click to play"
src="http://blip.tv/file/get/RCCommunity-JRubyStateOfTheArtQASession952.m4v.jpg"
title="Click to play" border="0">

href="http://blip.tv/file/get/RCCommunity-JRubyStateOfTheArtQASession952.m4v"
onclick="play_blip_movie_2087723(); return false;">Click To
Play





cellspacing="2">
style="width: 288px; height: 216px;" alt=""
src="http://lh6.ggpht.com/_wIoV5EX5M-0/SgDovbL4bGI/AAAAAAAAQyM/5s7NqgWbNrE/s288/IMG_5064.JPG">
Later in the evening, href="http://twitter.com/brynary">Brian Helmkamp, href="http://twitter.com/tmm1">Aman Gupta, href="http://twitter.com/luislavena">Luis Navena, href="http://twitter.com/pat">Pat Allan, href="http://twitter.com/dkubb">Dan Kubb, and href="http://twitter.com/jnunemaker">John
Nunemaker were awarded Ruby
Heroes Award
!




cellspacing="2">
style="width: 164px; height: 283px;" alt=""
src="http://blogs.sun.com/arungupta/resource/confs/railsconf2009-timferris-keynote-rating.png">
And the keynote by href="http://www.fourhourworkweek.com/">Tim Ferris,
lets not talk about it ;-) I edited pictures, authored my blog, caught
up
on email/RSS during the keynote. #railconf on href="irc://irc.freenode.net/railsconf">IRC and href="http://search.twitter.com/search?q=railsconf">twitter
were way more fun! Check the live href="http://en.oreilly.com/rails2009/public/schedule/detail/9034">ratings.



"1" was the lowest rating that could be given anyway!



href="http://blogs.sun.com/arungupta/entry/sea_change_affinity_why_jruby">Watch
the interview on why href="http://www.schange.com/en-US/Products/On_Demand/Affinity.aspx">Sea
Change Affinity picked JRuby/GlassFish.



Finally watch some of the snapshots captured today:


cellspacing="5">
style="width: 288px; height: 216px;" alt=""
src="http://lh3.ggpht.com/_wIoV5EX5M-0/SgDf7kw0VhI/AAAAAAAAQu8/lBVPYzF7iqE/s288/IMG_5022.JPG">
style="width: 288px; height: 216px;" alt=""
src="http://lh6.ggpht.com/_wIoV5EX5M-0/SgDf8Kvp_OI/AAAAAAAAQvU/VIA_nefdirM/s288/IMG_5030.JPG">
style="width: 288px; height: 216px;" alt=""
src="http://lh4.ggpht.com/_wIoV5EX5M-0/SgDf8rq5NHI/AAAAAAAAQvk/N6rZdnt9pIo/s288/IMG_5032.JPG">
style="width: 288px; height: 216px;" alt=""
src="http://lh6.ggpht.com/_wIoV5EX5M-0/SgDf9B89BAI/AAAAAAAAQv0/j6SpJY-soJo/s288/IMG_5034.JPG">
style="width: 288px; height: 216px;" alt=""
src="http://lh5.ggpht.com/_wIoV5EX5M-0/SgDf-jhGFVI/AAAAAAAAQwk/ae_DEvm4lQ8/s288/IMG_5046.JPG">
style="width: 288px; height: 216px;" alt=""
src="http://lh4.ggpht.com/_wIoV5EX5M-0/SgDf_Nb7wII/AAAAAAAAQw8/1Cvh3Eph3uE/s288/IMG_5050.JPG">
alt=""
src="http://lh4.ggpht.com/_wIoV5EX5M-0/SgDgAAh_4DI/AAAAAAAAQxc/wYQwLbCjNdw/s288/IMG_5055.JPG">
style="width: 288px; height: 216px;" alt=""
src="http://lh5.ggpht.com/_wIoV5EX5M-0/SgDgBedn75I/AAAAAAAAQyE/0KO5jjl3C6s/s288/IMG_5060.JPG">



And then the evolving album:



src="http://picasaweb.google.com/s/c/bin/slideshow.swf"
flashvars="host=picasaweb.google.com&RGB=0x000000&feed=http%3A%2F%2Fpicasaweb.google.com%2Fdata%2Ffeed%2Fapi%2Fuser%2Farun.gupta%2Falbumid%2F5332204752672779393%3Fkind%3Dphoto%26alt%3Drss"
pluginspage="http://www.macromedia.com/go/getflashplayer"
height="192" width="288">




Technorati: conf
railsconf
lasvegas
jruby
rubyonrails
glassfish
netbeans

Related Topics >>