Promo Dispenser

Promo Dispenser is a new site where developers can make promo codes available and encourage users to rate & review their apps. It looks like it can help developers get more exposure and gives users an opportunity to get free apps legally in exchange for reviewing & rating them.

I have 14 promo codes available there for PicSlide, so go download & rate it!

links for 2010-01-11

  • More than 1,000 music-lovers showed up on Saturday, July 5, in a German town to hear a change of note in the longest-running and slowest piece of music ever composed. Eccentric US composer John Cage (1912-1992) planned his composition to last 639 years, meaning more than a dozen generations of musicians will be needed to play it on an automatic, as-yet unfinished organ at Halberstadt, Germany.
    (tags: music art time)

ICHC 2.0 Progress

I made a lot of progress on I Can Has Cheezburger 2.0 this weekend, although it’s still far from finished. I was having too much trouble with Three20’s TTPhotoView, in particular extremely slow loading since the ICHC sites don’t have thumbnail sized images, which it uses to load a low-resolution preview, and the inability to include videos in the photo stream.

Instead, I’m now loading images asynchronously using code similar to this (the current version loads images synchronously using PerformSelectorInBackground, which is actually more complex).

I’m still using Three20 for the home screen and launcher view, which even lets you rearrange items.

Home Screen
Edit Screen

I now recognize movies that are unplayable (which includes almost all videos at ICanHasCheezburger.com, since Viddler movies need to be specifically download enabled to be playable on an iPhone). For those movies, I’m now displaying a notice rather than just loading the page which will tell you Flash must be installed.

Bad Movie

There’s still a lot more that needs to be done before I can release it:

  • I still haven’t implemented pinch, zoom, and swipe gestures (which I need get working better than they do in the current version)
  • The LOL editor isn’t implemented.
  • No saving or sharing LOLs.
  • I still need to remember the current item for each site.

This will be a free upgrade for all users. I’m thinking of adding in-app purchasing to the free version to allow users to remove ads & unlock other pro features (logging into ICHC and saving favorites) instead of purchasing a separate version. However, I will need to support both versions so owners of the pro version won’t have to download the free version & pay for pro features.

UPDATE: I’m now remembering the current item for each site. I’m doing it in a much better way than I do in the current version. Currently I save a fixed array of offsets which correspond to each site in the same order they appear in the selector. In 2.0 I’m using the site name as the preferences key, which will let me add or rearrange sites without affecting the settings for each site.

Hosting Dreams

I’m considering moving this site and WorldBeatPlanet back to DreamHost. These are the only two sites I currently have hosted at MediaTemple. I haven’t had any major problems here, but I always have the threat of GPU overage charges since with all 3 sites hosted here, I was dangerously close to the 1000/month GPU limit. I’d rather not have to pay for two hosting accounts when I can do everything with one.

I recently moved MacMegasite to DreamHost after I got a warning that I would exceed my GPU quota by about 300 (which ended up being only $3.80). I had kept my DreamHost account open all this time and I was still hosting a few smaller sites there.

Over the last year or so, DreamHost has definitely got their act together after a rocky period. I’m very happy with DreamHost’s speed – most of the time MacMegasite loads a lot faster at DreamHost than this site does at MediaTemple.

Since I’m using a Virtual Private Server at DreamHost, I can change the memory size at any time if it’s getting a lot of traffic. It can end up costing more, but I like being in control of the cost & performance rather than having a fixed limit. Usually my referrals pay for the basic hosting account so I only pay for the virtual server.

DreamHost also has a panel API with several iPhone applications available that can monitor and adjust the virtual server, or do other administrative tasks.

Another thing I prefer about DreamHost is being able to spread my domains among multiple users, rather than having all of them under a single user as MediaTemple does, which makes it a lot easier to give a user access only to certain domains.