Fixing a Bug in Mozilla Thimble

I wrote previously about the steps necessary to make a contribution to an open source project via a Pull Request to Github. In that post I outlined the steps necessary to find and add/fix fields in package.json files for node.js modules. In this post I'm going to…

Your First Github PR - A Guided Tour

This week in my open source course, I'm starting to teach the students how to use git and Github. I love taking the time to teach it well, because it opens so many doors for students to participate in open source projects, to effectively manage their own software projects, and…

The limits of Automatic Tag Extraction

I'm working on rewriting an app with my daughters, and one of the features we wanted to test was whether or not we could add automatic tag extraction from photos. I've long been interested in services like Google's Cloud Vision API, which seem to do amazing things on images taken…

On Bird Calls and Pishing

This week a group of us were chatting about bird calls, and birding via sound vs. sight. I was reflecting later that most of the birding I do is auditory. Partly this is because I don't own good lenses, but also because I tend to do it wherever I am,…

On Sabbatical

As I begin the new year, I'm trying something new. I'll be taking a sabbatical for all of 2016. Normally at this time of year I'm starting new courses and beginning research projects that I'll lead in the spring/summer semester. I've been following that rhythm now for over 16…

How to become a Fool Stack Programmer

At least once in your career as a programmer, and hopefully more than once and with deliberate regularity, it is important to leave the comfort of your usual place along the stack and travel up or down it. While you usually fix bugs and add features using a particular application,…

The kind of open source I admire

There are a number of ways that a project or company can look at contributions from "the community." Let me start by saying that in almost every case, it is amazing to have people suddenly show up and surprise you with some gift of work that is given…

Introducing a New Thimble and Bramble

Introduction This week we're shipping something really cool with Mozilla, and I wanted to pause and tell you about what it is, and how it works. The tldr; is that we took the Mozilla Foundation's existing web code editor, Thimble, and rewrote it to use Bramble, our forked version of…

Squashing patellar tendinitis

This morning I awoke to a reminder in my calendar that made me really happy. Three months ago I set an event that said I could start playing squash again today, and I plan to do just that. Setting that calendar event was really just an emotional response to a…

Messing with MessageChannel

We're getting close to being able to ship a beta release of our work porting Brackets to the browser. I'll spend a bunch of time blogging about it when we do, and detail some of the interesting problems we solved along the way. Today I wanted to talk about a…