You know you're a geek....

...when you laugh at this cartoon:


What I want for Christmas

I ran across this:


All I can say is that I'd love to have a Scope clock.  It looks awesome. 

But it's $999 =[


Linux on the iPhone/iPod touch

Some amazing hacker has gotten Linux onto the iPhone...


It's useful because you could run, say, Android on your iPhone, eventually.  Maybe even dual-boot?


The Rice Computer

I ran across this article recently:


and learned a few things.  First, this machine ran at about 1 MHz.  ONE Megahertz.  And they were using this to develop speech recognition software?
Second, the memory was originally built with CRT tubes.
And third, they had pointers!  In the hardware specs!  Hello, Object-oriented programming abou 40 years before it came into vogue!

It's a neat article to skim, at least.


FoxGLove on OS X

I recently ran across FoxGLove:


And I liked the idea, and wanted to try it out.  But I have a Mac.  No small difficulty--I decided to hack it =]

Here's the screenshot:

I started with Firefox Portable for OS X:

I had to mod it to open while other versions of Firefox are running.  After much experimentation, I discovered that you do this by editing the script.  Right click on Portable Firefox, click Show Package Contents, open Contents, then Resources, then edit 'script'.  Scroll down to the very bottom and you should see a line that says 'quitapp'.  Put a hash (#) in front of that line, save the file, and you should be good.

Then I started to install all the plugins and stuff from Alex (the maker of FoxGLove).  I had to Google for a couple of them.

I couldn't see how he got Google Talk, Calendar, and Notebook to show up in the sidebar...I didn't see the buttons.  So I caved and opened his version in Wine.  Three tries later, I had it up and running....and found out that the bookmarks were stuck in the Menu toolbar.  Not having one of those on OS X, I improvised and instead put the buttons over the sidebar...where I think they should be anyway.  I downloaded the icons from Google and set them up.

Then, I set up Gears to run portably...I installed it in Firefox, then copied the extension over to FoxGLove.   It didn't occur to me until afterwards to try to install it regularly....

I downloaded Iconverter to convert Alex's icon to an .icns so I could brand Firefox.  I changed the Portable version's icon, and then opened the package and changed Firefox's icon as well....now it just shows Alex's icon, even in the Dock!

The only other thing I would like to do would be to change some more of the Firefox branding to FoxGLove...maybe I'll hack it some more sometime.

You can dowload it right now from http://linuxmercedes.homelinux.com/FoxGLove/index.html.

[edit] Added screenshot.  Bonus points to whoever first names the comic on my desktop =]


How to update your 1st gen iPod to firmware 2.0 for free...

So I recently opened up my iPod Touch, and much to my suprise and dismay, I discovered that even though I had bought the iPod AFTER the 2.0 firmware came out, I still had to pay Apple another $10 for the 2.0 firmware.  Considering the reason why I decided to open it was to make apps for it, I was frustrated.

And so I set out to find out how to update it for free.  I would have paid Apple for it if they had told me before I bought it that I was getting the 1.5 firmware, and that it would cost more to update it to 2.0.  But, since at least in my view they violated the truth-in-advertising laws and didn't tell me that, I decided that they didn't deserve my $10...IMHO.

Anyhow, here are some instructions:


Basically, you download the firmware restore file (which will restore your iPod, so kiss your music goodbye unless you have it backed up on your computer).  You can either download from RapidShare, which is fast, but reqires you to download three files and use a program to combine them into the firmware, or you can dowload from Uploaded.to, which is SLOW (~14 kbps) but doesn't require you to combine three files together.  I used RapidShare and combined the files together.

Once you have your firmware update, go into iTunes, plug in your iPod, let it sync (just to be safe =]), then hold down Shift if you're using a PC or Alt if you're using a Mac and click the restore button.   A dialog will pop up asking you where the firmware file is.  Point it to the one you downloaded. 

Let it do it's thing, and once it's done, you're good to go!  You then can update for free to the 2.2 firmware via iTunes, so you're running legit code, if that matters to you. 

One note: When I did mine I got an error (1403, IIRC).  This means that the firmware is corrupted.  Download it again.  If you used RapidShare, you can try recombining the files first (which is what I did, and it worked). 

Note: I'm aware that this falls into a grey area (probably dark grey...).  If you're not cool with it, let me know!


One nifty feature of the iPod touch...

So I finally caved and opened my iPod touch (I was planning on selling it, and may still do so...).  I promise I'll write a review of it sometime, but I did want to mention this one feature that I thought was awesome...

So I went out tonight to my sister's piano recital, and, of course, stuck my iPod in my pocket.  I forgot to turn the WiFi off.  After the recital we went out to get something to eat, and I got out my touch and noticed that I had five unread emails...that weren't there when I was home!  Apparently it found a free wifi connection, connected, and downloaded my emails automatically.  That, I find, is totally awesome.

[edit] One of my friends pointed out that you have to turn on Push and set Fetch to 15 minutes for this to work. Actually you can set Fetch to whatever you want, but 15 minutes works the best.


Surfacesque idea

I stumbled across Microsoft's Surface again...apparently now it's a viable product.  Unfortunately, only companies can buy it =]. 

It reminded me of an idea I had a long time ago about tablet computers.  I imagined an app that could run akin to the Surface UI on a tablet computer.  Devices would line up along the edges where they were plugged in.  The cool thing was that if your friend brought over his computer and ran the app on his machine, the two would connect over the network and you would literally be able to drag files between machines--drag a file to the edge of your desktop nearest your friend, and it would show up on his desktop.  Nifty, eh?

So now I'm thinking.  Would this be possible to implement on any computer?  Sit down next to your friend and be able to drag files back and forth...you could even do windows and stuff, to be totally awesome. 

Anyone know anything about this?  Frameworks, locating devices, etc?  I'm thinking OS X might be the best starting point as it has Bonjour and all that stuff...but, then again, there is a PC version of Bonjour too.  Any OSS bonjour alternatives?

Or am I crazy?


Some of my favorite groovy Mac apps and tweaks

I've decided that, for the edification of everyone who reads my blog and has a mac (I think that might be one person =]), I'd put together a list of my favorite apps and tips for Mac.  All free, too, so you don't have to pay for cool stuff =]

Firefox: Duh.  Favorite browser of all time.  It's cross-platform, OSS, fast, and has extensions.  I personally use AdBlock Plus (a must-have for browsing), NoScript (ditto, although this one is probably not for your grandma), Web developer toolbar, Firebug (both essential for web development), TrackMeNot (which searches Google with random things to keep them from being able to track what I actually searched), CustomizeGoogle (more security stuff), and, lastly, Cooliris--a must-have for eye-candy lovers and people who need to browse images fast.  Get it and try it out--there's nothing like it.

Speaking of web development, TextWrangler (http://www.barebones.com/products/textwrangler/) is my programmer's editor of choice.  It's a free dumbed-down version of BBEdit, but it does everything I need it to (syntax highlighting, multiple files, find-and-replace) and lots more (execute a file from the editor, find-and-replace across multiple files, etc.).

The other app I use for web development is Macfusion (http://www.macfusionapp.org/).  This lets you mount SSH and FTP shares as volumes on your Mac and interact with them with the Finder.  It makes copying and stuff really easy.  And if you need to make some quick change to a file, it's fast, too.

NeoOffice (www.neooffice.com) is a port of OpenOffice to OS X.  It's a bit faster, and a lot fancier, than OpenOffice, but it's only up to version 2 of OO right now.  I use it as a substitute for Word.

I also use the Visor add-on for Terminal that I wrote about a few posts ago.  It's nifty to the extreme.

Another add-on I just discovered is GeekTool: http://projects.tynsoe.org/en/geektool/  It lets you run scripts and a lot of other things at certain intervals.  Currently I just have it running 'uptime' on a window on my desktop, but I can imagine all the nifty things you can do with it.  Like using curl and grep (or perl) to download a webpage and pull something out of it (e.g. sale of the day, etc.) and display that on your desktop.

And, finally, there's WhatsOpen (http://www.agasupport.com/?page_id=72), which displays all your open files.  You can set it to display only a particular volume, so you can see which apps need to quit so you can eject a disk.  If you don't like the command line, this is a nice tool.  (For the command line junkies, try lsof and pipe it through grep.  For example, lsof | grep WhatsOpen). 

Hopefully someone will get something out of this =]


Review of Windows 7

Review of Windows 7, courtesy The Register:


And here's my take on parts of the article:

"The first thing you notice is the revamped taskbar, with chunky thumbnail icons, full-screen application preview on mouse hover, and "jump lists" - pop-up menus that expose key features directly from the taskbar, provided that the application was coded to support them, and recently opened documents for any application."

Why would I want this?  From the looks of it, now it takes me TWO clicks to switch applications via the taskbar.  And if I'm working on two projects simultaneously, I've got windows--say Word windows--from each project glommed into one button.  Can you say disorganization?

OS X does have some of the same problems as Vista with this, but it makes up for it by not requiring people to use app-switch methods to switch windows--for example, expose or the minimized dock windows.  Both are app-independent.

"The system tray area now has a customize option that allows the user to suppress notifications, annoying for developers but empowering for users. It is all about making Windows quieter and less annoying. The same principle is at play in the revised User Account Control (UAC), which offers a simple slider bar that lets the user decide the level of prompting it enforces."

I'm fine with the Taskbar thing--it never really bothered me in the first place.  But UAC?  I thought that was for security!  Basically, it's allowing people to turn off security features.  That is not a good idea, because it could let programs change things behind the user's back--what UAC was created for--and not notify them.  As well, now that there's an option to turn it down, what would prevent some application finding a way to hack that?  Especially given the propensity of users to not read messages but just click OK, it would only take one malicious program to take out this security feature. 

"In Windows 7 device vendors can customize what happens on connection, through the new Device Stage, a control center tailored for a specific device. Some Device Stage links can be advertising for add-ons and supplies, so there is a commercial aspect that may not always be welcome. The Device Stage is populated via a Windows metadata service, which means it can be updated at any time."

Sounds neat...until you consider your el-cheapo chinese KIRF.  Would you plug that in and risk getting some weird webpage from the manufacturer?  And would this be possible to download viruses from?  Hmm...

Well...hopefully it will be better than Vista.  Although that's not much of a challenge...


My Other Blog

Alright folks, time for some shameless self-promotion:

I have a new blog! 


Basically, I got a job, and decided to write stories about what happens there.  Yeah.  Just don't tell anyone else there that there are stories about them on the internet =]

So, you should all go check it out, because it's totally awesome.  Really.  Believe me on this one, OK?

P.S. I appear to have a knack for picking blog names already in use...


The Story of Alice and Bob

When people discuss cryptography, they usually give names to parties A and B--Alice and Bob.  This makes the explanations somewhat more readable.

Someone wrote down some information about Alice, Bob, and cryptography in general.  It's worth a read:



"Your Perfect Man Quiz"--a possible exploit of a security hole in Facebook?

I recently started to recieve a ton of invites to the "Your Perfect Man Quiz" on Facebook.  This application apparently invites all your friends to take the quiz when you activate it.  (I took it because I assumed that it was actually thoughtfully sent to me...FWIW, I'm apparently looking for a guy who is rich and mysterious =])

But here's the thing.  Twice it asks you if you want to invite friends.  I skipped the invites BOTH TIMES.  So it invited everyone without my permission.  I didn't think apps could do that. 

So, Facebook, tell me.  Is this a flaw in your app framework?  I suppose it's a query to get the friend list, then a command to invite each person in that list...simple, once you have access.  So maybe it's not a hole, but a misuse of the system.  But apps shouldn''t do this, because it makes the invite system meaningless; invites become spam. 

Here's my solution:  Only allow apps to invite people using Facebook's Select Friends dialog.  Don't allow apps to randomly invite whosoever they choose; just allow them to show a list of friends and have the user pick who they'll acutally invite.  Maybe a little limiting, but that will kill spam fast.

There's my 2 cents.