The Mac karaoke player kJams is amazing, I depend on it all the time, and the guy who makes it has been extremely nice and responsive ever since I got in touch.
But, its iTunes-like interface makes the most basic part of running a karaoke night awkward and annoying. iTunes is great, but for karaoke the Winamp-style interface is better.
The iTunes innovation
iTunes’s central innovation as a player was to move away from the playlist-centric interface pioneered by Winamp. When mp3s were a novelty and you had a few hundred random singles, listening to your mp3s meant making a playlist, so the first mp3 player was built around on-the-fly playlists. As people started listening to all of the music on their computer, the more conventional sorting (by artist, and by album) reasserted itself. iTunes recognized that, and built everything around the listbox. What Ian Rogers wryly calls the “spreadsheet that plays music”, works great for 95% of people 95% of the time. The other (funnier) innovation that iTunes made was “oh yeah, normal people won’t give a fuck about skins”, but that’s another story.
iTunes moved away from on-the-fly playlists
iTunes keeps playlists of course, but recasts them as something you use sometimes, not something you do every time you listen to music. And since you can assume the user likes their music, it’s no big deal if iTunes just keeps on going when it gets to the end of the album. Like, whatever. It’ll just play the next album by that artist, or go from Queen to Queensryche.
But for Karaoke nights, that’s the whole game!
The thing is, when you’re doing a karaoke night, the old Winamp interface is a much better fit to the task. First, a karaoke night is all about making a new playlist every time. People want a particular song. And after that song’s done, it’s better to have silence than to have the wrong song, or a song nobody wants (which is a jarring fuckup)..
Second, seeing the playlist is just as important as being able to add to it easily. People always wanna know who’s next. You always need to change somebody’s song or tweak the order (e.g. somebody’s out smoking a cigarette). So two side-by-side windows, for two equally important tasks, makes perfect sense.

KJams, and hoops.
KJams takes the iTunes road, and has to jump through hoops to address these basic tasks. On the one hand, it recognizes the importance of on-the-fly creation, so KJams lets you designate a “Target Playlist” where when you double click on any track it gets added to the target playlist. Okay, so this saves you having to drag and drop every time, but you still can’t *see* the playlist without switching to it.
And when you go up to the search field to find a song, you end up searching just the playlist instead of your whole library, so you have to click on the library and reenter the search. I’ve seen people do this hundreds of times, and I do it myself quite a bitThis is annoying in iTunes too, but in iTunes you spend less time making on-the-fly playlists. Come to think of it, when I’m DJ’ing out of iTunes I’ll open up my playlist in a separate Window to solve this problem. But in KJams you can’t do that yet.
So you could fix that by having searches always search the full library, but then you’re introducing another conceptual break. And you’d still have to close out the search to make the playlist reappear. Ugh.
Conclusion
Dave, you gotta switch to a two-window interface a la Winamp or PyKaraoke. Sure, being the “iTunes of Karaoke” for Mac makes the app familiar and gives it a certain cache. It might make some of the music-management UI better.
But it is such a ball-and-chain around your neck when you’re doing a karaoke night. When I first started using Winamp it was like walking on air, everything was so fast and required so few keystrokes.
the metric is: if iTunes does it, kJams will too. You know i’m just one guy right? I’ve had the plan to allow you to open as many browser windows as you want, right from the start. That means you can open a window that just shows a playlist, or just shows rotation. and leave it open. so you can see it all the time. I know I know, i don’t have that now, but that’s been the plan since the beginning.
and you know you can do command-F to search in the current playlist, or command-option-F to search in the library.
q: how do you expect you should be able to “get back to seeing the entire library” if you don’t “close out of the search”?
kJams is awesome, and I know you’ll get multiple window playlists working. And I do think the iTunes similarity is good (especially for Mac users) because it makes them feel like they already know the app. (Though it also sets their expectations really, really high). So in many ways it’s a good call, and it’s awesome that you’re thinking big.
I guess I just think that this layout is exactly what me (and the singers) want to see when I’m running a karaoke night.
And even this pykaraoke layout–even though it’s super simple and won’t display my library without me searching for something–is like 90% of what I want.
I want a search field above a results list. And I never want the playlist to disappear from view. Nothing else matters until I get home. I strongly recommend making this the default layout in kJams, even if it means deviating from the iTunes UI.