Ruby on Rails

I had started to learn about programming patterns, and how useful they could be, but as expected, other things started coming up and prevented me from finishing the book I was reading.

Well I was tasked by my manager to take a look at Ruby on Rails. I've been playing with it here and there for a little while when I had breaks. I finally had a little bit of spare time, so I tried InstantRails which lets you get up and running very quickly (not instantly, but pretty close).

A few observations about Ruby so far.

The first thing I noticed was that when you created a project all the folder structure was created for you automatically. While this may reduce the flexibility of your own folder structure, it allows Ruby to run without any configuration files, things are just where they are expected to be.

It implements the Controller/View/Model design for development. At a very high level your UI is in the View portion, business logic is in the controller, and data access and logic is in the Model. This pretty much mirrors the design pattern for Cocoa on the Apple, which I found intriguing. (I had tried this on a VM of Windows Server 2003).

Playing with some of the demo code, I like how simple everything seems to be so far, but of course the real challenge will be to take an existing application and duplicating it in Ruby and see what I end up with.

RIP Foxpro

Just saw this post:

Foxpro put out to Pasture

Only thing I have to say is 'IT IS ABOUT TIME', hehehe.

I do feel a teensy bit bad for my buddy at Amex who is still convinced that Foxpro is the best thing since the inquisition, but he's now going to have to face a life of Foxpro not officially supported by Microsoft.

It could be interesting to see what the development community does with Foxpro though. Considering the fanatical following it has with developers that use it, there should be plenty of support for it on CodePlex when it's moved there.

The Future of Hard Drives?

Just read this article about new flash hard drives from Intel.

I really like the idea of putting the OS on a flash drive, reminds me of the days when you had eproms that held the monitor programs for your machine which would start it up. Of course these machines were programmed in machine language so they didn't have the OS requirements of todays modern machines have.

The sizes are supposed to range right now from 1-8gb, which should be enough to put a base OS on, but the thing that really surprised (and impressed me) is the price. They are actually going to be $20-25.

How long before they've got the technology improved to provide the higher capacities that we expect out of our hard drives now. I would estimate 5-7 years considering Moore's law, but things have leapfrogged in the past, especially as new manufacturing processes are developed.

I could also see these being used in the $100 laptop (well actually $200 I think) due to their reliability and speed.

The 'Switch' Part Deux

Ok, it's been a little over a month since I've switched to a Mac, and it's really been an eye opening experience. I think I've definitely done the right thing, and I'm glad that I'm able to use both systems on one machine now.

In no particular order, here's my observations about the Mac:

1. Everything 'Just Works'

They really aren't kidding when they say that, it's really true.... honest....

Every time I have gone to do something on the Mac, my mood has slowly been changing. At first it was with a slight trepidation, what will I have to do to accomplish the same task I did on my Windows machines? Slowly this has changed to excitement when I go to do a new thing I've never done, because I know that in very little time I'll be accomplishing something, instead of scratching my head, digging through registry entries, searching google, downloading drivers....etc. Examples to follow.

2. My Windows Mobile 5 PDA has become useful again

I know at first this doesn't seem to make sense, I mean I just switched to a Mac, shouldn't I be using at least a Palm, instead of my Windows PDA? At first I thought of using my Palm, but I'd miss a lot of the cool features I like in my PDA, Wi-Fi, two card slots, the security etc. Of course this was something that out of the box the Mac can't do (the things it can't do out of the box I can count on one hand still).

I ended up getting a program called The Missing Sync from a company called MarkSpace. Now this was definitely one of the trepidation times, as anyone who's used ActiveSync can tell you, it is not a pretty sight to connect your PDA to your PC.

I started the install (and about 2 minutes later) it said it was done and required a reboot. Wow, this is the FIRST program that required a reboot (in fact I think this is the first time I've rebooted it)

Well after I logged in, I see a little dialog that says 'Hey, I've found hx2795 on bluetooth, would you like to sync to this device?'. At this point I was flabbergasted, I've NEVER gotten the PDA to sync on the Windows PC with Bluetooth, in fact the sync wouldn't even recognize it. So brave soul that I am, I clicked yes. I then configured how I'd like it to sync, and POOF away it goes, about 10 minutes later (first syncs are always longer) it says it's done. I check my PDA and sure enough, not only did it sync up well, it actually took my 4 calenders on iCal and combined them into one on the PDA, using the category as the Calendar name. SWEEEEETTT!!!!

3. The 15- minute DVD

Now creating DVD's on a PC can be an art (a kill a chicken during a full moon and sprinkle it's blood over the PC kind of art), but on the Mac it's supposed to be much easier.

Wow, that's another understatement. I had some video left from our last Team Building trip that was still on my camcorder. I hadn't wanted to fight with setting up and configuring the Firewire on my PC, so these wonderful memories have been lying stagnant, just for the Mac.

Ok, I did do some searching on Google for drivers, but I couldn't find any, mmmmm. Well let's just plug it in and see if it tells me where to find the drivers.

*BING* little pop up 'Would you like to import the video from your SD-23 camcorder?'

Ummm, yeah, let's do that....

*iMovie opens, then another pop up* 'The tape is not at the beginning would you like to rewind before starting?'

Yeah, that'd be a good thing....

*whirring and video importing happens*

*another pop up* 'Would you like to make chapters from your video?'

Yeah, I like those....

*It actually splits the chapters CORRECTLY* *faints*

*Pop up* 'Would you like to send this video to iDvd to make a DVD?'

*with lots of confidence* YEAH, let's do that thing....

*little more spinning* 'Please pick a clip to add to the title page'

Ok, not hard, drag and drop

'Please pick a theme for your DVD'

Ok, I can do that

'Would you like to edit the menu?'

Sure, let's move things around, make a more dramatic build-up. I then get a nice GRAPHICAL interface where I can drag and drop clips, menu items, and basically the easiest editing I've ever done for a DVD menu.

'Ready to burn, click here'

*CLICK*

Ok, now here it did take a little more than 15 minutes, it had to encode the video to DVD format, and it took about an hour, so I had some lunch.

'Your DVD is completed, would you like to archive your video?'

Yeah, I like having more space....

And that's it, from the point of plugging in my camera, to having a completed DVD, and my video files being packaged up into a nice simple file for storing.

I'll continue with more observations a little later, but overall I'm VERY pleased with my Mac, so much so, that I'll be selling my Laptop, and donating my other machines.

About DRM

Well I read the post by Steve Job's this morning, and I have to say I learned a few things reading it.

I had no idea that the percentage of online music sales was so small, really puts things in perspective when you think of how much iTunes sells, and then compare that to overall CD sales.

I like how Steve gave three possible options on what's going to happen next, and of course of the three I definitely like the idea of trashing DRM. Although there have been attempts (can you say Sony Rootkit?) to lock down the CD market, even that only effects a small percentage that is played on a PC (or put into a PC in an attempt to rip the music onto a player, or another device).

I honestly hope this is taken seriously, and that not only the music industry consider it, but the rest of the entertainment industry as well. What would happen if DVD's were sold for $4.99 instead of $19.99? Would it be too much of a hassle to make a copy versus just buying the DVD from the store or online outlet? I know speaking for myself, I've not bought a CD in a while (roughly about the time I downloaded iTunes), yet I still purchase roughly the same amount of music. iTunes just made it incredibly easy and convenient for me to get what I wanted.

Here's hoping that this comes to pass, and we can concentrate on actually developing the products and how they are used, instead of putting up walls to try and isolate and 'protect' these works.

The 'Switch'

Well, after many years of using PC's and Windows, and occasional foray's into the world of Linux, I've made a switch.

Last week I changed over from my 3 PC's (A Server, Gaming machine, VM host) and my 2 laptop's (one big widescreen HP, and another more portable IBM X30) to a brand spanking new iMac.

At first it was a little bit of learning, just how to use the different shortcuts for the new really cool features of OS X, but now I'm back to having 30 gazillion windows open (yeah, I can hear Tammy cringing as I write this) and popping back and forth between admin, and limited user accounts.

My first impression when I got it at work were VERY positive, it came right up and recognized the wireless mouse and keyboard (I did have to scrounge for some batteries, thanks to Mark for helping out) and setting up my accounts, and the introduction were very good.

Things that I really like about the Mac:

1. Most of all like they say everything 'Just Works'. It's an extremely well thought out and refined OS, and it definitely makes you more productive.
2. The controls to spread out your windows makes it easy for guys like me who like to 'stress' test their machines by opening as many windows as possible at once. You can pop them all apart, then move the mouse to the one you want and POP there it is on top.
3. The bluetooth installation was FREAKY!!!! After fighting with the Windows version (never could do it on Linux) and how quirky it is, setting up my bluetooth devices (cell phone, PDA) was sooo painless. At first I thought it was broke, 'What? It only asked me to key in a PIN, how can it be done????', it's extremely refreshing to be able to go spend time on productive tasks instead of fighting with bluetooth!!
4. Software installations are EASY, both installing and removing them. I'm able to try several versions of a program without having to worry about conflicts, not just with the same type of programs, but anything on my system.
5. Parrallels on the Mac is FAST, I mean SCREAMING fast compared to the PC, even to VMWare on the PC. This was a big but pleasant surprise, in fact I'm even using a beta version and it's running very smoothly.
6. Animations are awesome. Switching between accounts, or full screen and windowed mode on Parrallels just looks COOL. I'll have to take a video and post it.

I'm sure I'll be expanding on this list as the days go by, but I have to say I'm glad that I've finally switched over.