Much of the content in this blog is pretty old (10y+) and likely outdated, either because the world has moved on or because I would approach things differently today. I’m still keeping the articles around because why not… Maybe someone will find something useful in here.
Blog
Strato V-Server/Virtuozzo: Memory usage
This blog runs on a virtual server offered by Strato. They use Virtuozzo for virtualization which has a drawback: If you use top, free or other tools to show the current memory usage, not only your “slice” of the machine but more (all?) of the memory is measured. This doesn’t help much if you try to find out how much of it your own processes use, which is important as you can use only a certain part of the machine’s memory.
Blog
Kundenfreundlichkeit vs. Shareholder Value
Gunter Dueck ist Mathematikprofessor und arbeitet als “Distinguished Engineer” bei IBM. Er veröffentlicht regelmäßig (aber nicht täglich…) seine Kolumne “Daily Dueck”, in der er über Wirtschaft und Arbeitsleben philosophiert. Heute schreibt er über “Kunde und Überkunde”. Sehr lesenswert!
Blog
Caching using weak references
Some time ago I wrote a Java class that caches generated images so I don’t need to re-render them all the time (rendering SVG graphics takes some time…). There’s only one problem: As more and more different images are getting cached, the maximum heap space of the JVM will eventually get exhausted. Increasing this limit is not an option. This can be “fixed” by using a queue for the images: If it is full, the first image cached will get discarded so the memory usage will be limited.
Blog
Show me the bill!
I share a flat with two other students. When someone bought something we all (or two of us) will benefit from like food or household articles, we don’t split up the price immediately. Instead, we put it on a (paper-based) list. When this list is full, someone (me…) needs to do the math and figure out who needs to pay how much money to whom. This is where computer science comes in handy ;-) So I finally wrote a small program which takes such a list and prints something like “A needs to pay B 23.
Blog
Writing iCal data to phone calendar using gammu
Normally, I use a paper-based calendar to write down dates of appointments. Since such a calendar isn’t able to notify me about upcoming events, I wanted to use the reminder feature which is built into the calendar of my mobile phone (Nokia 6030).
Because I really hate typing on the phone keyboard, the calendar data needs to be sent to the phone using my computer. I already configured gammu some time ago to connect to my phone.
Blog
Dynamic Host Configuration Protocol
Here comes the third and last communication networks article. This time, I wrote about DHCPv4:
Dynamic Host Configuration Protocol The Dynamic Host Configuration Protocol (DHCP) provides means for automatic network configuration of networked stations. It was designed to unify and extend other protocols such as the Bootstrap Protocol (BOOTP), the Reverse Address Resolution Protocol (RARP) and the ICMP “mask” and “information” requests. DHCP uses a client/server model, its packets are sent using UDP.
Blog
Internet Control Message Protocol
Here comes another article I wrote for the “Communication Networks I” bonus system:
Internet Control Message Protocol The Internet Control Message Protocol (ICMP) is used to communicate error and management messages between IP peers. ICMP data is transported in IP packages (protocol = 1), but because it is an integral part of IP, it is classified as a member of layer 3.
Structure of an ICMP packet Each ICMP message is categorized by a type and a code (-> links section).
Blog
GNOME "Places" menu: Adding and deleting bookmarks
If you look in the “Places” menu of the GNOME panel or the “Places” view in open/close dialogs or in the file manager, you will see a list of folders. It often includes some local folders and - in addition - the remote locations you connected to via the “Connect to server” functionality.
These entries are saved in your home directory in the file .gtk-bookmarks. It is built using a simple scheme: Each line consists of a target URL and a label to display, separated by a blank.
Blog
Line codes for digital transmissions
I recently wrote a short article about line codes for digital transmissions. I wrote it to gain a bonus for the exam in “Communication Networks 1”, but I think it might be interesting for you, too.
Coding Techniques If two stations want to transfer data over a physical medium, they need to transform the logical data stream into some physical form (and vice versa) in order to be transmitted. Although there also exist means to transmit analog data like simple amplitude or frequency modulation (AM, FM), I will concentrate on techniques for transmitting digital data using a medium which offers multiple (two or more) voltage levels.
Blog
One computer - two workstations
If you run Linux, need multiple workstations but only have one computer with at least one graphics adapter, you could build a multi headed workstation. Don’t expect high speed graphics, because almost certainly there will be no graphics acceleration in your final “Hydra” system as it is called by some people.
What you need:
a graphics adapter with two outputs, able to work in the mode called “extended screen” (I used an Intel onboard video card, G33) two monitors, two mouses and two keyboards, of course recent versions of Xorg and Xephyr (I tried Ubuntu 8.
Blog
Debian: Which package contains the file I'm looking for?
Problem: On a Debian based system (i.e. Ubuntu), I want to find the package containing a specific file I am looking for. Let’s call this file stmaryrd.sty.
Solution:
sudo aptitude install apt-file sudo apt-file update apt-file search stmaryrd.sty Output: texlive-math-extra
Blog
Backup mit rdiff-backup
Um die Daten meines Linux-Notebooks regelmäßig zu sichern verwende ich rdiff-backup. Dabei handelt es sich um ein Kommandozeilenprogramm, das auf reverse diffs basiert. Dabei liegt nach jedem Backup-Durchgang die neueste Version der Datei im Backup-Verzeichnis. Zudem werden die Änderungen zu beliebig vielen vorherigen Versionen gespeichert, so dass alte Versionen problemlos wiederhergestellt werden können.
rdiff-backup funktioniert auch über das Netz (SSH und weitere Methoden), ich nutze es jedoch nur lokal mit einer für Backups reservierten externen Festplatte.