When I’m at my desk I use an external LCD monitor with my netbook. I’m glad that switching displays finally works on Linux, but even on Ubuntu it takes a lot of clicks in the Monitors menu. Fortunately, I found a way to map this to keyboard shortcuts.
Switching Displays via Keyboard Shortcuts
Posted September 1, 2010 by mafrCategories: linux
Tags: linux, tools
Software Developers: You Need Computer Science Education!
Posted August 18, 2010 by mafrCategories: misc
Tags: computer science, opinion
Computer science and software development are two entirely different things. The former is a science, the latter is mostly craftsmanship, still struggling to become an engineering discipline in its own right. Being a good computer scientist doesn’t make you a good software developer and vice versa, but as a software developer, you have to know your computer science basics if you want to succeed.
A Maven Archetype for Hadoop Jobs
Posted August 1, 2010 by mafrCategories: java
Tags: build systems, java, maven, tools
In my last article I showed how to build a Hadoop job that contains all its dependencies. To make things even easier, I created a Maven archetype that turns project setup into a simple 30 second process.
Maven: Building a Self-Contained Hadoop Job
Posted July 24, 2010 by mafrCategories: java
Tags: build systems, deployment, java, maven
Non-trivial Hadoop jobs usually have dependencies that go beyond those provided by the Hadoop runtime environment. That means, if your job needs additional libraries you have to make sure they are on Hadoop’s classpath as soon as the job is executed. This article shows how you can build a self-contained job JAR that contains all your dependencies.
Berlin Buzzwords Conference 2010
Posted June 9, 2010 by mafrCategories: misc
Tags: databases, distributed systems, opinion, server
This week I attended Berlin Buzzwords Conference 2010, a two-day event aimed at software developers. The conference offered two tracks, one on search and the other one on NoSQL systems. Typical attendees seemed to be MacBook-wielding, twittering lifestyle geeks, often with SQL-induced childhood issues. The hype level was high – a bit too high for my taste – but given the conference’s title that was to be expected.
Quick Tip #4: Sorting Large Files
Posted May 23, 2010 by mafrCategories: shell
Tags: linux, quick tips, scripting, shell, tools
With traditional Unix sort(1), the size of the files you can sort is limited by the amount of available main memory. As soon the file get larger and your system has to swap, performance degrades significantly. Even GNU sort which uses temporary files to get around this limitation doesn’t sort in parallel. The only viable option for sorting very large files efficiently is to split them, sort the individual parts in parallel and merge them.
Are Link-Sharing Services Irrelevant?
Posted April 25, 2010 by mafrCategories: misc
Tags: computer science, opinion, web
You can use RSS to easily follow a few high-profile websites and link sharing services like Slashdot or Digg to discover popular web content. But that’s like reading a classic newspaper and some magazines: The information provided may have a higher chance of being relevant to you, but there’s still a lot of noise that wastes your time.
In this article, I’ll discuss the shortcomings of link sharing services using Dzone as an example. Dzone is a relatively small-scale service targeted at software developers and one of my most important sources of information.
Using TCP for Low-Latency Applications
Posted March 14, 2010 by mafrCategories: misc
Tags: distributed systems, linux, networking, server
Last week I ran into a nasty little problem while implementing an application with soft real-time requirements. I was aiming at 1 ms or less for a TCP-based request-response roundtrip on a local network. Should be trivial, but why did my tests indicate that I wasn’t even getting close?