Archive for September, 2006

what a waste

September 12th, 2006

I guess it was Ash's entry that gave me this impulse to sort of wrap up this issue in my mind, as I'm done thinking about it.

So I moved to Utrecht in February and I was a little anxious about how I would handle this socially (with good reason, not one of my strengths). One of the first people I met, in an introductory class to the Dutch language, was this girl Zoe. In a situation like this, arriving in a new place, starting everything from scratch, there's a lot of people to meet and greet. But there was something special about Zoe, it was as if we spoke 'the same language'. So often with people I meet, there's a language barrier, there's accents to deal with, a difference of background, culture, expectations etc. It's not that easy to understand where the person is coming from. And indeed this is the reason why I've never had a lot of real life friends, I just don't meet a lot of people who 'get me' and whom I 'get'. Coming to this new place, it was a concern for me to make friends and I wanted to make the best out of it.

Curiously, there seemed to be somewhat of an understanding between us on this point, she seemed pretty keen on staying in touch with me too. This is pretty rare, so often people come at this from different angles, so often I either have to do most of the work myself, with the other person not seeming very interested, whereas sometimes it's the opposite - the other person wants to stay in touch, with me being fairly lukewarm at the idea. It's rare that a balance is found, especially when you're just getting to know the person, but this seemed to be one of those times. Seemed to anyway.

Just what a person really is thinking I'll never know, but I certainly thought she was being sincere when she seemed happy to see me and eager to talk. Why would someone fake that? Trouble is, we only got to talk during that language course, or just standing outside the building after it was over. I wanted to ask, but I'm awkward with these things, I try to make the transition as smooth as possible, just to naturally fit it into the conversation, and I was not succeeding at all. But before the "I should get going"s were exchanged, she finished my thought "so maybe you can give me your email address and we'll get together sometime?". I don't recall the exact words exchanged.

Lesson number one. Never give your email to someone and expect them to do something with it. The vast majority of people (I've had a chance to establish this fact over the years), even with the best intentions, will never use your email for anything. And if you actually take down someone's email and send them a message, you are way above average.

So a week flew by, no nothing. I saw her again in class, she seemed pleased to see me, and apologetic for the email thing. Accidents happen, right? I won't bother hashing out the exact record of events, I don't even remember it to detail. But I didn't always see her in class, at some point I did get her email address off a list of student data being passed around by the teacher. I tried to set up something, anything, by email - she was always cheerful, but busy. I have to say I was a little attracted to her as well, but frankly making friends with her was far more important to me, I needed a friend in this town.

Eventually I got very fed up with the "I'm busy" responses, which always included some form of pseudo apology for my inconvenience. This went on for about a month. So my careful diplomacy was completely failing, and the fact that we seemed to get along well didn't seem to help at all. At this point, I was very frustrated. I hadn't met anyone else who would 'get me' and I really invested a lot of thought and intent into this potential friendship. There was nothing wrong with what was being said either, just that nothing was happening.

So my patience was about to run out. I finally lost it and said something as if to imply that I didn't believe she was actually that busy and that she was just humoring me. Wow, that was incredibly stupid. I was kicking myself for about 2 weeks for saying that. I can't believe I said that, but I was really frustrated.

Lesson number two. Whatever the person's story is, and whatever you believe or suspect the truth to be in relation to the story, never, ever, ever breathe a word of doubt over the story. What's on the record is like evidence in a trial, it's irrefutable. The only thing you can do is maneuver the person into admitting it themselves.

So I said that, and of course she was offended, saying she's doing this and she's doing that and she's really completely booked. I felt like such an idiot, I tried to say something by way of an apology, but I couldn't even convince myself that I could explain it or smooth it out. Basically, I had just shot myself in the foot and I was painfully (pun intended) aware of it.

So I tried to apologize and despite this screw up, she still seemed interested in 'how I was', which I thought was big of her. And that's pretty much where it ended. The language class ended, I never saw her again. I wanted to say something, I just didn't know what. I had basically tried every which way to do something with her, but I wasn't getting anywhere. And on top of that I was disgusted with myself for being so completely tactless.

It preyed on my mind for a long time. I thought about this case as my best opportunity to make a friend, possibly a very good one, and I had failed so spectacularly. It just wouldn't stop, I kept kicking myself for it and wishing something had been different. But eventually, I stopped. As I was coming back from vacation, I thought I would give it one last try. Time wipes the slate clean, right? So I sent an email just about the day I arrived, well over a week ago. And... nothing. I don't even know if she's in town anymore, but I'm done with this now. Aside from the little trip down memory lane that is this entry, which stirs up some momentary sadness over what happened, I'm at peace with this now.

one computer for every two students

September 12th, 2006

I keep hearing this mantra quite often, whenever the subject of computers in education comes up. I don't quite know what to think of it. Certainly when I was in school, there was no computer for every two students, we had very little to do with computers at all. And to me the computer wasn't associated with school either, it was always a home thing. Although there were computers in school, a few at least, they never seemed to be for anything. They never seemed to have a purpose.

I got into it pretty early, my school had a lab of Macs when I was 11-12 and we used to hang out there a lot. Aside from a handful of classes, it was a free for all after school event, so we could explore a lot. Obviously, computers then were not what they are today, we had some set of applications and that was all, no internet, no games brought in from home, nothing like that. But I think that was actually the most meaningful learning experience using computers, as we had actual classes where we used the machines for something. Like we made animations of the solar system at the time we discussed this in science class. And we used them to print up school projects and draw and so on.

But then we went off to junior high and there were no computer classes and there was no open, accessible computer lab. I remember taking a computer class as an elective, that involved sitting in a room full of 286 machines running DOS (unless you came in early and hogged the eight or so 486 machines that actually had Windows) and doing nothing at all on them except messing around. I learnt nothing from that class. Then in high school again there was one computer lab for the entire school and we had about 6 months of 'IT classes', using the wonderful Microsoft Works that they so gladly give away to everyone.

So coming from that background, I'm not sure if I understand why it is so important to have computers in schools. I did all my computer learning and playing at home. I was 12 when the first computer arrived in my house, and that's where the journey began. I suppose I expect computing to be something to do at home. But, this isn't an option to everyone, so the question to ask is, assuming that computers should be used in school, what exactly should they be used for?

Now, I think there is some consensus as to the claim that teaching does not inherently require computers at all. I mean, the vast majority of people my age finished school barely touching a computer in school and yet we did all the courses and covered all the material. And 50 years ago people did too. So the proposition of having computers in schools to me is not a necessity, it is an opportunity. If we can agree on that stance (at least in principle), then we can narrow the issue down to this: computers are necessary to develop computer literacy.

Having said that, what kind of literacy should be taught? Well, what does school aim to achieve? Is it a list of lofty aims formulated by "those who know better" that should never be changed? Or is it more of a pragmatic approach to educate people into being well situated citizens? I think there is evidence for both claims in practice, but certainly for the latter as well. How else could you explain physical education, are we actually learning anything there? No, for the most part it's just there to establish a habit of exercise. And cooking (did you have that in your school)? Those are not strictly academic subjects, they are very practically oriented. Similarly, is there a need to develop computer literacy as a practical skill (yes, Windows, Office, email, exactly that)? I think in today's world, the answer is definitely yes, because this is a skill that everyone is expected to have, regardless of background, education, job, anything. And if this is meant to happen in school, it will come at the cost of other things. Which, like balancing the national budget, will be a controversial issue.

But the question that is really on my mind is where to draw the line. What is the minimum set of skills that every kid should have to learn? Well, there won't be too much debate over the most basic skills, like writing documents and googling. But is that enough? If we are to assume that every computer user is in fact a computer owner, suddenly it becomes necessary for people to know how to admin their own systems. Because you have to install software, bugfix broken drivers, deal with viruses and so on. I have spent some time lately trying to establish whether this scope of knowledge that is required to admin your own desktop can be reduced with open software, by looking at the newest Linux offerings, and the answer is no. On Ubuntu, your gnome session will crash at some point and all you have is the terminal, what are you going to do then? At least with Windows for now there is a network of people that you know who can help you, someone will probably know what to do. On Linux, if there is a problem (and there are problems all the time), you may have noone to turn to. There is more to learn with Linux, not less. But since that is a subjective assessment, I'll be content to say that Windows and Linux are equally complicated for the home user at this point.

So coming back to the issue of teaching, what kind of computer literacy should be taught? Is it reasonable to assume that every computer user will only need to be a user and that their system will be administered by someone else and so they won't have to know any of this? This is the situation today, lots of people know how to use their computer for everything they need to do, but it keeps crashing, it gets infested with viruses and spyware, it keeps getting slower and they generally hate it, because they don't feel empowered. The computer is a necessary evil.

On the other hand, subjects like computer science, programming, web development, graphics design etc. are probably things that should only ever be electives. Certainly offer them, but never make them compulsory.

Computer literacy projects based on free software have received a lot of press recently - gnuLinEx is creating wealth in Extremadura, the Brazilian government has invested into leveraging free software on a large scale (including education), there are also initiatives underway in South Africa and India (no references, sorry). Finally, in the scheme that promises to make the greatest difference in one single project, the OLPC, which is offered to basically every government that is interested.

When I hear about these initiatives, it makes me think about what kind of computer literacy is being taught, and what should be taught. This is obviously location specific, all these projects decide for themselves what is relevant in their area. Back in Europe, I ask the question, but I don't have the answer. Computer literacy in schools is on the uptake, but is it spreading fast enough? Are the right things being taught? Is it getting enough attention or maybe it is getting too much attention? I don't expect to learn the answer, because only a student or a teacher at that certain school would know how well this is working for them. For instance, back in Norway, I know that Skolelinux is being deployed across lots of schools and this is a very good thing, because it is introducing kids to open standards and free software. But what are they accomplishing with these machines? And how capable will these people be when they graduate, in terms of skills and problem solving?

Even when we don't know the answers to these questions and don't expect to (for some time), I think we should be talking about it and thinking about it.

catering to consumers

September 11th, 2006

So I finally got my internet account with ABN Amro activated. I set this whole thing up in February when I opened my account, but for reasons unknown the package "went missing" in the mail. This is exactly the kind of thing one should take care, even if there is no immediate need for it. Without an internet banking account, if I want to make a transfer I have to go to the bank, which is not an option. Certainly not after using internet banking for years.

So I went over there to complain and the guy opens with "what can I do for you". I like how friendly they are. Then I tell him all about it and he says "your account was not registered for internet banking". Right, so wtf was the guy telling me when I opened it? The exact opposite.

Well anyway, I get the package and it looks like a dvd. I open the box, there's a little calculator (an electronic device that looks like a calculator and does some hardware-based number crunching specifically for the purpose of logging you into your account) inside. Albeit with a twist, it has a slot for your bank card (like those Game Boys). So I try to log in with this thing. On the website, I have to enter my account number and card number. Then I get a code. I slide my bank card into the calculator, type in the pin, then enter the code I just got off the website. It gives me another code that I have to enter into the website again. Jeez, what an ordeal just to log in. First the two numbers, both printed on my card. Then the pin to my card, and the newly-generated code from the website. Then the code from the calculator. All in all that's 5 different codes I have to handle in one transaction.

But what is an example without a counter example. The Swedish bank Skandiabanken is doing very well on the Norwegian market for reasons I won't expound upon (basically they have cut the number of different charges to the bone, for most things they don't charge you anything, and they have a decent interest rate). When I log into Skandiabanken, all I need is my social security code and a pin code. That's it. I don't need my bank card on hand, I don't need a special 'calculator' or anything else. But, there is a setup cost. The first time you log in, you need to create a user certificate. The bank website has a wizard that guides you through the steps. They will send you a one-time security code per post (or sms), which you have to input as part of the process. So if you register your phone number on their site, they can send you the code by sms, which takes 5 minutes. That means for every new computer you want to access your bank account from, there's a setup cost of about 10 minutes. And then once you've done it once (it's good for a year), you just log in with the social security code and a pin code.

Now tell me that isn't simpler and quicker than ABN Amro's system. Notice I'm not doing a secutity audit of the two methods, I'm just comparing how user friendly they are.

geek events

September 10th, 2006

Over the years I've been reading the Gentoo newsletters and there have been quite a lot of events happening all over the place (especially in Germany), although I was always far away from it all geographically. But now that I start from Holland, I can make the trip without as much of a hassle. I looked around the web and I found these events of interest in the upcoming year:

That is a lot to choose from, I never knew there were so many. I've already registered for the NLUUG event next week. I was meant to visit FOSDEM this year, but I missed it, so I'd like to go next year. Then there's CeBIT, always wanted to go to that. And since the LinuxWorld Expo is in Utrecht, I have no excuse to miss it. :D

So that, I think, is the plan for this year. As for the other events, maybe in the future sometime. One thing for certain, it sure is practical to live in Holland rather than the high north in terms of geek events. :D

If you want to put together your own agenda, most of these events are listed on Wikipedia.

find sizes of installed packages

September 9th, 2006

Sometimes, especially when disk space is low (or when system backups grow unreasonably large), it's nice to know exactly how much space the biggest packages occupy. Obviously, OpenOffice is never above suspicion, but certain others can take up way more space than you would think.

I wrote a little script to print the size of all packages installed on the system. It uses the CONTENTS file for every installed ebuild to check the size of the files which belong to a package and give a sorted listing of packages by size.

#!/usr/bin/env python
#
# Author: Martin Matusiak <numerodix@gmail.com>
# Licensed under the GNU Public License, version 2.
#
# revision 1 - bugfix for paludis symlink in pkgdb

pkgdb = "/var/db/pkg"


import os, string, stat
from operator import itemgetter

sizes = {}

cats = os.listdir(pkgdb)
for c in cats:
	cpath = os.path.join(pkgdb, c)
	if os.path.isdir(cpath):
		cat = os.listdir(cpath)
		for p in cat:
			size = 0
			
			cont = os.path.join(pkgdb, c, p, "CONTENTS")
			fd = open(cont, 'r')
			
			strings = fd.readlines()
			for s in strings:
				line = string.split(s, " ")
				if line[0] == "obj" and os.path.exists(line[1]):
					size += os.path.getsize(line[1])
			
			fd.close()
			
			sizes[os.path.join(c, p)] = size

pkglist = sorted(sizes.items(), key=itemgetter(1))

for i in pkglist:
	(size, pkg) = ( str(i[1]), i[0] )
	print string.rjust(size, 11), " ", pkg

The output looks like this:

          0   virtual/x11-7.0-r2
         66   kde-base/kde-env-3-r4
        393   kde-base/kdebase-pam-6
        889   sys-apps/coldplug-20040920-r1
...
      94217   net-ftp/ftp-0.17-r6
      94642   kde-base/kcminit-3.5.3
      95629   sys-process/psmisc-22.2
      95931   sys-apps/ivman-0.6.12
      97358   app-admin/gnomesu-0.3.1
...
  122593614   dev-java/sun-jdk-1.5.0.08
  132864794   dev-lang/ghc-6.4.2
  145477793   app-text/tetex-2.0.2-r8
  221943002   sys-kernel/gentoo-sources-2.6.17-r7
  340336824   app-office/openoffice-bin-2.0.3

Unsurprisingly, OpenOffice claims victory, but this is a small reminder about how big kernel sources are. Tetex and GHC aren't minimalistic either.

UPDATE: Paludis bug fixed.