After a mysterious sponsorship, the Blender Foundation was able to hire developer/artist Matt Ebb. Now, after 8 months, Matt has announced that he'll resign from that position (which doesn't mean he won't be working on Blender development at all anymore).
His work was never very visible to me, so I invited him to tell us more about what he has been doing. It's an interesting read that highlights some of the complexity and hard work that's involved with Blender's development.
Thanks for all your help Matt! I'm sure you'll be missed. (But I'm also sure we'll be seeing you around ;-)
Update: changed the title and description above a bit to more accurately reflect the situation.
In November last year I was hired by the Blender Foundation (financed by a generous anonymous sponsor) to speed up Blender 2.5 development, working from home here in Sydney. 8 months later, it's time for me to call it a day. The initial plan for this project was to first complete the features and functionality that has been begun to be implemented for the 2.5 release, to be followed later by additional ui related work, that had been planned/desired during 2.5 development but not been implemented yet.
I started off working on implementing and polishing assorted smaller features such as restoring old tools, improving the key maps ui, colour picker, brush system, animation system work, painting ui, rna/operators/notifiers cleanups, and the splash screen among others. Additional to this were other jobs such as writing the 2.5 release notes and supporting other volunteer coders. One thing that came apparent quite quickly though, was the steady stream of bug reports coming in, which needed to be dealt with.
I think in the initial scheduling, I underestimated the amount of bug fixing that would be required. As alpha 0 was released and people started using 2.5 in more practical situations (including the Durian team), more and more bugs were reported. With a new version 2.5, people are also looking over Blender with a fresh, critical eye - there have been several bugs reported recently which have existed in older versions of Blender too. This is a good thing though! The community participation in this continues to be great, and the end result has been, and will be, a better Blender for everyone.
At first it took quite some time to get comfortable in the bug hunt. Blender has a very large code base spanning so many different features, written by so many different coders. It's hard enough to be fully familiar with all areas of Blender as a user, let alone understand the code behind all of it too ;) Upon starting this job I was familiar with the code base in general, however there were still many areas of Blender (and the new 2.5 architecture) that were relatively new to me. So especially early on, fixing bugs would often involve spending a few hours just reading through unfamiliar code to learn how it should be working, in order to find the problem and then solve it. As time progressed, this improved though - over my time here I estimate fixing about 350, and diagnosing several more, too.
To be fair, even though there have been more bugs than expected, in hindsight I still think that relative to the enormous amount of new code added, we're still doing pretty well. In some areas like the vast new RNA system for example, I've really only seen about a handful of bugs, which is quite impressive indeed.
Part of my responsibility was also managing the bug tracker and the reports coming in - nagging people for reproducible test files, testing reports to confirm them, diagnosing issues with the reporters, assigning, rejecting, closing and moving reports. I'd like to give a big "thank you" here to some of the familiar user names I've seen on the tracker, non-coders who have helped enormously by clarifying and verifying reports on their own systems. It's not a glamorous job, but it's incredibly important and helpful, and one that all users can easily get involved with. Thanks also to people who have submitted clearly written, reproducible reports with test files. The best way to get your reports fixed promptly is to follow the reporting guidelines when you post it - it's only fair for users to put in a minimal amount of effort to help the coders who may well be spending hours tracking a problem down.
In the last month or so, Diego Borghetti joined the team, giving me some relief from tracker duties so I could work on a few more todo items on the roadmap before 2.5 beta, such as interaction presets, some work on the multithreaded jobs system with progress indicators, improving the non-blocking reporting system ui, and also doing the groundwork for changes in how Blender installs on your system. In the end, I was hoping to spend more time on developing ui features such as radial menus and generic manipulators, but it was much more important to concentrate on getting blender to a stable, reliable state, as a good foundation to build these and other new features on in the future.
I'd like to thank our sponsor and the Blender Foundation (Ton) for this opportunity, as well as Brecht and Campbell, the other full-time developers on Durian, and the volunteer community. It's been an interesting experience, but now it's time for me to move on - I'm looking forward to getting back into more regular creative production work, as well as developing some new skills in other areas and working on some personal projects. Hopefully interesting times ahead!