Log <-

Archive for the ‘libre software’ Category

RSS   RSS feed for this category

Templum v0.4.0 released (Simple PHP templating)

Tuesday, November 10th, 2009

I've released Templum v0.4.0

Templum is an extremely lightweight, simple yet powerful and fast templating engine for PHP. It re-uses the power of PHP itself for rendering templates, but provides additional features making it easier to write templating code. Rendering templates using Templum is very fast; it approximates native PHP rendering speed for include() statements.

This release features:

  • Some small bug fixes
  • Documentation updates
  • The ability to include other templates in a template

Download instructions here.

HIrcd – minimal IRC server in Python

Monday, September 14th, 2009

I wrote a little IRC server in Python:

HIrcd is a minimal, hacky implementation of an IRC server daemon written in Python in about 400 lines of code, including comments, etc.

It is mostly useful as a testing tool or perhaps for building something like a private proxy on. Do NOT use it in any kind of production code or anything that will ever be connected to by the public.

Direct link to the source code, for those interested.

Software Bashing

Thursday, September 3rd, 2009

We started a new site where we can vent our rage on all things sucky about software:

Software Bashing: We hate software. With a passion:

Fact: All software sucks. We're here to show you exactly why, and just how much it truly sucks. We don't discriminate against vendor or development model; all software sucks. We are relentless. We show no mercy. If the software exists, we will find its suckage, no matter how much it leverages synergetic business potential. Be prepared.

Hopefully we can reach some software authors and make them see the light. If not, at least I was able significantly reduce my blood pressure through the site.

Templum: Simple PHP Templating

Sunday, April 5th, 2009

At the company I work for (ZX), we needed a simple yet powerful templating language for PHP. I googled around a bit for something, but we couldn't really find anything. So I wrote Templum, and ZX was kind enough to allow me to release it as Open Source under the MIT License.

From the Templum homepage:

Templum is an extremely lightweight, simple yet powerful and fast templating engine for PHP. It re-uses the power of PHP itself for rendering templates, but provides additional features making it easier to write templating code. Rendering templates using Templum is very fast; it approximates native PHP rendering speed for include() statements.

You can install it using PEAR:

pear install http://templum.electricmonk.nl/releases/templum-0.1.0.tgz

For some examples, check the website.

MyQryReplayer

Sunday, March 29th, 2009

I've written a tool called MyQryReplayer:

MyQryReplayer is a tool which can read the MySQL query log and replay an entire session's worth of queries against a database (SELECT queries only by default). While doing so, it records the time each query took to run, and any queries that failed including their error messages. MyQryReplayer can be used to inspect query performance, and to check a log of queries against a database for possible errors (when upgrading to a new version of MySQL for example).

Get version 0.1 here.

Terminator – Splitting Terminal Emulator

Monday, January 12th, 2009

I use terminals a lot. Some years ago, there was a terminal emulator called Gnome-multi-terminal, which could be split horizontally and vertically, and thus giving optimum workspace usage when using many terminals. Gnome-multi-terminal wasn't being maintained anymore (or at least not regularly) and started displaying some buggy behaviour in newer versions of Debian and Ubuntu.

I've searched for a replacement for a long time, but was never able to find one. Now I finally have: Terminator.

Here's a screenshot:

.

Nice :)

Wednesday, October 29th, 2008

This is nice: I would just like to say….

pyBrainfuck v0.2 released

Monday, July 7th, 2008

I just released v0.2 of pyBrainfuck.

PyBrainfuck is a speed-optimized Brainfuck interpreter written in Python.

Some other Python interpreters already exists for Brainfuck, but they are either obfuscated or awfully slow. PyBrainfuck has been optimized for speed by doing various preprocessing on the code such as pre-caching loop instructions, removing non-instructions, etc. PyBrainfuck also has configurable memory size, infinite loop protection and a somewhat spartan debugger.

PyBrainfuck can be used both as a stand-alone Brainfuck interpreter or as a python library. It can read from standard input or from a string (in library mode) and write to standard out or to a string buffer (in library mode).

Changes in this release:

  • Improved exception throwing. Exceptions now include an error number.
  • A bug was fixed in the jump instruction pre-processor where it would sometimes scan beyond the end-of-line of the code.
  • A bug was fixed where a brainfuck program could increase the memory value beyond the byte boundary. It now wraps to 0 at 256 and to 255 at -1.

Update: Direct link to the interpreter code for those who are interested.

MiniOrganizer v0.1 released

Friday, June 27th, 2008

I just released the first version of MiniOrganizer.

MiniOrganizer is a small no-nonsense personal digital organizer written in GTK2, featuring appointments, todos and notes. It uses iCalendar files as its native back-end, supports multiple alarms per appointment/todo and has recursive todos.

MiniOrganizer currently features:

  • Appointments.
  • Hierarchical Todos.
  • Multiple alarms per appointment and todo.
  • Alarm notification.
  • (Gnome) Panel docking.

You can visit its homepage at http://miniorganizer.electricmonk.nl.

Remember that this is only v0.1 – the first released version – so it will contain some bugs and other problems. Any feedback is greatly appreciated.

Transmission 1.x on Ubuntu 7.10

Sunday, February 17th, 2008

For some reason Ubuntu 7.10 has an ancient version of Transmission. Version 0.74 or somesuch. Unfortunately, that version of Transmission contained some bugs so it's blocked by certain bittorrent trackers. In order to install a more recent version:

You can download a more recent version from the gutsy backports package pool.

  • Uninstall transmission:
    sudo aptitude purge transmission transmission-gtk
  • Download transmission-common 1.04
  • Download transmission-gtk 1.04
  • Install the packages:
    sudo dpkg -i "transmission-common_1.04-0ubuntu1~gutsy1_all.deb"
    sudo dpkg -i "transmission-gtk_1.04-0ubuntu1~gutsy1_i386.deb"

And you'll have a more recent version of Transmission.