Some useful APT commands

The APT package manager used in the Debian and Ubuntu Linux distros keeps track of installed packages, but also which files they installed. Here are four package management commands I have ended up using regularly.


Building the Frog Sounds QRP Kit 3: Key Circuitry

When the power supply was done it felt reasonable to continue with the key circuitry. This post describes the key jack with pull up network, the LED indicator circuit, and the NAND gates that function as a buffer and beeper.

Building the Frog Sounds QRP Kit 2: Power Supply

The first block I started to solder was the power supply. This post describes how it works and issues I found while building it.

Building the Frog Sounds QRP Kit: First Look

Recently I became interested in amateur radio. Since I started from scratch equipment-wise, I wanted to buy a cheap radio transceiver to start off with. A kit was a perfect match for me since I like to tinker with electronics and there are some really cheap ones out there.

New Blog

My blog setup has bothered me for some time. Now I have finally finished the replacement: a bunch of HTML files, generated from Markdown with a few scripts, served statically from Apache.


Haskell I/O in Five Minutes

The way you do I/O in Haskell may be radically different from what newcomers are used to, but in fact it follows a few simple rules.

Running CadSoft Eagle Version 6 in Ubuntu GNU/Linux

CadSoft recently released version 6 of its PCB layout program Eagle. You want to use it in Ubuntu? Here's how to get it working.


The re- functions

I recently realized that of the core Clojure regex functions (re-pattern, re-matcher, re-matches, re-groups, re-find, re-seq) I was completely unaware of how re-matcher, re-matches, re-groups were supposed to be used. Their names hint that they are useful for something, but I had never needed to use them. To understand them, I first had to dive into the Javadoc a bit, more specifically the java.util.regex package.

Getting Started with Clojure Development I: The REPL

This is the first post of one my ongoing attempt to write a series of blog posts about how to get started with development in Clojure. This post will cover a beginner's first encounter with the Clojure Read Eval Print Loop.

Executors in Clojure

Java has a very useful package called java.util.concurrent, which contains classes and interfaces for tasks, task execution tracking, thread-to-thread communication with blocking queues, locks, semaphores, atomic containers and the Executors Framework. This blog post will walk you through the concepts of the Executors Framework as seen from Clojure.