Archive for the ‘Projects’ Category
iXboxLive for iPhone/iPod Touch
Took some time this evening to spruce up the iPhone/iPod application a little bit, screenshots below!
(http://code.google.com/p/npike-touch-xboxlive/)



Introducing: XboxLive/XboxStatus

No download available yet, details to come.
Introducing: DorkBook
![]()
So I’ve gotten in the habit of cooking with my iPod while making dinners for Jenn and myself. My current approach is sadly not very graceful:![]()
- SFTP to iPod
- Copy recipe into a new text file in my home directory
- On the ipod, open the Terminal.app
- and use “more” to open the text file in the Terminal
So not graceful at all – but still very awesome. Jenn always seems to make a point to call me a Dork while I cook in this manner. So I have created my first public consumption iPhone/iPod Touch application: DorkBook
It’s rather basic at the moment, and the general procedure for putting a recipe on my iPod remains the same, I just no longer have to view it in more or vi.
Launching the program will show you all the recipes stored in ~/Media/Recipes, and touching a recipe will display the recipe complete with ingredients and instructions. (With a nice sliding transition between screens that I worked all night on)
I’ll put a download link up later, and hopefully will get the application added to the infamous Installer.app that just about every jailbroken iPhone and iPod Touch is certain to have.
Projects: Snarl & Last.FM
Long story: My iPod touch notifies a website called Last.FM when I listen to music. If your not familiar with LastFM here’s a quick run down: Last.FM allows you to “scrobble” the names/artist of songs you listen to, and share this information with anyone an the internet. So if you go here you can see what music I have recently listened to on my iPod/computer.
So being the huge geek I am, I wrote a quick C# application that watches Last.FM for updates to my “Recently Played Tracks”, once it finds a change, it notifies me on my work desktop in a nice little bubble (see picture above).
The bubble is done with a program called Snarl, which aims to replicate GROWL functionality (an OSX notification subsystem) on Windows. (This is very hit or miss, mostly miss.)
So why did I do this? Too lazy to look at the iPod to see what the track names are ;-)
Below is the source code for the quick and dirty C# application, that makes use of external process launching to send messages to snarl, and WebClient to retrieve updates from Last.FM
Quick Experiment: Google Charts on Bungie.net
Google Charts API is now public, so I took a few minutes to experiment today: Placement Stats Pie Graph for Bungie.net (Halo 3 stats).
So whats the deal with Google Charts? Basically you create a crazy URL to Google, and they send you back a nicely rendered chart to use anywhere you like – dynamically generated. Using Greasemonkey I scrape the Bungie stats page to generate chart information, and then inject the resulting image back into the page.
Pretty cool – code linked here.
iExtractor for the iPhone/iPod
So it’s no secret that I have been slaving away on a few new projects for the last couple weeks – one of them is actually to a point where I have something to show! First a little background information:
The MobileMail application on the iPhone is able to receive attachments via email, and if they are images then it will let you view them inline in the email message. But thats it.
iExtractor is an application that will let you extract attachments from your iPhone and save them to any location of your desire.
A few interesting uses:
- Save emailed images to a Photo album (probably limited to the CameraRoll album)
- Save pdfs to local storage to view in a PDF Reader
- Save other binary files into the iphone file system (useful for modification of iPhone software)
Application Status
Currently all the application does is identify the encoded attachments stored by MobileMail.app and list them. The next step will involve check the Mail database to retrieve their original file names, decoding them to their original form, and saving them to your desired location.
I’ve implemented most of the above separately, but need to integrate it into the UI now.
In a few days I should have an actual application for testing on other iphone/ipods.
iPhone/iPod Touch: Timed/Delayed Screenshot
Erica Sadun provides a slew of command line applications for the OS X mobile operating system – my favorite being her series of screenshot applications.
I just have one problem: Theres no easy way to take a screenshot of an arbitrary screen directly from the device. (Unless you install the “Dock” launcher, which does not work for me)
I wrote the following two scripts to accomplish my task. From the terminal application you execute s.sh with a name for the screenshot:
You then have 10 seconds to exit the terminal, and navigate to the screen you want to take a picture of. After the screenshot has been taken and saved, a dialog will popup to tell you.
screenshot.sh
###
# 2007 – Nicholas Pike
###
sleep 10
cd ~/Media/
mkdir screenshots
cd screenshots
snap $1
doAlert “Screenshot taken and saved to ~/Media/screenshots/$1″
s.sh
###
# 2007 – Nicholas Pike
###
echo “A screenshot of your screen will be taken in 10 seconds. Leave the terminal and go to your desired screen now”
nohup /var/root/bin/screenshot.sh $1 2> /dev/null &
Both these scripts require EricasUtilities to be installed, and /var/root/bin to be on your path (otherwise the binaries in EricasUtilities wont work).
Save both scripts to /var/root/bin, chmod +x on both of them, and optionally rename s.sh to s for easier launching from the terminal.
All screenshots will be stored in ~/Media/screenshots (which will be created if it doesn’t already exist) – once you have the screenshot, you can use the fileToEmail utility included in EricasUtilities, or SendFile available via Installer.app
iPhone/iPod Touch: Mockup VLC HTTP Interface
For awhile now, I have been using the VLC Remote HTTP interface to control the VLC instance running on my laptop hooked up to a TV through my iPod Touch. Now this is really cool, BUT the default (and apparently ONLY) interface for this is absolutely ugly.
During lunch today I took some time to draw up a mock UI for the interface for the iPhone/iPod Touch:
This will only support a subset of the features that the current VLC interface allows (as these are all I really need):
- Play/Pause
- Skip forward
- Skip backward
- Volume
- Full screen toggle
Native or Web App? At first I am just going to whip up some new HTML files that will override the ones that come with VLC – but once I get my iPhone toolchain up and running on my new Leopard install I will shoot for a completely native app.
Introducing PODigy (v0.001)
PODigy: The simple and effective Podcast aggregator for Windows XP and Windows Vista.

I have taken the time to try a few of the available solutions for podcast aggregation that include functionality to periodically check and download new episodes from your podcast feeds.
Unfortunately they all suck. A few of them look pretty good, but generally they dont perform, or are super buggy in Vista.
Features
- Minimalistic User Interface
- Vista Aero Support
- Easy and quick to add new podcast feeds
- Schedule periodic episode checks and downloads to folders of your choosing
- Resumable downloads
Where can I get it?
I am sorry, but you can’t yet! This is still in active development by the excellent software development team consisting of, well, just me.
When it’s finished I will post C#/.NET source code as well as the compiled binary.
I have attached a nice screenshot of the current building downloading the latest episode of InDigital from Revision3.com, Enjoy!
Introducing: Xbox Live Gamertags for Facebook

Are you a proud Xbox gamer? Want to show the [Facebook] world your achievements?
This Application will display your Xbox Live Gamertag on your profile, as well as show you all your friends that have registered a Gamertag on Facebook.
About Facebook
Facebook is a social utility that connects people with friends and others who work, study and live around them. People use Facebook to keep up with friends, upload an unlimited number of photos, share links and videos, and learn more about the people they meet.
