Ruby Makes Linux Journal Front Cover

I just got home and saw the new Linux Journal. Ruby made it onto the front cover, and into Reuben’s column. The article is about web apps and is the first in a series featuring Ruby on Rails. In case you are not into web development Ruby on Rails (RoR) is a web development framework. It makes development of web based applications very simple, comparitively speaking. Some examples of your typical web based app that you might use RoR for would be a blog, a wiki or any web page that requires some type of user input and usually database storage.

I have played around with RoR a little. I have very little web development experience and I found RoR to be very simple after looking at a few examples. I played around with developing a very simple weblog along the lines of instiki. I used SQLite for the database because I didn’t want the hassle of administrating MySql.

I haven’t played with RoR in a few months due to time constraints, but if I were doing web development for cash, I would be spending a lot of time with RoR.

I want to mention a few other things in this post that may not really belong here, but since we are talking about Ruby ……

I have done a considerable amount of scripting in Perl. Perl is ok, except that sometimes it looks like Yosimite Sam explatives and I always felt like its OO support was weak at best. I started playing with Ruby about 3 years ago when I was still at Lockheed. I was amazed at how easy it was to use the socket objects. Want a TCP/IP server? No problem:

#!/usr/bin/ruby
require ‘socket’
server = TCPServer.new(‘localhost’, 8000)
client = server.accept
loop {# play with client here}

I used various forms of this extensively for a project that I worked on where I was writing a lot of networking code. When I left Lockheed and started my current position I had no idea that I would be doing so much integration work. My employer did not have a preference, so I used Ruby for everything. The steel mill that I work at is glued together with Ruby, and it has worked great.

So my point is that if you do not currently know a scripting language, you should learn one. I would say at least learn Perl because there is so much of it out there, but if you are into OO and want something more elegant, then go with Ruby. I am very happy with it and will continue to use it for most programming tasks where I can.

The other thing I want to say was that if you haven’t checked out instiki, I highly advise you to do so. I will probably dedicate a whole post to instiki at some point in the future, so I won’t go into too much detail here. Instiki is a zero configuration wiki. It uses ruby’s built in webserver Webrick. So, all you need to do is install the Ruby interpreter, then download instiki and run it. Then you will have a wiki running on port 2500 of your machine. It is basically that simple.

I have been using instiki as a notebook at work for about the last 4 or 5 months. I work in a very fluid, dynamic environment. Things change fast. Work gets dropped or changed, work gets added and I get interrupted frequently. Using instiki as my notebook has really helped me to organize. If I have notes that I want to update at home, instiki is in one folder and easily fits on a usb drive making it very mobile. The only thing required to run it is the Ruby interpreter. Since you can get a Ruby interpreter for all major platforms, Ruby and instiki are cross platform. Another big plus for me since I use M$ windoze at work and Linux at home.

If you have never used a wiki before, some nice wikis to check out are Ward’s Wiki and definitely check out wikipedia. I will say more about instiki in a future post.

Leave a Reply