Computer Controller Beer Fermentation

I’ve spent this and the last weekend soldering together a bunch of circuitry that I can use to control my beer brewing process. I have built three calibrateable temperature sensors and two circuits to drive two different relays. There will then be connected to an Arduino that will be the brains.

The temerature sensors will be used to measure the temperature around my beer and the relays will be hooked up to the fridge that the beer fermentation will be taking place. The other relay will drive a lamp that I can use to heat the inside of the fridge.

I am planning on either making a webpage or an instructable showing exactly how it’s all done and set up some kind of github or sourceforge project with the code for the Arduino.

Capturing SIGINT in multithreaded python

Multithreaded Python scripts doesn’t always respond to signals. This is because it is not defined which thread will receive the signal. Also, it seems that if a thread is sleeping the signal might be interrupted altogether. The sympton of this that I saw the most often was that the script deadlocked and had to be killed.

Activestate contains a more thorough discussion of this together with code for a signal handler that catches SIGINTS and aborts the process.

Bananas

Sometimes they turn ripe and taste more of bananas. To me that’s a bad thing. I don’t really like bananas. I just eat them because they’re a decent snack between meals.

I figured that I would like them a lot more if someone would make bananas a bit crispier and make them taste like apples. Then I might actually enjoy eating bananas ;)

Maybe I should write an article about it and try to get it published in Waikato Times. Hopefully that would encourage a farmer to do investigate the chances of crossbreeding. If they succeed with creating a new fruit I think they should be called “bapples”.

Ph.D topic

There’s been a lot of questions what it is I am going now, and I’ve decided to try to write a bit about it.

The official title of my work is “Using machine learning to detect events in traffic flows”. What this actually means is a bit more complex ;)

A traffic flow is basically the traffic which is generated by someone interacting with something on a network. It can be someone checking their email, browsing the web or using Bittorrent. It is the actual flow of information exchanged between the parties, not the actual data. Events is relatively self explanatory, they’re when something happens in a traffic flow. Detecting this accurately is actually very difficult, and there’s been a number of specialized methods developed to do this. The biggest problem with these methods seems to be that they’re bad at adapting or detecting all types of events.

Machine learning is that when you use specialized algorithms which are used to teach computers to wade through big amounts of data and either classify it or find out what’s interesting about it (This is just a part of what it actually contains, but for this explanation, it’s good enough.). What’s really important to keep in mind is that the computers are trained to work with the data and that they can also learn from experience.

What I will actually be doing is to combine all of this. I will look at traffic flows and then investigate the best ways machine learning can be used to detect these events. I will also attempt to classify different types of traffic, such as web browsing, emailing and so forth.

The research I’ll be conducting will be within the limits of an autonomous control system for networks which detects problems, comes up with possible solutions, simulates them and then implements the solutions. My work will hopefully only be used to detect problems ;) And for those of you who wonder, I do not look at packet payload. In fact, I do not even have any payloads in my test data. That makes encryption useless to defend against this kind of classification ;)

Gogol Bordello

After discovering Gogol Bordello a while ago I finally got around to buying their cds at Sound Pollution today.I’m very happy with the buy and I have to admit that I find the sound quite compelling. They categorize themself as gypsy punk, and I guess it’s a fairly accurate description.  If you think you might like that kind of music I can definitely recommend checking them out.

It’s a shame that I missed their concert when they were playing here in Stockholm…

System freezes in Ubuntu 7.10

I installed Ubuntu 7.10 on my stationary machine in an attempt to get it into a more working state, and I was very unhappy with the 7.10 version. The system kept freezing completely and not even the system recall key combos worked. After experimenting a bit I noticed that it happened whenever the machine was accessing the network, but it didn’t have to be a high network load. Apparently the default kernel (x86/x86_64) has a problem with my system (athlon xp 2500+ with a broadcom ethernet adapter).The solution was to upgrade to the i386 ubuntu kernel doesn’t suffer from the same problems.

Moving

So, I’ve quit my job. In about three months time I will move away from Stockholm and to New Zealand.Interesting times. I’m scared about the future, but I think it’ll work out in the end. 

iSync plugin for the Sony Ericsson w910i

UPDATE: See this page for the latest version.

I got my new cellphone yesterday and everything was bliss. I was happy. Everything was just great. I was impressed by the nice feel of it, the responsive interface and the form factor.

Today, I wanted to transfer the contacts from laptop to the new phone and the bliss ended. iSync told me the phone wasn’t supported. I became annoyed. I googled. I found a bunch of plugins for sale and I became even more annoyed. It isn’t much money, but I felt loath to pay to get my phone to sync with my laptop. Besides, I stumbled over a guide of how to write a plugin. So I did.

It is very simple to make an iSync plugin in OS X 10.5, all you need to do is to run the iSync Plugin-Maker application. The application is a part of the XCode tools, and no self respecting geek should be without them on their apple computer ;)

This is the result. The plugin is reasonable well tested, and I’m using it myself. It does however not contain the modem scripts, I will add those later.I intend to put up a permanent page with the plugin and register it to macupdates and versiontracker as soon as possible. And keep the source there as well.

chocolate brownies

I need to save this somewhere.

Chocolate (Nut) Brownies (Alison Holst)

125g butter
1/4 cup cocoa
1 cup sugar
2 large eggs
1/4 teaspoon salt
1 tsp vanilla essence
1 cup plain flour
1 teaspoon baking powder
1/2 cup chopped walnuts (optional)

Heat oven to 180 degrees Celsius. Melt butter until liquid in a
medium-sized pot then take off heat. Using a fork, mix in the cocoa,
sugar, eggs, salt and vanilla essence. Sift in the flour and baking
powder, add the chopped nuts if you like, and stir until evenly mixed.

Pour into a 20-23cm square tin lined with baking paper. Bake for about
30 minutes, or until firm in the centre. (Don’t worry if mixture is
higher at the edges than the middle — it still tastes fine!)

Cut in pieces when cold.

The archives are back

After sacrificing some of my blood to endyminor’s old harddive I’ve been able to rescue most of the data. I have thus successfully restored the archives of this site :)