Feb 13 2013
Sep 27 2012
Sep 17 2012
Jul 20 2012

Moved to Identity

I’ve been working at Mozilla on the same project for a year and a half now, and it’s time for some change.

I spent that time working on Add-on Builder, taking it from prototype to launched product. With it being largely a single-page app, I refined a lot of my views on organizing and structure large amounts of JavaScript. I formed that new knowledge into Shipyard, and got to work on that and improve it much the first half of this year.

I’m proud of how easy it is to start writing a new add-on for Firefox, test it, and publish it to; all entirely in the browser.

I started thinking I wanted to do more, though. By more, I mean affect more people on the Internet. As various friends would ask me what I do at Mozilla, I would tell them I make a tool for developers to more easily make add-ons, that my friends might use. Except many don’t use add-ons, or even Firefox. I realized I wanted to make something that normal people would use. What is something on the Internet that normal people use, and currently sucks? Logging in.

Mozilla’s Identity team has been working on a new system to greatly improve signing into the Internet. I’ve been watching it since they announced it, and now I get to help create and improve on the new Persona project.

If we do our job right, eventually when my friends ask me what I do, I can say: I helped make it so you no longer need to use passwords everywhere. I helped make your online identity more secure. I helped make signing into the Internet awesomer.

Jul 11 2012
May 11 2012
Mar 21 2012

Shipyard 0.1

I’ve been working on a JavaScript MVC framework for past several months called Shipyard. It’s an incredibly modular framework, with ease of testing, and all that other kool-aid. What’s important now is that this is the first release point for Shipyard. Here’s what it comes packed with:

  • Models
    • Syncs to various locations
    • Fields to serialize data easily
  • Views
    • Automatic updates using Bindings
    • Uses EJS templates underneath
    • Templates get pre-compiled for production, so templating engine isn’t needed in final file.

There are plenty of other modules included, but not all have public docs currently as many of them aren’t needed specifically by app developers, only by the internals of Models and Views.

It’s already powering Mozilla’s Add-on Builder.

Start Playing

You can read more about Shipyard at the docs page, play with the obligatory example to-do app, or the brave can start at the source.

Or, you can grab your require and try it out in jsFiddle right now.

To use it locally, you could check it out with git, but it’s also available on npm, via npm install shipyard.

What’s Next

With this release, work begins on version 0.2, which will bring about Model Relationships, QuerySets, some Controllers, and a configurable logger.