Application Programming Interface(s) leading us into the future

Okay, now I’m pretty sure that APIs, combined with some mix of RSS/JSON + AJAX, really are emerging as the defining technology of the web.

I’m still trying to piece it all together because it seems like a lot of this stuff is really intelligently heading toward some kind of unification. There’s no doubt an elegance to its evolution. If laissez-faire economic theory weren’t so gauche right now I’d make reference to an invisible hand guiding the development of the stuff.

This stuff is really awesome and is collectively responsible for my post frequency dropping off so dramatically over the past week. I’m completely consumed with it and only now, in my weary state am I incapable of working with it and forced to transition to sleep by writing a boring blog post.

Everywhere I look on the web I’m wondering if certain sites have an API and if so what could I do with it. It really keeps reminding me of Douglas Copeland’s book Microserfs and the development software the characters are creating in the second half of the book. Everything feels like lego blocks now. And when I try to explain that to the luddites, they just look back at me with a blank look on their face, not understanding WTF I’m talking about.

It reminds me of when I was back in high school and I have to give a presentation on a current event that I thought was significant and then explain why I thought it was important. This was back in 1993. For a few years at that point I’d been hearing about Apple’s move to adopt a new processor architecture. They’d been using the 68000 series Motorla processor since their start and to move to another processor would mean changing all of their architecture, including their operating system.

They changed over to a new processor called “PowerPC” which, iconically then, had been co-developed by IBM, which many of us still incorrectly perceived as Apple’s rival. It was the same processor that would be used a few years later in the first Playstation (which had two, one for graphics, one for regular operations).

I knew that the chip was heralding a major change in the computing world and, coupled with what was happening with computer networking and the first public ISPs starting to show up, we were on the dawn of a new era in information architecture. And I got up there in front of a bunch of seventeen year-olds and told them all this and they stared back at me like I was humping the chalkboard.

Of course, I turned out to be right.

And I think I’m right this time too. This stuff, and maybe location awareness coupled with an expansion of the web into the mobile realm, are going to be major players in the next five years of web development. Even if the economy continues to tank. Maybe even because of it…

The goggles – they do nothing!

Or, "How to cook your thigh with the Transcend 2.5″ Solid State Drive?"
I was very excited to have had the opportunity to test out a new 32 GB solid state drive. For those of you who don’t know, a solid state drive serves the function of a hard drive (hard disk drive) in your computer, but performs this function in a completely different fashion.

A traditional hard drive consists of one or more spinning disks onto which bits of information are read and written. For anyone who remembers them, the hard disk is a more robust, but less portable, version of the "floppy disk." It is used to store the data that you want to continue to be able to access when you turn the computer back on, or everything you want to "save." This is as opposed to the information that disappears when you turn the computer off. This is what is known as "volatile" memory; it gets this name because its "state" is dependant on the flow of current from its power source. It can go away if power is lost.
Macintosh_IIcx[1]
Years ago, I remember on the Apple Macintosh OS System 7 there was a Control Panel called "RAM disk." This was a feature that allowed you to temporarily partition a section of the volatile memory into a disk. You could even set this disk boot the computer, if you could get the operating system to fit on there. I remember at the time I was using a Macintosh IIcx, which was, at the time, the second-best Mac you could get (the premier model was the IIci).

The Macintosh IIcx was the first Mac that had a "snap" together set of modular components. One could install additional memory without tools. Anyway, you could configure the operating system to take some of your memory and turn it into a “RAM Disk” which made whatever was on the “RAM Disk” accessible with much less delay than anything that was stored on the actual hard disk drive. It was the opposite of virtual memory which would take your hard drive and use it for RAM.

I remember trimming down a system folder as small as possible to get it to fit on the RAM disk. The Mac only had about 16 MB (yes, that’s megabytes) of RAM and the OS needed a full 8 MB to load. I was able to make the OS run at 2 MB a, load itself into 8 MB of RAM and still have 6 MB available for running applications. This was back in 1991 or thereabouts. I truly felt I was at the pinnacle of home computing technology at that point.

As it turned out, that was an interesting crossroads of sorts. Cheap volatile RAM intersected low-overhead and small footprint operating systems. Semiconductor prices increased, chip architecture became more complex, and due to the dawn of the Windows era and the reduced instruction set processors a few years later, the OS began to grow in size tremendously.

My laptop is a Dell Latitude D600 which originally shipped back in 2003. Considering how old it is, I’ve managed to keep it together quite well. A few years ago I upped its RAM to 2 GB and I’ve acquired a secondary battery for the modular removable media bay.

But for a while I’ve known that the hard drive was getting older. I’ve had enough drives fail on me to know that if something was going to give out it was going to be the disk drive. That would have been a catastrophic loss as I was not actively backing up the data that the drive was holding for me. It would have been personally catastrophic. Ever once in a while I would hear it clicking and that’s never a good sign.

My old hard disk drive had a capacity of about 30 GB, so I went and looked for a company that made a SSD of similar capacity in a compatible form factor. It was actually a little tougher than I imagined. The capacity was obviously a stumbling block, but more importantly the fact that it needed an IDE interface seemed to pose a greater problem.

I’ve long felt that the greatest bottleneck in desktop architecture has been due to the I/O for disk-based data. So the idea of a solid state drive has always been very sexy to me. Cut down that seek time, already.

I wasn’t disappointed with the performance of the drive. As it turns out, I’m probably more penalized by the bus speed of my motherboard than anything else. I’m sure on an decent desktop you’d see much more of a performance bump. The proof was really visible when I ran a defrag. If you’re looking for a good free defrag suite, I recommend JK Defrag.

The biggest drawback overall, however, has to be annoying thermodynamics! Now I get why none of the major manufacturers are pitching this thing.

The Goggles! They do nothing!

This thing is hot! I’ve taken to putting a newspaper under the left side of my laptop, the preserve my lap’s top.

I’m not sure how visible it is, but there is already some discoloration on the left wristpad on my Latitude.

All in all, I’m swayed by the technical concept of this drive and will most likely continue using it. I like the idea of no moving parts. It consumes far less power, is less vulnerable to vibration, and is generally more reliable – until it immolates.

And if I ever start smoking again my laptop will have a built-in cigarette lighter.

I got mine on buy.com, but if you want to shop around the part number is TS32GSSD25-S.

IMPORTANT
Transcend makes an almost identical drive (much cheaper) with an almost identical part number, but is not designed for use as a boot disk. Make sure you know which one you want or you might wind up unnecessary shipping costs.

The difference is the type of “flash” memory used – MLC vs. SLC. For a discussion on the differences, visit edn.com.