Author Archives: Multimedia Mike

iOpenAppStoreMetaData

For my latest silly little project, I created an offline database containing information about Apple’s iPhone App Store, made it browseable offline with full text search, and even generated some nifty charts and tables about the apps. Wanna see?

Go here for all of the juicy data.

Introduction
Have you ever gotten one little spark of an idea and started to research and prototype it, only to have it snowball into something absolutely unrecognizable in a short period of time? As I write up this idea, I can scarcely remember how I started down the path of creating an offline, web browser-accessible version of Apple’s iPhone App Store. On the way, I learned a bunch about modern web programming and even full text search.

What’s wrong with me anyway? Why can’t I do simple exercises to come up to speed on certain well-established concepts? I think normal people would start out by developing trivial websites showcasing pictures of their cats when trying to get up to speed on modern web development. But no, not me. No, I just have to punish myself by dreaming up the most outlandish scenario in which to learn some technology, purely as an ancillary goal to a bizarre primary focus.

The Pitch
Look, here’s how it happened: Remember, I contribute heavily to this video game database called MobyGames. The database excels in archiving data about arcane systems and obscure, archaic titles. That, and Barbie games, thanks to my tireless efforts. The database has challenges keeping up with all the latest and greatest releases for all kinds of systems. However, this whole iPhone App Store thing is really throwing us a curveball. In just a little over a year, over 13,000 unique titles categorized as “games” have accumulated for the iPhone/iPod Touch system. At the time of this writing, MobyGames has cataloged a meager 111 of these titles.

Continue reading

Remembering Fravia

I was reading up on this year’s Pwnie Awards — hoping that no nominations dealt with any software that I’m directly involved with — when I noticed someone named Fravia was up for a Lifetime Achievement Pwnie.

I remember Fravia, or really, his site. Back in 2000 when I became interested in reverse engineering due to its necessary if tangential relationship to understanding multimedia technology, I took to the web to search for tips. Fravia’s site was one of the first I found. It was apparently a goldmine of RE knowledge. But I could never know for sure– I always found the place packed with impenetrable jargon without a glossary in sight.

Further, the site seemed to focus primarily on how to reverse engineer relatively simple stuff– copy protection schemes and key generators. The targets I was — and remain — interested in tend to involve reasonably complicated mathematical algorithms compiled into machine code. Different domain, different challenges.

I think Fravia’s site was where I read an interesting document for programmers who wished to thwart reverse engineers. One tip was to load your program with blocks of NOP instructions. Apparently, these are harbingers of self-modifying code and in the context of counter-intelligence, a reverse engineer will go nuts anticipating and seeking out such aberrant code.

Fravia is no longer with us, having passed away in May of this year. His site lives on, as engimatic, baffling, and aesthetically unsophisticated as I remember it being 9 years ago. It seems to have shifted focus somewhere along the line to studying how search engines operate. I wonder if all that RE knowledge is lost forever (or perhaps buried deep in the internet archive which doesn’t make it much more useful).

In a way, Fravia was an inspiration for me– In addition to multimedia tech information, I wanted to publish data on practical reverse engineering matters so that other people could get up and running as quickly as possible without having to wade through weird jargon.

Eee PC And Chrome

I complain about a lot of software on this blog. But I wanted to take this opportunity to praise some software for once– Easy Peasy and Google Chrome. I’ve had some ups and downs with my Eee PC 701 netbook— great unit but the vendor-supplied Linux distribution was severely lacking. I auditioned some netbook-tailored distros last year and found one that worked reasonably well while being a bit rough around the edges — Ubuntu-Eee. One notable problem I experienced a few weeks after I installed it was that the wireless network driver quit working (though to be fair, I understand that was a greater problem due to an Ubuntu update around the same time).


Eee PC 701 running Easy Peasy and Google Chrome

These days, Ubuntu-Eee has been renamed Easy Peasy. I was finally sufficiently motivated to try installing it when enough other things on my existing Ubuntu-Eee distro had broken. Essentially all the problems that troubled me in its predecessor distro have vanished– wireless works again (though I still can’t seem to toggle it), all the sound controls work, even the hibernation works which impressed me greatly (even if I never use it).

Pertaining to web browsers, I have traditionally been satisfied with Firefox. Sure, it has been growing large in recent times, but what software hasn’t? It’s the price of software progress and all. However, I took this opportunity to try out Google Chrome which I never thought I would have reason to care about. I am roundly impressed with its speed and responsiveness. Seriously, this browser might even be lean enough for the guru to consider using on a regular basis.

I’m pleased that I can forgo a replacement for this classic Eee PC netbook for the foreseeable future.

XML Monkey

I’m trying to come to terms with the reality that is XML. I may not like the format but that won’t change the fact that I have to interoperate with various XML data formats already in the wild. In other words, treat it like any random multimedia format. For example, suppose I want to write software to interpret the various comics that I’ve created with Taco Bell’s series of Comics Constructors CD-ROMs.


Amazon Raiders: XML Monkey, top panel

Continue reading