Synthesia 11 Release Estimate

Try new versions before anyone else!
Always the latest dev version: [ win ] [ mac ] [ android: beta opt-in or apk ]
Please report comments and bugs!

Your data hasn't disappeared: development previews store their data in a different place. Details here.
Post Reply
Nicholas
Posts: 12329

Post by Nicholas » 01-03-20 3:09 am

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 monthly:

Synthesia 11 Lines Remaining In My Internal Task List
Chart updated automatically on the 1st of each month at 9:00 AM Eastern time.

Image

The same infrastructure made it trivially 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/are 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: 1792
Location: Illinois

Post by jimhenry » 01-04-20 12:43 am

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: 12329

Post by Nicholas » 01-04-20 12:45 am

I made this same joke to my wife yesterday. ;)

User avatar
jimhenry
Posts: 1792
Location: Illinois

Post by jimhenry » 01-04-20 1:42 pm

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: 12329

Post by Nicholas » 02-01-20 2:07 pm

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

2020-01-annotated.png
2020-01-annotated.png (3.83 KiB) Viewed 9824 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 » 03-01-20 10:43 pm

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

Nicholas
Posts: 12329

Post by Nicholas » 03-02-20 9:09 am

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: 1792
Location: Illinois

Post by jimhenry » 03-02-20 9:56 am

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: 12329

Post by Nicholas » 03-02-20 1:54 pm

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 8382 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: 12329

Post by Nicholas » 04-07-20 1:03 am

2020-03-annotated.png
2020-03-annotated.png (3.04 KiB) Viewed 6096 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: 1792
Location: Illinois

Post by jimhenry » 06-08-20 12:14 am

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: 191

Post by monkel » 06-21-20 4:27 pm

I‘m definitely with jimhenry on this.

As I‘m primarily using my iPad this has been a very dry spell regarding features...

Post Reply