The Hit List vs. Things

I own both Things and The Hit List (which I purchased as part of MacHeist 3), but I’ve been using The Hit List exclusively. With the release of Things 1.1.2 today I decided to take another look at it. After a short time I went back to The Hit List.

Things has two major advantages over The Hit List: it’s available for the iPhone and can sync with it, and it lets you add other team members to share task lists with.

The Hit List is a lot more attractive and just feels generally nicer. It has several features I use heavily which are missing from Things, including subtasks, time estimates, folders, and the ability to create new tasks by dragging an email or URL to a list. Hopefully there will be an iPhone version soon.

I can has an API

I’ve finally had a chance to get back to work on I Can Has Cheezburger and I’ve now implemented the Cheezburger API for submitting LOLs to the site. Here is the very first LOL created from the app.

I’m still not satisfied with the submission window, which I think looks too cluttered. I haven’t decided where to add a login button, so it currently sends all LOLs anonymously.

I’ve also added a work-around for the problem with playing videos for this update, which I’ll most likely submit in the next week. I’ve kept the old user interface for this version rather than the navigation-based interface I’m working on.

My iPhone 3.0 score card

Yesterday I posted my list of things I’d like to see in iPhone OS 3.0. Here’s how the actual OS stacks up to my wish list.

  1. No tasks & doesn’t appear to be a calendar API.
  2. We have note syncing, but not clear whether there’s a note API.
  3. YES! The standard mail form can be accessed via a new API.
  4. No. Apple still insists background processing will drain the battery too fast.
  5. YES! You can now access the iPod library and control the audio player.
  6. Yes
  7. No, although there are some improvements like spotlight searching.
  8. YES!
  9. YES!
  10. Not clear if we have video recording.
  11. YES! MMS is supported with a new message application that replaces SMS.
  12. YES! We have full cut/copy/paste/undo!

There are also a lot of other goodies, like accessory hardware access, in-application store purchases, bluetooth stereo, and peer-to-peer connections.

My iPhone 3.0 Wish List

As everyone probably knows, Apple is having a media event tomorrow to announce iPhone OS 3.0. Here are some of the things I’d really like to see.

  1. Support for tasks in the calendar, and a full API for accessing the calendar.
  2. Note syncing, and an API to access notes.
  3. An API for sending mail with attachments. Having the user re-enter their SMTP info in another application is a major FAIL.
  4. Some limited background processing and launchd or cron for scheduling processes.
  5. API to access & control iPod, at least to determine the current song playing, which applications could use to obtain artwork & lyrics or submit to last.fm, for example.
  6. Support more video formats in AV Player.
  7. Better application management in springboard – categorize applications, folders, jump to any screen, list view.
  8. Landscape view in mail & other applications.
  9. Push notification.
  10. Video recording.
  11. MMS.
  12. Copy & Paste.

Tales of rejection

In one of their most outrageous displays of stupidity, Apple rejected Tweetie‘s 1.3 update because an offensive word appeared in Twitter’s trends. In that case, they should pull all Twitter clients and all web browsers, since they can all potentially show the same offensive content.

3327292.png

Can Not Has Cheezburger

Site changes at I Can Has Cheezburger and the related sites have affected the feeds I use in the iPhone application. We’re all working on a fix, which hopefully will be up soon.

UPDATE: It’s working again

iDjembe 2.0 submitted

I just submitted iDjembe 2.0 to the app store. I decided to change the version number to 2.0 because I did a major rewrite of the audio player code.

For the first version, I just wanted to make something quick that hopefully would cash in on the app craze and make some money. This time I’m serious about making it good.

The major new feature is Virtual Drum Circle, which lets you connect to other players on the local network and broadcast your beats to them.

The major under the hood change is that it now uses OpenAL instead of the simple audio player (which pretty much sucked). I tried several sound APIs including Audio Queue and AVAudioPlayer, but I found that OpenAL is the most straightforward and gives the best performance.

Unfortunately Apple’s iPhone developer documentation doesn’t cover OpenAL, although there are several code samples that use it. I found the best information to be at Ben Britten’s blog and the official OpenAL site.

After some experimentation, I determined the best strategy is to use a pool of OpenAL sources and prepare a buffer for each sound. Instead of using a single source for each sound, when I need to play a sound, I get the next available source, and add the desired sound buffer to it. As a result, it can now play more than one sound at a time and can play the same one repeatedly without a click.

iDjembe News

I have been working on a major update to iDjembe for several weeks. The major new feature is Virtual Drum Circle, which lets you broadcast to other players on the local network using Bonjour.

I’ve also drastically improved the responsiveness, and in the process learned a lot about iPhone audio. The current version uses the simple Audio Services to play the sounds, which has some major limitations such as being able to play only one sound at a time. Since the samples have a long trailing end as they fade to complete silence, during that time it isn’t possible for any other sounds to play, which makes it unresponsive.

I did a lot of experimentation with different sound APIs and I’ve settled on using OpenAL which seems to give the best performance and is the least ugly.

In the current version, I handle taps in a single view, where I do my own hit testing to determine the location to decide which sound to play. I’ve changed it to use custom buttons, which performs just as well and gives a nice highlight effect for the tapped area.

I hope to have this update out in 2 weeks or less.