me found a new home

Tumblr rocks in a sense, but rocks not in another sense. The worst rocks not of it is uptime (via), and 2nd worst is performance, among other things.

I’m getting away, setting up home on Posterous.

[update] After trying to like it for a few months, I am liking it too much. Although I haven’t experienced any downtime, it’s much slower than tumblr. Damn! I don’t wanna end up at Wordpress (which seems the richest blogging community, having a ridiculous number of plugins), so I might wind up maintaining my a fork of blogging software on Google App Engine. Just needs time to allow me to learn these web technologies.

I have yet to find a decent theme.

Sadly he didn’t state what sorta theme he’s looking for. As for me, the best-looking theme I’ve so far seen on Tumblr is Optimus.

Sadly it lacks features that Solstice (my old favourite) has:

  • Analytics integration
  • Disqus integration
  • no Pages

It’s such a time-consuming task to check a variety, to see what one likes. I never had this problem back in my old Blogger days, because there, the choice is limited purely by the look of the theme, but here, different themes have different features.

I nearly forgot to mention why I want to move away from Solstice:

  • the visitor must to see each post’s tag next to it; In case of Solstice, user has to open an individual post to see them
  • bad code tag formatting (and so does Optimus BTW)
  • date of publishing date doesn’t show, unless you hover on it

[update] I will be settling now for Brutal Simplicity for the fact that it has all of Solstice’s strengths, and none of its weaknesses, other than bad code tag formatting (I’ve asked for help).

BTW, in all my fiddling, I haven’t found one theme that allows to display my tags on the sideplane.

attachment can lead to irrational behaviour

Mule ESB is an enterprise tool that we use at work, and deploy of our client’s systems. It’s distributed with with a lot of jar files, supposedly for the convenience of users. When we work on a project, we just add all those jars to the classpath (we use Eclipse, an excessively powerful and ugly IDE). Now me, being a sucker for the Debian way of doing things, I’d install packages providing all those jars from a Debian repository, then remove those files, then add symlinks in place of them pointing back to the actualy files. imagine how much time it took! Either that, or even easier (but still time-consuming), skip the symlink thing entirely and just add those jars (found in /usr/share/java directory) directly.

Beyond just wasting time, the are other potential problems with my approach:

  • Debian’s jar versions did tend to be different to Mule-supplied versions. You can imagine what problems this can cause, especially because the versions included there are most likely the ones used for testing Mule.
  • Even if the versions were the same, what if there slight changes from Debian’s side. Debian’s strict software guidelines implies that they’ll strip out some stuff that doesn’t adhere. The good thing is that Debian appends ‘dfsg’ to the version number, but not everybody knows that. And even if they did, they now need to spend time looking exactly what changed.
  • Debian doesn’t merely re-distribute the jar files. They actually rebuild them, with Debian-supplied compilers. Maybe this isn’t an issue for Java projects, but who knows.

This is not to knock the Debian way of doing things. It’s actually quite excellent (hence my love), but it can’t fit all scenarios. See Matt Zimmerman’s excellent post, where he touches on this issue.

I did wise up a bit by simply doing things the way Mule intended.

blog of note: “We’ll See” (Matt Zimmerman)

I’m a regular reader of Planet Debian, so I frequently bump onto Matt Zimmerman’s blog. This a Debian Developer who also happens to do paid work on Ubuntu as well (employed by Canonical). He writes clearly and with a sober and mature tone. It’s very interesting when you see a software developer conversant with non-technical stuff, and able to write about it so well.

  • I started with one post with an obviously interesting title, “How to decide what to read (and what not to read)?”. This piqued my interest also because I’ve been thinking about my own activities on the web too. Also, his mention of News closely match mine, other than that I’m simply (mostly) not interested in traditional big news (presidents approves blah) and tabloids, and normally get enough of a dose from co-workers, friends, … mostly face-to-face.
  • This led to another, “Breadth and depth”, in which he touches on the social effects of out web-enabled technology. This is a topic that has been beaten to death of course, but he fortunately keeps his contribution very brief and fresh, and I like that he doesn’t claim to offer any solutions, but merely exploring them.
  • And there was “Internet discussion trends: from Usenet to micro-blogs”, where he discussed various ways forms of on-line discussion, which is the first topic of its type I’ve seen yet.
  • He even dabbled with a bit of poetry in “Breathing information”. Nice attempt.
  • He also displays an insightful understanding of what package management in “We’ve packaged all of the free software…what now?”.

There’s a whole bunch of gorgeous-sounding posts that I didn’t care to read yet, and hope to keep the above list updated when I do.

great customer service

So these guys at BMW Bavarian East Pretoria, a motorbike dealership, got me impressed with their great customer service. The standard procedure is to lend customers a bike for a few hours to use during the day, which normally happens when one takes the bike in for service. My F650CS was giving me some trouble which actually perplexed them for more than those few hours… a few weeks actually.

So why do they rock so hard:

  • I wasn’t charged charged for the extra (perhaps dozens) hours of labour.
  • I was lent a bike (actually 3, since the troubleshooting went for so long that they needed to sell 2 of those bikes in meanwhile).
  • Not sure if I should call this negligence, but there seems to be some deep trust these guys have for their customers, because no one cared to check if I could ride the variety of bikes they lent me. That’s gorgeous, especially considering that one the bikes they lent me was the superhot BMW F800S.

This sort of customer care, I never experienced anywhere. Have you seen better?

project of the moment: Debian Installer

I’ve recently looked at Ubuntu’s 10.04 and 10.10 installers, and they are quite nifty tools, so fresh and gorgeous, and so easy to use that nobody would dare say “I can’t install Linux!”. And then I recently re-installed my Debian system and I don’t really see how much harder it is to use than Ubuntu’s (except that it’s far uglier, so I guess that also makes it intimidating). So, just give it a try.

But the reason I’m naming this project of the moment is my reading of an excellent interview of Colin Watson, who did great work on that project, and had this to say about it:

d-i [Debian Installer] is the very first thing many of our users see, and has a huge range of uses, from simple desktop installs to massive corporate deployments; it’s unspeakably important that it works well, and it’s a testament to its design that it’s been able to trundle along without actually very much serious refactoring for the best part of five years now.

[index] project of the moment

best of the web

content

atheism: Common Sense Atheism (praise)
atheist writing: Pharyngula (praise)
software development: Stack Overflow (praise)
software development writing: Paul Graham
HTML5: diveintohtml5 (praise1, praise2)

presentation

blog: about:cmlenz
website: Stack Exchange sites (praise)

how to access Oracle DB using Python in Debian

I use Squeeze, the version of Debian currently in development, soon to be declared stable by the Debian release team. The instructions here are very specific, so look elsewhere for something more generic guide.

downloads:

  • Get registered on Oracle website, and download oracle-instantclient11.2-basic*.rpm (~40MB).
  • Get cx-Oracle rpm for your specific Python version and your specific processor (in my case, 3.1 and i386 respectively).

installation and setup:

sudo apt-get install libpython3.1 libaio1 alien
sudo alien --install oracle-instantclient11.2-basic*rpm cx_Oracle*rpm
sudo ln -s /usr/lib/python3.1/site-packages/cx_Oracle.so /usr/lib/python3.1/lib-dynload
sudo ln -s /usr/lib/oracle/11.2/client/lib/libnnz11.so /usr/lib
sudo ln -s /usr/lib/oracle/11.2/client/lib/libclntsh.so.11.1 /usr/lib
echo export LD_LIBRARY_PATH=/usr/lib/oracle/11.2/client/lib >> ~/.bashrc
source ~/.bashrc
python3 -c 'import cx_Oracle'


If that last line executes without printing a message to the screen, the install is most likely successful.

Every person joining us is expected to evolve through the different stages: from employee to pre-partner and finally to partner, a co-owner of the company. — Just one of the things that make Igalia a very attractive employer. Gorgeous.

it’s less work building from a VCS than from a tarball

tarball:

  1. find the website
  2. find download link
  3. download the tarball
  4. navigate to the tarball (using a GUI file browser)
  5. extract the tarball (using a GUI extractor)
  6. navigate to the extracted directory (using the shell)
  7. and finally… $ ./configure && make && sudo make install

VCS:

  1. find the website
  2. find clone link
  3. clone the repository
  4. navigate to the cloned directory (using the shell)
  5. and finally… $ ./configure && make && sudo make install

So, that’s 2 extra steps for going the tarball way.

[sidenote] Other issues (specialised build systems, risks, …) are beyond the scope of this blog post.

developer of the moment: Neil Williams

For some years now, Neil Williams has been working on Emdebian (embedded Debian). It’s a Debian sub-project where normal Debian packages are stripped of certain things like documentation and translations, making it more suitable for space-constrained embedded devices. He’s now started a series of posts explaining how it works… and it seems an elegant system actually.

[index] developer of the moment

where I live on the web

I spend so much of my time online, and these are among the things I follow:

planets: Debian, GNOME, Python
blogs: Common Sense Atheism, Stack Overflow
Debian: devel, release, vote
GNOME: Tracker, GTK+ development, desktop development
Stack Exchange sites: Stack Overflow, Unix & Linux, Ask Ubuntu

recent movies

each movie in this installment of recent movies is very good, at the very least; I don’t remember this happening before

There are 2 main stories in Sophie’s Choice, one a fun-filled/stormy relationship between 3 people, and the other, a horrid tale of the title character’s experiences in a Nazi concentration camp. Both are well-made, and Kevin Kline’s performance is amazing, and Meryl Streep’s, even better. Did I mention that the Nazi section is a great contender for the best ever portrayal of that part of human history It’s intense as hell, and Meryl Streep is so fuckin’ amazing as the victim.

The Job is superly-made but falls apart beyond halfway through, as if the writer didn’t know where to run with the script. The lead character is quite admirable, the romance wonderful, and the performance of the immensely ugly Ron Perlman very memorable, as the guy from out-of-town.

The Social Network is a fun ride, and is like nothing ever done before it, but I find calling it a masterpiece a lot more than it deserves. Sure it was made by the best director ever, it has the supercool Justin Timberlake, has a superb lead, and has decent acting, but that’s not enough to have name it the most critically-acclaimed movie of 2010.

I didn’t think much of Invictus, and watching it was just a matter of curiosity, so I was quite surprised by its quality, and by the time the final credits sequence rolled, I thought “No wonder the movie is so good! The director is Clint Eastwood for God’s sake!”. More important than that is a look at Mandela’s character, it was fresh insight, and Morgan Freeman does do a good job. How accurate all this is is another issue though, but this is one of the best movies based in South Africa. It’s production design reminds me of a Cry Freedom (about another key South African politician), as if it’s some sort of tradition.

Malcolm X, which I considered a masterpiece for years (after a mere one viewing), was far less impressive on a revisit. It’s not boring, but there’s hardly much going for it, and none of the performances are any good (they are are below average, all but Denzel Washington; Angela Basset is desirable but also cardboard), the camerawork and production design not ok, the story standard, and the whole thing overlong. It’s remains an interesting exploration of the kind of shit people tend to be so ready to believe (and die for).