General

Rails Conferance 2007 Day 1

Rails Conf 2007The day started off with a Keynote from David Heinemeier Hansson the author of Rails, he outlined some of the features of the up coming Rails 2.0, important note here is that there are not going to be any major overhauls or re-writes, they have realized just how many people are using Rails and it is important that everyone’s code remains working when they upgrade. This release will be more of a cleanup, some code that has been deprecated for sometime will be removed and some new features will be added.

New features include

  • REST style active resource will be the norm now
  • Query caching
  • The debugger in Rails is working again and is better than before
  • Clean up of the config.rb
  • Auto gzip feature for CSS and JS files
  • ‘Assist Host’ browsers have a limit on how many files they simultaneously download from a site like if you have 4 images it will download 2 at a time, but if you can put 2 images on one host and 2 on an another it will download them all the 4 at once, with this feature you can specify things ‘host’/myimage and it will automatically replace host with host1 and host2..
  • form_for which url to use

Most of these features are already available on the edge version of Rails, so you can download and take it for a spin.

After the keynote I attended the “Clean Code” a session given by Robert Martin, he is the author of “Agile Software Development, Principles, Patterns, and Practices“, this talk was about how to keep your code clean and maintainable, he said just like in writing where we create multiple drafts each one a refinement of the previous one so is coding, no one is perfect and can write perfect code the very first time so it is important to constantly keep pruning your code, but in order to do this you will have to take small steps and have a good test suite so that your changes will not be disruptive. He also mentioned that Apatna a ruby IDE now has some re-factoring capabilities. He is a good speaker, keeps the audience engaged, I would definitely attend his sessions again.

The next session I attended was “Doing Rest Right” given by Scott Raymond, one of the important things he mentions is sometimes the best way may not be the “Rails Way” in which case you need to take your own decisions and change it. He also talked about

  • 2 phase style post, where you do one post which returns a temporary url, which then you can use to do the actual post.
  • http protocol parameters and etags , can be used to do interesting things.

A tiny rant here, the speaker was really good and had a good command on his subject but his whole talk was in mono tone just the same volume no ups or downs almost put me to sleep. Maybe its just me should have had more caffeine.

The next session “Building and Working with Static Sites in Ruby on Rails” by Ben Scofield of Viget Labs, the speaker talks about how to develop websites that are mostly static but with some dynamic content mixed in, they have developed a plugin that is still in beta that can help you do the same.

Standing on the Shoulders of Giants” by Adam Keys, talks about how important it is to not only write code but to also read others code, it is known that reading code is five times harder than writing code, reading others code will help in many ways, first it will help you write better cleaner and more readable code two you can learn many tips/tricks. xmlrpc4r is a really good library to start off with, if you want to try reading code since this library’s code is very clean and readable.

Final session of the day “Mapping Rails to Legacy Systems” by Stephen Becker & Devon Jones , the talk was about how they are refactoring there old J2EE applications (wow) at Vonage into using more Ruby and Rails. They talk about how J2ee apps tend to be huge monolithic applications that have everything and if you want to stop doing that and create more smaller and reusable systems how you go about doing it, some suggestion were instead of re-writing entire subsystems at one go, take some chunks of functionality and wrap them into a REST style service that your system can call. This talk had a big audience involvement many in the audience seem to be following the same style.

Evening Keynotes

Enterprise is Not a Four-letter Word” by Steven Smith, many big so called “Enterprise” companies and some government organizations are now into using Ruby and Rails there is a big move to adoption, there were 1600 attendees that in itself speaks volumes.

Keynote” Avi Bryant, the speaker is well know in the Small Talk community as well as Rails he is the man behind SeaSide and DabbleDb, he showed how close Ruby and Smalltalk is as far as syntax goes, predicted in 10 years Ruby will be where Smalltalk is today. I was intrigued by Smalltalk need to check that out . It is nice to know that the Rails Conferance was not shy or scared to demo other languages or frameworks, they said it is to bring different ideas and perspectives to the table.

“Keynote” by Ze Frank this is the first time I heard of Ze and I am already a big fan, he is a decribed as a performer, web-toymaker, philosopher and comic.

Some interesting quotes

  • “It’s exciting when there’s job advertising for people that have been working with Rails longer than I have” — DHH
  • “Rails 2 is not gonna be a unicorn.” –DHH
  • “Rails prefers REST”-DHH
  • “We have to manually expire the cache — that’s just crazy talk” – Ben Scofield
  • “They’re not really problems, just hidden feature requests I didn’t tell you about.” – Ben Scofield
  • “Gone are the days when you could just focus on code” – Dan Benjamin
  • “Nothing to fear but fear itself; That’s called Recursion. That’s Infinite Fear” – ZeFrank

General

Rails Conferance 2007 Tutorial Day

Rails Conf 2007 Today was tutorial day at the Rails conference 2007, I attended two tutorials one was on ‘Prototype and Scripaculous‘ given by Thomas Fuchs and the other was on ‘Rails Routing’ given by David A. Black.

Tim Shadel of CodeSmack.com graciously setup a CampFire account for all of us to chat/discuss about each session, see here for more info on how to access these transcripts, Thanks Tim !!

In the Prototype and Scripaculous talk , Thomas talked about the history of these libraries and some of there present and upcoming features, it was interesting to know that these libraries have been extracted from real world applications. He also talked about some common pitfalls when using JavaScript.

The Routing talk was about, well Rails routing, how Rails routes incoming request to controllers and actions and also how it generates URLs there was also talk about Named Routes and Restfull Routing.

Evening we went to China Town for dinner, I live in Phoenix and this is my first visit to Portland I must say there are a lot of homeless people in Portland.

General

National Debt Crisis

Are you sleeping a lot ? Want get worried ? Loose your sleep ? here take a look at this link , now if this does not frighten you I don’t know what will ! Close to 9 trillion !! And the interest rate, 19% . I wonder what the monthly payments on this are ?

How are we ever going to pay this ?

General

Backup Office E-Mail in Gmail

A simple and effective solution, create another gmail account for yourself <youname>_<officemail>@gmail.com and forward any mails you want to keep around. No more annoying ‘reached account size’ mails and easy to search rather than trying to get outlook to search.

General

Getting Windows Vs. Mac

If you want to buy a windows laptop, you will have to decide
Dell/HP/SONY……….which one………………..
And then
Windows Vista/Windows XP/………….
And then
LATITUDE/INSIPRON/…….
CONFIGURATION…………………………………………………………………………

Now if you getting a MAC
MACBOOK/MACBOOKPRO..

And the cost difference between them ? for the same hardware configuration 0$

Tech

Why do we need an SCM ?

So I have so far worked in four different IT shops of various sizes and noticed in all of these shops, the person who ends up merging code is a Senior Developer/Tech Lead and in most cases the SCM and the senior developer are the same. This senior developer merges all the changes gets with the developers if he has questions, builds and check in the code (Even if there is another designated SCM).

This reminds me of a place I used to work, where the most brilliant Senior Developer who should have been doing other things like designing and coding was spending most of his time merging code cause the SCM was too dumb to read the SVN book.

I also notice that the senior developer is the guy who sets up Cruise Control/Hudson and then hands it over to the SCM (i.e if there is one).

So here is my question “Why do we need an SCM” position when the senior developer is doing all the work ?

Now if you are using Clear Case I totally understand and feel sorry for you.

General

Spring + Jruby “undefined method”

If you are trying out spring and jruby and get this exception “org.jruby.exceptions.RaiseException: undefined method” do not fret. Take a look at this link , looks like as of spring 2.0 and 2.0.1 there is a bug where any objects that are passed into jruby by spring do not seem to know there methods and the fix is part of 2.0.2 , will just have to wait till 2.0.2 is available.