In the evenings, I enjoy relaxing by watching a movie, and if I’m still not sleepy I head out onto the porch with my laptop, light a bug candle, and tinker with some open source code. Over the past few months I ended up transforming the Rhythasym UI to a completely new version. Rhythasym is the iPhone app I made with Brian Sleeper, my friend who is a music teacher. To use it, you just move a slider to choose how fast all of the beats play. By tapping note icons you choose how long each individual beat lasts.
The 1.0 version of Rhythasym was released as a minimum viable product. Here are some improvements for version 2:
- Switched from using UITableView to UICollectionView to hold the notes. This was conducive to placing the notes horizontally instead of vertically. This was suggested by Brian and several others.
- With the switch to UICollectionView I wanted to be able to drag and drop the notes to reorder them. I wasn’t very happy with the solutions I found in use already, so I wrote custom code to handle all of the drag reordering.
- I gave the interface a custom designed feel. The 1.0 interface actually looks like a standard table view and standard, squared buttons. That is not always a bad thing. In some apps, it can be quite helpful because it gives the user cues for knowing how to use the elements based on their prior experience. But I decided that those native elements are most suited for listing text information, not music notes. So I switched Rhythasym to a stylized UICollectionView.
- I was also able to eliminate ‘edit’ and ‘delete’ buttons by making a drag and drop interface for the notes.
Rhythasym 2.0 is better than 1.0, but it’s not done yet. Software is never done, and never perfect. I’m already out on the porch tinkering with a few refinements for the next version. 😉