The Freedom to get a shell prompt on an iPod Touch

; Date: Fri Oct 26 2007

Tags: Java

A few days ago I bought an iPod Touch.. I've been curious what the buzz about the iPhone was about, but as I have a year still in my Cingular contract I didn't want to get an actual iPhone and the iPod Touch is an interesting compromise. At first I was wowed by the user interface, its responsiveness, how well it responded to flicks of the fingers, the video quality (e.g. playing podcasts), etc.

At the same time it's a rather limited device. The UI has some flaws in what's available and the choices you're given. And the functionality out of the box is very limited just to the things Apple thinks you want. Okay, so they've put some interesting functionality in it.

This phenomena of unlocking iPhone also extends to the iPod Touch. A bit of yahoogling led me to an application named iJailBreak and I finally had a script-kiddie experience of downloading some canned script which exploits a security hole. The iJailBreak has you visit a given web page that then makes the Safari in the iPod crash.. and having crashed in a specific way the iPod is then opened so that software can be squirted into the gadget. Within a few minutes of breaking my iPod out of jail.. ah.. I had the distinct pleasure of looking at a shell prompt (green letters on a black background) on the screen of my iPod.

So.. yeah.. I spent $350 to get a sleek black gizmo that.. has a Unix shell prompt. Hurm..

Well, there are other applications besides the terminal window. Such as MediaCast, an app that directly downloads podcast content rather than forcing you to use iTunes to get podcasts into your iPod. But it's that terminal window which demonstrates an interesting train of thought that itself demonstrates an interesting principle.

We are tool-using animals. We look for tools to help us do the things we desire to do.

I think our essential nature is not "consumers" but "tool users" and "tool builders". A "consumer" is passive and accepts whatever is put in front of them. A tool user/designer is not satisfied with the status quo and looks for ways to improve their life.

My posting from a few days ago about (web.archive.org) open source green vehicles is an interesting case in point. The consumer part of society accepts whatever car the car makers provide. Even though the vast majority of people want a clean environment etc, the car companies only provide cars that burn gasoline or diesel derived from fossil fuel and which clearly has bad environmental effects. As passive consumers what are the people to do but buy whatever is made available.

The shell prompt on my iPod shows a different direction. Not being satisfied with the status quo I'm building myself an electric motorcycle. Not being satisfied with iPod Touch's as Apple designed them, some people have made available the iJailBreak (and other) applications along with a suite of app's that can be downloaded into the thing. In general the direction both of these point to is the essential nature we have, if the status quo is not acceptible, that we are tool designers and we can remake the things in front of us to attempt to solve problems we are facing.

The companies that make gadgets have gotten into the pattern of strictly controlling what the gadget can do. When a gizmo is a hammer, well, there's only so many things you can do with a hammer and as the saying goes if you have a hammer in your hand the whole world begins to look like a nail. But today computerized gadgets are proliferating and they beckon with the ideal that because it's computerized it can serve any purpose you want it to do.

But there is a tendency in makers of gadgets to control what the gadget does.

Consider some of the gadgets made by Linksys.. a couple of which were built using the Linux kernel, a web server, and some ethernet hardware. Linksys wanted to sell a closed box but some people took it on themselves to work out the tricks to installing more software on these gizmo's than Linksys really intended. I once bought an NSLU-2 and hacked into it using software from (www.nslu2-linux.org) www.nslu2-linux.org ... that was interesting and you can install a wide range of stuff on the slug (like mysql).

I don't understand gadget makers and their insistence to control. I think that if a gadget maker puts together some really useful hardware design, that the ability to customize the software ought to positively impact sales of the gizmo. A customizable gizmo is more useful to me than one with set-in-stone features.

For example while I find digital cameras generally very useful and offering a far more flexible picture taking experience than the film cameras of the 70's ... digital cameras have a locked down and controlled featureset. There are things one can imagine doing with a digital camera, which the camera makers don't provide in the camera. You can yahoogle "hack digital camera" and find some useful resources, fortunately. But I think a digital camera with e.g. Java in it, that supports installing whatever Java app you want into the camera, that would be very flexible.

I've been reading a lot of articles recently with excited guessing over what Google will (or won't) do for a cell phone. It's curious that the guesswork sounds a lot like the guesswork circling around the iPhone before it became a concrete thing people could buy in stores.

I think the speculation on Google's gPhone (or.. e.g. with JavaFX Mobile we at Sun could have a jPhone product) ... it's really coming from the same thread of thinking I have here. That we as tool using and designing animals, we see these computerized gizmos, the modern cell phone for instance, and we want it to do anything because that's the ideal form of computerized gizmos. That you can install any software you want and make it do anything.

But the history of cell phones has been tight control by the carriers, right?

Just because we as individuals want our portable computing devices to be extremely flexible.. does that mean Apple or Google (or Sun, for that matter) will actually provide the infinitely customizable portable computing device of our dreams?

I have a nagging concern here. It's highly related to the Network Neutrality debate that's gone the last year or so.

Freedom is more than a word. Freedom is the ability to choose any action, think any thought, etc. But when gizmo makers sell us controlled devices or controlled services or limit our choices etc.. they are limiting our freedom.

In the book 1984 Big Brother was thought to be an overbearing government bent on dominating us all. What if Big Brother is instead corporations limiting our choices and forcing us to spend money to feed the corporations? Is that our sole purpose in life? To feed money to corporations? I think not..

Oh.. wait.. I just got a paycheck this week. Hey everybody, forget what I just said. Please go to store.sun.com and buy a few servers so that they can afford to pay me in two weeks...

Source: (web.archive.org) weblogs.java.net

About the Author(s)

(davidherron.com) David Herron : David Herron is a writer and software engineer focusing on the wise use of technology. He is especially interested in clean energy technologies like solar power, wind power, and electric cars. David worked for nearly 30 years in Silicon Valley on software ranging from electronic mail systems, to video streaming, to the Java programming language, and has published several books on Node.js programming and electric vehicles.