Skip to content

zpu - ZenPhoto file upload utility

Dreamhost now provide ZenPhoto, an online image gallery software, as a one click install application, as the ZenPhoto developers proudly announce. I decided to give it a try to host my personal pics, and I definitely recommend it, the most outstanding feature being its unbloatedness (see demo site). It’s just what it is supposed to be - “a simpler web photo gallery” as the official webpage of ZenPhoto states.

However, the one-click install at DreamHost suffers from a severe problem which is that they do not provide ftp/scp access to upload pictures. This means that uploading a huge photo album is *painfully* slow a process, since the only available option is to manually upload each file using HTML forms.

In my free time, I’ve created an application to upload pics there, as a way to exercise my python programming skills and as my first peek at PyGTK programming. In case you give it a try, the program requires the PyGTK and mechanize python modules be installed in the system. It has only been tested on my gentoo linux box. Should work on other linux distros and bsd, probably also for mac os. Will *not* work on Microsoft Windows as it is (contributions to this regard will be welcome).

An option to overcome the need for such a software utility is to install ZenPhoto normally (as opposed to using DreamHost’s one-click installation) and to upload the files using any scp client (e.g. WinSCP).

Disclaimer: this software is in ultra initial development state and may do horrible things to your albums. Software comes with no warranty. Please check the attached license terms.

Download zpu (ZenPhoto Uploader) version 0.1 here.

Please leave a comment here if you download it - whether successful or not.

My ourlooks.com experiment

In this post I’m presenting a site that I developed in my free time. It served me to put my PHP skills into work, and to kill some free time while I was working abroad (free time which, sadly, I don’t have anymore).

I had the idea of building ourlooks.com after watching this thought-provoking talk by Luis von Ahn, where he explains some of his research activities. The basic idea behind the talk is: we can automate tasks which computers can’t nowadays solve by making humans work for us. And humans will work, and they will do it for free, as long as they have an incentive to do so. More interestingly, this incentive is having fun. So, von Ahn has built several games that people seem to enjoy - and while playing, they solve interesting problems, such as recognizing the objects inside an image or collecting general knowledge (e.g., bananas are yellow and cars have four wheels).

I thought about other ways this idea could be applied, and this is how ourlooks.com was conceived. One thing that computers can’t do is to tell you how you look, especially in terms of how other people perceive your personal image. So I decided to create a game that, while being played, served to rank people in categories such as looking pretty, trustworthy, and others.This initial idea is what later on derived into what ourlooks.com is today.

(Continued)

Akismet saves the day

Some days ago in this blog entry I explained that a spammer was filling another entry with spam comments. It was the first spambot to target this blog, and I blocked it with an IP address filter. Both Brainstorm and Marc Pous suggested, after reading the blog entry, that I should install Akismet instead of blocking individual IP addresses, which is an approach that takes way too much time. Akismet (automatically) analyzes every comment that is posted to akismet-enabled blogs, and can it prevents spam from being published. Instead, spam is isolated and the site admin can review it, just in case that it makes a mistake.

Akismet works very well for me. As of now, it has already blocked 192 comments in less than three days, and it has never had a single false positive (where it would have marked a legitimate comment as spam) or a false negative (failing to identify a spam comment as such).

For now all the spam I’ve been receiving is in form of links to online casinos. I guess the recent poker-related entries have attracted spambots to my site.

I’m very thankful to my friends for having pointed me to Akismet :)

Analyzing the Internet uplink of upc

In our research lab at UPC we’re working on network monitoring technologies (see http://loadshedding.ccaba.upc.edu). When publishing research papers in our area, it is important to test the results of the proposed techniques on links that are representative enough of the overall traffic of the Internet (or at least, to try to test the techniques under realistic load, as opposed to e.g. small LANs or synthetic traffic traces).

We are testing our techniques on an anonymized copy of the traffic that traverses the link that connects (at least part of) the Technical University of Catalonia (UPC) network to the Internet. This guarantees the privacy of the users but it still lets us observe the trends and main characteristics of the traffic (i.e. number of flows, packets per second, total bandwidth usage) .

To inspect the traffic we are using CoMo and appmon (a network monitoring tool produced in the LOBSTER European project). This application analyzes the input traffic stream and can identify several popular applications or protocols that use most of the bandwidth nowadays (p2p, http, smtp..). It outputs a per-application aggregate rrdtool graph plus a list of the addresses that are consuming the most resources (note that the IP addresses are anonymized).

My home poker kit

I have recently purchased some stuff at amazon to play poker at home:

300 chips copag cards

(Continued)

Obstinate spam bot hits this blog

During the last weekend around 100 comments were posted to this blog entry. It’s not that my blog has suddenly become superpopular. All comments consisted of links to online casino promotion pages and such, and it took me a long time to delete them all. When I was done, I realised that more similar comments had already been posted. This is how the spammer’s HTTP requests looked like in the apache logs:
(Continued)

L’autoescola del RACC canvia una molt bona aplicació web per un software amb llicència altament restrictiva

Estic apuntat al RACC per treure’m el carnet de cotxe. He recomanat a alguns amics meus que tampoc el tenen que s’apuntessin al RACC, i la raó principal era que fins ara posaven a la disposició dels estudiants una molt bona aplicació web. Aquesta aplicació permetia l’estudi des de qualsevol ordinador amb accés a Internet conservant l’històric de testos fets, preguntes fallades, etc. A més funcionava prou bé des de Firefox, amb la qual cosa també era adequada pels usuaris de linux o mac.

Fa cosa d’unes setmanes, però, l’accés a l’aplicatiu web va deixar de funcionar. (Continued)

embedding fonts to a PDF file from the command line and using free software

Let’s imagine you have to merge several PDF files that your colleagues sent you into a single, larger document. Let’s then imagine that your idea is to publish this document, but the publisher requires all fonts to be embedded in the document. Unfortunately, your PDF file does not have all the fonts embedded, as you can check with the following command:
(Continued)

libpcap: packet timestamps not increasing

As some of you may already know, one of my jobs is to maintain and develop for the CoMo network monitoring system. CoMo supports many input sniffers, such as bpf for FreeBSD systems, netflow, sflow, data from the network monitoring specialized DAG cards, and most notably libpcap.

In CoMo, every packet has a reception timestamp. How packets are stamped depends on the actual sniffer that receives the packet. For example, DAG cards have their own clocks to stamp each packet. In libpcap, it is the kernel (in my case, the linux kernel) that marks the packets according to the local time.

While developing for the upcoming CoMo 2.0 release, I added strict checks that packet stamps for each packet should monitonically increase - that is, no packet timestamp can be lower than the previous. I expected this to be a reasonable constraint to impose on sniffers. I was wrong: libpcap did in fact feed CoMo with what I believed to be unordered packets.

In order to confirm this issue, I wrote the following program:
(Continued)