Wednesday May 06, 2009
Rails Conf 2009 Day 3 Trip Report
Attended a great talk by Michael
Bleigh on Twitter
on Rails. He has
built a gem, TwitterAuth,
that uses Twitter as authentication provider (OAuth or HTTP Basic)
which allows to to quickly and easily create
Twitter applications in Rails. In Michael's words "TwitterAuth makes Twitter Rails
apps stupid simple".
The talk built Twistener - a
Twitter application in Rails that shows how many tweepl are having a
conversation about you. A hosted version of
the application is available at twisteners.heroku.com.
The slides
and end result
of the code are always helpful.
In
a post-talk conversation he mentioned that all the gems are pure Ruby.
Any body willing to re-build the application and trying using JRuby and
GlassFish ?
And then attended Rails
3: Stepping off of the Golden Path by a "morally loose,
cheese eating surrender monkey", aka Matt Aimonetti :)
What are you going to get in Rails 3 ?
Rails Conf 2009 Day 3 - Chris's Keynote

An informal survey this morning at Rails Conf 2009
keynote showed:
40% Rails developers in startup
30% Rails developers in consulting
30% Rails developers work in internal projects
Engine Yard got a sponsor keynote slot and announced Flex - a cloud
computing platform on EC2 to host Rails applications. They also showed
one-button self-healing clusters. One of the speakers was particularly
scared (reminds me of my early days) and IRC#railsconf
had a pool of $125 to hug him on the stage :) Anyway, read more details
here.
The highlight of the morning was keynote by Chris Wanstrath (@defunkt). I
took multiple notes during the keynote but the transcript
has
all the details. The first part of the talk has good tips on how to
create a successful blog such as blog personality, template, killer
name and a sleek design, sparse side bar, consistency and structure,
and many others.
There was a good bashing of SourceForge towards 60% in the talk. Chris
gave a suggestion to SourceForge:
They should cut their
registration process down to a single page, remove the 200 character
"please host my project" plea, be more lenient on the categorization,
suggest an open source license for you, then allow you to change any of
these things after your project has been created.
And there are other interesting ones too. Read the full text
and enjoy!
Here were some of the Q&As at the end of keynote ...
Q. What was your inspiration for github ?
A. Inspiration is coding, doing open source software all the time,
downloading patches, relative paths were getitng in the way to coding.
Source forge registration page is too long. github is very simple for
anything code related that you want to put there.
Q. You develop these interesting pieces of software, have a job, play
guitar,
create pieces of music, drum music, how you do this in one lifetime ?
A. I outsource most of it. All of us do it, I post my music and code on
the Internet, watch a lot of TV. I'm into sharing on github. Don't have
a better work ethic, just talk a lot.
Q. What do you watch on the TV ?
A. Legend of the secret
Q. Built a bunch of tools used by non-Rubyists, how can we promote Ruby
there ?
A. RubyGems is one reason I fell in love with Ruby. Remove the friction
and lower the barrier to entry.
Q. Focus github around the code/community, it helps around the people,
opposite of Source Forge/Ruby Forge
A. Github is like facebook for code development.
Technorati: conf
railsconf
git github lasvegas
rubyonrails
Posted by Arun Gupta in General | Comments[0]
|
|
|
|
|
Tuesday May 05, 2009
Rails Conf 2009 Day 2 Trip Report
This is a follow up post from David's
keynote.
| Attended 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. |
![]() |
I presented on Develop with Pleasure, Deploy with Fun: GlassFish and NetBeans for a better Rails experience, slides here. The several concepts in the talk are explained in the following bullets: |
![]() |
The next talk of the day was JRuby: State of the Art |
| Later in the evening, Brian Helmkamp, Aman Gupta, Luis Navena, Pat Allan, Dan Kubb, and John Nunemaker were awarded Ruby Heroes Award! |
![]() |
And the keynote by Tim Ferris,
lets not talk about it ;-) I edited pictures, authored my blog, caught
up
on email/RSS during the keynote. #railconf on IRC and twitter
were way more fun! Check the live ratings. "1" was the lowest rating that could be given anyway! |
Sea Change Affinity - Why JRuby/GlassFish ?
At Rails Conf
2009, Jay
McGaffigan from Sea
Change talked about why they choose JRuby/GlassFish for their
product Affinity.
Here are some of the reasons he quoted:
Posted by Arun Gupta in web2.0 | Comments[1]
|
|
|
|
| Rails Conf 2009 Day 2 - DHH Keynote
Rails Conf Day 2 start with DHH's
keynote. The room was packed (close to 1200 attendees) and SRO. It was
interesting to know that 70% of the attendees are first timers and only
a handful have attended for all 4 years in a row. This is my second
in the US.
Here are the notes from DHH's keynotes:
Posted by Arun Gupta in General | Comments[4]
|
|
|
|
| Rails Conf 2009, Las Vegas - Day 2 Run

Eight of us started at 6:15am this morning from the Hilton Lobby, looped
around Las Vegas
Country Club and another short loop in the neighborhood for a
total of 5.2 miles in 43:18 mins.
Interested in running together while attending Rails Conf
? Follow @railsConfRunner
and meet us at 6:15am in the Hilton lobby.
And don't forget your Tequilas - it's Cinco de
Mayo!
Technorati: conf
railsconf
lasvegas
running
hilton
Posted by Arun Gupta in Running | Comments[0]
|
|
|
|
|
Monday May 04, 2009
Rails Conf 2009 - Day 1 Trip Report
Rails Conf 2009 started this morning. The first day consists of morning
and afternoon tutorials.
I attended Nick Sieger's JRuby
on Rails tutorial, the slides are available.
A survey in the room showed:
| run
lambda { |env| [ 200, { 'Content-Length' => '2', 'Content-Type' => 'text/html', }, ["hi"] ] } |
| ~/samples/railsconf/sinatra/basic-rack
>~/tools/jruby/bin/jruby
-S rackup [2009-05-04 13:40:18] INFO WEBrick 1.3.1 [2009-05-04 13:40:18] INFO ruby 1.8.6 (2009-03-16) [java] [2009-05-04 13:40:18] INFO WEBrick::HTTPServer#start: pid=90964 port=9292 127.0.0.1 - - [04/May/2009 13:40:27] "GET / HTTP/1.1" 200 2 0.0160 127.0.0.1 - - [04/May/2009 13:40:27] "GET /favicon.ico HTTP/1.1" 200 2 0.0060 127.0.0.1 - - [04/May/2009 13:40:30] "GET /favicon.ico HTTP/1.1" 200 2 0.0100 |
| App
= lambda { |env| [ 200, { 'Content-Length' => '2', 'Content-Type' => 'text/html', }, ["hi"] ] } |
| ~/samples/railsconf/sinatra/basic-rack
>~/tools/jruby/bin/jruby
-S rackup app.rb [2009-05-04 13:43:57] INFO WEBrick 1.3.1 [2009-05-04 13:43:57] INFO ruby 1.8.6 (2009-03-16) [java] [2009-05-04 13:43:57] INFO WEBrick::HTTPServer#start: pid=90990 port=9292 127.0.0.1 - - [04/May/2009 13:44:09] "GET / HTTP/1.1" 200 2 0.0110 |
| class
BasicRack def call(env) body = "Hello from a class" [ 200, { 'Content-Length' => body.size.to_s, 'Content-Type' => 'text/html', }, [body] ] end end run BasicRack.new |

| ~/samples/railsconf/sinatra/basic-rack
>~/tools/jruby/bin/jruby -S gem install shotgun JRuby limited openssl loaded. gem install jruby-openssl for full support. http://wiki.jruby.org/wiki/JRuby_Builtin_OpenSSL Successfully installed configuration-0.0.5 Successfully installed launchy-0.3.3 Successfully installed shotgun-0.2 3 gems installed Installing ri documentation for launchy-0.3.3... Installing RDoc documentation for launchy-0.3.3... |
| ~/samples/railsconf/sinatra/basic-rack
>~/tools/jruby/bin/jruby -J-Djruby.fork.enabled=true -S shotgun [2009-05-04 13:55:46] INFO WEBrick 1.3.1 [2009-05-04 13:55:46] INFO ruby 1.8.6 (2009-03-16) [java] == Shotgun starting Rack::Handler::WEBrick on localhost:9393 [2009-05-04 13:55:46] INFO WEBrick::HTTPServer#start: pid=91089 port=9393 |
| class
BasicRack def call(env) body = if env["PATH_INFO"] == "/foo" "in foo" else "in other" end [ 200, { 'Content-Length' => body.size.to_s, 'Content-Type' => 'text/html', }, [body] ] end end run BasicRack.new |
| class
BasicRackApp def call(env) body = "hello from app" [ 200, { 'Content-Length' => body.size.to_s, 'Content-Type' => 'text/html', }, [body] ] end end class MyMiddleware def initialize(app) @app = app end def call(env) @app.call(env) end end use MyMiddleware run BasicRackApp.new |
| use Rack::CommonLogger |
|
def call(env) status, headers, body = @app.call(env) body.map! { |part| part.upcase} [status, headers, body] end |
| require
'sinatra' |
| ~/samples/railsconf/sinatra/basic-sinatra
>~/tools/jruby/bin/jruby
-rubygems basic-sinatra.rb == Sinatra/0.9.1.1 has taken the stage on 4567 for development with backup from WEBrick [2009-05-04 14:40:14] INFO WEBrick 1.3.1 [2009-05-04 14:40:14] INFO ruby 1.8.6 (2009-03-16) [java] [2009-05-04 14:40:14] INFO WEBrick::HTTPServer#start: pid=91396 port=4567 |
| require
'rubygems' require 'sinatra' not_found do 'hi from other' end get '/foo' do 'hi from foo' end |
| require
'rubygems' require 'sinatra' get '/env' do env.inspect end |
| require
'rubygems' require 'sinatra' get '/' do end post '/' do end put '/' do end delete '/' do end |
| require
'rubygems' require 'sinatra' get '/' do content_type "application/json" { "foo" => "goo" }.to_json end |
| <html> <body> Hello form Sinatra + ERB </body> </html> |
| require
'rubygems' require 'sinatra' get '/' do erb :index end |
| require
'rubygems' require 'sinatra' require 'haml' get '/' do haml :index end |
| %html %body %h1 Hello from HAML |
| require
'rubygems' require 'sinatra' require 'haml' get '/' do erb :index end use_in_file_templates! __END__ @@ index <html> <body> Hello form Sinatra + ERB in file </body> </html> |
| require
'rubygems' require 'sinatra' require 'haml' get '/' do erb :index end get '/foo' do erb :foo end use_in_file_templates! __END__ @@ index <html> <body> Hello form Sinatra + ERB in file </body> </html> @@ foo <h1>FOO!</h1> |
| require
'rubygems' require 'sinatra' require 'haml' helpers do end |
| require
'rubygems' require 'sinatra' require 'haml' module helpers def self.dosomething(arg) end end get '/' do Helpers.dosomething end |
Running at Rails Conf, Las Vegas 2009
Six of us from @railsConfRunner
ran together around Las
Vegas Hilton this morning.

6.4 miles, 57:04 minutes.
Interested in running together ?
Join us at 6:15am in the Hilton lobby tomorrow morning! Here is a
picture of the running group from this morning:
Thanks to Jed (2nd from right) for organizing the run, and of course
all the running
buddies to make it a fun run :)
Technorati: conf
railsconf
lasvegas
hilton
running
Posted by Arun Gupta in Running | Comments[0]
|
|
|
|
| TOTD #81: How to configure "database.yml" to be used with both JRuby and MRI ?
In JRuby-on-Rails
tutorial at Rails
Conf 2009, Nick
Sieger shared a nice little tip on how to configure
"database.yml" to be usable with both JRuby and MRI:
| <% jdbc = defined?(JRUBY_VERSION) ? 'jdbc' : ''
%> development: adapter: <%= jdbc %>mysql encoding: utf8 reconnect: false database: myapp_development pool: 5 username: root password: socket: /tmp/mysql.sock # ... |
Posted by Arun Gupta in General | Comments[0]
|
|
|
|
|
Monday April 27, 2009
GlassFish, NetBeans, and Project Kenai at Rails Conf 2009
Did you know that ...
![]() |
|
![]() |
Develop
with pleasure, Deploy with Fun: GlassFish and NetBeans for a better
Rails experience Tuesday, May 5th, 2009, 1:50pm Pavilion 1 |
| And you'll get to meet Project Kenai team, they form the foundation for Sun's connected developer experience. Read about their participation here and meet them to learn about NetBeans and Kenai integration. | ![]() |
Posted by Arun Gupta in General | Comments[5]
|
|
|
|
|
Thursday March 27, 2008
Slides & Demos for Rails/GlassFish/jMaki session at TSS JS
As reported earlier,
I presented on "Rails
powered by GlassFish and jMaki" yesterday at The
Server Side Java Symposium - Las Vegas. The slides are
available here.
The demos shown in the talk are available at:
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Posted by Arun Gupta in web2.0 | Comments[2]
|
|
|
|
|
Wednesday March 26, 2008
Enjoy some pictures from Las Vegas ...
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Posted by Arun Gupta in photography | Comments[1]
|
|
|
|
| Bellagio Musical Showers - Las Vegas
Recorded on Mar 25, 2008 night ...
Technorati: conf
theserverside
tssjs lasvegas
bellagio
musicalfountain
fountain
Posted by Arun Gupta in General | Comments[0]
|
|
|
|
|
Tuesday March 25, 2008
Rails powered by GlassFish & jMaki @ The Server Side Java Symposium, Las Vegas - Mar 26, 2008
If you want to learn more about:
| Date: | Mar 26, 2008 |
| Time: | 2:30 - 3:30pm |
| Track: | Language & Coding |
| Title: | Rails powered by GlassFish & jMaki |
Posted by Arun Gupta in web2.0 | Comments[1]
|
|
|
|
|
Sunday March 16, 2008
Travel Schedule - Next 5 weeks
Here is my travel schedule for next 5 weeks:
| Mar 17-21 | Ajax World, New York | Web Application Development using jMaki |
| Mar 25-26 | The Server Side Java Symposium, Las Vegas | Rails powered by GlassFish & jMaki |
| Mar 27 | Developer Update, St Louis Westport DoubleTree, FREE event | Open Source Web Services stack in GlassFish |
| Mar 28 | Developer Update, Kansas City, FREE event | Rich Internet Applications and GlassFish |
| Apr 16-19 | FISL, Brazil | Web 2.0 Application Development
using jMaki and Asynchronous Ajax for Revolutionary Web Applications |
Posted by Arun Gupta in General | Comments[2]
|
|
|
|
|
Today's Page Hits: 2681
Total # blog entries: 994
| « November 2009 | ||||||
| Sun | Mon | Tue | Wed | Thu | Fri | Sat |
|---|---|---|---|---|---|---|
1 | 2 | 4 | 6 | 7 | ||
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | |||||
| Today | ||||||