Mozilla Webdev’s Beer and Tell: April 16, 2012

In case you missed last month’s blog post, a Beer and Tell is a monthly Mozilla Webdev gettogether involving cool hacks and malted beverages. We try to structure it like a series of lightning talks and — because all work and no play makes web developers go crazy — some of us have a beer during. Some of the East Coast folks drink scotch instead, but it’s OK because it’s after 5pm in Toronto by then.

We didn’t record this Beer and Tell (my bad!), but I thought I’d share what was presented. It was pretty gaming-focused and quite cool.

Django Stats Admin

Created by Michael Kelly, this nifty little app allows you to visualize any of your Django models with datetime fields in the Django Admin. It uses the flot JS library to create pretty charts and lets you specify date ranges.

Django Stats Admin screenshot

Michael’s currently working on abstracting the app out into a library that can be used with any Django app.

Lisp -> DCPU-16 Compiler

James Long, our resident Lisp champion, started off by telling us about 0x10c and the DCPU-16 assembly language in the game. It’s pretty cool stuff for gamers who are language geeks too. Of course, who wants to write machine code of any kind when there’s Lisp?! No one, that’s who. Or, well, at least not James.

James wrote a Lisp to DCPU-16 compiler that translates your Lisp to heavily optimized DCPU-16 assembly instructions. His Lisp allows inline assembly and is pretty damn slick.

James walked us threw some Lisp code, showed us the converted assembly, then ran the instructions for us! He also showed us some of the crazier stuff folks have done with the DCPU-16 language, even though it’s in its early stages. Very cool stuff.

Check out his project’s README for more info and examples. It’s actually written in James’ own Lisp variant, Outlet, that compiles to JavaScript and lua. Lisp-ception!

Yo dawg I heard you liked Lisp so I wrote you a Lisp compiler in Lisp so you can write Lisp for DCPU-16.

Even I, a steadfast vim user, was impressed.


Dan Mosedale showed us some damn fine graphics engine fun in JavaScript, running quite smashingly (with a few browser garbage collection missteps, soon-to-be-resolved) in a browser. It was powered by a new library, Gladius.

He started with some basic objects and physics, then progressed onto the beginnings of a 3rd platformer/fighter! We discussed the current state of graphics libraries, 2D vs. 3D libraries (there are a lot of 2D libraries out there — Gladius is focusing on 3D), and gaming in browsers in general.

Screenshot from the Gladius demo

These folks are up to some interesting stuff and it’s a great time to get started writing games in the browser. Read more about Gladius and be sure to look for some full-fledged games using it in no time.

Apptastic, an Experiment in Cursing Creating Mobile Platforms

The developers on the Developer Ecosystem team wanted to see what it was like to develop on various mobile platforms so we’d know what to do (and what not to do) when creating a sane work flow for developing Open Web Apps. We decided to make simple Bugzilla search apps so the each experiment had a common goal.

Turns out: most mobile platforms are a pretty big pain in the ass to develop for! It’s important to remember that we’ve come a long way (before the iPhone, it was sell your “app” through each carrier to a specific device for a crazy price), but we still have a ways to go.

Arron wrote a pretty sweet write-up of his Windows Phone experience, and we briefly discussed developing on other platforms, including the bureaucracy involved in iOS development and the general pain of Android… every step of the way.

Look for more blog posts about our experiences in the future.

That’s All Folks!

Hope you enjoyed my recap of the Beer and Tell. We’ll be sure to record it for next time!

Until then: keep hacking and having fun!

1 response

  1. Rathissh wrote on :

    I need details about that compiler.