The productive programmer

Just checked out a pretty fantastic book, The Productive Programmer by Neil Ford.

I’m only about half-way through it, but so far I find it fantastic.  I read it at night before going to bed.  This speaks of its readability, but it’s a bad strategy, since I get excited while reading it and want to try things out.  Every night for the last three nights I’ve said to Bettina “man, I wish I’d read this book years ago”.

It’s obviously aimed at the developer, but I think about 40% of the tips in it are relevant to Bettina, who is a school teacher.  The thesis of the book can be summarized as follows:  The GUI makes things easier for a computer neophyte, but less efficient for the power user.  As programmers, a major part of our work is data entry (we form the data in our heads, but it’s gotta get into the computer).  So it behooves to put a little effort into making the data entry part more efficient.

He discusses various repetitive, boring tasks that chew up our time and attention, and then gives tricks to improve your efficieny, on windows, mac, and Linux based systems.  He also discusses good algorithms for figuring out how much time to spend automating problems, and how not to shave yaks.

Me personally, I would expand his thesis to include end users.  How much time do you spend working with your computer?  Bettina is a school teacher and she spends at least 20 hours a week on the damn thing.  Me I spend like 60.  I think 20 is about minimum for anyone who works with a computer at all.  So I think we’d all benefit from learning better computer work habits.  Because the author writes to programmers however, he rightfully assumes a certain amount of computer savy.  This might make the book unnaproachable for less technically literate users.  I have a hard time judging that.  But if you think you can read it, I highly recommend it.

It’s also inspired me to start posting the most useful productivity tips that I run across, so look forward to that. Does anyone know of an existing blog that specializes in programmer-productivity tips (I’m not talking language stuff here, just computer-human interaction)?

Feeling good

This weekend I suffered terribly from overtraining.  On saturday B and I rode the bikes to Rothenthurm (which is about 24 km away, no terrible hills) to look at a new used car.  I was incredibly weak.  I could barely puff up the hills, which would ordinarily pose no problem.  We took the train home since I was so worn out.  I was supposed to be social and show up at a party for one of Betinna’s friends, but I was completly ko and had to just go and lie down.

Sunday wasn’t much better.  I felt completely worn out.  No energy, and in paritucular no strength in my legs.  I could barely make it up the stairs.  My legs weren’t sore, they just had no power.  I wore some long underwear which I though qualified as compression tights, and my compression socks all day.  I’m convinced that this helped.  I also worked through some stretching routines, which seemed to have immediate benefits.

This morning I woke up at 7:30, surprised that Bettina had woken and made it out of the house without waking me whatsoever.  But I felt refreshed.  I got my stuff together, packed up my backpack, and ran the 14 km to work.  I feel awesome now.  I’m not even vaguely fatigued.  I feel alert and energetic.  If anything I feel hyper.

It’s fantastic to finally be reaping some benefits from all of the training I’ve been doing.  For months I’ve spent most of my time feelilng fatigued, tired, and or sore.  I still have a little soreness, but it seems to be a good sore.  Okay I had a couple of rough days this week, but now I’m back at training fit.  So I think the Swiss bike masters 75km race is well within reach (5 weeks to go: 4 training, 1 taper).    I’m still holding flat at 90kg, but my body composition is certainly changing.

In the last month I’ve made the following changes to my training routine, which I think are working:  First, I’m doing a little yoga/stretching every single day, especially when I feel miserable.   Secondly, I’m taking creating supplements (which I will continue until the bike race, at which point I’ll stop until the triathlon).  Thirdly, because I’m focusing on the triathlon in the long run, I’m doing more multi-sport/cross training.    And it seem to be working so hooray.

Bettina seems to be suffering at the moment.  I’m hoping she’ll get her energy back soon, but it’s good that I get a chance to get a little lead on her in the training.  Maybe I can finally beat her in a race.

4:02.42 !!!

BETTINA RAN HER FIRST MARATHON

And typically, she kicked my ass.  Okay, I helped train her, so she got to learn from my training mistakes, but really she kicked my ass because she’s skinny and dedicated.

Her official time in the Winterthur Marathon was 4:02.42!  So she ran almost a half an hour faster than me.  And I should mention, I ran the Munchen marathon, which is flat, and considered a pretty fast track.  The Winterthur marthon has significant hills (not a lot, but a little matters in a marathon), and is mostly gravel.  This is pleasant to run on, but it’s not the fastest, as you have to pay attention to irregularities in the road.  If I had to guess, Bettina woulda run in at 3:50 on a fast Marathon track.  So fucking kudos to Bettina!

Heres a  picture of her finishing:

Bettina comin across that line

Overtraining

Bettina and I are taking place in the Fit for Life Trophy, a program run by Fit for Life magazine, created to encourage people to diversify their training. To satisfy the trophy requirements you have to take part in sporting events for 6 different types of event. Of the available choices, Bettina an I are planning on doing running, cycling, mtb-marathon, snowshoing, triathlon, and mountain-marathon.

Two Saturdays ago we ran in the 20 km de Lausanne, which is a great event. It’s like a big party for the whole town, with wine tents, music, and kids events, culminating in the 20k race at the end of the evening. We were both pretty happy with our times. I came in at 1:57:01 and Bettina came in at 1:51, or thereabouts. Last Saturday we took place in the Berner-rundfahrt, the cycling event linked to above. We managed not to come in last place, not even for our age-catageories, but it was a pretty challenging event: 33km with 450 m elevation gain. We hadn’t been on our road bikes but once since last summer, so we were pretty content to just pull it off.

But I gotta say, two events in two weeks is just too much. I’ve been completely knackered all week. I had to take 4 recovery days this week. I’ll be heading to the pool this evening, hopefully I’m feeling a little better. Bettina has her marathon in just 8 days, and the next event we’ll both be doing is the Elsa bike trophy. So Bettina gets to slack off a little soon, which is good. I think she’s getting a little burned out on the running. As for me, I have to get fit for the Elsa.

Anyways, here’s a picture of B and Me before the B.R. Don’t we look cute?Glen and Bettina before the Berner Rundfahrt:

It’s so hard to remain optimistic in 1934, 1984, oh right… it’s 2008…

I went to a Jewish school grade 1- grade 5. I spent my summer with my ultra-catholic, ultra-traditional German grandparents. My grandfather wore a Hitler-mustache. I’m told he used to say “I had mine first. Let Hitler shave his.” My grandparents were worried I would go to hell because I was going to a Jewish school. These opposing forces in my life left me a sort of perpetual inner conflict.

I recently gave my Swiss girlfriend Maus to read, and it was interesting hearing her perspective on it. Since I went to a Jewish school I grew up learning more about the holocaust than your average American, particularly on impact on the Jewish people and how it pertains to the modern Jewish identity, in particular Israel. Back there, my sister was the only kid I knew who didn’t personally know someone that had survived the holocaust. I think they all had a relatively direct connection to the Holocaust, whether it was a family member, or just a distant friend of the family now living in Israel. We spent a lot of time covering both the historical and emotional aspects thereof.

Now that was always kinda interesting for me, because I had to reconcile that with my German grandparents, who were responsible adults, even property owners, during the war. They were later refugees who had to leave their land in the Sudatenland, and resettle in Bavaria.

Now most Germans suffered as a result of WWII, by the end for certain. So as a result of this, and as a result of the moral implications of supporting the Nazis, it’s pretty hard to find a survivor who will admit to being supportive of Hitler and his policies. Okay, nowadays there aren’t so many survivors alive who were culpable adults during WWII, but back in the seventies there were plenty. I’m certain that if you would have taken a poll in the seventies, you would come to the conclusion that Hitler managed to take over and run Germany with the support of <1% of its population. This of course was not the case.

History shows, of course, that very very few of the German population actively opposed Hitler (I would love reference for this). Certainly not to the point of taking any significant risks. Well, very few of them survived it anyway, and my grandparents certainly did not. At the very least they supported Hitler with their silence and complacency, but they were my omi and opa! They were the next best thing (or maybe even sometimes better) to my parents! So of course I worshiped them. At the same time of course I believed every word they were teaching me at the IL Perez school.

I believe that it is for this reason that I worry so much about history repeating itself, with regard to the evils that feed fascism. Even if we disregard fascism per se, the fear of the harm (physical, psychological, economic and spiritual) that an out-of-control system or institution can perform is terrifying.

I knew my grandparents were sweet, nice, loving people, who almost certainly supported Hitler at some point in his career. This was never explicitly discussed, but I guess the majority of Germans supported Hitler at some point in his career, and I see no reason to believe that my Grandparents were an exception.Now, it’s impossible to get good information about this, because they didn’t have freedom of speech, but I wonder at what point most Germans stopped supporting him? Probably when it started negatively affecting their standard of living.

So I quickly came to the conclusion that anyone was capable of being a good nazi, just following orders. This of course proven by the Millgram experiment, but it’s a heady realization for an eight year old.

All of this is a really long winded buildup to saying that healines like: “Bosses’ power to check email”, and “Monsanto’s Harvest of Fear”, and “Administration Set to Use New Spy Program in U.S.” really fill me with anxiety.

A poem

I was rooting through my hard drive, when I stumbled across this poem. I have no idea if I wrote it, or if I just heard it somewhere and wrote it down. If you know the original author, please let me know.

Tell me why the stars do shine,
Tell me why the ivy twines,
Tell me why the sky’s so blue,
And I will tell you just why I love you.

Nuclear fusion makes stars to shine,
Phototropism makes ivy twine,
Rayleigh scattering makes the sky  so blue,
and sexual hormones are why I love you.

I really want to believe I wrote this…It seems like something I’d write, particularly the last line, which doesn’t seem quite right… But the line about Ivy twining doesn’t really sound like something I’d come up with…

Feeling curmudgeony

So, I was thinking about setting up a page to track companies I think are worth avoiding, and what alternatives are available.

I haven’t been able to find a site that does this, at least not in the way that I would like. A buddy and I had talked about starting a site called coporateconcience.org, but we never got past the planning stage. Busy lives. But let’s face it, consumer power is now a bigger player in the world socio-economic development than democratic power. I don’t approve, but in my analysis, it’s the reality. It’s not often talked about directly, but it does crop up in music and speculative fiction. Maybe it’s just blase… everyone knows it so why talk about it? I don’t know…

Anyway, I was recently reading about how Creative, who have been making my sound cards for >10 years, shut down a modder. Legally of course they had every right to do what they did, but in these days where the corporations dictate the laws, “legally” is not equivalent to “morally”.

Details are available here but the gist of it is as follows: Apparently creative “broke” their support for certain Audigy features under Vista. This was done intentionally, as a marketing strategy, in order to force Vista users to upgrade their sound cards. They did this by programming checks for which OS the computer is running, and in the event it is Vista, switching to buggy drivers. This modder took out those checks, and had Vista also go to the working drivers. The point I wish to make is this was an intentional act by Creative.

The most telling line in the whole article is this:

O’Shaughnessy [Creative’s VP of corportate comunications] also wrote that whether ornot it cropples its Vista drivers is a “business decision that only we have the right to make”

Okay, I don’t want to say this kind of behavior is on the same scale as manipulating elections, unscrupulous lobbying, unscrupulous lawyering, or using 13 year old sweat shop slaves to produce your goods. But it freaking annoying and arrogant as hell, don’t you think? Do you want to buy your stuff from a company with that kind of attitude? I certainly don’t, and I happen to be in the market for a soundcard (I’ve been making do with the onboard audio since I built my last PC, but I’m a bit fed up with it), so I’m going to dig around and find an alternative to audio, hopefully one that isn’t quite so asshole-ish to its customers.

Seriously, imagine you’re using your soundcard for several months, one day you update your drivers, and bang, everything is broken. Maybe you have the old drivers, or can find them, and you can make it work, but maybe not, and anyway what a hassle. Or you do what they want and get an upgrade. Well, if that scenario happens to me I’m gonna look hard for an alternative. In this case I’m going to try to avoid the scenario in the first place.

What bugs me is how ordinary this is. This is really the norm in the computer industry, software and hardware. It might be irrational, but I really blame Microsoft. They pioneered these kind of strategies, and virtue of being the big boys on the block, they legitimized them. I can remember several years ago, when Apple implemented a typical Microsoft feature into their Quicktime drivers — a pop up question to ask if you’d like to upgrade to QT-Pro. There was a lot of discussion at the time whether Apple should use such strategies, since it would be losing a certain amount of moral highground over Microsoft, and since they might lose customers. But it seems to have been successful, and this lovely feature remains with us to this day.

In the end though, the problem lies with the consumer. We are all such bloody idiots. That’s the failing in free-market doctrine. The benefits of a free-market economy come only to the extent that the assumption of an informed consumer is true (amongst other assumptions). This assumption really only holds to a limited degree, and marketing departments serve mainly to decrease this degree.

So maybe I should start a corporate conscience site. Maybe it would balance all the people in Marketing out there. I think Bill Hicks was right on when he would say “Anyone out there who’s in marketing? Kill yourselves! Seriously, I’m not joking, go home, put a gun in your mouth, and pull the trigger! I’m not kidding…”

Which gets me to the curmudgeony part of this post. Man, I feel a bit bummed out by how litigous the internet has become. How much like real life… I remember ten years ago, back in the wild west days of the net, where you could say whatever bullshit you liked, and it was virtually unheard of for your words to come and bite you in the ass. Ah well. Let me at least say that wistful reminiscences aside, I don’t thing the net is a worse place than it was.

Meep++ update

Well, I finally learned about the Gnu autoconf tools today, and modified the appropriate files so that Meep++ now compiles what it’s supposed to. I finished the reworking of the last name dependancies too, created a svn repository for the code, and made a page for the project. Next step is to generate the latest Doxygen docu, and see how readable things are now. Hopefully by the end of the week I’ll be in a position to add in the machinery for customizable update loops.

And of course I took Butchie for a run. This time Bettina came along on the mountain bike. Hope you aren’t sick of pictures of great danes in the swiss woods, cuz here’s another one.

Bettina and Butchie

The breeders who sold us Butchie have a couple of 6 month old Danes looking for homes. With the two homeless pups, they have 8 danes to take care of.  I shudder to think of how much food they go through.  So if you’re near Switzerland and want to adopt a nice dane, go check them out.

March 31 2008

No special subject today.

Shoulder hurt worse this morning. Butchie doing well. Cough kept me awake a lot, but still got up at 8:30. Got some work on meeppp done, should be seeing that and other code up here within the next couple of days.

Since the shoulder is still bothering me and the health isn’t the greatest, I restricted myself to a short bike ride with Butchie. Todays image is from that ride. As you can see Switzerland’s georgeous, but the weather often leaves a lot to be desired. At least it isn’t still snowing.

Butchie by a nearby creek.  He's happier than he looks

Cooking with chilis

Man, yknow, ya’d think I’d have learned this already, but somehow I just haven’t gotten it programmed into a habit yet. If you’re cooking with chili’s — chopping, pulling out seeds, even just moving the damn things from one place to another– wash your hands with soap afterwards.

Today I made a Thai soup. I pulled the seeds out of a couple of chilies with my thumbnail, and thought ‘I need to pee’. This sequence of events has happened before (I like hot food), so I knew I needed to wash my hands before grabbing my dick. I rinsed them off pretty well, and dried them on a towel, went to the toilet, peed, washed my hands again and got back to the kitchen. A minute or so passed, and I thought ‘hmm my genitals feel a bit warm’, but I figured I’d washed my hands so it wouldn’t get any worse. I was wrong. A few minutes passed, and I yelled to Bettini ‘argh, chili dick!’, and rushed to bathroom. First I tried washing them with a wet, cold, soapy washcloth, but as soon as the cloth was removed the burning sensation returned. So I had to take off my pants and jump in shower and let cold water run over the equipment for a few minutes, massaging gently with cleaning products. The creamy stuff seems to work better than the soap, probably because the active ingredient in chilies is oil soluble.

I’m really glad none of the restaurants I ever worked in cooked spicy food. I can’t imagine telling my boss in the middle of the dinner rush that I had to go and stick my balls in the sink… I have to find the best way to get rid of chili residue on my hands. Maybe wash them with oil. Or just scrub really thoroughly before doing anything else.

On an interesting side note, Bettina found the soup too spicy, and had to pick some of the chilies out. Me I didn’t even find it sharp. But my balls and thumbs (which I used to scrape the seeds, you remember) still burn a little. I guess I’ve just burned out the receptors in my mouth.