Musicality 1.1.1

I am continuing to work on Grooveshark support for Musicality, but in the meantime: a bug fix release to tide you over. In particular, I've (mostly) worked around a bug in Flash 10.1 that causes all of the Flash elements on a page to disappear when the window is minimized or hidden. So if you hide Musicality while Pandora is playing, and then restore it, all of the Pandora music controls will be missing and you'll only see the blue background. This isn't just a Musicality problem; it happens in Safari as well.

My workaround isn't perfect. If you minimize the window before the Flash has had a chance to load, it could still disappear. If this happens to you, simply scroll the window a little bit and the Flash will reappear. Even better, close the window instead of minimizing or hiding, as this seems to avoid the problem altogether.

I'll keep working on the workaround, and perhaps Adobe will be kind enough to come out with a proper fix. Stay tuned!

Also fixed: a bug that would cause Musicality to crash if a song submission to failed. As's submission servers seem to have a serious case of the hiccups this week, some of you have likely run into this bug.

You can get the latest version by choosing Check for updates... from the Musicality menu.


On Balance

Okay…(deep breath)…I did it. Musicality is released. The website is redesigned. The store is running. I have customers. I have happy customers. All is well.

At some point I'm going to talk about the lessons I learned during the craziness of the past several months…just as soon as I figure out what exactly those lessons are. Today I'm just happy be out from under this rock with an opportunity to share one of those stupid simple why didn't I think of this six months ago quick improvements to my work-a-day.

The problem statement

I've got all these different area vying for attention. Improvements to Musicality are très importante, but I've got to run the business too, and the website needs serious work. And all those great, kind, (did I mention good-looking?) Premake users have been waiting patiently for a new release. And oh, the bank account is looking scary, and that iPhone app isn't going to code itself. I am making good progress on things, but I feel like whatever I'm not working on right now is falling through the cracks. Nagging, generalized anxiety.

I need balance. I need confidence that everything is under control. That I'm going to get to that very important thing that I need to get to, and soon. That everything is getting attention and enough of it (but not too much!).

Pomodoro to the rescue

I've talked about pomodoro before. 25 minutes on, five minutes off, repeat until done. (Funny side note: my friends and co-workers who read the blog always comment on what a good idea that is. But then they're surprised when they discover that, hey, I actually do it.) This pomodoro idea has always been kind of a background process. It is how I do my work, but has no bearing on what that work is.

After agonizing over how I could possibly manage everything I've put on my plate and accepting that I can't not do any of it (did you get that?), I decided to try a little experiment and give those humble pomodoro a bit more responsibility.

So. I get eight luscious pomodoro (sorry, it's just a fun word to say: pomodoro) each day, which is about what I can fit into a humane workday after all of my other scaffolds. I divide them up between the different bits of Industriousness to create a weekly schedule, which is currently just so:

M T W R F*
Musicality - 4 - 2 -
Nextgen 4 - 4 2 -
Premake - 2 - - -
Business 2 - - 2 -
Free play 2 2 2 2 2

And…um…well, I guess that's it. And, to be honest, I didn't really believe it would work. I mean, one hour a week on the website? On Premake? Really? But I was desperate so I gave it a go.

I'm a month into this experiement now and, like I said at the start, the results have been head smacking why didn't I do this sooner good.

Alright, so yeah, Premake is only getting an hour a week.* But it wasn't uncommon for me to get hung up on something else and go weeks without looking at it before. Now I'm guaranteed to look at it every week, and I'm building up a good rhythm. Stuff is getting checked off (and 4.3 is coming soon, for real).

All that anxiety about stuff falling through the cracks? About working on the wrong thing? Gone. All the mental energy spent juggling priorities? Now available for real work. All the prioritization has already been done! Everything is getting an appropriate amount of time relative to everything else, and all I've got to do is show up and work the lists. When I'm working on Musicality, I'm working on Musicality. Period, end of story. When the time runs out, I stop thinking about Musicality and I get on to the next thing.

This is seriously motivating. I get one hour this week to work on Premake. When that timer starts I am busting my ass to make it count. I don't check Twitter, or email, or anything else, even during the break. In fact, the only things I'm running at that point are my code editor, a terminal window, Things, and, if I need it, a browser window open to the Premake website. For that hour, that's all I need.

A nice bonus that I didn't expect: I'm having more fun. I wake up in the morning thinking whoo-hoo, it's Musicality day! and I'm totally into it. (Okay, that's pretty dorky now that I see it in writing. Still true though.) There's no oh, but there's those Premake patches that need to be applied, and I need to get more keywords in my AdWords campaign, and I still haven't watched the rest of the WWDC sessions, and… There's just Musicality and that damn Grooveshark integration that refuses to obey its master, and I can enjoy it completely guilt and anxiety free.

And finally: the schedule makes it clear when the day is over. Nothing is left open-ended. When I complete the last block I turn off, and I go away. Very clear line between working and not working. Better time with the family, better sleep, better mental health. Which means that when I am working, I work better.

* Those "free play" blocks give me the flexibility to spend a little more time on "hot" areas as needed. My one rule is that I can only work on stuff that is already on the schedule for that day. So, for instance, on Tuesdays I can only work on Musicality or Premake. Fridays I do my weekly/monthly/quarterly reviews; any time left over I use for whatever feels most important.

Musicality 1.1

Hot off the presses, Musicality 1.1 has arrived. Big new feature: scrobbling! (Say what?) The songs you listen to on Pandora can now be sent to, where they will be used to generate new music recommendations for you. To enable this feature, visit the newly added preference pane and enter your member name and password.

The new preference pane

Your password will be safely and securely tucked away into the system keychain, and your Pandora music will begin appearing on your profile. This was the most asked for feature so far, and top of my own list as well, so I'm very pleased to get it out there. Check it out and let me know what you think!

In the polishing department, this release plays nice with ClickToFlash, a popular Flash-blocking add-on. And I fixed an issue with the song tracking which caused Musicality to occasionally display an extra Growl notification.

Next up: Grooveshark!

Musicality 1.0 Is Here

At last, Musicality 1.0 has arrived!

If you're already running the Public Preview, you can upgrade from right within the application: just choose Musicality > Check for updates... from the menu. Otherwise, take a gander at the Musicality page and download a copy for yourself. I've spent the last two weeks polishing, fixing, and generally knocking out the ugly. It was tough to let it go—there are still so many great things I want to add!—but at the end of the day it's ready for prime time.

My friends know I love my music; I'm listening all day long. I wrote Musicality so I could listen to Pandora and while I worked. Not just listen, but actually use them. Create new stations, rate songs, skip songs, discover new music and still stay in the flow of my work. No flipping back and forth between the browser, no juggling extra tabs. Heck, to simply pause the music to take a phone call! In short, to make web music just as easy as iTunes.

Musicality has changed the way I listen to music for the better. I use it every day and, like the quote from Mike, I couldn't imagine life without it. I've really enjoyed watching other people discover it and come to the same conclusion. But as I hinted earlier, this is just the beginning! I still have big plans and this release is just setting the stage for what's to come.

So, I'll raise a glass in celebration and get back to it. If you haven't already, give it a try and let me know what you think.


A Slight Identity Crisis

My sincere thanks to everyone who took the time to check out the public preview of Musicality this week, and especially to those who took the time to send me their thoughts. Your feedback was excellent and insightful; I'm excited for the work week to start so I can dig into it.

The most concise summation came from my friend Sean who pointed out that Musicality suffers from "a slight identity crisis". On the one hand it's a Pandora and player and a good one; I received plenty of positive feedback in this regard. But its features also work with local iTunes music and it displays the currently playing iTunes track. This confused a few people who (rightly) didn't understand what iTunes was doing in a Pandora player. Others saw the iTunes integration and (also rightly) assumed that Musicality wanted to a be a portal to all of their music (and were disappointed when it came up short).

Having thought all of this over, I believe the way forward is to refocus Musicality on its original goal: a great streaming music player. Here are the changes I plan to make:

  • I'm going to remove the iTunes integration which, in its current state, is just confusing people. This will also let me be more focused with the new features and documentation.

  • Since I'm removing features I'm also lowering the price, effective immediately.

  • I'll improve the first run experience, with a more useful startup screen, better documentation, and more information on the website.

I'll be cranking hard on these changes in the week ahead, and hope to have a new release available soon. In the meantime, please keep that feedback coming! I'd especially like to hear your thoughts, good or bad, on the changes I'm suggesting. You can leave a comment right here or contact me directly.

(Now...all of that said: I listen to music all day every day, and I really want a player that makes all of my music easily accessible, no matter where it lives, in a consistent way. So those of you who were wishing for Musicality to do more rather than less: I hear you, I'll get there, and it will be great.)

Thanks again everyone! I'll be back soon with another release.

Welcome Musicality!

I've been hinting about it on Twitter and Facebook, today I am happy to announce Industrious One's first product: Musicality! You can read more about it on the new product page, but in a nutshell Musicality is a Mac OS X desktop client for the Pandora and music streaming services. I designed it for people who, like me, love to listen to music while they work. Take all of the great music and features these services offer, liberate them from the browser and give them a proper desktop window, then add in super conveniences like keyboard shortcuts, Growl notifications, and the Apple remote. The result is remarkable: the music becomes something that helps you work, instead of being the work. Training a new Pandora station is fun!

I should mention that Musicality is for the Mac. It uses a few of the latest and greatest features so you'll need Mac OS X 10.6 (Snow Leopard) or later. And of course, you'll need an account (which you can get for free) on the Pandora and websites in order to use their services. If that sounds like you, read more about Musicality here or download it immediately from here. This preview is free to use, without restrictions.

What's a public preview?

This public preview release is a way to get Musicality into your hands sooner. It is still missing some features and there will be bugs that need fixing along the way. But despite these rough edges we're using it every day ourselves, and really enjoying it. We hope you do too, and would love to hear your thoughts on it. Which of the missing features are most important to you? What confuses you or doesn't work quite right? Send us your feedback and help shape Musicality 1.0.

While the preview lasts, we're knocking 25% off the price in recognition of your early adopter support. You'll get the final 1.0 when it becomes available, as well as all the 1.x updates that follow, for a nice discount.

So what's missing?

Here are some of the features we're thinking about. Not all of these will make it into the 1.0 release; your feedback will help determine which ones make the cut.

Easier navigation: We're working on ways to make it faster and easier to switch between songs, stations, and playlists across services, including iTunes.

Mini-player: A iTunes-style mini-player, providing song information and basic controls in a much smaller view. scrobbling: "scrobbling" is's term for automatically sending songs you listen to on your Mac to their service. can then recommend new music you might like, help you find people with similar tastes, or generate nifty charts and graphs of your listening history. You can read more about here.

Support for more services: we'd love to support more streaming services; let us know if there is one you can't live without.

Here are some of the rough edges we know about. We'll be working to smooth these out before we reach the 1.0 release.

Better notifications and feedback: Sometimes you might press one of your keyboard shortcuts or a button on the remote and not know if Musicality heard you. We'll improve the feedback Musicality provides so you never feel ignored.

Launch on login could be easier: Musicality works best when it is sitting in the background, letting you know what is playing and listening for your commands. You can set up your own OS X login item, but we can make it easier.

More polishing: There is still some ugly in there. We'll work to get things all pretty, polished, and shiny before we put the 1.0 sticker on it.

Try it now!

So there you have it! You can read the splashy product page or just go get it and try it out for free. If you're already using Pandora or, you should definitely take a look. If you aren't, give them a try! They are both great services, and totally free. Either way, we hope you enjoy Musicality as much we do. And be sure to let us know what you think.

Doing More With Less

I had the intention of writing more during this process of ramping up and launching the business, sharing the view from the trenches as it were. But I just haven't managed to get to it; poor time management on my part. Before taking the leap I read all of these interviews with other entrepreneurs, about how everyone was working 14, 15, 16 hours a day to start. I read about people who failed and blamed it on being too complacent, and hoo-boy that wasn't going to be me, no sir. So I hit the ground running and then some, basking in the pearly white glow of my LCD even before my first cup of coffee in the morning, and right up until my head hit the keyboard at night.

This, of course, was stupid.

I knew I was going to be up all night, and so there was no urgency to get anything done early in the day. I found myself gold plating. Or spending too long on research, or on an approach that clearly wasn't working. And then, after dinner when I was less than 100%, I was trying to cram and check things off, resulting in sloppy and ineffective work that would need to be cleaned up the next morning anyway. I was logging plenty of seat time, but my roadmap wasn't getting any shorter.

Like I've never done this before.

I scaled back, and not only did the the quality of my work immediately improve, but I am actually getting more done day to day. My mental focus is better and so I am making better decisions. My attitude is more upbeat and so I am approaching problems more positively which, to me at least, makes them easier to solve. And the time away from the computer is allowing perspective and insight; I often come back to my desk with a better plan than when I left.

Basically I've gone back to the schedule I had when I was employed. I've got my "day job"—building the product, the website, and launching the business—which I work in the traditional hours, usually getting in between 8-10 pomodoro plus my scaffolds. I knock off shortly after the kids get home, and we hang out and have dinner together. Tonight we're continuing Aiden's introduction to James Bond with From Russia With Love, good stuff. Once the kids are tucked in I spend some time with Martha reading or playing a game—she likes to ride shotgun on my video games, shouting instructions and advice until she drifts off to sleep; we're currently working on Mass Effect. Then I come back downstairs, usually around 9:30 or 10 o'clock and log a couple more hours. However, this late night time is strictly for my fun or "hobby" projects. I'm thinking of blowing the dust off my old driving simulation code.

This approach is how I got to the point of starting my own business in the first place, and silly of me to try and fix something that wasn't broken. I learned a lot by researching the startup experiences of other folks but at the end of the day you have to know, and do, what works for you.

So, good morning! Time for that cup of coffee.

Premake 4.2.1 released

A bug in the new file pattern matching introduced in 4.2 has been causing people trouble, so here's an update to get it fixed.

Welcome to the ranks of the self-employed

Today it is official. I am no longer employed; I am now running my own business. It has been a crazy couple of weeks of winding down, of getting the business registered, putting the paperwork together, and finding health insurance for the family (though I am still waiting for approval, on pins and needles). Much of it was easier than I expected, and I'm pleased at how much I was able to accomplish while still winding down the previous job.

Not all of it was simple though. Digging up 10 years of medical history for the insurance application was a trick. We don't have very much to report, but I didn't want to miss anything and get nailed if it came up in the future. This whole area of health insurance has me skittish because I don't feel like I have any real say in what happens, all the control is with the insurer. But at the end of the day I feel good about the choices we made from the options we had.

The Operating Agreement for the LLC was also challenging. It could have been very simple, since the company is just me, but I wanted to allow for additional members later on should everything go well. So I had to consider things like shares of ownership, voting, and the protocols of adding, removing, or losing members. It was fascinating though. I would not have expected to enjoy working on something so legalese but I suppose there is a technical appeal to it, rather like finding the edge cases for an important feature and putting code in place to handle them.

And then there is the rather surreal experience of having an organizational meeting with myself, and capturing the minutes from said meeting for the records. I understand the purpose, but it is still weird.

Procrastination is a worry, but my real fear is of turning it all into "work", into a 10-12 hour a day obligation and losing the nights-and-weekends joy of it. I've posted reminders around my office, pictures and thoughts to help me keep in mind what I'm trying to do here and why. At the end of each pomodoro I make a point of sitting and soaking it in for a few minutes before betting back to the task at hand.

And speaking of tasks at hand, it is time to get back to it. This week is the website: what I've got, what I'm missing, what needs to go where, and how it all fits together. And oh yes: remembering to have fun doing it.

One Week In

One week in, one week to go. I'm still on the clock at Jacquette so technically still nights and weekends, though it is becoming more like afternoons and nights and weekends as the short-timer's kicks in. And I have been working entirely from my home office, which leads to the occasional out of the blue panic attack as my physiology adjusts to not commuting for the first time in years.

A big thanks to everyone for the encouragement and well wishes. Everyone I've run into, both online and off, has been very supportive and even enthusiastic about my new direction. That's been a big boost, and is much appreciated. And the fact that so many people consider this is a no-brainer move gives me confidence that it is going to turn out well.

There have been some recurring questions so I thought I'd take a moment and answer everyone in one go.

I am Jason Perkins (starkos), the founder of Industrious One. I'm yammering on about life as an indie, getting things done, finding inspiration and, eventually, creating the big audacious stuff.