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…

Learning to git bisect

Yesterday one of my students hit a bug in Brackets. We're working on an extension for Thimble that adds an autocomplete option to take a selfie when you are typing a URL that might be an image (e.g., <img src="...">). It also needs to work…

Repeating old mistakes

This morning I've been reading various posts about the difficulty ahead for the Pointer Events spec, namely, Apple's (and by extension Google's) unwillingness to implement it. I'd encourage you to read both pieces, and whatever else gets written on this in the coming days. I want to comment not on…

Embedding license data in images

This term I've got a good group of students taking my second open source course. Unlike the first course, which aims to teach the theory and practice of open source, the second course aims to get students engaged with a larger piece of work. During the fall I was chatting…

Avocation

Over the holidays I had a chance to read Gibson's new novel, The Peripheral. I won't discuss the book itself, but instead want to pause over one word. What I enjoy so much about Gibson's style is that his unit of thought is so often the single word, and moving…

Video killed the radio star

One of the personal experiments I'm considering in 2015 is a conscious movement away from video-based participation in open source communities. There are a number of reasons, but the main one is that I have found the preference for "realtime," video-based communication media inevitably leads to ever narrowing…

Minimum Viable Product

This week in class I was discussing the value of thinking in terms of a Minimum Viable Product (MVP), and how open source tends to favour the approach, because it allows one to ship, test things with real users, get feedback quickly, find and fix bugs, and repeat. Structuring your…

How to encourage contributors

One of the techniques I've used over the years in teaching open source is to invite core members of the projects we're working within to come and give guest lectures. I do this for a variety of reasons. First, I find that students are intimidated by the size and complexity…