Pages
-
Recent Posts
-
Recent Comments
- The Social Constraints of Bettering The Web, Part I at Toolness on Experiments with audio, conclusion
- Огненный лис / Обработка звука через Audio Data API « Мой новый блог on Experiments with audio, conclusion
- Catherine Leung on Experiments with audio, conclusion
- David Bruant on Experiments with audio, conclusion
- Dan on Experiments with audio, conclusion
Categories
Archives
- August 2010
- July 2010
- June 2010
- May 2010
- April 2010
- March 2010
- February 2010
- January 2010
- December 2009
- November 2009
- October 2009
- September 2009
- August 2009
- July 2009
- June 2009
- May 2009
- April 2009
- March 2009
- February 2009
- January 2009
- December 2008
- November 2008
- October 2008
- September 2008
- August 2008
- July 2008
- June 2008
- May 2008
- April 2008
- March 2008
- February 2008
- January 2008
- December 2007
- November 2007
- October 2007
- September 2007
- August 2007
- July 2007
- June 2007
- May 2007
- April 2007
- March 2007
- February 2007
- January 2007
- December 2006
- November 2006
- October 2006
- September 2006
Catching up on DXR blogging
My students have a first release due today by midnight, and all day I’ve been watching attachments go up on bugs and demos getting posted online. It’s been really cool to watch how far many of them have gotten with their 0.1 release on a Mozilla project.
I blogged earlier in the term that I would be working on my own stuff in parallel, in the form of DXR (though I ended up doing a bunch of Thunderbird bugs too, which were also useful for teaching). DXR is a web-based source code indexing tool that incorporates static analysis data. You can read more about it here, watch a demo, and try it out yourself.
My work since then has been focused on plumbing vs. new features I can easily demo. I’ve rewritten the back-end in order to make it faster. When I started this work it took ~400 mins to do a full index and generate static html for the source of mozilla-central (Firefox) and comm-central (Thunderbird, Suite) together. After lots of experiments, deleting code, and digging into python, I have this down to ~100 mins. This means it’s now fast enough that I can start doing constant re-indexing of our source. I’m going to be testing this over the weekend to work out a few more kinks. Taras has been working on getting a dedicated box at Mozilla, so we can use it in production, which will make it better than the demo I have up now. Once that’s in place, I’ll see about setting it up there.
I’m also working on front-end fixes and data improvements, as described on this wiki page. If you have other ideas for things you’d like to see, add them to the wiki or talk to me on irc (humph). Many very useful things are easy to add, for example, bz wanted a way to query for derived:nsIFoo::GetBar so I added that today (it’s not in the demo yet, but will be next week), . You can also file bugs for DXR in Mozilla’s bugzilla under WebTools:DXR.
Next week Taras Glek and Benjamin Smedberg descend on Toronto for FSOSS (Taras and I have a talk at FSOSS about Dehydra and DXR), and we are going to spend some time Tuesday planning more of the work that will be done in the coming months. Benjamin has already written a patch to move my changes to xpidl into his python version of the same. I’m looking forward to seeing them again after so much time just on irc, and to getting to talk with them about ideas I have for next steps.
The fall has been tremendously exciting and busy, with Mozilla Education and Seneca Mozilla teaching taking the bulk of my time. It’s fantastic to be so busy with my own and other students, and to be helping profs get started doing the same. However, I haven’t lost track of DXR, and am actively working on it with the remaining time I have. Thanks to all of you who have given me feedback, reported bugs, and generally encouraged me with this work. It’s very rewarding when you know that others are interested and cheering you on.
P.S. I was also asked to add a new web front-end for Mozilla’s static analysis tools, dehydra and jshydra. Jason Orendorff named “View Source” and you can try it out here, download a tarball here, or get the source here. It is much easier than setting up your own environment for doing debugging of analysis scripts or looking at small test cases. Here’s what it looks like: