U2, Berlin, 2017

(skip to the part about the concert, if I’m too long winded for your taste)

It was 1:00am when Odin and I finally got to some dinner, samosas in a little Moroccan restaurant next door to our hostel. The conversation was getting silly so I finished with “tak for mad”, intending to get up and go to bed, but I didn’t quite get up.

“You know, all those times you make dinner, I never say tak for mad, do I?” It’s been five months of dinners now, and this is maybe the second time I’ve thought of it. “Do you notice?”

He didn’t answer for long enough to let me know he noticed. “I got used to it.”

Danes always say “Tak for mad” after they eat. It means “thanks for the food”, and everyone old enough to know their own name is expected to say it after every meal. It’s ground into them from a very early age and they never forget and always notice. Except, “But you never say it when I make dinner?”

Odin squinted at me and took another long pause. “Yes, I do. Every single time.”

Crap. So not only have I had lousy manners, I’ve failed to notice his good ones.

The people at the table next to us get up to go, wishing us good night as they leave. They shared their appetizers with us earlier, and the woman has on a U2 concert tshirt. They were at the same show we went to. U2 at the Olympiastadion in Berlin, along with the fifth person in the restaurant, a guy falling asleep in his curry behind the other two. The shop normally closed at midnight, and it seems like the owner kept it open tonight just for us.

The concert started, for us, on the 11th, driving down from Denmark in a cheap car we bought the day before because our usual ride, a diesel Hyundai hatchback, developed an expensive brake problem. It’s a Suzuki Liana, well known for being a Reasonably Priced Car.

Once we found the hostel, the next step was to find a parking spot. I’m from Victoria, where parking is mostly never a problem. Usually I travel on foot or by motorbike, and then it’s even less of a problem. The idea of planning a parking spot in Berlin didn’t occur to me. I asked inside the hostel for suggestions, but the manager started with, “Yeah, parking in Berlin. It’s bad. Here, let me show you the map…”

Bo’s good attitude did not crack during the 15 minute walk, carrying duffel bags, back to the hostel. I took his cue and kept smiling.

At the hostel, I found that my planning had let me down a second time. The room I thought I had booked for two people, was actually a single room.

“Yeah, one room, but two people can fit in it, right?”

“It’s a single bed.”

“Yeah, but…”

“There’s nothing I can do.”

“But I booked it on the website, I swear I entered ‘2 people’ in the form?”

“It says here that there was only one.”

“Look… can I talk to the manager? I’m sure this isn’t right.”

“He’s in Portugal.”

Odin stepped in. “Let’s go outside for a minute.”

We went outside and sat on a low concrete wall, a few feet away from the manager (you know, the one who’s in Portugal. The one who helped me with the parking. That one.), who’s on his smoke break.

“I don’t understand it,” I said, loudly enough for him to overhear. “I swear I entered two people on the form. I’m so sorry, I don’t know how I screwed it up.”

“It’s okay,” Odin said. “You have a hotel room for the night. And I have my towel.”

I glanced at him.

“It’s hot. There are parks.”

We burst out laughing, and I said “No, I don’t want to stay here with these obnoxious Germans and without you. I’ll get whatever money I can get back from him, and Visa will give me back the rest.”

We sat in silence for a few more minutes, while I tried to come up with a solution for this hard math problem. Odin went back inside, and talked to the desk guy again.

Eventually he came out and fished his credit card and passport out of his wallet.

“The guy sitting there overheard us, and he told his man Benji to figure something out. Someone else booked a double room, but he’s only one person and he hasn’t checked in yet. So we pay a little more, he gets his money back, everything is fine.”

I laughed some more.

“See what you can get with a little smile?” Odin lectured me. “The guy said, since we weren’t losing our cool or yelling or anything, he wanted to help us. If we got mad, he would have done nothing.”

“Yeah, sure,” I grinned. “Let’s go up.”

A couple raindrops fell that evening as we set out to find the stadium, but I was still uncomfortably warm in my sweater. “Thinking about if I should bring this,” said Bo, indicating an extra hoodie. “I think it’ll be okay,” I said. “I don’t think we’ll need it, these things are always hot, and I wouldn’t want to carry it.”

He left it at the hostel. I had a raincoat too, but I left in the car, 2km away. It really was hot when we got to Berlin.

When we came out at the Olympic stadium though, with about 4000 other people (in that car alone), I started questioning my choice. Everyone else had raincoats on, and many had ponchos as well. A few more raindrops fell.

This slideshow requires JavaScript.

As we followed the crowd down a broad footpath lined with sausage stands and beer gardens, the clouds got darker and more rain fell, and I remembered the part where “stadium” means “outdoor venue”. Odin was still looking cheerful though. “Want a drink, before we go in?” I suggested. “Do you have any cash?” “No.” “Alright”, We got beers, and I questioned that choice as well. Lunch was at noon, we never got dinner, it’s 6:30 now and the band won’t even be onstage til 9… should have gotten the sausages. And I think I just spent the last of Bo’s cash.

As we lined up at the gate, a guard pointed at a different impossibly long line stretching across the plaza. “Bag check over there”, he shouted. “Okay,” I shouted back.

Odin scouted the front of the line while I waited. A pedicab pulled up near the line, and a cheerful gentlemen got out with half a bottle of rosé and started taking selfies. When Odin came back, he said, “This is the right line, and they charge 2 euro per bag. What are you going to do?”

I checked my pockets – I had 40 cents.

“Well, I guess I could rob someone… or I could use whatever you have in your hand there.”

“Last one!” he grinned and passed me a euro toonie.


We fought our way through 70,000 stoked people to our seats in section 34, and I learned, to my deep and profound relief, that we were under cover. The rain wasn’t stopping.

In the row ahead of us, a woman couldn’t contain herself. As Noel Gallagher and the High Flying Birds chugged resentfully through Wonderwall, she was rocking out. She lost herself to dance. Her whole body had a song in it and that song needed the two seats adacent to her as well. Her boyfriend grooved a little more sedately and protected their beers.

Noel Gallagher's band playing Wonderwall

Noel’s band were huddled under tents, and though they were soggy, they got through Champagne Supernova and Don’t Look Back In Anger, as well as a couple of their new songs, before packing it in. Once they left, crewmembers came out and swept an alarming amount of water off the stage, and seemed to have a disagreement about whether the tents were coming down or not. In the end they came down.

Edge showed his face on the catwalk a couple times, to riotous cheers, but he was just chatting with a security guard. We did a couple rounds of The Wave, and people kept on flooding down the stairs and packing tighter on the floor.

Finally around 9:30, Larry Mullen Jr, the drummer, came down the ramp and started up the drums. “Sunday Bloody Sunday” was the opening song, and with the first note the whole stadium came to their feet as one.

This slideshow requires JavaScript.

The next couple hours were blurry for me. As the light faded, Bono ordered phones up, and everyone turned on their phone flashes and held them up. The stadium bowl turned into a galaxy. There’s a 40-foot high video screen, but the band weren’t on it for the first 4 songs or so. The people on the floor had the cheapest tickets, but to get a chance to buy those tickets, you have to be a paying member of the fan club for over six months. They take great pains to prevent floor tickets from going to scalpers, and the people who get into the front rows have to line up for hours before the gates even open.

They’re the true believers. U2 played Sunday, New Year’s Day, Bad, and Pride (in the name of love) just for them, on a catwalk extending out onto the floor. There was a Singin’ In The Rain singalong before they returned to the stage.

Next they started into the Joshua Tree, Streets playing while the video screens took us on a high speed trip through the desert. The show was a little light on politics, for a U2 show. The focus was on refugees and human rights, and Bono seemed to understand as few other people do, that railing about a narcissistic orange oompa loompa isn’t a good use of time.

They rolled out a massive flag with Malala Yousafzai’s face. She’s 20 and she won the Nobel Peace prize for her work in advocating for education for women and girls in developing countries. It was her birthday. The flag made a lap around the stadium, passed from hand to hand.

I thought the best song that night was Red Hill Mining town, a version totally reworked from the album version, with a Salvation Army brass band joining in on the video screen.

They took a break after the Joshua Tree, ripping wet clothes off as they left the stage, and came back for a solid 6 more songs encore. A girl came up on stage to dance in Mysterious Ways, standard practice. Bono grabbed the video camera that they keep specially for him, and took selfies with everyone. Whoever thinks that selfies are an annoying new trend started by 14 year olds is straight wrong. Bono has been doing it since film was invented.

A fortuitous sign in the parking lot outside the stadium

During Ultraviolet, they did a cool thing showing a video from the HERstory project, founded by Alice Wroe, whose goal is to tell the stories of women who have made history. Someone is keeping a list of the people who were featured – http://www.u2songs.com/news/the_luminous_icons_of_ultra_violet_leg_two

For an egomaniac, Bono sure didn’t spend a lot of time on the video screen.

My first U2 album was Rattle and Hum when I was 10 or so, and I think I stole my brother’s copy. Next was All That You Can’t Leave Behind, followed by Achtung Baby and every other album after that. I’ve been memorizing lyrics and following their story since then, and it’s been my dream to see U2 in person. It took moving to Europe to finally succeed in getting tickets – they always sell out in seconds when they play Vancouver. Safe to say I was just as stoked as the guy in the seat right next to mine, who looked over his shoulder to flash a huge grin and a thumbs up every time a new song started, and having Odin the Norse god behind me with a solid good attitude made the show the best it could possibly have been. I recommend bringing your own viking if you ever have the chance.

Here’s a decent cam version of the show for anyone who wants to share it, for however long it stays up.

Here’s a (partial, I did my best) list of poems scrolling on the screen before the show started.

Learning to Love America

Preface to Leaves of Grass
Walt Whitman

Praise Song for the Day
Elizabeth Alexander

The Powwow at the End of the World

Puerto Rican Obituary

Carl Sandburg

Naomi Shihab Nye

I Hear America Singing

Ghazal for White Hen Pantry

Wingfoot Lake

Viking Biking

At five I knocked off work, ate some leftovers, and packed my bike on the car. I dressed up in the closest approximation of “serious cyclist” I could come up with – running tights, rain shirt, and hiking shoes – and secretly prayed that I would be late, no one else would show up, and I’d be spared the social pressure of introducing myself to a bunch of new Vikings. I came to Denmark one month ago and know hardly anyone yet. I’ve got to make some friends, but it’s still scary.

I was ten minutes early and the Vikings were very nice. The meetup spot is called Kirketorvet, and it’s a church on the east side of Kong Christian bridge in Sønderborg, Denmark. If you’re from Victoria, picture yourself standing at the lights on Pandora St facing the Johnson St bridge. To the right of the bridge there’s a building called the Janion – it occupies the same spot, both geographically (in the middle of town) and spiritually (overlooking the water), as Kirketorvet in Sønderborg.

The church steeple is Kirketorvet

I introduced myself to a couple of people, and failed like I always do to understand their names. There was a good mix of ages and at least a few women, and everyone was riding the same kind of bike as mine – hardtail mountain bikes with fat knobby tires. They all had more spandex, more plastic in their shoes, and more carbon on their bikes than I did, but I felt like I was close enough to pass. One lady let me know that though she was the slowest rider here, she was in charge of this horse race.

“Perfect,” I said. “I’ll be right behind you.”

First we did laps around a block adjacent to the church. We sprinted up a narrow lane, down a steep descent to the water, hooked hard left at the bottom, and scrambled up a stretch of twisty cobbles, then the same again three more times.

After that we rode along the water to the castle (Sønderborg Slot, complete with cannonball holes in it’s rocky flanks), which, if we’re still superimposing this town on Victoria, is more or less where Bastion Square is.

Sønderborg Slot

There’s a little woods near the castle. The others did four laps through the woods, dodging around some joggers, down a flight of stairs, and back along the paved path. I did three, with the self-proclaimed slowest of the pack trailing me encouragingly.

We continued along the water to the back lawn of Business College Syd, where they’ve got disc golf, a high ropes course, and a little piece of single track that we lapped four times. “I don’t like it,” said the leader, as we paused at 3.5. “The track is okay but the sprint across the lawn is annoying.”

“Ah,” I said. “Could I borrow some water?” I got to keep the water bottle.

We turned into the wind and continued up the coast. Sønder Skovy (Southern Forest) is criss-crossed with single and double track with hardly any underbrush. The ground is hard clay with not much roots or gravel. Except for the total lack of hills, I’d say it’s the perfect cross-country forest. Actually, if there were any hills it probably would have killed me, so no worries.

“I’ll stay with you for the first lap,” said my new friend, whose name I still haven’t learned. “So you can see the way. But take your own pace. We do two or three laps then stop for a break.” I nodded. “You’re okay?”

“I’m okay,” I said, “I just can’t go any faster! I’ll do two laps if the others do three, no problem.”

We ripped up a short distance of double track, a flat single track through the woods, then turned left along a cliff facing the ocean. We scooted up a ladder of roots in hard white clay, down the other side, and another single track through the woods to the starting point. The woods were crowded and we dodged around some more joggers – luckily they all wear highlighter jackets so you can see them coming. The wind was fierce and stirred up the ocean so it looked like there were almost enough waves to surf on, but it didn’t get through the trees.

Just a little bit choppy

After those laps we bumped through the woods on another little singletrack that was unmarked and invisible until we were on it, to another flat loop closer to the road. This one had a shallow but sharp ditch across the path, and a plank bridge. The others flew across them without pausing, but they still scared me a little. There was definitely a time when I was not as scared of tiny obstacles like this. I’m not sure what happened.  Maybe some practice will get me past it.

As we turned back to town, I noticed that our group was smaller. I guess some people ride home and that’s where they split off, but I drove to the meeting spot so I had to go back. On the way back, though, the wind was with us and the return trip took half as long as the ride out. I talked to the other lady in the group. I don’t know her name either, but she’s a children’s nurse and said that I ought to come to beginners technical practice on Saturday morning. Since she’s the third person so far who has said I ought to do that, I guess I will.

I wore a helmet and everything

I’ve been riding my bike nearly every day since I was a teenager, but I never pushed myself like that. But it’s awesome. I think I had better keep doing it.

Updates from Denmark

24 March

I’m in Sønderborg. It’s a little town, kind of in the middle of nowhere by the Danish-German border. The house is in the countryside and the next door neighbours are horses, but everything you could possibly want is about a five minute drive away.

Bo is one of the viking gods I met on Camino last year. He owns the house, which is currently a second-hand shop. He also owns the car, which I’ve been driving while I try to figure out where things are.
Right now he’s turning one of his spare rooms into a living room so there will be someplace to sit down. Next week he’s going to move the shop to a new place a few miles away. I’m fairly sure he’s doing that because he wants to, not just because I’m here, though he says that he’s doing it for me. It’s a bit intimidating to think of someone undertaking such a huge amount of work for my sake. It doesn’t seem to bother him at all though. Last night he was painting the living room at 2 in the morning.

The government is giving me danish language lessons, but I think that won’t start until my id card comes in, maybe next week. Work doesn’t start till April 10th, either. In other words, I have absolutely no excuse not to be writing – and no pics, because my phone is trying to commit suicide.

27 March

There are some advantages to living in an antique shop. I was making carbonara for dinner, and couldn’t find a cheese grater. He ran off and made noise for a few minutes, and came back with one. From somewhere. Same with the coffee press, produced out of thin air. And a bicycle, and a bike lift.

The only thing I can’t find is empty space, but we cleared a little area in the front porch and mounted the bike lift in the rafters. This thing is an antique three-speed cycle path cruiser with a dyno light and a rat-trap rack. It has everything, it’s just a little dusty. I meant to buy a new bike when I got here, but I have a vision and it’s going to take a little time to find the bike that fits it. So I’m working on this one in the meantime.
It needs new tires, chain, headset and bottom bracket, and repairs for the hubs, dyno, and shifters. I can do about half of it myself, I think, and there’s a guy at the local bike shop who has a good attitude and says he can fix everything I can’t handle.

There’s a second local bike shop where the guy had a less good attitude and wanted to sell me a used bike that doesn’t meet my incredibly picky standards. So I’m getting to know the town. Here’s some pictures!


It’s almost tax season and I enjoy taxes a little too much. You may have heard that wealthy corporations and millionaires avoid paying taxes and meanwhile the little people like yourself have to pay huge amounts. Want to act like a millionaire and avoid paying your taxes too? Let’s find out how.

I’m going to use an example of someone who makes $40k because that’s a nice round number, and also falls into the lowest Canadian tax bracket, ie the one you’re most likely to be in early in your career and before you’ve gotten a handle on how wealth works.

The first $11,474 on your paycheck is tax free. That leaves $28,526 that’s subject to a 15% income tax. Since that first 11-and-a-bit thousand doesn’t count, your average tax rate (in BC – other provinces are different) is 14.61%. You owe the government $5842 of your hard-earned and you get to keep $34,158. I’m sure they’ll spend it wisely. (Check the numbers yourself if you want, with SimpleTax’s calculator here.)

It’s pretty painless – the payroll person at your work will helpfully deduct 14% from your check each month so you never even see it, and in the spring your tax bill will be zero, or close to it. You might even get a return if payroll dude did the math wrong.

And that’s the end of it, I guess.

No, wait. I brought you here for a reason. Millionaires.

If you have a million dollars, it’s very easy to stash it all in an indexed mutual fund that will pay dividends, or capital gains, about about 7% a year. (Here’s some nice simple portfolios you can invest in that will get you returns like that.)

You can pay yourself 4%, reinvest 3%, and keep doing that infinitely. Basically never work again unless you feel like it. The capital will keep growing slowly if you withdraw at that rate, so you can just keep it up forever. 4 percent of a million is like $40,000. Convenient, hey? The exact same salary you get! Wouldn’t it be great to just get paid $40,000 a year forever, and never have to work for it? It’s possible, and all you have to do is start with a million bucks.

Okay, end sarcasm.

Someone who has a million dollars is rich, safe to say. Rich people should pay more taxes, right? That’s the whole point of the marginal tax rate, right? Only here’s the thing – only half of the capital gain is subject to income tax, and it’s taxed at your average tax rate. This millionaire did nothing but sit on his butt and watch grass grow this year, so he doesn’t have any job income, and only $20,000 in taxable capital income. His average tax rate is 4.3%.

So the millionaire only has to pay $1,784 tax on their $40,000 income.

The highest tax rate in Canada is 33%, if you make over $200,000, but a five-millionaire can make that much just by letting his dividends grow and still gets taxed at only 11%, a lower rate than you, who spent the whole year grinding for your 40 large.

Doesn’t that kind of suck? Wouldn’t you rather pay less? Like they do?

Let’s find out how. You need to get rid of $5842 in income, tout suite. The easiest way is to stash it in your RSP. Money in your RSP is tax free if you don’t withdraw it til you’re a thousand years old and not making money anymore, and at least it’s still yours. You can put 18% of your income in there each year, and your payroll person was going to take it off your paycheck anyway so its not like you were using it. Tell payroll to stop making deductions, and just put 14% of your paycheck directly into an indexed mutual fund as soon as you get paid. Then you can start making your own capital gains. If you don’t know how to do that there are lots of super good tutorials to get you started here: Canadian Couch Potato

Another fun one is medical expenses. It’s kind of bullshit, but there are quite a few medical expenses that our provincial healthcare won’t cover – glasses, physiotherapy, hearing aids and medical devices (like wheelchairs). But you can pay for them yourself and claim them as medical deductions. For myself, I got new glasses and a hearing aid this year, for a total of $2200. Of that I can claim $1187. You can get $200 for moving expenses too. Don’t forget to check if you have any educational amount leftover from school – it’s around $5000 a year and that carries over.

Contributions to charity, and, for some reason, political parties and churches, also work. I don’t agree with that philosophically, but those are the rules.

Reducing your taxable income this way as well will let you pay less for MSP as well. RSP and medical contributions are deducted from your net income, and if you get that down to 34,158 then your MSP bill will only be $56 this year, instead of the $72 it probably was last year (if you made 40,000 last year as well). Put just a little more in your RSP and get it under $34,000, and you will only have to pay $46. That’s almost a good deal for healthcare, even if it doesn’t cover wheelchairs. Hopefully it covers the cost of all those goddam envelopes they insist on sending out every month. There’s like 16 of them on my kitchen table now, all addressed to people who don’t live here anymore.

So maybe if you can act like a millionaire yourself, you can feel a little better about the ludicrously low taxes that rich people get to pay, and the punishingly high ones extracted from lower income people.

Look, I’m not against taxes. The role of the government, as I see it, is to protect the common resources. That means the land, the people, the water, the oil, all of it. I especially care about the weaker members of our society, the ones who end up on the street after trauma leads to mental illness and addictions, getting stuck in the poverty trap. I want to be compassionate to them and make sure they get what they need,  and I want to chip in my share for it. But our provincial and federal governments act like it’s not their job. They act like selling our land and resources for stupid cheap prices to corporations and letting millionaires off the hook for income tax is a good idea, and they don’t look after people with the money they’ve got.

It’s frustrating. I think I can use my money more effectively than the government, and I will as much as I can, within the rules.

Hope this helps some of you save some money too.


*** I did my best to be accurate and cite sources, but please tell me if you see any discrepancies.

Recursing For Bike Polo

This week I got to write a recursive function for the second time in my programming career. I’m always excited when this happens, and the event is so rare that it gets a blog post every time.

If you don’t know or care what recursion is, now’s the time to stop reading. Otherwise, we’re about to get technical, so pause your music and pay attention.

Recursion is a programming concept where a piece of code calls itself. It’s kinda hard to come up with a metaphor to explain this in non-programming terms – maybe think of a 3D printer that prints copies of itself. I dunno.

Anyway, I’ve been making a scoring application for my bike polo club. We’re having a tournament in January, and we’re not satisfied with the software options that are currently available.

Normal polo clubs use Podium. To use that, we have to get all our players to sign up for the League of Bike Polo and register themselves in our tournament with their teams, before the day of. The trouble is, our club hasn’t got its shit together. Hardly any of our players even know how to operate a computer, let alone sign up for LOBP. Besides that, our tournaments are traditionally mixers. That means you don’t choose your team – you throw your name in a hat and play with whoever you draw. We like it that way, because it keeps things low-key and egalitarian. The weakest player in the tournament still has a chance of scoring a few goals, and the winners are likely to be three strangers who have never played together before. It gives the Victoria players a chance to do okay, even though we’re playing against some of the best players in the world, who come over from Seattle and Vancouver.

So we don’t like Podium that much. (Though it is an excellent piece of software and a great contribution to the polo community!)

Jawn asked me to come up with something better last year. I think he asked me the year before as well. He asked a third time this year, with 4 months of run-up time, and this year I’m actually experienced enough to pull it off.

Instead of trying to master Javascript on the spot to create a fully browser-based application (that’s what I tried and choked on last time), I used the tools I’ve used on the job for the last three years – CakePHP and MySql. I use an older version of Cake, 1.3, at work, but my boss has been making noises about upgrading to 3.0 lately, and this was a good chance to learn how to use the newer version. So CakePHP 3.0 is the framework.

Setting up the framework on a borrowed server from work took a day or two. Figuring out how to create a plugin from the command line, then controllers, models, and views, took another week or so. Once the wiring was sorted out, I started on logic. Our user, in this case one Jawn Fawn, creates teams. Each team can have three players. They’re drawn out of a hat (in real life) then entered on a form (in the app). The teams are added to a tournament, and then you get a nice table with all your teams displaying.

Click a big plus sign to start a round, and you get… what?

Well, in the first version, you got a list of teams matched up at random. Winners get two points, ties get one point each, losers get nothing. So after a round, teams are sorted by how many points they’ve got, and then the teams with more points play each other and the teams with less points play each other. This makes sense to me, it’s a fair way of determining who the best player in a tournament is.

Except, that’s not really our goal. No one who plays polo in Victoria cares who the best player is. We’re here to get rowdy and drink in public. The weather is always terrible. Sometimes there’s soup, but the soup is usually cold. Showing each other up is the last thing on our minds.

No, the goal is to make sure that every team plays every other team, and that repeats happen as seldom as possible. Last week, I demoed the app to Jawn, and to my total shock, he didn’t care about my pretty ajax interface or the nice bubble display of complete matches. The first thing he asked was, “So if Big Country and the Beavers have the same score in round three…. they play each other again?”

And I’m like, “Yeah, I guess so?”

“Well that’s no good”, said Jawn. “The whole problem is that I don’t want to have to keep track of making sure teams don’t play each other too often.”

“Ok, I’ll give it another try.”

As usual in programming, the last 10% of the problem takes 80% of the development time. That’s basically what happened here, and it took another whole week to come up with an algorithm and an implementation that worked. Here it is, with lots of comments. It appears to be working, according to my tests, but I haven’t tested much. Still have to bug Jawn to kick it until it breaks. For some reason, he doesn’t drop what he’s doing and immediately start testing when I send him a demo, I have no idea what’s up with that.

Two things frustrated me for a whole day each. One was the part where the function calls itself. I was calling the function and then returning the array of matches. Instead, I need to return the function call within a conditional statement (if there are more unmatched teams, recurse…), and only return the matches when the condition is not met.

Second, I forgot the “break;” at the end of the foreach loop. It’s important. That was the “break”-through that let me finish it today.

Finally, the reason it had to be recursive in the first place. You grab the first item on the list of teams, then iterate the rest of the list until a match is found. What if no match is found? You have to iterate again. And so, you call the function again.

The tournament is set for January 21st. If you live anywhere near Victoria, I hope you can make it to see my work in action!

Can he suffer music?

A lot of languages have gendered nouns and articles. For an English speaker, this is difficult. Gender is only relevant to your doctor and the person you’re sleeping with. Why does a book need to have a gender? Why does a table need gender?

French has made me familiar with the concept at least. Un livre is a male book. Une fleur is a female flower. Sometimes the e on the end of the word gives a hint (ordinateur is male, basse is female), but as you can see from the book and flower example, that’s not really reliable at all. All you can do is memorize as many pronouns as possible and hope for the best. French and Spanish speakers will recognize me as a foreigner no matter how fluent I get, because I’ll never stop mixing up the genders. It’s a mistake not even a child would make in their native language.

Now we come to Danish. They have the “common gender” and the “neuter gender”. Not only does that not make sense, it makes me wonder  exactly what Danes do in bed.

Here’s another fun one.

“Kan han lide musik?”

Does he like music? Or rather “Can he like music?” But you could also translate it as “Can he suffer music?” because “like” is the same word as “suffer”. This might be another key to the Danish psyche. They don’t like things, they’re simply willing to suffer them. When the men in white with clipboards come around asking Danes if they like their lives, they all say yes even if they’re suffering. I assume this is how they earned the title of “Happiest Nation on Earth” for 50 years running even though they never get to pillage anymore.

Words for feelings

Danish lessons continue here, where I’m learning about Mette’s new boyfriend, and how difficult men are to buy presents for.

“Mænd bliver aldrig glade for sko,” imparts her friend, after she suggests that she might get him some new shoes. This means, “Men are never happy for new shoes.”

“I just don’t understand him”, says Mette, or “Jeg forstår ham bare ikke.”

“How can one walk in the same shoes for years without getting tired of them?” which is “Hvordan kan man gå rundt i de samme sko i årevis uden at blive træt af dem?”

Yes indeed, Mette, I feel your pain. Men are difficult to get presents for. While I was learning these new words, I started thinking about how languages evolve and how vague concepts become concrete, known phenomena when we invent words for them. Like, you know that feeling when you’re in a cheap motel? Like maybe you were on your way someplace more interesting, on your way to an adventure or to meet with friends or just go home, but you got caught by the rain. Or the ferry was full. Or you had been driving for 14 hours straight and your head started to nod, then you came awake with an snap, still in your lane and driving straight, but with your panicky heart beating twice as fast, and your eyelids starting to close again anyway…

Okay, so you’re in that shitty motel. The room is cheap, yet still twice as much as it looks like it’s worth. There might be other people there, but you won’t see them. You take a long shower, just for something to do, and watch TV for the first time in several years. You turn it off after about seven minutes, because the commercial that was playing when you turned it on hasn’t ended yet.

You listen to the silence and it starts to close in.

What’s the word for that?

Maybe Danish has a word for it. I need to get back to learning.



How to learn a language when your attention span is shorter than a puppy’s

I don’t know if there’s a standard best way of learning a new language, other than immersion. I’ve tried French and Spanish so far, and although I can read both languages well enough to navigate French and Spanish countries, I’m nowhere close to fluent. So I can’t tell you what the most effective learning method is, but I’m guessing it doesn’t matter that much as long as you practice a lot.

Therefore, the best method is one that you can do every day without dying of impatience or boredom.

For learning Danish, I’ve looked at some podcasts like this one – Copenhagencast. I didn’t like that one much. The lady speaks so slowly that I get bored waiting for her to get to the next word. I’m doing this in the morning over coffee on my way to work, so my attention span is good for about 20 minutes tops. When I went looking for a lesson that would get moving a little quicker, I found this, One Minute Danish Lessons. The title is a lie – the lessons are three or four minutes long, and they waste the first thirty seconds of each episode with some stupid music and an explanation of the one-minute-lesson concept. It’s the same explanation every time. I really didn’t need to hear it more than once. I haven’t gotten to the end of one of those lessons yet, even though they are only three or four minutes.

I’ve got some comic books and kids stories to read as well, but I’m not even at that level yet. Looking up every word is difficult when you’ve got a coffee cup in one hand.

These aren’t complaints. Learning Danish is hard work, there’s no way around that. But I only want to do the language learning work, not get distracted by things like coffee cups and stupid music. So this is just looking for the path forward.

This might be a start: SpeakDanish. You can play each short phrase of a conversation over and over again, fast and slow, with the Danish text and English text right next to each other. This won’t be enough on it’s own, I don’t think. I’ll probably have to write the phrases down as well to stick them in my mind. But I can play the phrases while I’m eating breakfast. Now to find out if I can get my job to pay for the license fee.

Also – here’s the section about swearing. It’s free, enjoy!



I’m learning Danish. When I learned French, they started us on colors and seasons, then moved on to verb conjugations. It was pretty dull. The first Danish I’ve learned is “morgenkys”. It means morning kiss. That is what happens in the morning during traffic when cars are too close together and they bump into each other.

I’ve also learned “skjold” which is shield, “sværd” which is sword, and “svært” which is hard, from a story about Thor that I read in Danish refugee school. One other word “ikke”, I haven’t figured out what it means yet except it seems to be a negation.

“Burkabilist” means burka driver, and refers to the people who wear burkas while they’re driving, even though they are not supposed to because it restricts their visibility. I suspect that this is a racist word.

“Motorvejen” means motorway, and the pronunciation is the same as English, despite the odd choices they’ve made about spelling.