Another month, another release. This release still isn't interesting to the end user, but it's an exciting release for anyone interested in Novacut UI development.
Enabling UI innovation
We decided to build Novacut around CouchDB because it basically gives us real-time collaboration for free. But as long as we're using CouchDB, WebKit becomes a really attractive option for building the UI as we have a local web server to talk to.
There is another reason to use web technology... many people know it. I'd say these days there are probably more world class UI designers building with web tech than everything else combined (if anyone has actual facts to prove or disprove this, would love to know).
But the benefit of building with web tech is lost if the development process is too awkward or unfamiliar. Web developers expect to be able to change a file and hit Reload, so a big goal this month was to make our UI development that easy.
As you can see in this video, I think we've pulled it off: change a file, hit Reload. Plus, we really hope other apps start using this sort of architecture, so we split the key bits into a standalone library called UserWebKit.
Getting dmedia production ready
Most of the month was spent doing massive work on the road to rubber stamping dmedia as "production ready", which means two things:
- We're extremely confident that dmedia will never cause data loss
- We're prepared to maintain indefinite backward compatibility with the initial dmedia database format
Recommending dmedia for day-to-day use is both very exciting and rather terrifying. Protecting your data is a big responsibility, and this has obviously weighed on my subconscious. A few weeks ago I actually had a bad dream that Philip Bloom was trying out dmedia and it lost some of his files!
But the point is, we take protecting your data very seriously... and we wont call dmedia "production ready" without good reason.
Get the bits
Packages are available in the Novacut Stable Releases PPA for the soon to be released Ubuntu 11.10 "Oneiric" . And you can download the source code from each component's Launchpad project page. Whoa, six components and counting:
This release wouldn't be possible without the hard work and expertise of the following people:
- Thanks to Harno Ranaivo for designing the Novacut icon, which got its first real use this month!
- As always, thanks to Ian 'IZO' Cylkowski for the stunning Novacut brand identity design upon which the above icon was based
- Big thanks to marekj (whoever you are) and James Raymond for giving priceless feedback on what a non-sucky UI development process should look like
- Thanks to David Green for laying the groundwork for how dmedia will query for info about the hard disks and file-systems upon which files are stored
- Thanks to Manish Sinha for fixing an issue or two in how we build the documentation for filestore and Microfiber
- Thanks to Akshat Jain for sitting still long enough to add a cool feature to Microfiber (hehe, or did he ADD that feature?)
- Thanks to David Jordan for doing countless code reviews and researching how we'll make the render backend draw directly onto WebKit
- Thanks to a friendly anonymous reviewer for pointing out a rather glaring problem in the dmedia hashing protocol (which has since been fixed)
Contribute to 11.10 and beyond!
Want your name in next month's release notes like all the cool kids above? If you look at the Jump in section on this page, you'll see a link to the Bitesize Bugs for each component. These are bugs that should (in theory) require little coding, but will get you familiar with the Launchpad workflow, running the unit tests, and, importantly, get your name in the release notes.
We always release on the last Thursday of the month. The 11.10 components will be released on Thursday October 27 2011, and development is already underway. To see what's in store for the next releases, checkout the 11.10 milestones:
That's all, folks!
Thanks to everyone who is helping make this dream a reality!
Jason Gerard DeRose