Volunteer Spotlight: Rob Savoye
Rob Sayove is the founder and lead developer of Gnash, the GNU Flash Player. In the past, he has worked on The GNU Compiler Collection, GNU Debugger, Cygwin and the DejaGNU testing framework. He recently spoke at the LibrePlanet 2009 conference, here in Boston, and I caught up with him to ask a few questions.
When did you first get involved with the GNU Project?
I was working for a small start-up in the 1980s building massively parallel super computers, and we decided to switch processors to the SPARC. We couldn't afford enough licenses for the SPARC compiler from Sun, then I discovered the beginnings of the GCC port to the SPARC. I was already maintaining our existing compilers, so it wasn't a difficult switch. As I changed jobs when that startup died, and then another, and another, I wound up maintaining GCC for everyone I worked for.
You've worked on many GNU projects over the years, but mostly programming tools. How does working on a more user-orientated project like Gnash feel compared to say, GDB or GCC?
The bug reports are very different! Most GCC and GDB bugs I dealt with were very low-level stuff, and were primarily reported by engineers. With Gnash, we have a much wider target audience, and bug reports are often more like "YouTube stopped working!"
How did Gnash come about?
I originally wrote Gnash as the graphics layer for a digital stereo system. The user interface was written in Flash. After that I didn't think about Flash much till John Gilmore called me up, and talked me into turning my standalone Flash player into a plugin for Firefox, which I did. Then the FSF made Gnash a high-priority project, I attracted more developers, and off we went...
Most of the phones being sold today have Web browsers and even Wi-Fi, yet they lack a Flash player. Is this an area where Gnash can shine?
We believe so. We pay more attention to things like the footprint, and performance, than Adobe does. Plus Gnash is much more portable, and runs on more processors and operating systems than the non-free players.
One thing I hear from a lot of people, is that they are unwilling to use Gnash, because it doesn't work on some of the sites they use. How can people who don't have the skills to cut their teeth on the Gnash codebase get involved and help out?
We find good bug reports very useful, especially if they've tried with a recent version of Gnash, compared the output from other non-free Flash players, etc... Then as we ask the questions we need to figure out the bug, hanging in there with us and responding to the email helps too. Other than that, we can always use editing of our wiki, info added to our documentation, that kind of thing.
What features does Gnash have that Flash is lacking? I know you recently released a media server, Cygnal. How does Cygnal take advantage of Gnash?
Gnash is still lacking solid SWF v9/10 compatibility. Improving that is the goal of our summer project. Cygnal and Gnash have special functionality that only works when using both. Things like using 100% free codecs for all multimedia. There is other functionality on the roadmap for Gnash & Cygnal, like server side support for editing videos, stuff like that.
You've worked with John Gilmore recently on a project to bust patents on media codecs. What's the goal of the project?
To develop a legally redistributable version of ffmpeg.
How is that going?
We need a minimum of $50k to really do the 3 month project plan. We have people lined up, but right now we can barely pay our bills -- it's going nowhere due to lack of funding. We're still trying to raise the funding it needs to get started. The plan now is to fundraise all summer, and hopefully launch this in the fall -- better late than never, right? But every single organization that has promised funding has backed out -- they're too scared, and too many big budget cuts recently. Distributions don't want to contribute. I've talked to all the major distros lawyers. They all blessed our proposal, then the companies still go, "we have no budget for this."