2007 03 31

From Jeff Atwood,

“For a fast-moving field like computer science, the work you’re doing is far more relevant than any classes you’re taking. If you must choose between formal schooling and work experience, always choose work. If you’re in school, aggressively pursue real-world experience that compliments your schoolwork.”

I agree with Jeff! Nothing is more important than trying things by yourself when learning something new. Especially programming which is a mix of Science, Engineering and Art.

Yesterday, coincidentally, I was telling my students that this what Science is all about: doing experiments!

Jeff quotes Stephen Leacock:

“If I were founding a university I would found first a smoking room; then when I had a little more money in hand I would found a dormitory; then after that, or more probably with it, a decent reading room and a library. After that, if I still had more money that I couldn’t use, I would hire a professor and get some textbooks.”

What he meant was that what is important in a University is to have a place where people can meet and talk and learn and share experience. This is sooooooo true. When I think about my years in France, I distinctly remember the various nights my friends and I spent in our rooms having fun and talking about technology, programming and philosophy. I have forgotten about most lectures I attended… This is what is missing here at the University of Mauritius. And this is why many people tell me that it is just a glorified college. And I think I have to agree. Unfortunately.

Jeff gives the following advice to young people willing to become great Computer Scientists:

  • Do work placements (stage)
  • Participate in local user groups (LUGM is nice!)
  • Contribute to an open-source project.
  • Publish articles.
  • Start a blog.

So, dear students, move your ass and try to secure a work placement (stage) as soon as possible in a good software development company! Yesterday, we were discussing with Accenture and the people there are very nice! I guess the people from Infosys are also very nice. You get the point?

Popularity: 2% [?]

written by avinash

2007 03 31

A nice blog entry by Dave Thomas, the author of Agile Web Development with Rails:

“Put the main application logic into a RESTful server. This is where all the CRUD-style access to resources takes place.

Then, write a second proxy server. This is an HTTP filter, sitting between dumb browsers and your core resources. When browser-based users need to interact with your resources, they actually connect to this proxy. It then talks REST to your main server, and interprets the RESTful responses back into a form that’s useful on the browser. And this filter doesn’t have to be a dumb presentation layer—there’s nothing to say that it can’t handle additional functionality as well. Things like menus, user preferences, and so on could all sit here.

[...]

Let’s call it RADAR. We have a RESTful Application talking to Dumb-Ass Recipients.”

Personally, I understand his logic. But do we really need to have two distinct applications to do that?

I’ll have to think about it.

Popularity: 1% [?]

written by avinash

2007 03 30

At last!

Amazon has just sent me the book Agile Web Development with Rails that I ordered one month ago.

This book focuses on Ruby on Rails, the open source framework to write web applications in the Ruby programming language (which is making a lot of buzz on the Internet right now).

Previously, I had purchased Programming Ruby.

I guess I can start experimenting with Rails a lot more now as I finally have the two books pictured on the right :-)

By the way, both Ruby on Rails and Ruby Gems, the Ruby package manager, have just been updated. I did this on my Linux box:

sudo gem update --system
sudo rm /usr/lib/ruby/gems/1.8/source_cache
sudo gem install rails

By the way, here is a tip I got from the Agile Web Development with Rails book on how to generate the Ruby on Rails API documentation automatically:

rails dummy
cd dummy
rake rails:freeze:gems
echo >vendor/rails/activesupport/README
rake doc:rails

A directory called api will be created into the doc directory. Move it to the desktop and, voilà, you have the complete API documentation.

Have fun!

(Image courtesy of Spuggy, source_cache tip from ImaPenguin and Ruby Gems tip from Gregory Brown)

Popularity: 1% [?]

written by avinash