blarg?

I bought a very nice new monitor, brought it home, plugged it in and was immediately reminded that I was using Linux.

I was reminded good and hard, too. Right in my reminder-hole.

People who say, as they have every year since 1997 to my personal recollection, that this is going to be the Year of the Linux Desktop where somehow Linux is going to break out and something something are invited to perform the following experiment:

  1. Plug a second monitor in, and
  2. Make it work.

I bet that some people in this world actually get to do stuff like that without having to hand-edit config files, tiptoe carefully around a wide swath of spectacular failure modes (up to and including physically damaging your hardware) and having to log out and in again to test any minor change you might make. I bet they don’t even need to know about how to boot into single-user mode when a seemingly-minor change makes your graphics card go completely insane. I bet they can just click on stuff and have it work.

Man, that must be great.

The heretic is burned; he is lashed his pyre by those who are told he is certainly wrong, on the orders of those who know the real threat, that he might be right.

Welcome to the internets. Your sign, let me show you it.

Maybe I’m just hanging out in the wrong circles here, but is every single marginal little improvement you can make in any corner of your life being called a “hack” now? Life
hacks, Sex hacks, Word hacks, Bicycle hacks, Travel hacking, astronomy hacks, book hacks, lawn mowing hacks, mind hacks, food hacks, sock hacks

It’s endless. These things used to be called hints, tips or rules of thumb, but it’s 2007 now and in these modern times baroque language like that doubles in awkward-outdatedness every eighteen months. I mean, good lord, a “hint”! It sounds like something that you’d actually have to say. As in “speak”. Out loud! As though there’d be somebody else in the room with you when you’re cooking or planning a trip. I’d wager people had to hold some sort of ornate, bakelite hearing-trumpet contrivance to their ear-canals to clearly discern these “tips”. And how many rules-of-thumb are there to the handspan?

It’s 2007 and here in the cutting-edginess of the future, the word is apparently “hacks”.

People, I need that to stop. For the same reasons that I need you to stop saying “zen” when the right word is “stupidity”. I don’t care about the serene smirk some random flash applet puts on your face; words mean things, and you’re doing it wrong.

We’re on the hard road to the future here. We need sharp minds working with sharp tools. Not this bullshit hipster-cred cargo-culting, or none of us will get into heaven when the rapture comes to upload after the singularity.

Repeate after me: it’s not a hack, you’re not a hacker, and just using the word won’t change anything. You might as well say that everyone in the world could be driving a Ferrari if we just changed the word for “car” to “Ferrari”. You might feel clever. And honestly, if you’re in dire need of advice on how to organize your fucking sock drawer, I can totally see how desperately you’d need any sort of ego boost at all.

There’s a million things you can do to make your life better, simpler, and happier. Keep your space clean. Be disciplined in your finances. Learn to cook. Make art. But the one I want you to do first is to stop calling things something they’re not just to make yourself sound cool.

…and my garage.

I’ll have pictures up later, but for now if you need to speak to me you should use my cell. I have no internets and no landline because a tree has fallen through my wires on the way to and through my garage. I’m poaching wireless right now, and it probably won’t last.

I’m insured, but still: God dammit.

Fuck you, tree.

Update: Pictures!
1,
2,
3,
4.

Update 2: My intertubes are back, and the tree is already cleared away. We seem to be back inside the bounds of civilization. Huzzah!

I’m sure that a few things I didn’t say have added to the melodrama, but for those friends who haven’t visited, my garage contains no car, and is not connected to my house proper – insurance is going to replace the whole thing. The only question right now is how much damage the stuff inside the garage has sustained (Bikes! Tools! My barbecue, and my beloved mitre saw!) but there’s just no way to get into that thing right now. And, bonus for when we get really serious about going in there, there was a full propane tank right behind the door the other night. Where is it now? Good question!

What could possibly go wrong?

My wife bought me one of these the other day. It’s the only Williams-Sonoma thing in the house, but I feel like I’ve crossed some invisible but forbidden line. I guess I’ve lost any plausible deniability I might have had on the question of whether I’m some kind of yuppie scum, but there’s no sense crying over a spilled low-fat half-caff soy latte, so let’s just press ahead.

My attempt to redeem myself consists of concocting a recipe for making really fantastic lemonade, which I will now pass on to you. It is, to my shame, a pretty handy little device for that.

You need:

  • One lemon
  • One lime
  • A two-litre pitcher
  • 1/4 cup sugar, and
  • A grater or microplane

Use the fine side of the grater to shave off the yellow part of the lemon peel, the zest, and then put that into a small pot with about a half-inch of water in it, and boil it for a five minutes or so. Then set that aside and squeeze the juice out of the lemon and lime; put that in the jug with the sugar and fill it halfway with water, then pour the boiled zest right in with it and then fill it the rest of the way. Chill, stir before serving. Do not zest the lime, that’s crazy talk.

It is so good. Not syrupy or too sweet, not sour, and the lemon oils boiled out of the zest make it bright and very flavorful. It’s better than anything you can buy in a store, very cheap and very easy. I’m buying more pitchers on the way home tonight, so that I can have more of it handy by.

Try it. It’s great, I promise.

I should tell you about a very good experience I’ve just had with an extraordinarily useful web service. Fog Creek’s Copilot is a fantastic little tool. If you’ve ever thought to yourself “you know, not having to talk my parents through the dozens of dialogs I need to look at to fix their email problems over the phone is worth money to me right now”, this is where you can spend that money.

No screwing around with ports on firewalls, no config files or install processes, nothin’. Just some clicky, and suddenly I can fix my parents’ computer in a different city without having to talk them through a long, slow, hit-and/or-miss process. It’s shockingly elegant, from both the local and remote ends, and definitely the best five bucks I’ve spent recently.

This is a public service announcement, and it’s a little long, but if your PC is getting all sluggish on you it might help. If it’s not, come back tomorrow.

So:

One of our developers just called me. He says he “deleted a bunch of stuff”, because his “computer was working slow”. And now his sound card doesn’t work and he wants my help.

I asked him, in my professional capacity and all seriousness: what the hell? He didn’t have much of an answer to that, it turns out.

I run into this sort of thing all the time, at the home user level, and it’s frustrating; it’s a myth, but a myth that’s been propagated by brittle software, flaky operating systems and idiot tech-support monkeys for a long time. It’s got zero basis in fact, but so many computer problems have walked and quacked just like this particular duck that I suppose it’s forgivable. From a developer, though, it’s pretty sad.

In fairness he’s a web developer, which is a lot like being a real developer except you don’t have to understand how computers work. But this applies to everyone; do not start down this road, audience. I know that every now and then your computer starts to bog down for what looks like no reason at all, and I’m here to help. This is what’s happening, and how to fix it.

I’m going to gloss over a lot of details here, but it should give you a decent sense of what’s going on. Unpertinent? I wanted to use impertinent, but that word is apparently taken.

There’s two things going on here, and the first one’s commonly called “thrashing”.

In broad terms, a computer consists of a CPU, RAM, a hard disk, and a bunch of input and output (“I/O”) widgets that move information around to and from the various bits of the computer, including the network port, screen, keyboard and so forth. The whole thing is managed by an operating system, an OS, that it’s safe to think of as a separate widget that controls all these things. Note that:

  • CPUs are screamingly fast these days.

  • RAM is pretty fast, but not all that fast in comparative terms, and
  • Reading and writing to hard disks is pretty pokey.

Your CPU works on data, and it wants to get at that data fast. All that data is on the disk when your computer starts up, and disks are slow, so generally the OS copies programs and data off the disk and into RAM whenever they’re required, where they can be read and manipulated much faster.

If this thing you’re working on needs even more memory than there is immediately available, your OS will start swapping stuff you haven’t used in the last few fractions of a second back to the hard drive, to make room in RAM for more of whatever you’re actually working on right at the moment.

This is called “swapping”, and it actually works great until you get to the point where you’ve got a bunch of different processes competing for lots of CPU attention and lots more RAM than you have.

The problem is that each of these swapping-in-and-out transactions takes a little bit of time for the pokiest part of your system to work through. Your computer swaps some unused stuff out of RAM and back on to the hard drive so that another application can have that space, but in the time
it takes to do that, some other application (or two, or five, or more)have decided that they want more space too, so the computer swaps out some more stuff to disk for them. Pretty soon your computer is spending way more time swapping stuff on and off the disk than it is doing the stuff you actually want it to be doing, like putting the Globe & Mail in front of your eyes or ripping that DVD.

To the user, it will seem like your hard drive is going crazy, hence “thrashing”, but windows stop redrawing themselves correctly and your mouse pointer gets all choppy and sluggish. We’ll get to the remedies for this in a second.

The second thing that can happen is called “blocking”, and it’s sort of the same thing as described above, except it’s (usually) about the network instead of the hard drive. A lot of programs use what’s “blocking I/O”, which basically means “I’m the one doing the inputting and outputting now, and
until I get my answers, I’m not doing another damn thing.” Again, this is an approach that works fine most of the time, but when the number of networky programs doing networky things gets a little too exciting, your machine can suddenly seem to stop paying attention to you for no obvious reason. This is particularly frustrating for Windows users, because the Task Manager won’t actually tell you that there’s anything going on – the “System Idle” process is taking up most of the CPU time,but the PC still feels like it’s been driven into a snow drift.

Now: assuming your drive isn’t actually 100% full, I promise you that none of these things have anything to do with how many files you have on your hard drive, and the situation won’t be helped by deleting anything. But note carefully, please, that if you start deleting things you don’t think you need at random, you can very quickly make the situation a lot worse and a lot harder to fix.

Back in the bad old days when people had little tiny hard drives that were more likely to get full up, deleting some big files to free up extra swap space actually did help. And it’s also true that old,
buggy web browsers went a little crazy if they miswrote their configuration files, and deleting just the right files helped there too. In modern times deleting just the right registry entries (which I
strongly suggest you never, ever try) can have a comparable effect. But none of that makes it true in the general sense, and it never was. Trying to make your PC faster by deleting files at random is roughly like trying to have a wart removed by a drive-by shooting; it’s conceivable that it
might work, true! But odds are slim and the down side is pretty severe.

On to the actual remedies, now.

If your computer is struggling with blocking I/O, then you must be doing something that involves some pretty hefty network traffic (though a moderate amount of traffic over a very slow connection will also do it, sometimes) and if you’re doing that it should really be something you’re doing on purpose. If you
don’t know what’s doing it, it’s time to give your machine a href="http://neon.polkaroo.net/~mhoye/blarg/archives/004360.php">good scrubbing; that sort of thing is often an indication of malware. As for the thrashing problem, you can try to have less big programs on the go at the same time, and restart your web browser now and then (browsers and office suites are pretty serious memory hogs, and Adobe products that get greedy or occasionally lose their minds are often problematic here), but “do less” is not an ideal solution. The thing you really want to do here is buy more RAM.

That, at the moment, is what I tell everyone who tells me they have a sluggish computer, and everyone who’s buying a new one: put as much RAM into it as you can afford. It’s the single best thing you can do on a modern PC to improve its responsiveness and feel, and just generally minimize your frustration. It might look like a fair bit of money, but I promise you, compare it to the value of your time and longevity of the machine. Compared to what you’re getting back for it, it is as close to nothing as makes no difference.

Good luck, internets. If you’ve got any questions, ask away.

Like a complete fool, I took no “before” pictures, but imagine if you would that everything I show you from here on in was at one point a dirty mustard yellow. You might want to leave this as a strictly mental exercise but start, in your mind, with a bottle of a standard American table mustard. Then pour it out on your sidewalk and drive past it in a dump truck full of gravel no less than a dozen times, and then park your truck and wait until early dusk. As the sun settles towards the horizon, look closely at your gravel-truck-driven-past sidewalk-resident mustard stain. That’s what our first floor uniformly looked like as of a few weeks ago. And this right here is what our first floor looks like now.

That couch over there was in plastic wrap for maybe six weeks while we finished up the painting and trim, and let me tell you, redoing crown moulding in an old house, where ninety-degree angles are something naive homeowners dream about at night, is a pain in an orifice you didn’t even know you had. I’m particularly proud of the crown moulding over the window, the original mismatched frankenmoulding the heart of our decision to pull it all down in the first place. It was so poorly done that I, known among my friends as a backward, ignorant savage, uncivilized and indeed barely housebroken, could not bring myself to leave it where it was. It was just that bad. And now, after much agony, that task is behind us.

This room is, I should tell you, beautiful. Sparse, now, but the floor is rich, dark old hardwood, the walls are clean and colorful and the light is not the smooth, pervasive light-that-is-everywhere that some modernists seem to enjoy, but is bright and uneven, revealing texture and casting shadow. The carpet you can just barely see through the chair by the blue wall hides pristine, untouched hardwood floor; a project for another day, but it’s nice to know that it will be there when I get to it. Needs some furniture and some art as well, true! But soon, soon.

On Monday night, we unwrapped our couch and engaged in a ceremonial first sitting, and it probably means that I’m totally old now, but there was much quiet satisfaction taken from that sitting.

Exhibit 1: CNN

(AP) — Newly released documents regarding crimes committed by U.S. troops against civilians in Iraq and Afghanistan detail a pattern of troops failing to understand and follow the rules that govern interrogations and deadly actions. [...] They show repeated examples of troops believing they were within the law when they killed local citizens. [...] In the suffocation, soldiers covered the man’s head with a sleeping bag, then wrapped his neck with an electrical cord for a “stress position” they insisted was an approved technique.

Exhibit 2: The Geneva Conventions, Article 3

“To this end the following acts are and shall remain prohibited at any time and in any place whatsoever with respect to the above-mentioned persons: (a) violence to life and person, in particular murder of all kinds, mutilation, cruel treatment and torture; (b) taking of hostages; (c) outrages upon personal dignity, in particular, humiliating and degrading treatment; (d) the passing of sentences and the carrying out of executions without previous judgment pronounced by a regularly constituted court affording all the judicial guarantees which are recognized as indispensable by civilized peoples.”

Exhibit 3: U.S. Department of Defense Detainee Program

It is DoD policy that:

4.1. All detainees shall be treated humanely and in accordance with U.S. law, the law of war, and applicable U.S. policy.

4.2. All persons subject to this Directive shall observe the requirements of the law of war and shall apply, without regard to a detainee’s legal status, at a minimum the standards articulated in Common Article 3 to the Geneva Conventions of 1949 [...] as construed and applied by U.S. law, and those found in Enclosure 4, in the treatment of all detainees, until their final release, transfer out of DoD control, or repatriation.

Apparently you go to war with the army you have, not the America you know.

So, even though I ask them (every few weeks, it turns out) to not mail me things or contact me outside of the usual monthly bill, I got robocalled by Rogers earlier today, for a “customer satisfaction survey”. I’ve told them a couple of times now that one way to satisfy me as a customer is to, say, not robocall me, but let’s ignore that for a minute.

So, I told the person at the other end of the line that Rogers’ prices aren’t particularly competitive, and that I’m planning on switching to another ISP and phone provider, at which time I was promptly berated, and told that if you compare apples to apples, sir, I believe they’re quite competitive, and I think that if you did your research you’d find that to be true.

She actually said that: “your research”.

She went on to suggest that I should call back with the results of my research, maybe Rogers could give me “special pricing”. I asked her why I had to do that? Why should I, as a longstanding customer, not simply expect that I would be offered this new better price should it become available?

“We can’t give everyone special pricing, sir. If we did, it wouldn’t be special.”

Those were, literally, her exact words. Which really cemented the deal, so I ended the conversation there.

I don’t know if anyone who manages a telco reads this but in case it’s not totally clear, this sort of thing is why virtually everyone hates you.