October 25, 2009

The State of Solid State

So, this guy does some speculative research and comes to the conclusion that mechanical hard disks will still be the dominant secondary storage technology for computers in 2020. Somehow, I'm a bit skeptical.

If you want to see what's going to happen in regard to mechanical vs solid state hard disks, you don't need a crystal ball. Just look at the transition from CRT to LCD displays. It wasn't so long ago that LCD monitors were horribly expensive and that fact (combined with their other drawbacks) made them an unattractive option for most people. I can recall many, many people saying that they would never give up their enormous, power-hungry, failure-prone CRT displays. Now, you can't even buy a CRT computer monitor because LCD quality caught up and surpassed CRTs for most purposes while price plummeted. The same will happen with mechanical disks and SSDs. Maybe it'll happen faster, maybe slower, but it will happen.

Keep in mind also which company this "prediction" is coming from: Seagate lived a long and prosperous career engineering and manufacturing mechanical hard disks. They are a huge company whose entire operation is based around the concept of shipping hunks of metal with rotating platters inside. Since an SSD is just a bunch of memory chips duct-taped together, the memory companies (Transcend, Crucial, Corsair, Samsung, etc) were the first ones with SSDs on the market. The SSD thing likely hit Seagate by surprise and they can see that their run won't last long.

It's not too late for them to start transitioning to manufacturing memory chips, but doing so would be brutal for many reasons. To start with, their decades of mechanical drive development experience, manufacturing facilities, engineers, trade secrets, R&D, etc are mostly about to be worthless. If they start selling this stuff off now while it's still fairly valuable, shareholders are going to do a huge "WTF?" and walk off. Second, the memory companies have a few years head start. Even if Seagate could enter the market and compete with them, the company would be leaving their position as a market leader to be a market newcomer, taking cues from everyone else. (Cue the sound of their last few shareholders stomping out.)

Basically, unless Seagate can buy up a few of the leading memory companies making SSDs right now, they're screwed. Until that happens, all they can do right now is appease their shareholders and put their executives up on stage to have them parrot the lie that their business is going to be viable for a good long time yet. Oh, and frivolously sue all the SSD manufacturers on broad patent infringement grounds.

August 12, 2009

x0xb0x #3

Just finished up x0xb0x #3. All of the basic functionality seems to work and it sounds just like a 303. Well, better than a 303 in my book but I guess I'm probably biased.

They gray knobs were special-ordered from Korg Europe. They were made for the Electribe ESX-1 and EMX-1 but they happen to be perfect for the x0xb0x. I could have ordered the large switch knobs too, but I would have had to hack the encoder shafts even more than I already did.

The top panel is a standard Adafruit x0xb0x clear acrylic panel. To make it awesome, I just sprayed the underside with black paint. I wanted to use vinyl instead, but the paint turned out to be so much easier. Looks great, the only downside is that the panel came with some scratches from the store. Oh, and it's a friggen fingerprint magnet. Next time, I may take a drill bit and scrape out the LED holes a bit so that they light up the laser-engraved letters on the panel.

I used a clear I/O panel this time, so the innards can be seen without taking the x0x apart. I think I'll go back to metal unless I can devise an easy way to get an LED or two in there for show. All I have left to do on this one is tune it, perform a full function check, and hack in a power switch and then it's eBay time!

I posted the innards of this x0x in a previous post here and did a writeup on x0xb0x #2 here. I hope to put together a video of me rocking the x0x sometime this week or next.

August 11, 2009

x0x #3 Almost ready!

I'm almost done with x0xb0x #3.

This one is being quite the problem child, actually. Two note LEDs flat-out didn't work, so those had to be replaced. The TEMPO LED had to be replaced because I scratched it to hell and back. The TEMPO encoder was replaced because the first one didn't work. (Talk about a wild goose chase there.) The USB chip wasn't talking to the microcontroller, which was fixed by cleaning up and reflowing the teeny-tiny SMD pins of the FT232 chip. The MIDI-in port still isn't working as I write this, despite the fact that I've already swapped the resistor that I assumed was causing the trouble.

On the upshot, I did a nifty thing with the control panel faceplate, so this one should look fully bad-arsed once it's all working and put together. Pics will be forthcoming for sure. I was hoping to have the unit done and sold in time to buy myself an EMX-1 for my birthday, but it doesn't look like that's going to happen at this point.

May 28, 2009

On not coming in last

Not content with making it as difficult as humanly possible for a person to enter back into his or her own country, now the U.S. Customs and Border Patrol want to scan and store the fingerprint profile of every person exiting the border, even U.S. citizens.

And incredibly, they can't even state why this would be a good security measure:

Michael Hardin, a senior policy analyst with the US-Visit Program at the United States Department of Homeland Security told a Biometrics Institute conference today that the DHS will use the data from the trial to "inform us as to where to take [exit screening] next."

Seriously. He actually said that the only reason they're implementing it to begin with is because they want to see how much they can get away with. If I didn't know any better, I'd say that they only seem to be interested in keeping tabs on citizens' whereabouts...

"We are trying to ensure we know more about who came and who left," he said.

C'mon, Michael! You're not even trying!

You know, there were other countries that pulled stunts like this. Ones that ended up having such a tight grip on their borders and citizens that travel and free movement was effectively impossible. Countries that, if I am not mistaken, we either went to war with or fought against in other ways because we did not want to see the world becoming that kind of place. We did not want America to be the last bastion of freedom. I guess it proves that you have to be careful what you wish for. An anonymous poster on Slashdot said this:

You know, I'm a Canadian, and ten years ago, I would have voted to join the US. I felt that Americans recognised the value of their freedoms and that they had, and would fight to keep, a more free society than just about anywhere else on Earth. Today, I won't even travel there. It reminds me of all those B movies just after WW2 "Achtung! Show me your papers". How could y'all have just let this happen?

March 25, 2009

x0x #2

To make up for the rather non-trivial amount of money it cost to build my x0xb0x, I decided to make another and sell it on eBay. I've been working on it since January (often while I should have been studying) but finally got it done after about 2 months of work. This is the result:

The primary differences between this x0x and the "stock" ladyada edition are mostly aesthetic. I chose to paint the case a darker shade of red, which turned out better than expected with the silver vinyl overlay. The overlay itself is sweet, but the alignment of the holes left much to be desired. I had to trim all of the LED holes with a knife after applying the overlay so the vinyl didn't end up sticking to the LEDs. That alone took several episodes of Bullshit to fully accomplish. The end result is reasonable as long as you don't look too closely.

The knobs are the same as those on ladyada's parts list, but grey instead of black, and with a red pointer instead of white. If I had it to do over, I would have gotten black knobs with a white pointer. The grey doesn't really stand out enough and the red is actually more of a pink.

On the inside, I used individual wires instead of ribbon cable for the jumpers. This might have worked better with a smaller gauge wire. (I should have used 24 or 26, but 22 is all I have on hand right now.) Also, I used connectors instead of soldering the wires straight to the board. This ended up being a life-saver but introduced a few problems as well. For starters, the connectors are hideously expensive (about $25 for the whole lot, I think). Also, the 12-pin row on the mainboard ends up standing too tall and hits the bottom of the case when assembled.

Had no problems at all during the construction of this x0x and only found one silly but glaring issue the day before I shipped it to the buyer: The MIDI input and outputs weren't working at all. After an hour or so of troubleshooting with the oscilloscope, I finally figured out that I had soldered in six resistors of entirely the wrong value. Replaced them and it worked like a champ!

I'm a little sad now that it's gone, but building the second one was every bit as fun as the first.

March 10, 2009

kick-ass song time

I'm an avid fan of music. Electronic music in particular, with only a few exceptions. I try to keep only freely-redistributable muzak in my playlists. Not only is it more affordable, but I believe music turns out better when the person composing it is doing so out of passion rather than profit. Nowhere is this more true than in the demoscene, where geekery intersects artistry.

One song I've been grooving to lately is Ride the Lightning by keith303. His website seems to be down as I post this, but check out his artist pages on Virb and Last.fm. He's German! Always a plus in my book. Ride the Lightning is a demo song that comes with Renoise, the most ass-kicking-est mashup between an old-school tracker and modern digital audio workstation that you'll ever see this decade.

February 9, 2009

getting wired

A recent Slashdot article reminded me of my first attempts at trying to communicate with the outside world via computer. Growing up, I lived in a relatively remote area with no one I could talk to about computers or swap tips and programs with. But I learned as much as I could through magazines and books and eventually I learned that it was possible (with the right equipment) to connect your computer to a phone line and have it "talk" to another computer.

It wasn't until we got a Packard Hell 16MHz 386 that I was able to try this out for myself. It happened to come with a 2400 bps modem pre-installed. And if you know me, you'd know that there was no way I was going to let that thing go unplayed with. One boring day, I ran a long phone line over to the computer, plugged it in, and used HyperTerminal (or something like it) to connect to a BBS on the other side of the state. I can't remember exactly how I got the number, but on this BBS I found that you could download programs, leave messages on the electronic forums, play games, and even talk with people in real time. I was floored. I had to share it with someone.

Me: Mom! I'm talking to someone on the computer!
Mom: What? How?
Me: I connected it to the phone line and dialed up someone else's computer. Now I'm talking to them.
Mom: Oh cool!
Mom: ...
Mom: Wait, is that long distance?

In my area, pretty much every phone call was long distance and it wasn't cheap. Although we had a CompuServe account for some time, it wasn't until our local phone company added a local dial-up number for Internet access that I was able to spend huge amounts of time online.

Now, a mere 15-20 years later, it's rare to not have instant and constant access to the largest computer network in the world. I can't even imagine what kind of access the next couple of decades will bring.

January 21, 2009

OpenSSH: The Poor Man's SOCKS Proxy

Just when I think I know everything I need to know about OpenSSH, I end up learning something new and tremendously useful. Today, that would be the -D argument.

Many times I have been stuck on an "untrusted" Internet connection and need to log in (insecurely) to a certain site. My university, for example, uses a system that has no way of logging in via HTTPS, nor does it secure the traffic to and from the browser. I have moderate faith that the folks at my ISP aren't snooping my traffic (since I know the company pretty well and used to work with them), so I don't have a huge problem logging into their site at home. I also have a colocated server at the web hosting company I work for, so I know the layout of their network even better and trust them not to snoop or interfere with my traffic. But when I'm on the road connected to some dodgy insecure hotel wifi, I acquire no small amount of anxiety over the fact that anyone with a packet sniffer can get access to all of my personal and academic details.

For the past few years, I've had this plan to get OpenVPN set up for my network and laptop so that I can always have a secure connection to my home and colocated server. And for the past few years, I've kept putting it off. While OpenVPN is easier to use than many other VPN solutions I could name, it's still at least a good hour of my time getting all the settings right and testing it out.

I was already aware of OpenSSH's -L option which simply forwards a local port through an SSH tunnel to a port on the remote machine. Very handy when you want to connect surely to a site hosted on that server and happen to have a shell account on it. But to do much more than that ranges from the complex to impossible. This is where -D comes in.

The -D arg tells OpenSSH to be a SOCKS proxy. So you simply log in to the endpoint via SSH with the -D arg like:

ssh -D 1234 user@host.example.com

And then tell your web browser to use a SOCKS v5 proxy on localhost at the specified port and bingo, you have a secure connection to your endpoint. In fact, any application with SOCKS support can have its traffic routed through the SSH tunnel via SOCKS. Firefox supports SOCKS just fine, Opera doesn't. Konqueror is supposed to, but judging from the Google responses I got, support might be a little flaky.

The final test was whether I'd be able to use this newfangled (to me) proxy method on my Nokia N800, a device that I browse and email with quite often whilst traveling. Obviously OpenSSH has to be installed as it doesn't come with the firmware. And the N800's web browser, MicroB, uses the Gecko engine. The UI has no widgets for entering a SOCKS proxy, but you can set the preferences manually with about:config:

network.proxy.socks localhost
network.proxy.socks_port 1234
network.proxy.type 1

The result? Portable proxy surfing!

January 18, 2009

Korg Electribe EMX-1

Next on my list of completely bad-ass gadgets to acquire in the distant future:

(This is not me playing by the way, it's the user known as Denkitribe on YouTube and his beats generally rock.)