Daniel Brooks — Javascript Hacker db48x@db48x.net (832) 549-7425 1756 Carmel Dr Apt. 118 Walnut Creek, CA 94596 http://db48x.net/ Goal My goal is the Singularity, and the means of achieving that goal is openness on the web and in our code. If that's too bombastic then my goal is the improvement of technology, and the web is the way to do that. Of course, this is a long term goal, and a pretty abstract one at that. However, it is my passion, and I've found that web and browser related projects are the best way to engage that passion. Relevant Skills * UI code: Javascript, jQuery, HTML5, CSS, XUL, XBL, XPCOM * Back-end code: C++, XPCOM, Common Lisp, Clojure * Server side: PHP, Perl, Python, MySQL, PostgreSQL * Webtools: LXR/MXR, Bonsai, Bugzilla, Tinderbox, Mercurial, Git * Version Control: CVS, Subversion, Mercurial, Git * Other: JSON, XMLHTTPRequest, make, autoconf, and many others… Most of my professional experience comes from working on the Mozilla project, mostly the user interface code - my first major contribution was to rewrite the Page Info window from scratch. I did some work on some of the toolkit and xpfe widgets (XBL bindings), and corrected the UI code that used them. I've also had some experience in content code, and in writing both C++ and JS XPCOM components. At MozDev Group, I expanded on this to build entire xul apps, extensions and even an old-style NPAPI plugin. As part of much larger teams at Mozilla and Pioneers of the Inevitable, I've worked on major UI elements for Fennec (preferences) and Songbird (cdrip, video playback, device sync). More recently I've applied these skills to Chrome extensions, and to cross-browser extensions. Work & Experience Open Source Programmer: January ’00 – present; Self Employed — Volunteer contributor to Mozilla web browser project and other open source applications. C++, Python and JavaScript programming, as well as XUL/XBL. Much experience with bug reporting/triage, debugging, code review, and large scale application development in general. Recently my open source contributions have been focused on Archive Team and Reposurgeon. Archive Team is a band of rogue archivists out ot download the web and save it for posterity, while reposurgeon is the best distributed version control repository manipulator there is. Freelance Programmer: July ’00 – present; Self Employed — Programming contracts for companies/individuals, and for the public good. Has included a variety of tasks, ranging from simple web server maintenance, to database conversions, to maintaining, extending, and building web based database systems to developing new features for Mozilla Firefox and Fennec. My most recent project was Solarpermit.org, a project by Clean Power Finance to help them automate local government. My team and I completed it on time and under budget, even though it was already running behind schedule when we joined the team. Ask Partner Network May ’11 – present; Software Engineer — Brought the flagship product (a browser toolbar) to Chrome, then used that to rearchitect the Firefox and IE versions of the toolbar. This resulted in a consolidated code base that supports all three platforms, reducing development and maintenance costs. Pioneers of the Inevitable Aug ’09 – March ’10; Software Engineer — POTI's product is Songbird, a desktop media player. Built on top of the XulRunner platform from Mozilla, Songbird encompasses video and audio playback, library management and synchronization with portable mp3 and video devices. I extended the existing UI elements to add new features, fix bugs and provide better feedback to the user. Mozilla Corporation June ’08 – January ’09; Software Engineer — Mozilla is the force behind Firefox, Thunderbird, and several other open source apps that have entered the limelight in the past few years. My job focused on Mozilla's new browser for mobile devices, Fennec. In addition to the typical tasks of finding and fixing bugs, I created the preference and shortcut user interfaces and assisted in implementing the Fennec side of a data-sync extension called Weave to allow users to sync their bookmarks, history and open tabs between their PCs running Firefox and their mobile devies running Fennec. MozDev Group, Inc March ’06 – May ’08; Software Engineer — MDG contracts for many companies who use Firefox or XulRunner as a platform for their own apps, or who wish to create extensions for apps such as Firefox and Thunderbird. Among the projects I worked on are a xul app for McDougal-Littell (bundled with their science and math textbooks), am NPAPI plugin for Microsoft (essentially just an xpcom wrapper around the activex interfaces to one of their apps), Nokia (performance improvements for their MicroB browser which runs on the N810) and the Brooklyn Museum of Art (I worked on their kiosk browser extension.) Vivid Minds April ’05 – March ’06; Software Engineer — Vivid Minds is a programming contractor, and I worked on the two main projects. One is a web browser derived from Firefox. The other is a billing and inventory system for Nexus Communications, which is for telephone service, cell-phone service, etc. Hobbies & Interests Computers: Programming is my personal favorite, because there's always some interesting problem to work on. I know Common Lisp, Scheme, Erlang, Javascript, Perl, Python, C/C++, and a few other languages. I've worked extensively with XML, SQL and HTML. A few good examples of my work are for Mozilla, an open source web browser. I also enjoy programming that isn't work related, such as the projects in my Mercurial repositories. Math: I'm really into mathematics. Things like calculus interest me, as well as graph theory, game theory, etc. I'd like to be able to fiddle with with applications of math such as AI, neural nets, that sort of thing. I've written programs that used matrix/vector algebra, trig, etc — a good example would be my Space Elevator simulator. I even wrote a very simple 3D polygon renderer in C++ once. Music: Classical music is my favorite. I learned to play the French Horn in high school, and I'd like to buy my own horn so that I can take it up again. In the mean time I content myself with listening to as much music as I can. A few of my personal favorites are Shostakovich's "The Second Waltz" and symphonies, "The Ring" by Wagner, Mozart's horn and piano concertos, the "Peer Gynt Suite" by Edvard Grieg, and Dvorak's symphony "From the New World". Books: I seem to always have liked reading, so I always try and find a good book. I'm mostly into science fiction, though there are plenty of other good books out there. I would have to say that my favorite books are Tolkien's stories of Middle Earth: "The Silmarillion," and "The Fellowship of the Ring." The way he constantly weaves references to the huge body of mythology and history he made for his world into the storyline is what makes these stories great; you really feel that the characters are embedded in a world that is much larger than themselves. Vernor Vinge is also a favorite of mine, particularly "True Names", "Fast Times at Fairmont High" and "A Deepness in the Sky." Charles Stross has also writen some excellent books, such as "Accelerando". Other good ones that I've just read are "True Names", by Cory Doctorow, "The Book of the New Sun", by Gene Wolfe, and "Lost Victories" by Erich von Manstein.