My Favorite Little Doggy to Hate

doggysearch.pngThis is one great example of how to build things that almost work, but not quite.

There is no more annoying thing in Windows than to have to search for a file that contains a specific word, but you don’t know what file it is. The happy-go-lucky people will open the Windows File Search, with the cute little doggy, and type in a word such as “PRINTLIST” in the “word or phrase in file”, and then hit Search. And then, no files were found. Why?

Because of the things that the cute little doggy doesn’t tell you. It doesn’t, for instance, tell you that if you’re searching for anything else than text files or Microsoft documents, the doggy will silently ignore any request to find a word in that file. Which is why, for instance, the doggy refuses to search in any of our import scripts (*.imp) or ObjectBasic scripts (*.ob) for any identifiers. It does pretend to search there, though, which is why the doggy will just blink once or twice with its cute little eyes, and say “No documents found”.

Oh, sure, there are ways to get it to work. If you turn on the Indexing Service, beat it with a stick and force it to index files with unknown extensions, you can make it work. But the problem is that our scripts are located on a shared resource and I’d rather not index our 30-gigabyte file storage drive. All I want is a search program that will find a word in a file. Without previously indexing my entire Business Unit.

Another great thing about the doggy is that it insists on searching through zip archives, although I know that my file is not in a zip archive, and I’d rather turn the feature off because it takes forever to search in zip files (especially on our shared drives), but the doggy won’t let me. It’ll search all zip files found, dang it, because I need to and that’s the end of it! (Still without finding anything that’s actually in the zip file because it won’t search for anything with an “unknown extension”. Such as import scripts.)

Now, where did I put my 12-gauge…

- – -

One of the problems with Microsoft Windows is that it suffers from a flawed business model. Windows XP was shipped in October 2001, which means that for the last five years, we’ve had to suffer from the doggy and its inept searching capabilities. Whether we like it or not, the doggy symbolizes our frustration with Microsoft and Windows.

Open-source software have release cycles that are rather short. If there’s a problem in one version, it’ll usually be fixed before long, and you download the new version. This means that you are usually faced with bugs in one form or other, but you’re more mentally prepared for that because you know there’s a new release a few months from now that’ll fix it. This world is a release-early, release often kind of world. And should something go seriously wrong, you can throw it away and download something else.

Microsoft, on the other hand, opts for a monolithic approach: The doggy is built into the operating system in such a way that you can’t throw it away. If it doesn’t work, there’s no way to fix it: It works well enough for a majority of users not to complain. But in reality it’s hated; it’s inept; and it doesn’t work – and the only option is to wait another six years until Microsoft releases a new version of Windows.

How wonderful it would be, should Microsoft decide not to build everything into Windows! In that case, you could drag the little dysfunctional doggy behind the barn and shoot it, and install a new search function into Windows that did what you actually told it to do! But with the business model and release-cycle that Microsoft employs, that is not possible.

I believe that Microsoft has lost its agility. They’re becoming the big, monolithic software giant, much like IBM was to hardware in the 70′s and 80′s, that’s unresponsive, inflexible, and in danger of being crushed by its own weight. And thus the doggy, for all its well-thought intentions, has become the symbol of this software giant: It pretends to work, but it doesn’t, and no one can fix it.

Timesheets

I’ve always had a problem with time reporting. When it comes to the end of the month, I’ve found myself dreading that terrible moment when I’ve had to sit down and figure out what I have done during the past month. Sometimes I’ve even resorted to checking the emails I’ve sent during the month to figure out what project I worked on.

timesheet.pngMostly, I’ve kept a timesheet in Excel, or even written special software for it, to keep track of what I do. But it never works, largely because I’ve almost never had the discipline to open up that Excel sheet and fill it out at the end of the day. And with special software, you’ve got to keep track of it during actual work, so it measures the time on the right task. It always worked for a few days, then I forgot about it and then the time reporting was a mess again.

But now I’ve finally found the method.

I print a stack of paper sheets, one for each week, with a matrix layout. Like the tiny example on the left. I just simply fill it out during the day as I go along, writing down the task numbers and I switch between them. At the end of the week, I input everything into our time-reporting system with a 15-minute accuracy, day by day. Problem solved!

On the Proliferation of Languages

It’s getting a little international right now.

  • I’ve just listened to a webcast by the CEO of our business area, who is in Finland, who spoke in English, about the future of our operations and how we’re going to change it.
  • I’m busy reading specifications written by Germans, mostly in English – but sometimes in German – and referring to implementation details which are all in German (or Austrian).
  • Half of all my friends are Americans or other foreigners, so a large part of my emails and SMS’ing are now in English. When they call, I speak American English.
  • We have visitors here today from Latvia. And since a broad American accent may put off some people here in Europe, it is best to use a British accent when I talk to them.
  • I’m blogging in English, but chatting in Swedish.
  • I speak with my colleagues, of course, in Swedish. But everything inside the computer is English.

I just found myself writing an internal email all in English because I couldn’t remember what the word “considerations” is in Swedish.

3pm

3 o’clock in the afternoon: That peculiar time of day when you’ve already checked all the email you can possibly check, visited all of your regular websites, read the funnies, and have no other way of squandering your time but to actually sit up in your chair and try to focus your attention on the task you’re supposed to be doing, no matter how boring it is.

Maybe this is why most companies have coffee breaks at 3pm.