By Prashant Shrestha from Kathmandu, Nepal (branches Uploaded by russavia) [CC BY 2.0 (http://creativecommons.org/licenses/by/2.0)], via Wikimedia Commons

Everything you ever wanted to know about git submodules and more

Ashley Hewson wrote “I regularly hear complaints that git submodules are difficult to work with. If you search for ‘git submodules’, then (depending on your filter bubble) you’ll probably get several blog articles warning you not to use them. I agree that the UI is not at all intuitive,1 but like most things in git, submodules are quite…”

Two Magnolias, one container

Tim Band wrote “We are using Magnolia in a number of projects here at LShift. I have been feeling that Magnolia has a simple way to do most things, but often there are a number of other plausible alternatives that gradually lead you into wasting enormous amounts of time. Here I want to present a simple way to…”

Publishing your mercurial-server repositories to the Web

Paul Crowley wrote “I got a couple of queries recently on how to make your mercurial-server repositories publically readable over HTTP. Happily this isn’t hard to do, and doesn’t really touch on mercurial-server itself. Here’s how we do it on our Debian systems; in what follows I assume that you have installed mercurial-server on hg.example.com, and that you’re…”

Network server programming with SML/NJ and CML

Tony Garnock-Jones wrote “My experience with [SML/NJ](http://www.smlnj.org/) has been almost uniformly positive, over the years. We used it extensively in a previous project to write a compiler (targeting the .NET CLR) for a pi-calculus-based language, and it was fantastic. One drawback with it, though, is the lack of documentation. Finding out how to (a) compile for and (b) use [CML](http://cml.cs.uchicago.edu/) takes real stamina. I've only just now, after several hours poring over webpages, mailing lists, and library source code, gotten to the point where I have a running socket server. Read on for a full, commented, example.”

HTML email from Squeak using Seaside

Tony Garnock-Jones wrote “Recently, as part of a Seaside-based application running within Squeak, I wanted to send HTML-formatted notification emails when certain things happened within the application. It turns out that Squeak has a built-in SMTP client library, which with a small amount of glue can be used with Seaside’s HTML renderer to send HTML formatted emails using…”

OpenAMQ’s JMS client with RabbitMQ server

Tony Garnock-Jones wrote “OpenAMQ has released their JMS client for using JMS with AMQP-supporting brokers. This afternoon I experimented with getting it running with RabbitMQ. After a simple, small patch to the JMS client code, to make it work with the AMQP 0-8 spec that RabbitMQ implements (rather than the 0-9 spec that OpenAMQ implements), the basic examples…”

Listening to your Webcam

Tony Garnock-Jones wrote “Here’s a fun thing: The Analysis & Resynthesis Sound Spectrograph, or ARSS, is a program that analyses a sound file into a spectrogram and is able to synthesise this spectrogram, or any other user-created image, back into a sound. Upon discovery of this juicy little tool the other day, Andy and I fell to discussing…”

Late-binding with Erlang

Tony Garnock-Jones wrote “Upon browsing the source to the excellent MochiWeb, I came across a call to a function that, when I looked, wasn’t defined anywhere. This, it turns out, was a clue: Erlang has undocumented syntactic support for late-bound method dispatch, i.e. lightweight object-oriented programming! The following example, myclass.erl, is a parameterized module, a feature that arrived…”

A touchscreen mod for the Asus Eee 701

Michael Bridgen wrote “ My Asus Eee PC has finally received some attention: I installed a touchscreen. The full story is after the jump ..”

Using AMQP to do cron-like scheduling

Tony Garnock-Jones wrote “Barry Pederson‘s excellent py-amqplib Python AMQP client comes with a very cute little demo, demonstrating how easy it is to do sophisticated cron-like things with AMQP and RabbitMQ. As Barry writes in the example, the trick is to “[fire] off simple messages at one-minute intervals to a topic exchange named ‘clock’, with the topic of…”

How to run RabbitMQ’s experimental STOMP adapter

Tony Garnock-Jones wrote “The code for the experimental STOMP adapter for RabbitMQ is distributed separately from the main server, at the moment. This post walks through the steps needed to try the adapter out, running it against a recent snapshot release of RabbitMQ. The perl Net::Stomp STOMP client is used to demonstrate the adapter in action, subscribing to a queue and sending a couple of messages to it.”

Emacs in MacOS X 10.5 Leopard

Michael Bridgen wrote “If you’ve upgraded to Leopard, and you’re an Emacs user, you may have found that typing emacs in a term no longer works — you get “Fatal malloc_jumpstart() error”. This will be the case if you’re using something like Fink or Darwin Ports, but it may also be the case if the upgrade didn’t quite…”