Welcome, Lil’ Beastie

March 30th, 2008 by Dan Fuhry

You should be able to tell by the title and my previous post that my iPod Touch, affectionately known as Lil’ Beastie, has arrived. That actually happened on Thursday - I’ve been pretty busy since, with Easter and all.

The iPod arrived with firmware version 1.1.2, something I didn’t expect but was willing to cope with. I had the unit for about an hour before I downgraded to 1.1.1, jailbroke it, and nearly bricked it three times before 1.1.3 finally installed. I think Black ‘n Blue’s warranty was voided quicker than that when I loaded DD-WRT, but it’s a close call.

I’m already starting to see the potential that decent mobile Internet browsing has. My latest FOSS project, which will undergo some more work before being submitted to the relevant script repository, is called Greyhound. It’s a remix of the WebControl script for AmaroK. Like the old one, it has a built-in web server, playlist browser, and basic playback and volume controls. However, my version is written in PHP (including the webserver itself!) and sports a clean and iPhone-friendly AJAX-based interface. It also has features like a seek slider and Smarty-based templates so it should be pretty expandable. Yes, the webserver is fully documented, emulates $_SERVER/$_GET/$_POST, and supports HTTP 1.1. It’s single-threaded meaning lots of images/JS/CSS will slow it down but for a simple web control interface it should be fine, and it performs only minimal processing on requests so as to be decently fast.

Jailbreaking the Touch is an essential step if you want to really take hold of its potential. Thanks to the huge gallery of applications available, I’ve turned my Touch into a piano, a wireless trackpad for any computer with a VNC server, and a whole host of other things. It’s a tremendous advantage because I have to give OpenOffice presentations a lot for work, and having the Touch as a remote far surpasses both the convential USB remotes and specialized tools like the PoewrPresenter RF, thanks to the WiFi support.

Above all that I’ve found that the iPod Touch really is good at what it does and that the normal activity of listening to music is streamlined enough, though volume buttons on the side of the unit are an improvement I’d like to see in the next revision. And I still can’t figure out what the little black patch on the upper left of the unit (when looking at it from the back) is for - Wi-Fi antenna maybe? Keeping the unit clean is also a challenge especially for me because my hands are almost always sweaty. It comes with a polishing cloth but I tried using a dry Kleenex to clean the thing and it did a better job than the included cloth. All in all though, it promises to be a decent media player and mobile companion device.

Posted in Uncategorized | No Comments »

iPod Touch - in the mail

March 18th, 2008 by Dan Fuhry

Thanks to an installer development job I just finished, I’ve been able to come up with the spare funds to order an iPod Touch. I know the anti-DRM people will slam me immediately for this decision, but I think that in the long run this was a good choice. For the record, I am a member of the Defective By Design campaign and have never purchased DRMed music, nor do I have any intention of doing so.

As a web developer I see huge potential in the Touch and its big sister, the iPhone. Creating a slick , finger-friendly interface using Javascript and XHR (call it AJAX if you want) sounds like a lot of fun to me, and I see how much potential could be offered in this area if some of the iPhone’s graphics API were available to Javascript - or if the “world’s fastest web browser” (which is a claim made by at least three of them now) can handle completely Javascript-based animations, something I’ve also done quite a bit of research and tinkering with. Either way, I do have plans to port much of Enano’s client-side code to iPhone/iPod Touch-friendly variants if the Touch doesn’t already do a passable job at rendering. I have an honest feeling that the relatively tiny “edit this page” button and Oxygen’s horizontally-biased layout will need some work before they are iPhone-ready.

Of course I need to continue my tradition of oddball names for computers and gadgets, and this puppy’s gonna be no exception. I plan to name the Touch “Lil’ Beastie” after BSD, the kernel that Darwin (and thus Mac OS X) is based on. The hostname will be lilbeastie.fuhry.local and if I can get Apache and (even less likely) MySQL to run, lilbeastie.enanocms.org.

I’ll make it clear, Apple, that I bought the Touch specifically for the purpose of jailbreaking it. I would not have bought it unless it were possible to jailbreak the thing and hack up/run my own apps for free. Yes I plan to play music on it. Yes I will probably use your crappy jukebox software to sync my photos and slides to it. Yes I will even load some movies onto it provided that VLC can rip them. (And to the MPAA, this is legal, as the DMCA permits circumvention of copy protection for the purpose of compatibility between dissimilar systems; and since I own the movies and DVD playing software/hardware isn’t available for my Touch, the system is considered dissimilar in a legal sense.)

One thing I’m hoping especially for is the ability to hook it up to a TV using the S-Video output on the Apple Universal Dock I got about a year ago for my second-gen Nano. It would be really awesome to replace my DVD player with a 4.2oz flash-based player even accounting for the obligatory drop in picture quality. Has anybody tried using the S-Video port with the Touch this way?

Posted in Uncategorized | No Comments »

HOWTO: Protect against hotlinking with Apache and a bad sense of humor

March 16th, 2008 by Dan Fuhry

So one of the people on my buddy list decided to hotlink to an image on my server. Now I honestly understand the urge to do that and in the past I would do it quite a lot. But this image was on Nighthawk which means behind my crappy DSL line. No wonder my Internet browsing slowed to a crawl! So here’s how I did it for those of you that have a similar problem.

This trick requires Apache and mod_rewrite. This is the code I used to do it, place it in a .htaccess file:

RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(.+\.)?\.enanocms\.org [NC]
RewriteCond %{REQUEST_FILENAME} !hotlink\.jpg$
RewriteRule \.(png|jpe?g|gif)$ /hotlink.jpg [R=301,NC]

(replace “enanocms\.org” with your own domain)

Of course you need an image to substitute when hotlinking is detected. Preferably you should upload this to a service like ImageShack so as to decrease your bandwidth usage as much as possible. Here’s the image I went with:

Thank God for Seth MacFarlane and maybe George Lucas as well. (As far as licensing goes this is a parody as far as I’m concerned and it is low resolution so it falls under Fair Use.)

Posted in Uncategorized | No Comments »

New look (again)

March 5th, 2008 by Dan Fuhry

I’m starting to get tired of the Yourblog 2.0 theme and I don’t really think it suits me that well. Thus I’ve switched over to Twilight by Arcsin. Though I’m not particularly “emo” I’m generally the kind of person that likes a low-light environment and dark web sites and desktop themes fit me to a T. Let me know how it looks or if you have any recommendations.

Posted in Uncategorized | No Comments »

GPLv2 buttons

March 4th, 2008 by Dan Fuhry

About half a year ago I posted my plans for Enano and the GPLv3. Despite the fact that my original concern about web applications was not applicable when the license was finalized, I’ve decided to keep Enano under the GPLv2 because, like many other Free Software developers, I really don’t see the point in relicensing my software. Granted, the GPLv3 provides one appetizing advantage, and that advantage is the patent protection clause. It’s because of this that I may eventually try to patent unique features of Enano and then write out a public statement that irrevocably guarantees the free use of those patents. It’s all dependent on how big Enano becomes, really.

Until a final decision has been made, Enano is going to remain under the GPLv2 for the forseeable future. To make things a little easier I’ve edited the Free Software Foundation’s GPLv3 buttons a little bit so that GPLv2 programs can prominently and recognizably identify themselves as well:

GPLv2 logo/button

An SVG version is also available. Enjoy!

Posted in Uncategorized | No Comments »