Posts and pointers on software, art, math, noise, and other obsessions…

A Distributed Reentrant Read-Write Lock Using a Hazelcast Data Grid

Most Java programmers are familiar with the java.util.concurrent package and some of the handy things in it like ReentrantReadWriteLock. To recap, a ReadWriteLock solves the “Readers-Writers Problem” in computer science. A read-write lock allows for a greater level of concurrency in accessing shared data than that permitted by a mutual exclusion lock. It exploits the […]

, , ,

My Erdos Number is 4

Related to my previous post, I now have an Erdős number of 4. Another thing I’ve always wanted! Here are the details and an explanation of Erdős numbers for those who aren’t familiar with them. I’ve posted previously about the mathematician Paul Erdős. Among other things, Erdős was insanely prolific and published 1,475 papers with […]

, , ,

Savant: Genome Browser for High-Throughput Sequencing Data

I forgot to mention I now have a peer-reviewed publication! I don’t have a “bucket list” as such, but this is something I’ve always wanted. Not being an academic has made that unlikely, but because of my job in a research lab, it’s finally happened. Yay! Here are the details: Savant: genome browser for high-throughput […]

Cryptanalysis and genomics

For some reason it occurred to me that these two things should go together (while reading about Schroedinger’s brilliant notion about “the stuff of the gene” being some kind of aperiodic crystal). Anyway, while searching for stuff on this topic, I came across this great bit: Craig Venter’s synthetic bacterium contains coded “watermarks” in its […]

First days with an iPad

I’m one of those seemingly few people who thought they had a real purpose for an iPad. I have a laptop and various old computers at home, but hate hauling my laptop around the apartment just to check email or look up something on wikipedia. So I splurged and bought one, which arrived Friday. While […]

Platonic Solids: Generative Architecture by Subdivision

We’ve all heard of generative graphics, how about generative architecture? The computational experiment Platonic Solids by Michael Hansmeyer is something you can get lost in for a good while. Especially since he’s added a 3-D anaglyph presentation. I hope you kept a pair of red-cyan 3D glasses in your junk drawer like I did! Here’s […]

Gruple moved to Codehaus

As promised, Gruple has moved from Googlecode to Codehaus. You find it’s new home here: All the documentation has been ported. There are new mailing lists. The source is now in a Git repository. And the 1.1.1 distribution is available from the distro site. Everything is (or should be) linked to from the main […]

, , ,

Gruple 1.1.1 with Transactions released

I had almost given up on Gruple because I had no idea if anyone was using it. But it turns out I need it so badly myself that I got a second-wind and implemented transactions. I released v.1.1 yesterday and then realized with horror that it had serious bugs. After a frantic morning, I’ve got […]

, ,

Tuple Spaces for Large-scale Parallel Event-Based Systems

I just mean to point out this great post by Mauricio Arango on “Coordination in parallel event-based systems”. He mentions message passing, actors, message queues, pub/sub and tuple spaces, but seems to conclude that we’ll be seeing more tuple space usage in the future.


New Direction: Computational Biology

After an absurdly long job search, I’ve finally found myself a comfortable place in a computational biology lab. I’ve been here a bit more than a month and thought I should mention something about what I’m doing. I’m working for Dr. Michael Brudno in the Computational Biology Lab at the University of Toronto. At the […]

Previous Posts