Synthesia 11 Release Estimate

Try new versions before anyone else!
Always the latest dev version: WindowsmacOSiPadAndroid (or .apk)
Please report comments and bugs!

Your data hasn't disappeared: PC/Mac development previews store their data in a different place. Details here.
Nicholas
Posts: 13170

Post by Nicholas »

I've received hundreds of questions about when Synthesia 11 will finally, eventually be released. With a 1.2'ish person team, time estimates are hard. Synthesia 11 is a huge project with sometimes-shifting goals. Worse, each major OS release from Microsoft, Google, and Apple seem to break a half dozen things and set the already hard-to-determine schedule back a little farther.

For a while now, it had started feeling like I was spinning my wheels rather hard without really getting anywhere. So, as a silly metric, I started keeping an eye on the line number of the "Synthesia 11 Finished!" entry in my own, internal notepad document where I keep track of tasks. Checking every month or so, I was dismayed to see the number of lines steadily growing instead of shrinking as bugs, new problems, and "small features" were added to the list faster than I've been able to complete them.

Granted, it's a rather free-form document where an easy task might have a half-dozen lines of detail but some other much harder task may just take one line. There's lots of white-space to help keep things a little better organized, too. So, I will admit it's not the best metric. But it is a metric!

It occurred to me that with the recent new infrastructure to upload releases automatically, it would be pretty trivial to upload an image automatically, too. So I threw together a two-line script that would track the Synthesia 11 finish line daily and a tiny utility to turn that list of numbers into this little line chart:

Synthesia 11 Lines Remaining In My Internal Task List
Chart updated automatically every Monday at 9:00 AM Eastern time.

Image

The same deployment infrastructure made it easy to add the dark blue dev-preview dots and light blue official release dots. If an official release doesn't have a label, that's because it's a silent, bug-fix update to the most recent official release. :?

Yes, upon initially posting the chart, there were over one thousand lines of detailed task description to complete...

In any event, now that this chart is publicly available and will update 100% automatically without any intervention, hopefully there will be more transparency, which ultimately means more accountability! :D

My goal at the beginning of 2020 is to have that line number decrease every month. As long as it's decreasing, I ought to be able to keep my sanity. And while it's not a perfect answer to "when will Synthesia 11 be finished?", it should give you guys some rough ability to extrapolate an estimate.
User avatar
jimhenry
Posts: 1907

Post by jimhenry »

So I roughly extrapolate an estimate that Synthesia 11 was released sometime in 2010????
Jim Henry
Author of the Miditzer, a free virtual theatre pipe organ
http://www.Miditzer.org/
Nicholas
Posts: 13170

Post by Nicholas »

I made this same joke to my wife yesterday. ;)
User avatar
jimhenry
Posts: 1907

Post by jimhenry »

Did you also estimate 2010? ;) (Only engineers worry about the technical correctness of their jokes. :ugeek: :roll: )
Jim Henry
Author of the Miditzer, a free virtual theatre pipe organ
http://www.Miditzer.org/
Nicholas
Posts: 13170

Post by Nicholas »

This chart is so much fun! I love data. :lol:

2020-01-annotated.png
2020-01-annotated.png (3.83 KiB) Viewed 79349 times
  1. Final burn-down for 10.6 bugs.
  2. Many fast/easy/tiny website updates that I've been putting off for over a year.
  3. "Real" work on 10.7.
  4. I got the flu. :?
spstarr
Posts: 15

Post by spstarr »

Any updates? Hope the baby is going well also :D
Nicholas
Posts: 13170

Post by Nicholas »

I mean, the chart updated on its own, right? hehe. I'm down another 55 lines, which is pretty awesome. Were you hoping for another detailed breakdown like January's? I could probably do that.

Re: babies, he's almost 6 months old now. He's been sleeping through the night for months now, until last night for some reason. I had to hold him for four hours straight while my wife got some sleep, so she could hold him for four hours while I got some sleep. That was... less great.
User avatar
jimhenry
Posts: 1907

Post by jimhenry »

The chart is below 1000. Awesome!

My granddaughter is about 6.5 months old. It's a really fun age as they starting exploding with developments on all fronts. But teething, among other things, can disrupt their sleep patterns. Hang in their and try to maintain consistency with the sleep routines. Most likely whatever caused last night's disruption will pass pretty quickly. Fingers crossed for you!
Jim Henry
Author of the Miditzer, a free virtual theatre pipe organ
http://www.Miditzer.org/
Nicholas
Posts: 13170

Post by Nicholas »

He's a lot of fun. It sounds like we're about a month behind your granddaughter, and we're already seeing lots of cool new developmental things. The great big smile I receive whenever I walk into the room he's in nearly pays for all the effort. :)

Alright, here's the February summary:

2020-02-annotated.png
2020-02-annotated.png (2.69 KiB) Viewed 77907 times

1. The upcoming recording feature needs to save (interim, non-MIDI) things to disk. Rather than use the old method of (apparently corruptible) XML files, I used this as an opportunity to test the upcoming-in-10.9 (incorruptible, SQLite-based) way of storing data. While it was a very productive week and I like how everything turned out, it was borrowed time from the 10.9 development cycle. So, in theory, that one should be a week shorter now. :D

2. I have a few "do a little bit of X each dev cycle" tasks where I break a large project down into tiny pieces I do over time. That lets all the other gears keep turning (if slowly). Small incremental progress still feels like progress, so it has worked so far. This was "a little bit of automatic build server" work.

I've noticed that while the project has scaled up in audience size and the code has grown in complexity to accommodate new features, the number of people working on it has remained flat. I've strategically gotten help from others when it made sense, but since the Support Assistant has been so successful (cutting email volume by more than half), I've decided there is more room for automation. Near the end of last year, I finally built a button that can build and upload an official build for Win/Mac (and do ~90% of the work for iPad/Android) in a single click. It's awesome. It cut the most tedious half of the release checklist right out.

During this week I automated a couple more steps and started getting a second button ready to push preview/dev builds in a single click. Notably, the pink box "latest version" links are driven completely differently now and an automatically-updating link for Android has been added. (You guys are going to start getting previews all the time once it takes zero effort to make them.) :lol:

3. So... a weekend hobby project got pretty exciting and the next time I looked up from my desk, it was a week later. This is the real danger of working alone without a manager or other authority figure to remind you that you actually have responsibilities! I suspect this won't be the last time one of these "breaks" (vacations?) is witnessed now that this chart updates automatically. I try my best to stay focused, but man, sometimes a silly other thing grabs hold of me. Synthesia started as a too-exciting hobby project that I couldn't stop working on, so my brain tends to treat these things as equivalent. Knee-deep in some cool new thing, it takes a conscious effort to remember that thousands of people are waiting for me to finish this stuff over here.

4. This is the recording feature wrap-up. Things like tidying up the "Save As" dialog (in a way that works on all four platforms) and getting all the new not-yet-translated text and warning messages in place. The little bump was from four good "tiny" suggestions that all came in on the same day. Between that day and the next, I whittled them all back down.

All that's left before the first 10.7 dev preview is the last of the recording feature wrap-up and then getting the automatic-build stuff to the point where it can push the preview instead of doing it manually myself. If I can't get that "10.7" preview dot on this chart before the end of March, I'll be really embarrassed. ;)



Two months into this graphing experiment, I'm still enjoying it. I am immeasurably more conscious about not adding superfluities to the list, which (looking at the graph so far) seems to be helping us towards the goal.
Nicholas
Posts: 13170

Post by Nicholas »

2020-03-annotated.png
2020-03-annotated.png (3.04 KiB) Viewed 75621 times

Well, this is a bit less triumphant.
  1. 10.7 recording preview and loose ends.
  2. Here is another demonstration of the weakness of this tracking method: this is what it looks like when the entire description of a large task is simply "Down stems" instead of using the broken out, detailed list of steps that I generally have in the task list.
  3. This is exactly what you probably expect: a six-month old and a four year old that require constant attention but can't leave our yard, a wife that is already going stir-crazy, and a routine that is completely shattered (and has taken two weeks just to pick up the pieces enough to start answering support email at 1AM).
I'm afraid I can't make any promises about my productivity in the near future. I'll try my best.

Stay safe out there, everyone.
User avatar
jimhenry
Posts: 1907

Post by jimhenry »

Perhaps it is time to rethink what will be in Synthesia 11? I get the impression that MusicXML support is a lot of lines still ahead of you on your to-do list. I think better sheet music from MIDI files is more important to the majority of Synthesia users than MusicXML. How much can you pare out of the list if you move all the MusicXML tasks and any of the less important good sheet music from MIDI tasks to an 11.1 release? Any other features with a major effort remaining that could be pushed to a post-11 release?

If you are wondering why I bring this up, it is because Synthesia 11 has been your goal a long time. It just feels like you need to finally get it done. I would say you must resolve to release it before the 2020 holiday season. Your progress chart makes it pretty clear that you are a very long way from releasing Synthesia 11 as you currently have it defined. So I think you need to consider what can be in a Synthesia 11 that can be released this year and decide if you can live with that being what Synthesia 11 is. My gut instinct from my years managing major software projects says you have to stop adding features beyond what you already have in the development release and now focus only on tasks needed to tie up loose ends of the features you have for a release four months from now.

:o
Jim Henry
Author of the Miditzer, a free virtual theatre pipe organ
http://www.Miditzer.org/
monkel
Posts: 199

Post by monkel »

I‘m definitely with jimhenry on this.

As I‘m primarily using my iPad this has been a very dry spell regarding features...
User avatar
jimhenry
Posts: 1907

Post by jimhenry »

As best I can extrapolate, Synthesia 11 will be released in about 2030. That is not said jokingly. I think you need to rethink what you are doing release=wise.
Jim Henry
Author of the Miditzer, a free virtual theatre pipe organ
http://www.Miditzer.org/
Nicholas
Posts: 13170

Post by Nicholas »

jimhenry wrote: 06-08-20 12:14 amHow much can you pare out of the list if you move all the MusicXML tasks...
MusicXML tasks don't start for another 770 lines, about 8 releases from now.
jimhenry wrote: 06-08-20 12:14 amIt just feels like you need to finally get it done.
I'm not sure I understand. The definition of Synthesia 11 is the state of the app when these tasks are complete. I could stamp "Synthesia 15" on there, make a "release", and then delete my task list... but I'm not sure that would change anything or convince anyone--me or you guys--that anything had been accomplished.
jimhenry wrote: 06-08-20 12:14 amYour progress chart makes it pretty clear that...
My progress chart makes it very clear that I haven't been at work. Call it a vacation or a hiatus or a sabbatical or whatever you like. Today is the first day I've been able to hit an empty support email inbox since March. It's been a rolling two-month delay for most replies. (Now I've only got 36 forum posts left to answer, going back to mid-May.)

In the broken minutes I get to sit in this chair between 24/7 childcare and what remains of my shattered routine, I get to experience falling behind in answering the same five email questions over and over forever, while watching the same chart as the rest of you languish with a zero slope. It reached the point a couple months in where I simply stopped sitting in the chair. I found other things to do: anything that was "not Synthesia".

One highlight was being able to start (and finish) my first serious hobby project in ten years since Synthesia became a job instead of a hobby. (That link will most-likely provide a little more context for the first sentence of this post from March.) :lol:

After my first break in the project's history (which has spanned virtually my entire professional career) and getting a different creative endeavor out of my system, it's starting to feel like it might be time to return to this project. I've had a couple false starts so far, so we'll see how August goes. 2020 has been a pretty strange year so far.
jimhenry wrote: 06-08-20 12:14 amMy gut instinct from my years managing major software projects says you have to stop adding features...
As clear as "I haven't accomplished anything since March" is from the chart, "I haven't added any new features since January" is just as readily apparent. The list has been monotonically decreasing every month. It might as well be frozen. The only increases are when I break a single line out into several lines with more detail. Or when someone reports a critical bug.
monkel wrote: 06-21-20 4:27 pmAs I‘m primarily using my iPad this has been a very dry spell regarding features...
I am sorry.
jimhenry wrote: 08-02-20 11:54 pmAs best I can extrapolate, Synthesia 11 will be released in about 2030. That is not said jokingly.
I suppose after a few nice days outside, you might extrapolate it would never rain again. That would be about as nuanced.

January and February are better examples of what "work" looks like. Even then, past performance does not predict future results. I've been forced to take things one day at a time lately.
User avatar
jimhenry
Posts: 1907

Post by jimhenry »

First of all let me be crystal clear, while I am rather pointedly prodding you, this is intended to be a helpful, constructive prodding. As the owner of a software project that has had a stagnant alpha release version sitting without progress for over 5 years, I am entirely sympathetic to life getting in the way of making progress on something like Synthesia.

Long ago I was the manager of operating system development for a minicomputer manufacturer (which should give you some idea of how long ago that was). Part of that role was being the go between for the programmers and the marketing people, two groups that do not get along. It taught me that you have to strike a balance between building the product that the programmers want to build and shipping the product that the marketing people need to sell. Customers want a steady stream of latest and greatest products. It is an irrational desire. But that is why cars have come out with new models annually since forever. The lesson was not lost on Apple with their annual release of a new iPhone. If you go too long between official releases, people start losing interest in your product. Even if you are releasing a steady stream of development releases, it doesn't create the impression of a current product for the general public. If you accept the idea that you should release new versions at a fairly steady rate, then you have to pick the features that will be in the next release based on what you can accomplish within the time available before the next release.

You have always taken the approach of the next release of Synthesia is done when it is done. I think that was working through Synthesia 10. But I think Synthesia 11 is breaking the model because of the magnitude of what is being put into it. I am not proposing that you switch to the next release will ship on X date no matter what. But I do think you have to evaluate what you can accomplish in some reasonable length of time, probably roughly one year, and limit what is going to be added for the next major release to what you can accomplish in that reasonable length of time.

You already have a lot of good things in the current development release. What I am suggesting is that you take a hard look at what features remain undone and decide if they can be moved to a release after Synthesia 11.
Nicholas wrote: 08-04-20 5:48 amMusicXML tasks don't start for another 770 lines, about 8 releases from now.
That doesn't really answer the question. But if we assume that all of the 180 or so lines that would be left at that point are MusicXML tasks, then moving MusicXML to a release after Synthesia 11 would seem to shorten the time to releasing Synthesia 11 significantly. And, to be honest, I think the number of people anxiously waiting for MusicXML support is small.
Nicholas wrote: 08-04-20 5:48 amI'm not sure I understand. The definition of Synthesia 11 is the state of the app when these tasks are complete. I could stamp "Synthesia 15" on there, make a "release", and then delete my task list... but I'm not sure that would change anything or convince anyone--me or you guys--that anything had been accomplished.
The issue I am raising is that you or us guys is NOT the audience you are trying to reach with a new major release. You and us guys
follow this forum and the development releases. We know what is going on under the hood thanks to your exceptional transparency. But the people feeding your family are the casual purchasers who shop heavily in the rapidly approaching holiday season. These people may not get much further than "New Synthesia 11 with improved support for sheet music" before clicking the Buy button.

What I am suggesting is that you reevaluate the task list and see if there is a subset of the remaining tasks that define a meaningful Synthesia 11 and move the tasks not in the subset to a task list for Synthesia 11.1 or 12 or whatever you want to call it. If I was doing this, I'd look at all 954 undone tasks and ask if that absolutely needed to be done for Synthesia 11. I don't believe that an unwavering adherence to "Synthesia 11 is defined by all the tasks currently on the task list" will serve you well from a marketing perspective.
jimhenry wrote: 06-08-20 12:14 amMy gut instinct from my years managing major software projects says you have to stop adding features...
My bad here. What I meant is adding features that are on the task list but not yet started. That might extend to features that are started but need a lot of time to finish. In other words, look at the most recent development release and ask yourself, "What is the least that needs to be done before I feel comfortable labeling this Synthesia 11?"

I am not going to address the remainder of your reply in detail because it gets into what you have or have not been able to do and why. As far as I am concerned, that is your business and you are completely entitled to work or not work for whatever reasons make sense for you. The fact that you have things that you need or want to do other than Synthesia is all the more reason why I am suggesting that you not leave Synthesia 11 as an unmutably defined objective. Give yourself permission to redefine Synthesia 11 so that it fits into your life as it is now while still keeping Synthesia rolling as a business.

I hope these ideas are helpful. But if they aren't, I won't be offended if you ignore them. Or at least not too offended. ;)
Jim Henry
Author of the Miditzer, a free virtual theatre pipe organ
http://www.Miditzer.org/
Nicholas
Posts: 13170

Post by Nicholas »

jimhenry wrote: 08-04-20 11:53 amCustomers want a steady stream of latest and greatest products. It is an irrational desire.
I (intentionally) do several things counter to "good business practice" out of distaste. The whole world has been jumping on the software subscription bandwagon for several years at this point, to the point that it's nearly become the default expectation for Synthesia's users. (I've answered "$29 seems pretty steep for a monthly subscription" emails more than I care to in the past several years.) This is not a direction I ever expect Synthesia to go without a serious technical reason (like the ongoing cost of having to maintain a bunch of user data on servers).

One of my biggest business "sins" is my complete lack of price differentiation. You could argue (correctly) that I'm leaving piles of money on the table by not having some premium SKU (say, at $60-80) and perhaps something else at the entry-level (say, $19?) I remember reading a Gabe Newell interview ~10 years ago and hearing the term "pricing as a service" (in the final answer at the bottom of the page). It seemed kind of wild at the time, but the idea of finding the exact point on the supply/demand curve where each user is the happiest seems to be a sensible one. (So I'm failing this one less out of intention and more because I simply haven't gotten around to offering different product tiers.)

As for marketing, annual releases, and people losing interest, have a peek behind the curtain:

invariant revenue.png
invariant revenue.png (28.64 KiB) Viewed 68759 times

That's monthly revenue for 2015 through 2019 (with the axes conveniently unlabeled and not showing the zero crossing). ;)

The lines you can see coming in at the bottom right are holiday seasons from years past. The blue one that jumps the highest was the month Synthesia switched from "Pay for Learning Pack features" to "Pay to unlock Synthesia", which paved the way for the trend since.

I don't do any advertising. I'm generally a terrible businessperson and marketer (being more of a cross between an engineer and citizen scientist at heart). And yet these people keep coming from somewhere. I don't know where. It's a little spooky, actually. Sometimes I worry that if I change anything, it'll break the spell and they'll all disappear. But within some noise threshold, demand has been absolutely invariant for the past five years. It's completely uncorrelated with Synthesia updates.

The one thing this affords me is the luxury of not having to worry about annual cycles, or drumming up interest, or wowing customers in the fall, or any of the usual greasy salesman stuff that makes my skin crawl. It has slowly become one my favorite facets of the job. I get to focus on the things I care about instead: making improvements based on direct user feedback.

So, happily, we can dispense with all thought of marketing. I've heard the horror stories of businesses failing when engineering has absolute control. I've also heard the horror stories of businesses failing when marketing has absolute control. I try my best to thread that needle, but it's clear which side I lean toward. :lol:
jimhenry wrote: 08-04-20 11:53 amYou have always taken the approach of the next release of Synthesia is done when it is done. I think that was working through Synthesia 10. But I think Synthesia 11 is breaking the model because of the magnitude of what is being put into it.
I completely agree. I lamented this a year ago when I set the new course. (See the paragraphs just before the lists.)

This is the reason there are (at least) eight planned releases before Synthesia 11. It's too big to bite off at once. A few months into working on one embarrassment per release, it occurred to me that working on one sheet music feature per release would also make things rather bite-sized and tenable. So that's what I've been doing. Just as I started posting this auto-updating chart, I reworked the schedule to break things into these nice, small pieces for more frequent (i.e. not annual) updates. Synthesia 10.7 is "recording" and "down stems". Synthesia 10.8 is "frame hiccups" and "better multi-line sheet interaction" (really, finishing up the work I omitted from 10.6).

In a world where I had actually been working on these things this whole time, at least those two updates might have already shipped. Bite-sized. More exciting for users. All of that.

Assuming this plan works, people will have been enjoying the majority of the new sheet music features (for MIDI files) long before Synthesia 11 officially goes out the door. At that point, switching from 10.xx to 11 will really just mean those last 180 MusicXML lines.

Now it's just a matter of getting myself to do the work! :lol:
User avatar
jimhenry
Posts: 1907

Post by jimhenry »

The business model for my software project, the Miditzer virtual theatre organ, is that I don't charge for it because then it would cease to be fun. So take my business advice with a very large grain of salt. I have found a very noticeable surge of interest in the Miditzer this year that I think is due to people having to find things to do at home. Hopefully Synthesia is also experiencing some rain from these clouds.

Based on the peak behind the curtain you provided, I did a small amount of homework and looked at the Synthesia release schedule:
  • Synthesia 9 Oct 17 2013
  • Synthesia 10 Dec 12 2014
  • Synthesia 10.1 Jan 6 2015
  • Synthesia 10.2 Aug 23 2015
  • Synthesia 10.3 Sep 13 2016
  • Synthesia 10.4 Nov 17 2017
  • Synthesia 10.5 Nov 21 2018
  • Synthesia 10.6 Sep 29 2019
I unfairly focused on the 9, 10, 11 timeline where 11 is very long in coming. I would now say what happened is that starting with Synthesia 10 you decided that numbering major releases with integers, a practice that only started with Synthesia 9, consumed numbers too quickly. I would characterize each "point one-tenth" release starting with 10.2 as a major release. And you have been releasing those annually toward the end of the year. So I am not telling you anything you aren't already doing, although maybe unconsciously. ;)

The only crunch you might have is that MusicXML has been held out as a major feature that will appear in Synthesia 11.0. So if you aren't ready to release MusicXML toward the end of 2023, then you'll have to decide if you are going to release Synthesia 10.10 for that year.

So I'll let you get back to buttoning up the Synthesia 10.7 release which should be out before Thanksgiving.
Jim Henry
Author of the Miditzer, a free virtual theatre pipe organ
http://www.Miditzer.org/
thiagolr
Posts: 37

Post by thiagolr »

Nicholas wrote: 08-04-20 10:20 pm I don't do any advertising. I'm generally a terrible businessperson and marketer (being more of a cross between an engineer and citizen scientist at heart). And yet these people keep coming from somewhere. I don't know where. It's a little spooky, actually. Sometimes I worry that if I change anything, it'll break the spell and they'll all disappear. But within some noise threshold, demand has been absolutely invariant for the past five years. It's completely uncorrelated with Synthesia updates.
My guess is that most users come after watching YouTube videos using Synthesia (me included), which might even indicate that you should spend more time on the video creation features to make those videos easier to produce and even more visually appealing!
Nicholas
Posts: 13170

Post by Nicholas »

That is also my guess and a great suggestion. I've gotten lucky that Synthesia seems to mostly sell itself.

My website analytics show that something like 90% of the people that buy an unlock are one-time site visitors. (This is also apparently bad business practice. I'm supposed to find a way to ensnare them to come back and spend more money or whatever. Like a good business leech, I'm supposed to ferret out those customers that are the most swollen with money!) :lol:

But it does highlight the fact that lifetime free updates makes existing customers (in the calloused, disconnected business sense) "worthless" in terms of trying to entice them with new features. Once the initial sale is made, my "job" is done.

To push that initial sale, I suppose we could ratchet up some unverifiable claims on the front page. Maybe plaster some "#1s" and "bests" and "can't live withouts" around the place. ;) None of Synthesia's competitors seem very shy about saying those things. :lol:

Bleah.
User avatar
jimhenry
Posts: 1907

Post by jimhenry »

You probably should do something so that videos created by the Video Creator include some sort of tasteful plug for Synthesia with a link to your site, if you aren't doing so already.
Jim Henry
Author of the Miditzer, a free virtual theatre pipe organ
http://www.Miditzer.org/
Post Reply