Category Archives: Computer Science

Golly Game of Life

I remember playing around with xlife and thinking it was a pretty good implementation of Conway’s cellular automata, but it’s got absolutely nothing on Golly, a stupendously fast version. Using hashing, it can run patterns for 1060 steps in just a few seconds. Amazing.

The Wireworld computer

Wireworld computed primes up to 31I’ve been interested in cellular automata for a very long time, dating back to when I was a kid. One of the first BASIC programs I remember writing was a version of Conway’s Life that would run on my Atari 400 computer (very slowly I might add). But I’ve also been intrigued by a very simple cellular automata called “wireworld”. Unlike Conway’s Life, each cell in wireworld can be in one of four states:

  1. insulator: cells in this state are always insulators
  2. electron head: heads always become tails in the next time step
  3. electron tails: electron tails always become copper in the next state
  4. copper: copper will remain copper unless there are precisely one or two heads adjacent to the cell, then it will become a head.

If you play with this, you might see why it would be called wireworld. I’ve known for sometime that you can create all kinds of logic gates with this automata as a basic technology, but today I found this very cool website which implements The Wireworld computer, a complete computer that computes primes, simulated in a Java applet. Very, very cool.

Addendum: I left the java applet running overnight on my machine at work. It computed primes up until 31, pictured at right (click on the image for a full resolution image of the computer state).

Linksys continues to court Linux Hackers

Linksys has sold a bazillion of the old WRT54GS routers. It’s probably due in some small part to the many alternative firmware upgrades you can put on the device to increase its capabilities in a number of innovative directions. The most recent versions of these devices are somewhat less hackable though. The series 5 devices have shifted from using Linux to using VxWorks, and have cut memory down to 2MB of Flash and 8MB of RAM, instead of 4MB of flash and 16MB of RAM for earlier Linux based devices. But to placate the hacker market, Linksys has released the WRT54G”L” which retains the larger memory spaces of earlier models. How long will it last? Hard to say, I’ll be watching this experiment to see how it goes.

Signaling Vulnerabilities in Wiretapping Systems

Matt Blaze and company have a new paper just out entitled Signaling Vulnerabilities in Wiretapping Systems, which details a number of problems with the methods and equipment normally used by law enforcement to tap phone equipment. These include vulnerabilities that allow the surveilled party to make it appear to call numbers other than the one reached, to disable recording of specific calls and to just generally make it hard for tappers. Interesting stuff, and using relatively straightforward ideas and methodology.

Matt is a remarkable guy, I particularly liked his paper Safecracking for the computer scientist.

Light Field Photography with a Hand-Held Plenoptic Camera

A group at Stanford has created an interesting new camera using a combination of conventional camera and a microlens array to form a “plenoptic” camera. This link hit our photography mailing list yesterday, and I spent some time reading it. It’s really quite clever. Basically it uses the microlens array to serve as thousands of tiny lenses. Each of these “sub-lenses” images the target scene over a narrow field of view from a different spatial location. Then, computer software can take these individual images and recombine them in flexible and clever ways: allowing you to refocus images, shift perspective, and all sorts of other cool ideas.

Very neat stuff.

DocuColor Tracking Dot Decoding Guide

Xerox printers use a watermarking technique to insert codes onto all printed documents from their Docucolor color laser printers. These identify date, time and printer serial number with a grid of yellow dots which appear in the printout. Presumably these codes are inserted to make the job of the Secret Service simpler in tracking their use in creating counterfeit money. What’s kind of cool though is that the EFF has figured out how to decode them. Interesting bit: the dots are simple to see when viewed under an intense blue light, like one of those blue Photon LEDs.

Another Scoble-ism

Scobleizer: Microsoft Geek Blogger

Windows isn’t what whas broken. Windows DEVELOPMENT PROCESSES were what was broken.

The two are intimately related. Can you honestly say that you have an example of a program which worked well, despite the development process being completely broken? It just doesn’t happen. The article that Scoble quoted quoted Microsoft VP Jim Allchin:

“It’s not going to work,” he told Gates in the chairman’s office mid-2004, the paper reports. “[Longhorn] is so complex its writers will never be able to make it run properly. ”

That is a broken development process, producing broken software, and only a little over a year ago. We are in the third quarter of 2005 now, and only now are we hearing of the sweeping changes that Microsoft thinks are necessary to become innovative.

It is absolutely startling to me that a multi-zillion dollar mega-empire like Microsoft only recognized last year that perhaps they should work toward “developing a solid core for Windows”.

Longhorn/Vista was broken. Clearly. Whether it is still broken when it ships remains to be seen, but it seems like in a few years, someone is going to have enough material to write a suitable sequel to an old software engineering standby.

Running NetBSD/vax

Screendump of My Vax

Well, above is a screendump of my latest computer acquisition: a Microvax 3800 which I installed NetBSD on. Wackiness!

What’s even more wacky is that it didn’t cost me a cent. Well, maybe that isn’t so wacky, after all, would you pay money for a Microvax? 🙂

Basically, I’ve been on a bit of a retro kick lately, what with the Atari 2600 programming and all. While goofing around, I noted that you could run the latest NetBSD 2.0 release on simulated Vax hardware. So I compiled the simulator port, downloaded the vaxcd.iso file, and did it.

Et voila! It works.

Probably even runs faster in emulation on my lowly 1ghz Via C3 box than the real thing. 🙂

I know, this is one of the more useless things I’ve ever done, I just had to share.

Dave Slusher Hacks a $25 Digital Camera

Dave went out and bought himself a couple of those single use, $25 camcorders that CVS is selling these days, and hacked them to allow download of video. What is even better, he snapped video of the project and made it available for download.

Caveat: it appears to be encoded in some kind of Quicktime 7 specific codec. I haven’t bothered to get Quicktime 7 on my laptop, since it is beta still for Windows, but I did notice that it will play nice using VLC. Hooray for VLC!