I don't write these updates as often as I should. I think developers have a habit of believing that anything that isn't programming isn't making progress. I don't think this habit is unique to developers to be honest. I think any person with a job will feel that if they're not engaging in the core activity that job surrounds, they're not being productive. Be that accounting, managing, building, architecting, you name it. But that's foolish.
First of all, almost no one becomes successful without being able to at least competently navigate and execute some add-on skills surrounding a core task. E.g. Einstein needed to understand patenting in addition to being a brilliant physicist. Jeff Bezos needed to both be a good developer and a good business man. I think the only individuals I can imagine where the focus is so laser sharp that few, if any, other skills matter, are athletes. But even athletes need to work with their trainer, manage a schedule, etc.
All of this is to say, that I should probably log and write about what I do more often, even if nobody reads it, because it still provides a good space for self-reflection and re-focus on what's important.
With that in mind, I'd like to list what's recently been completed on PlanMixPlay, and what I'd like to achieve next.
- MVP functionality - I demo'ed PlanMixPlay to a former colleague recently who noted the three things he felt were necessary "Minimum Viable Product" functionality. Specifically:
- An audio cross-fade - The ability to cross-fade between two songs. It may not be beat-matching, but with proper co-ordination and planning, you can have a bitching set just fading at the right times.
- Video playback re-enabled - As software keeps growing it is not unusual for features which aren't being actively maintained to break. Video playback was one these, and it is now back to prototypical working order.
- Load/Save Mixmap - The ability to load and save a composition is another must-have feature if PlanMixPlay is every to be used for more than just local demo play. The framework to do this is now present.
- Visualizer NeonGrid - The recently release PlanMixPlay Teaser 2 was a culmination of a several weeks of focused work towards visual output I wouldn't be ashamed of leveraging in-front of an audience. While it still sports a few rough edges, on the whole, it finally put together enough compelling elements to be worthy of sharing. The teaser was on top of Reddit's Vjing sub-reddit for a day, and I gained a couple of new YouTube subscribers. Overall, I'd call it a success!
Now let's look to the future. What's next for PlanMixPlay?
1. NeonGrid control - The NeonGrid can currently only be properly controlled via a debug user-interface. PlanMixPlay must support controlling visual (and audial) elements in the Mixmap in an intuitive manner. A large re-factoring of the PlanMixPlay user-interface code has already been completed to pave the way for this upgrade.
2. Release polish - In an ideal world, I would have resources to give PlanMixPlay a decent polish before its next release, but I'll have to settle for getting the roughest edges smoothed out. I.e.:
- Make the audio-waveform somewhat pleasing to look at again.
- Have audio widgets properly display a name, and have it move according to what's visible in the mixmap.
- Look into the default media folder *constantly* appearing to reset to the current working directory.
- Tweak drag interaction to remember where a drag began.
3. Do a show - Ultimately, PlanMixPlay is being built to be used. I am, and should for the foreseeable future, be an avid user of it. Once the first two tasks have made reasonable progress, I'll do my best to announce a show date in advance to motivate my work.
Alright. That should be enough meandering for one post!
It's taken a lot longer than anticipated, but a new teaser for PlanMixPlay is finally here. I think it is undoubtedly the best vertical slice of PlanMixPlay's functionality by far.
There's a fair bit work left to do, to have the PlanMixPlay User-Interface properly support the types of parameters this new visualizer style supports. The video presents a debugging interface to manipulate the visualizer. However, once this work has been done - it'll be ready to do a proper live show with!