I’ve made enough changes to iCartographer that I felt I could make another release. Sure, it isn’t much, but I should try and make releases on a regular basis so that I can get into the habit.
Interesting thing: the website wasn’t working for the last two months. It had a broken link that made it impossible to download the application. No one ever pointed that out. i.e. No one downloaded it.
I feel like a starving artist.

Reverse stalking

Although I was never allowed to sign up for Google ads, I did sign up for Google Analytics. That has proven interesting. Basically, I’ve got a report of what kind of people visit my site.
Nothing incriminating.
But I’ve learned that no one has downloaded my program. (Either that or I set up the analytics on downloading incorrectly.) I don’t know how I feel about that. I haven’t advertised the site to anyone, I’ve never even asked my friends to go visit it, so it is not like I can be surprised.
I felt I should only tell my friends to visit it after I was able to put up ads. I figure only my friends would visit the site, and then only once, so I only had a single chance to monetize them.
But, looking at the traffic, what little there is, I am getting the impression that people who aren’t known to me are visiting. Google provides a lovely map to show where people are coming in from, and I’ve had visitors from the U.K., Australia, Finland and India. The Finnish and Indian people (singular) probably came by mistake because they spent zero time on the site. I’ve had two visits from Australia, all from Perth. I have an old friend who I haven’t spoken to in years near there, so it could be him. I do have friends in the U.K., but I’m not aware if they are actually in Sunderland or Northampton. In the U.S., I’ve had visitors from California, Florida, and Michigan. But when I look closer at the cities involved, I’m not sure if I know people from there.
It’s weird thinking that people I might not know are looking upon my works, ye mighty and despair.

Civic duty

I attended a public meeting on rezoning an area near where I live. Currently it is vacant lot, although last month there were two machines digging big holes in it. When I had asked them what they were making, I was told a gas station.
The meeting I was just at conflicts with that theory. The owners want to build a six story condo, but they need permission from city council to get rezoned. I’m normally a fan of infill development, but it becomes a different matter when it is in your own backyard. My big concern is that they want to put a tall roof on it, which will make it look nicer, but block more of my view. I somewhat like the vacant lot because it gives me a clearer sight of southern Edmonton. It’s the same reason I miss overlooking the noisy trainyard, currently blocked by a different four story condo, but with a very tall roof.
But, looking at what the lot is currently zoned for, they could construct a post-apocalyptic nightmare there tomorrow without anyone’s permission. I looked at the list of acceptable uses, and I figure they could make a gas station with an attached liquor store if they wanted. A condo seems like a better idea.
I found the people who attend these meetings interesting; I wonder if these archetypes attend every public meeting? In attendance were the people who were upset that their neighbourhood has evolved (agreeably not always for the better) and had suddenly found a forum to vent about it. Even if completely off topic. They liked to be angry, and wanted to take it out on someone.

A zealot can’t change his mind. A fanatic can’t change his mind and won’t change the subject. – Winston Churchill.

They were like dogs with a bone; couldn’t let it go.
Also there were the people who want to run for council. They aren’t elected yet, but trying to. Unfortunately, this person was trying to cater to the senior’s vote. I did not like her platform.
The biggest issue of the night was one that wasn’t supposed to be covered: increased traffic and parking. According to one official, Edmonton council is trying to concentrate more on moving people instead of goods. So they are focusing on transit and bikes. Hope it works out.


This is going to be a complicated post, that probably will make no sense to anyone. Mathematicians might have a better chance, but I don’t exactly know the terms they use so I may be making up my own inadvertently. I’ll probably find this all confusing if I look back at it in a month. For a better use of the word “erf”, may I suggest Erfworld, an amusing webcomic.
So, for the generation of fractal landscape, I should be using the gaussian function. With a random number generator, this creates a better distribution for making landscape. But, I’ve been using a straight linear random number generator. So instead of a bell curve of probability, I have a straight line probability.
In other words, my random number generator is just as likely to make an extremely high positive or negative number, as any other number. I should have been using a random number generator that is more likely to generate a zero than an extreme value. This would cause the land generated to be more even and less… spiky?
Anyway, I’ve been researching the gaussian function. Wikipedia is generally confusing, but it does give me the formula for the distribution. That doesn’t really help me though, I need to make numbers into that distribution, not see the end result of the probabilities. The best way to do that is to take the integration of that. Unfortunately mathematicians assure me that it is very difficult to do that. So I’ve been thinking of using a simple upside-down parabola as my distribution and integrating that.
Fortunately I’ve been having difficulty remembering how to do the integration of said parabola, and then what to do once I’ve got it. I say fortunately, because I realized this evening that I can’t be the only person to have this issue. I quick search under “generate gauss function” and I find that in Matlab (whatever that is) there is a function called “erf” that does exactly what I want. And even better, I’ve found that it is part of the standard math library that is on my Mac.
Happy day. I get to ignore higher order math problems and get straight to programming. This change will require tweaking of other parts to get the distribution proper, but it looks very promising.

What have I learned this weekend?

Two important things. Firstly, when I run quickly, nutrition is different than when I run slowly. For ultramarathon training, I can eat a lot of things and I’ll digest them without too much difficulty because I’m not abusing my stomach too much. Today, I ran quickly and when I tried a fruit leather (safe at a slow speed) my stomach went into rebellion. That affected the rest of the run. Still, I was faster, and I should work on being faster.
Secondly, Sophia Coppola needs to have her movie making license revoked. The last three films she made, I have not enjoyed, but I just saw Marie Antionette and it was painful. It makes Transformers 2 look deep. Nothing happened! And when something starts happening, the film ends. With some editing, that two hour movie could be cut down to twenty minutes. And there was never any reason to care about the title character. I would have gotten the same amount of satisfaction about watching the life of Paris Hilton before her first sex tape. It seemed to me to be an excuse for Kirsten Dunst to be treated like a princess for the time it took to film it. Please take your vacations on your own time.

My works, mighty and despaired

Okay, villainy averted. This morning, after breakfast, we went back to Fletcher Falls. The dam was still doing its basic purpose of backing up water. No one had destroyed it. However, everything else had been.
Yesterday, there had been two beautiful stone sculptures; basically stones piled in towers and leaning against each other. I had taken a lot of pictures of them. This morning, someone had kicked them apart. Tragic.
I took pictures of my work, and then cleared it out. It wasn’t as much fun destroying. But it was interesting to see how quickly the level of water dropped. But the fishies will now be able to spawn in peace.
Other than that, it has been a fairly bleak day. Overcast, occasional rain. In the evening there was a squall that put up a lot of whitecaps. But there have been moments of sun and we’ve been enjoying our time here.
I’ve been taking a lot of pictures; I’m hoping to be a better photographer. I’ve been doing a lot of experiments to create HDR pictures. Hopefully they’ll turn out well.

I feel like a villain from Captain Planet

Today is my parent’s golden wedding anniversary. We’ve driven out to Ainsworth, B.C. to celebrate, although it doesn’t look like we will touch the hot springs.
The drive yesterday was long, but the mountain sights were beautiful. It was actually the first time I’ve ever been to mainland B.C. I’ve done the West Coast Trail on Vancouver Island, but that has been about it for my British Columbia experience. (Airports don’t count.)
There are hippies everywhere. I’ve seen more hitchhikers in 24 hours than I’ve seen in my entire life. Anyone who isn’t a hippie, seems to be a motorcyclist; the route from Creston to the north is considered the best motorcycle ride in North America.
We’ve even made new friends. Did I say friends? I meant people we lovingly hate. On the drive from Creston to Kootenay Bay, we fell behind a combine pilot from Saskatchewan who drove a little too slow, and all over the road. He would conveniently speed up whenever there was a passing lane. And we were stuck behind him for far too long. We called him “Rustler” after the name printed on the back of his pickup camper. We were able to pass him five minutes before we got to the ferry, and we stayed that way for the crossing. We got off the ferry first too, which let us stay ahead of him as he was headed the same way.
We think Rustler went to Kaslo, because we’re pretty sure everyone in that town hates us after we went there for breakfast. I got chewed out by a disabled man for opening a door for him he didn’t need. My sister got poisoned by a veggie smoothie with far too much ginger. A lady nearly ran over my mother because we hadn’t left enough room in the parking stall behind us.
After breakfast, we went to Fletcher Falls and found a lovely site to have a picnic beside the lake. But after swimming and lunch, I got bored. Then I noticed the Falls in question were the source of a river into the lake. And being who I am, that river needed to be dammed. I spent several entertaining hours moving rocks around and making a nice waterfall. Unfortunately, as we were leaving we noticed a sign that said this was a spawning river, so it shouldn’t be dammed up. I am now an ecological terrorist. One man (me) can destroy nature.
We’re going back tomorrow, so I’ll tear down the dam. Hopefully after I’ve taken a picture of it. Unless the hippies have already taken it down.
After champagne at my parent’s rented condo, we went to dinner at the Ainsworth hotel. Under my rules, I had to have the salmon. You have to have the specialty of the province you are in: In B.C. you have the fish, in Alberta you have the beef, in Saskatchewan you have the grains, in Manitoba you have the perogies. It was a nice dinner, and not too formal a place. We all left happy.
My mother thinks this was the best day ever. I guess making an entire town hate you is what brings this family together.

Colours and heights

So I’m getting back to iCartographer.
I still haven’t been able to get advertisements on the site, and I think I’ve stopped trying. Maybe after I put a few more updates on, then Google will accept me into their evil empire. But at present there is no incentive for me to tell people about the site; I can’t monetize my friends. Yet.
So, I’m backing away from updating the website. Although I have started using php to support it. That should allow bots to troll it better.
I recently got a desktop atlas. The maps I’m making did not compare well with it. The land I generate is all greyscale, and let’s face it, kind of depressing. So I decided to do some experimenting. I took the exact colours (taking a digital colour picker to their website) from the book and started to use them in my program. This revealed two new problems.
The first problem is that the book’s colours were picked to allow named places to show up clearly; they are muted pastels. I never changed my ocean colours which are vibrantly blue. This makes it so that the land is actually hard to see as it is washed out. I could reduce the vividness of the oceans, but I like having colourful maps. I think I’ll have to acknowledge that the land colours need to be selected differently.
The second problem is that the colour is giving me a better idea of the actual elevations that my program is generating. In the atlas, huge tracts of land are below 500 meters above sea level. In my program, barely any is. If you look at an elevation histogram of earth you can see that land elevation is like a hockey stick (backwards in the linked picture). So I’ve started doing some new experiments with the program to better approximate that. I’ve found that putting the elevation to a cubed power and then scaled back down works fairly well. But this has revealed a third problem.
This new problem is a fundamental flaw with the program. Mainly that I do not understand how fractals really work. Most of my knowledge has come from a few books that just give me enough information to be dangerous. But at a fundamental level, I don’t know what I’m doing. This comes into glaring realization when I try and increase the granularity of an already generated map. If any modifications have been made to the map, there is a good chance the new granularity will not be at an appropriate scale.
This is something I’ve got to work on. I need to better understand my project.

Surprise, surprise. I’m alive

Despite my best efforts, I appear to have survived and passed another Death Race. CDRX.
My big concern before this run was a possible injury in my IT-band. A week before the race, my hip started hurting after doing some stair training. It was persistent. A visit to a therapeutic massage helped quite a bit, and I had been taking ibuprofen to help reduce any inflammation that might have been happening.
But, let’s go through an analysis of my three attempts at this race. My results are this:

Rank Leg 1 Leg 2 Leg 3 Leg 4 Leg 5
Overall Gender Age Denard Flood Grande Town Duck
Hamel Ambler Hell’s
44/223 38/177 10/54 02:02:50 03:49:10 06:10:56 07:16:45 09:51:27 13:34:03 15:33:35 17:47:01 19:47:25 22:19:58
02:02:50 01:46:20 04:08:06 05:13:55 02:34:42 03:42:36 05:42:08 07:55:34 02:00:24 04:32:57
56/232 43/171 12/42 02:06:49 04:00:37 06:26:35 07:36:30 10:25:13 14:12:57 16:11:35 18:33:54 20:38:51 23:01:27
02:06:49 01:53:48 04:19:46 05:29:41 02:48:43 03:47:44 05:46:22 08:08:41 02:04:57 04:27:33
78/418 64/304 30/112 02:00:37 03:42:42 05:56:43 07:04:50 10:08:16 13:39:11 15:25:41 17:44:38 19:41:41 21:41:51
02:00:37 01:42:05 03:56:06 05:04:13 03:03:26 03:30:55 05:17:25 07:36:22 01:57:03 03:57:13
In 2010, leg three was extended by two kilometres, and leg four was reduced by the same amount.

For each point on the race, the top number is the overall time to hit that course point, while the bottom number, in italics, is the time to reach that point since the start of the leg. For purposes of ranking (among other things) I am male and aged 30-39.
The rankings also don’t tell the whole story.
In 2008, there were 223 people signed up, but only 81 finished, and only 172 people got to the end of the first leg. That implies to me that only 172 people bothered to show up and attempt the run. The weather that year was good for running, with a high of 14 degrees. Nice and cool.
In 2009, there were 232 people signed up, but only 80 finished, and only 194 people got to the end of the first leg. I would say that 194 people showed up to run, but I remember seeing people dying on the first leg of that year. Almost literally; ambulances were involved. The temperature was 27 degrees that day which made it far too hot for most people. And as you can see, I was slower. I’m assuming the heat was the reason I got huge blisters all over my feet.
In 2010, there were 418 people signed up, but only 150 finished, and only 335 people got to the end of the first leg. Weather wise, I was thinking this year would be a lot cooler, but then looking at the predictions I found out that it was only two degrees cooler than last year. However, the clouds were much more forgiving. Annoyingly, the day before, and the day after, had great running weather; a day later, and I would have been running in clouds on Mount Grande. That would have been gorgeous.
I am consistently in the bottom half of people who finished. But considering that, on average, only 35% of people who sign up will finish, I’m okay with that. Heck, Jack Cook, running god that he is, who has won it three times, failed to finish it the past two years. I actually saw him throwing up on the top of Mount Hamel.
The first leg was the pretty much the same for every year. The goal is not to tire yourself out for the rest of the race. But because Grande Cache is so beautiful, I wanted to take pictures; I attached a camera bag to my waterbelt. Unfortunately, it slipped around my waist to position itself at my front, where it proceeded to bounce and hit parts of the anatomy that shouldn’t be hit. Eventually I got it to my side, where it still bounced. By the end of Leg 2 it was causing bruising, so I left it behind.
There was also a van “parked” in the middle of a creek bed on Leg 1. Someone was trying to use the ATV trails?
Leg 2 showed me the success of increasing the amount of stair training I had done. I found going up the mountains easier. And I never felt the need to stop and rest on the slugfest. At the rest station going up to Mount Grande, I was pulled aside and asked a few questions. A volunteer was concerned about me. I assured him I had been drinking lots of water. However I hadn’t been urinating, which is apparently an important procedure for continued health. I also told him I hadn’t been taking any ibuprofen. It would later occur to me that I had had some four days earlier and how would I know if it was out of my system. I would spend the rest of the run deeply concerned about any pains in my lower torso, sure that it was evidence my kidneys were failing.
I was trying a new strategy this year; eat more. In past years I would start losing energy in Leg 3, after covering 60km. From discussions, I figured it was because in the first leg I wasn’t eating anything (wasn’t hungry) and that was putting me in a deficit that I wasn’t getting out of. I figured out a way to make bottles of Boost much more convenient for drinking and was sucking them back for most of the course. However, the problem with eating more, is that you digest more. I should also have varied my food choices better (more protein). Leg 3 was where my body rebelled and I had to commune with nature.
Leg 3 was a very tough leg. It is often thought of being one of the easiest, because it is all downhill. But the footing can be treacherous, and due to the valley focusing the heat, and the time of day, it is hotter than it has any right to be. This year was especially bad, and lots of people dropped out after it. It was also two kilometres longer, and these kilometres were along a train track that seemed to radiate heat.
There was also administrative errors happening. Because Leg 3 was longer, the brochure stated that the cut-off time was extended by 15 minutes. That information didn’t get communicated to everyone, so some people got pulled off when they shouldn’t have.
According to the support team, many people came off Leg 3 looking terrible. I was not an exception. I needed quite some time in a chair to feel human again. But I knew that Leg 4 started with a long slow climb in the shade that would give me several hours to recover. The stair training made the climb easier than in past years. Don’t run the hills.
From the top down the sun started setting. (Wish I could have gotten a picture of it.) With foresight, I had taken my headlamp out early and was ready for it. It was still scary watching the person ahead of me NOT get their lamp out, despite going down “boulder alley” in increasing darkness. I had to tell him to let me pass because I didn’t want to be around when he injured himself.
When my lamp came on, I should have put my goggles on as well. But I quickly discovered that they were persistently foggy and impairing my vision too much. I decided to risk a branch in the eye just so I could see where I was going. Since I can still have both my eyes, it seems to have worked out.
The interesting thing about running in the dark is that it is so much harder to tell what slope the ground is at. There were many times that I was convinced that I was going uphill, albeit gently, and therefore an excuse to walk, when after looking at the elevation profile provided by my GPS unit proves I was level at worst.
By this time, last year, my feet were a mess of blisters. I had to stop off at one of the ambulances they had wandering around at Ambler and they put some protection over them, that really didn’t do anything. This year, I was mostly free of blisters. I had had a new strategy for them this year, which was: Don’t do anything. Previously I had used blister-proof socks, but I realized a few days before that I had not trained in them for many months. And the rule for races is to not experiment. I just used my regular socks, and didn’t worry about things. Now I only have blisters on my middle toes.
The run down Beaver Dam Road, all downhill, was not as fun as it sounds. I felt like I was going fast, but evidence proves otherwise. And at the end, my quads were in pain from all the braking. Lifting my legs was getting harder. But at the bottom, the start of Leg five, I was feeling much better than the start of Leg four. It was cool now.
While doing the fourth leg, I started to get a goal of finishing in under 22 hours. To do that, I would just have to shave fifteen minutes off my best time for Leg five; not outside the realm of possibility. While recovering at the transition station I figured I only needed to do 6km an hour.
Unfortunately, the first half of Leg five is brutal (brutal considering people have just run 100km.) It starts with a 100 metre climb followed by a long run through roots, rocks, and other tripping hazards that are hard to spot on a narrow path in the middle of the night. After an hour and a half, my GPS unit claimed I had only gone 6km. After the river crossing there is another steep hill, probably about 230 metres, followed by the “Root Route”, i.e. tripping hazards. But a funny thing happened; I found that if I actually ran, instead of shuffled along, it was easier on my quads and I didn’t seem to trip as much. I made excellent time, passing many other runners/walkers. It helped that I was convinced Mike would be right behind me; he always does better in the coolness of night.
I think the GPS was off, maybe it was only measuring horizontal distance? I crossed the finish line with thirteen minutes to spare. That got extended to eighteen minutes when they took into account the time it took to cross the river.
Go Death Racer!