Shallow and Pedantic

Multiple library versions

Working with vendor code in C can get very tricky, especially when you except breaking changes to occur. Especially when you have multiple binaries depending on that vendor code, updating at different times, necessitating different live versions. Let’s explore. Introduction Assume you’re working with an external vendor, who is providing you with code for a wonderful function getFoo: 1 2 3 4 5 6 7 8 9 10 // foo.

Reading, writing and vacations

Vacations are a great time for doing that problematic category of things every management course teaches you about: important, but not urgent. For some people, it’s housework or schoolwork which gets drowned out by day-to-day life. For others it’s keeping up with friends and family. Myself, I also like to read and write. Writing, for me, is usually about practical stuff. Sometimes it’s simply code (most of those projects were written on vacations).


As part of my M.Sc. studies, I’ve recently completed a small laboratory project in natural language processing. I’ve learned quite a bit from it, and had a chance to use a few of my favorite technologies. The project was coded in Python, which is not my favorite programming language - Ruby is. However, since Python is more popular at my workplace, and seems to have a richer ecosystem around it (sometimes, at any rate), I’ve grown to love it almost as much over the years.

The show downloading stack - part n+1

I’ve already mentioned my show downloading stack on this blog. It’s changed a bit since - I now use Transmission rather than rtorrent, as it has the excellent transmission-daemon package which has it acting exactly the way I like (without using screen). Also, it now E-mails me when a torrent is done downloading. So while this may be how TV works for you: Notice that a new episode is out Torrent it Wait for the download to finish Watch it …this is how TV works for me now:

Developing TransportDroidIL for Android

Here are a few words on developing TransportDroidIL, a small utility to query Israeli public transportation sites more easily using an Android phone. Source control is super important. Mistakes will be made, other coders will want to join in, and experimental features will want to be in their own branches. Git is awesome; it does source control right, gives me powerful tools, and isn’t a hassle to set up - even for a small project like this.

Home network wiring

I don’t like wireless connections; they’re always second-best, be it in terms of security, speed, or reliability. Here’s how my apartment looks (very approximately):