Kel was singing with the band at the company holiday party this year. The gig went quite well, here's the playlist as far as I can remember it.
All Apologies - Nirvana
Bohemian Like You - Dandy Warhols
High and Dry - Radiohead
Rain - Dragon
Chasing Cars - Snow Patrol
Sway - Bic Runga (Kel lead vocals)
So Lonely - The Police (or just Sting?)
Proud Mary - Credence Clearwater Revival
Tuesday, December 16, 2008
Beach Series Race 7
Last night I ran race 7 in the beach series. I was busy last Tuesday, and the Tuesday before was crap weather, so I've been out of it for a couple of weeks.
Lunchtimes have been busy as well, with xmas shopping and errands, so I've only squeezed in a few medium length, moderate pace runs, and one speed workout. The one speed workout was 5 x 1100m repeats at 20:00 5k pace around North Harbour Stadium. It was tough, but not that tough, at least until the 5th one.
So given all that, I was a bit worried I'd be slower on this race. But despite a couple lazy weeks, I ended up running about 7 seconds faster than my previous record in the event (it was the nice low tide course again). Weather was great, maybe a little wind, and quite hot, but can't complain. I think that bit of improvement was mostly just concentrating on running the shortest line on the beach.
The next race is after the holidays, so I'm going to need to make an effort to train in Whakatane over the next couple of weeks.
I also managed to catch better splits this time:
Here's the map of the course, if you open it in a new window, you can check out the new Google Street View footage of the beach!
View Larger Map
Lunchtimes have been busy as well, with xmas shopping and errands, so I've only squeezed in a few medium length, moderate pace runs, and one speed workout. The one speed workout was 5 x 1100m repeats at 20:00 5k pace around North Harbour Stadium. It was tough, but not that tough, at least until the 5th one.
So given all that, I was a bit worried I'd be slower on this race. But despite a couple lazy weeks, I ended up running about 7 seconds faster than my previous record in the event (it was the nice low tide course again). Weather was great, maybe a little wind, and quite hot, but can't complain. I think that bit of improvement was mostly just concentrating on running the shortest line on the beach.
The next race is after the holidays, so I'm going to need to make an effort to train in Whakatane over the next couple of weeks.
Week | Time | Place | Notes |
---|---|---|---|
2 | 23:21 | 22nd | High tide course - loose sand, 3 laps. |
3 | 20:56 | 28th | Low tide course - perfect weather. |
4 | 22:52 | 28th | High tide course - good weather. |
7 | 20:49 | 21st | Low tide course - hot. |
I also managed to catch better splits this time:
Start to South End | 4:01 |
South End to North End | 5:13 |
North End to South End | 5:16 |
South End to North End | 5:17 |
North End to Finish | 1:00 |
Here's the map of the course, if you open it in a new window, you can check out the new Google Street View footage of the beach!
View Larger Map
Labels:
New Zealand,
Race,
Training
Tuesday, November 25, 2008
Beach Series Race 4
Last night was race 4 in the beach series. It was the high tide course again, so there was no way I was going to beat last weeks time. However, I did beat my previous time on the high tide course by a little over 20 seconds. So that was good.
This week's start was about 30 minutes after the peak of the high tide, so hopefully next week will be just after the lowest tide again. Definitely need to get some speed work in this week then. Easy recovery run today. The weather was great out there.
Last week I ended up in one of the photos on the website. Swimmers, runners, and kayakers all come running in to the same finish line, so the courses cross each other near the end.
This week's start was about 30 minutes after the peak of the high tide, so hopefully next week will be just after the lowest tide again. Definitely need to get some speed work in this week then. Easy recovery run today. The weather was great out there.
Week | Time | Place | Notes |
---|---|---|---|
2 | 23:21 | 22nd | High tide course - loose sand, 3 laps. |
3 | 20:56 | 28th | Low tide course - perfect weather. |
4 | 22:52 | 28th | High tide course - good weather. |
Last week I ended up in one of the photos on the website. Swimmers, runners, and kayakers all come running in to the same finish line, so the courses cross each other near the end.
Labels:
New Zealand,
Race,
Training
Wednesday, November 19, 2008
Using NMock to Create an IDataReader for Testing Data Access Methods
If you have a simple Data Access class with a method like the one below which you need to test without depending on specific values in the database (and without embarking on a major refactoring expedition).
Replace this:
With This:
Now create a test class that inherits from the Data Access class and override that virtual method. Like so:
Now in your test, create your mock DataReader to assign to the private variable and set the specific expectations of your data mapping.
public decimal GetAvailableBalance(int custNumb) { decimal retVal = 0.00M; using (SqlConnection sqlConnection = new SqlConnection(_dbConnection)) { sqlConnection.Open(); using (SqlCommand sqlCommand = sqlConnection.CreateCommand()) { sqlCommand.CommandType = CommandType.StoredProcedure; sqlCommand.CommandText = "dbo.GetCustomerBalance"; sqlCommand.Parameters.AddWithValue("CustomerID", custNumb); using (IDataReader dr = sqlCommand.ExecuteReader()) { if (dr != null) { dr.Read(); retVal = Convert.ToDecimal(dr["AvailableBalance"]); } } } } return retVal; }
Replace this:
sqlCommand.ExecuteReader()
With This:
public virtual IDataReader GetReader(SqlCommand cmd) { return cmd.ExecuteReader(); }
Now create a test class that inherits from the Data Access class and override that virtual method. Like so:
[TestFixture] public class IMTTests : TransactionStore { Mockery mocks = new Mockery(); IDataReader idr = null; public override IDataReader GetReader(SqlCommand cmd) { Expect.AtLeastOnce.On(idr).Method("Read").Will(Return.Value(true)); Expect.AtLeastOnce.On(idr).Method("Dispose"); return idr; }
Now in your test, create your mock DataReader to assign to the private variable and set the specific expectations of your data mapping.
[Test] public void TestAvailableBalance() { idr = (IDataReader)mocks.NewMock(typeof(IDataReader)); Expect.AtLeastOnce.On(idr).Get["AvailableBalance"].Will(Return.Value(42.00M)); Decimal amount = this.GetAvailableBalance(12345); Assert.AreEqual(42.00M, amount); }
Labels:
Agile,
Technology
Tuesday, November 18, 2008
Beach Series Race 3
Haydn and I ran Race #3 in the North Shore City Beach Series last night.
I came in at 20:56. That's nearly two and a half minutes faster than last week!
I'm very happy with that, especially pulling within 60 seconds of my goal (sub 20:00 by the end of the series). But unfortunately, most of that improvement comes from running on the open hard-packed sand of the low tide course as opposed to dodging through the crowd in the loose sand of the high tide course. So this leap was a free one. The next seconds I shave off are going to take some hard work.
To that end, I've started puttting together a speed training plan. I've found a perfect spot at nearby North Harbour Stadium that has some grassy soccer fields for running sprints and 400ish repeats, some stairs for doing bounding training, and a bike track around the outside of the stadium that measures about 1100 meters.
I took a run over today at lunchtime to give it a try. I pulled some repeat times off McMillan Running's pace calculator based on my 20:56 from last night. That gave me an 1100m repeat time of 4:24 to 4:42 (4:00/k). My race pace worked out to 4:11s, so that seemed reasonable.
I ran two of those at lunchtime to see how they felt. I did the first in 4:17, and the second at 4:29. It was hard, but not gut wrenching, so I think a set of five of those will definitely be one workout a week, probably Friday's. Next I'll give some 400 repeats a try.
My next milestone goal is to beat the Under-13 leader (20:08 last night). I know marathon training has worn away all my speed, but it's still crazy to see little knee-high 10 year olds running barefoot and pulling away from me. ;-)
I came in at 20:56. That's nearly two and a half minutes faster than last week!
I'm very happy with that, especially pulling within 60 seconds of my goal (sub 20:00 by the end of the series). But unfortunately, most of that improvement comes from running on the open hard-packed sand of the low tide course as opposed to dodging through the crowd in the loose sand of the high tide course. So this leap was a free one. The next seconds I shave off are going to take some hard work.
To that end, I've started puttting together a speed training plan. I've found a perfect spot at nearby North Harbour Stadium that has some grassy soccer fields for running sprints and 400ish repeats, some stairs for doing bounding training, and a bike track around the outside of the stadium that measures about 1100 meters.
I took a run over today at lunchtime to give it a try. I pulled some repeat times off McMillan Running's pace calculator based on my 20:56 from last night. That gave me an 1100m repeat time of 4:24 to 4:42 (4:00/k). My race pace worked out to 4:11s, so that seemed reasonable.
I ran two of those at lunchtime to see how they felt. I did the first in 4:17, and the second at 4:29. It was hard, but not gut wrenching, so I think a set of five of those will definitely be one workout a week, probably Friday's. Next I'll give some 400 repeats a try.
My next milestone goal is to beat the Under-13 leader (20:08 last night). I know marathon training has worn away all my speed, but it's still crazy to see little knee-high 10 year olds running barefoot and pulling away from me. ;-)
Week | Time | Place | Notes |
---|---|---|---|
2 | 23:21 | 22nd | High tide course - loose sand, 3 laps. |
3 | 20:56 | 28th | Low tide course - perfect weather. |
Labels:
New Zealand,
Race
Saturday, November 15, 2008
Shifting Gears
After this last marathon, I decided to run some shorter races for a while. 5K's to be specific. The North Shore City Beach Series is a 16 week series of races on Tuesday nights at Takapuna beach.
I ran race #2 last week (race 1 was 2 days after the marathon). I ran 23:21, which put me 22nd out of 116 competitors. My best 5k would have put me in 3rd! That might be out of reach without a hell of a lot of work, but I'm hoping to be running under 20 minutes by the end of the series early in the new year. A sub 20 5k would put me in the top 10 as of this week, but I noticed from the results posted for last year that times improve a lot as the weeks go on.
The main thing I have to work on now is speed. I noticed that although I wasn't too winded, I just couldn't pull any more speed out of my legs in this last race.
In any case, I'll be glad to trade 30 kilometer runs for sets of 400 meter repeats. ;-)
I ran race #2 last week (race 1 was 2 days after the marathon). I ran 23:21, which put me 22nd out of 116 competitors. My best 5k would have put me in 3rd! That might be out of reach without a hell of a lot of work, but I'm hoping to be running under 20 minutes by the end of the series early in the new year. A sub 20 5k would put me in the top 10 as of this week, but I noticed from the results posted for last year that times improve a lot as the weeks go on.
The main thing I have to work on now is speed. I noticed that although I wasn't too winded, I just couldn't pull any more speed out of my legs in this last race.
In any case, I'll be glad to trade 30 kilometer runs for sets of 400 meter repeats. ;-)
Week | Time | Place | Notes |
---|---|---|---|
2 | 23:21 | 22 | High tide course - loose sand, 3 laps. |
Monday, November 03, 2008
Auckland Marathon 2008
This weekend I ran the Auckland Marathon. This was my 9th marathon, and my 3rd Auckland marathon.
It was also my fastest marathon to date. I ran a 3:38:53, beating my previous record of 3:48:11 by almost 10 minutes! At the same time, I took back the crown from my friend Craig in our little marathon competition.
I think I was probably in the best long distance shape I've ever been in going into this. I was in good shape for my first marathon (and second fastest) in 2002, but I took about 6 weeks off running just before the race with a heel injury (which was annoyingly not even running related - long story). So thanks to Kel, Paul, Staton, Benny, Haydn, and all my training partners for that!
The race conditions were excellent, they'd been forecasting rain, but it never showed up. There was a bit of a headwind on the last 10k or so, and the sun warmed things up a bit in the last hour, but I definitely can't complain about the weather.
Our pace was a bit of a change in plans. My friend Paul and I had been doing long runs at about 5:50-6:00 Km pace. My weekday runs varied anywhere from 5:15 to 6:15. But after seeing Craig's results in the Marine Corp Marathon the weekend before, that had to move up a little. I decided that since Craig had run a 3:50, I might as well set a PR and break 3:48. So I checked with Paul, who was more than happy to shoot for that, and I grabbed pace bands for 3:45.
Once the race started, we settled in behind a pace group leader for a 1:50 half marathon. Strangely, that felt a little bit slow, so we passed her up and pushed on slightly faster. We ran quite evenly, give or take a bit for hills, and by the halfway point, we'd built up about a 6 minute buffer on our 3:45 goal.
By about 24 K, Paul was starting to feel the impact of the faster pace. His goal was sub 4:00 so I pushed on ahead.
At about 30 K I realized that I had 1 hour and 5 minutes to do 12k if I was going to hit my goal of 3:45. That was not a happy hour to look forward to at that point, so I focused on doing the next kilometer in under 5 minutes, and the next, and so on. I saw Paul again about a minute behind me from the out-and-back turnaround point, so that was good!
With about 3K to go I got the idea that I could break 3:40 if I just held it together for a couple more Ks. I choked down half a cup of water at the last stop and finished with the fastest 3Ks I've done in any marathon finish! It even ended up with a bit of a sprint at the end as I saw that my gun time would be just under 3:40 as well!
I didn't see Paul at the finish line, but I heard the next day at work that he'd come in at 3:58! Kel ran the quarter marathon (10K + change) in 1:15 (a PR for her as well), so a great day all around.
It was also my fastest marathon to date. I ran a 3:38:53, beating my previous record of 3:48:11 by almost 10 minutes! At the same time, I took back the crown from my friend Craig in our little marathon competition.
I think I was probably in the best long distance shape I've ever been in going into this. I was in good shape for my first marathon (and second fastest) in 2002, but I took about 6 weeks off running just before the race with a heel injury (which was annoyingly not even running related - long story). So thanks to Kel, Paul, Staton, Benny, Haydn, and all my training partners for that!
The race conditions were excellent, they'd been forecasting rain, but it never showed up. There was a bit of a headwind on the last 10k or so, and the sun warmed things up a bit in the last hour, but I definitely can't complain about the weather.
Our pace was a bit of a change in plans. My friend Paul and I had been doing long runs at about 5:50-6:00 Km pace. My weekday runs varied anywhere from 5:15 to 6:15. But after seeing Craig's results in the Marine Corp Marathon the weekend before, that had to move up a little. I decided that since Craig had run a 3:50, I might as well set a PR and break 3:48. So I checked with Paul, who was more than happy to shoot for that, and I grabbed pace bands for 3:45.
Once the race started, we settled in behind a pace group leader for a 1:50 half marathon. Strangely, that felt a little bit slow, so we passed her up and pushed on slightly faster. We ran quite evenly, give or take a bit for hills, and by the halfway point, we'd built up about a 6 minute buffer on our 3:45 goal.
By about 24 K, Paul was starting to feel the impact of the faster pace. His goal was sub 4:00 so I pushed on ahead.
At about 30 K I realized that I had 1 hour and 5 minutes to do 12k if I was going to hit my goal of 3:45. That was not a happy hour to look forward to at that point, so I focused on doing the next kilometer in under 5 minutes, and the next, and so on. I saw Paul again about a minute behind me from the out-and-back turnaround point, so that was good!
With about 3K to go I got the idea that I could break 3:40 if I just held it together for a couple more Ks. I choked down half a cup of water at the last stop and finished with the fastest 3Ks I've done in any marathon finish! It even ended up with a bit of a sprint at the end as I saw that my gun time would be just under 3:40 as well!
I didn't see Paul at the finish line, but I heard the next day at work that he'd come in at 3:58! Kel ran the quarter marathon (10K + change) in 1:15 (a PR for her as well), so a great day all around.
Km Elapsed Split Notes
1 ??? (5:21)
2 10:43 (5:21) 10:43
3 15:26 4:43
4 20:55 5:28 w
5 25:32 4:37
6 30:23 4:50
7 35:10 4:46
8 40:10 5:00 w
9 ??? (5:17) -
10 50:46 (5:17) 10:35
11 55:43 4:56
12 1:01:14 5:31
13 ??? (5:15)
14 ??? (5:15)
15 ??? (5:15)
16 1:22:15 (5:15) w21:01
17 1:27:33 5:17
18 1:33:42 6:09 Long?
19 1:37:40 3:58 Short?
20 1:43:05 5:24 -10k 52:29
21 1:48:24 5:19
22 1:54:32 6:07 w-
23 1:59:49 5:17
24 2:05:03 5:13
25 2:10:02 4:58 left Paul. (avg 5:12 -> 5:09)
26 2:14:57 4:55 w
27 2:20:06 5:09
28 2:25:02 4;56
29 ??? (5:07) w
30 2:35:17 (5:07) 10:15 -10k 52:12
31 ??? (5:12)
32 2:45:43 (5:12) w10:25
33 2:50:55 5:12
34 2:55:44 4:48
35 3:01:00 5:16 w
36 3:05:56 4:55
37 3:11:22 5:25
38 3:16:40 5:18
39 3:22:18 5:37 w
40 3:27:30 5:11 -10k 52:13
41 ??? (5:10)
42 ??? (5:10)
42.2 3:38:53 (1:02) 11:23
8:20 miles
5:11 ks
Labels:
Marathon,
New Zealand,
Race
Friday, October 31, 2008
Monday, October 27, 2008
10K "Fun Run"
Kel and I spent the Labour Day weekend in Whakatane.
While we were there I needed to do my last long(ish) run before the Auckland Marathon next Sunday. So I thought I'd head over to Ohope beach on Sunday morning and do the Ohope Beach Walk 2 Health Challenge. The entry fee goes to a good cause (Bay Hospice), it was a nice day, Ohope is a beautiful beach, and they'd measured out a nice series of courses (3k, 5k, and 10k).
The only drawback was something my marathon training plan had warned me about: wasting the extra energy that builds up from the decreasing training mileage to go and run too fast on a useless workout.
But that won't happen to me I thought as I listened to the pre-event briefing, where they too said "this isn't a race, there are no prizes for coming in first, go out and have fun".
But sure enough, once the run started, I gradually accelerated and ended up running a PR in the 10K by nearly 2 minutes (if the course is accurate)! My time was 44:08 over a previous best of 46:02. So the course would need to be off by over half a K for that not to be some kind of PR.
Oops . . . Oh well, doesn't seem to have impaired me too much. I feel quite good today, so I suppose we'll see how a medium long, slow recovery run goes tomorrow.
By the way, here's Ohope beach . . . notice the miles and miles of beautiful sand and surf without a person in sight! You'll see a few more people in the summer, but it never gets near anything you'd call crowded.
While we were there I needed to do my last long(ish) run before the Auckland Marathon next Sunday. So I thought I'd head over to Ohope beach on Sunday morning and do the Ohope Beach Walk 2 Health Challenge. The entry fee goes to a good cause (Bay Hospice), it was a nice day, Ohope is a beautiful beach, and they'd measured out a nice series of courses (3k, 5k, and 10k).
The only drawback was something my marathon training plan had warned me about: wasting the extra energy that builds up from the decreasing training mileage to go and run too fast on a useless workout.
But that won't happen to me I thought as I listened to the pre-event briefing, where they too said "this isn't a race, there are no prizes for coming in first, go out and have fun".
But sure enough, once the run started, I gradually accelerated and ended up running a PR in the 10K by nearly 2 minutes (if the course is accurate)! My time was 44:08 over a previous best of 46:02. So the course would need to be off by over half a K for that not to be some kind of PR.
Oops . . . Oh well, doesn't seem to have impaired me too much. I feel quite good today, so I suppose we'll see how a medium long, slow recovery run goes tomorrow.
By the way, here's Ohope beach . . . notice the miles and miles of beautiful sand and surf without a person in sight! You'll see a few more people in the summer, but it never gets near anything you'd call crowded.
Labels:
NewZealand,
Race,
Training
Wednesday, October 22, 2008
Minnesota Absentee Ballot
I think I've now completed the process to submit my absentee ballot.
Minnesota made it quite easy . . . I was able to complete my request and overseas registration (FPCA) by scanning and emailing the documents to the Hennepin County election officials.
They acknowledged that when it was received, then sent me the ballot paperwork as PDFs via email.
Those then had to be printed, and snail-mailed back, but overall turnaround was about a week.
Now all that's left is watching the election coverage. I normally get all my U.S. news from The Daily Show and The Onion, but I'll be curious to see what TVNZ do for election night (afternoon for us).
https://www.overseasvotefoundation.org/
https://minnesota.overseasvotefoundation.org/
Thursday, October 16, 2008
Stolen Bike
Our shed was broken into the other night and my mountain bike stolen. Fortunately, Kel's bike was in my car at the time, so they only got one of two bikes out of the shed, but I'm still pretty annoyed about the whole thing. The police have been very helpful, they came out to fingerprint and everything, much better service than you'd get in the states for this kind of thing. But I'm not holding my breath.
I think we'll be moving all the toys down to Whakatane this weekend.
Damn this pisses me off! I liked that bike. :-(
By the way, if any readers are in the North Shore area and come across a dodgy bike sale, let me know if you see a black Giant XTC 3. It's got a couple of very distinctive features that I could identify straight away if I (or the police) can get a close enough look at it.
I think we'll be moving all the toys down to Whakatane this weekend.
Damn this pisses me off! I liked that bike. :-(
By the way, if any readers are in the North Shore area and come across a dodgy bike sale, let me know if you see a black Giant XTC 3. It's got a couple of very distinctive features that I could identify straight away if I (or the police) can get a close enough look at it.
Labels:
New Zealand
Thursday, October 02, 2008
Darjit Bird Sculptures
I've made a couple of updates to Kel's site.
Last weekend we drove over to Katikati to drop off a couple of darjit sculptures she's just finished for the Katikati Open Air Arts festival.
The Hanging Bird has been in it's tree all week, but unfortunately, the Standing Bird was knocked over and damaged by volunteers as they were moving them out to the park for display in the morning. (Unbeknownst to us, they were moving all the sculptures from the park to a fenced in yard every evening, all but the Hanging Bird and some of the bigger ones anyway).
Unfortunately, that was the first day it would have been on display, and the day before the judging. Needless to say, Kel's not too happy about the damage, and definitely not happy that the Hanging Bird is out in the park all night by itself.
Hopefully, the damage is repairable, but it'll take time, and it may be a while before we have any pictures of it outside looking the way it should.
Labels:
Kel,
New Zealand,
Sculpture
Monday, September 22, 2008
The Legend
The race this weekend went great. I finished in 1:46.21. As far as I can remember, that's my fastest half marathon, though I suppose that's not too difficult, as the next fastest that I know of was the halfway split in my first marathon (1:49:40). I haven't run a lot of on-road halves.
Anyway, the day was fantastic, sunny and pleasant. The course was hilly, but nowhere near as tough as the website made it sound. Our weekend long run course on Whangaparoa road is quite a lot tougher. That said, there were a lot of rolling hills and nice smooth downhills.
Here are the splits (markers were every 2km)
My watch data is a little bit muddled from 16-20km. I think I got some of the full marathon distance markers mixed up with the half markers. But whatever happened, I was definitely averaging 4:34s from 15km to the finish! I would love to have the splits from the last 2km. 18-20 is 8:27 in my watch, but I'm not certain that's right.
Anyway, the day was fantastic, sunny and pleasant. The course was hilly, but nowhere near as tough as the website made it sound. Our weekend long run course on Whangaparoa road is quite a lot tougher. That said, there were a lot of rolling hills and nice smooth downhills.
Here are the splits (markers were every 2km)
2k - 10:07 (5:03s)
4k - 19:47 (4:50s)
6k - 30:30 (5:21s)
8k - 40:27 (4:59s)
10k - 51:55 (5:44s)
12k - 1:04:04 (6:04s) - big uphills.
14k - 1:14:20 (5:08s)
16k - (4:34s)
18k - (4:34s)
20k - (4:34s) 8:27? (4:13s)
21k - 1:46:21
My watch data is a little bit muddled from 16-20km. I think I got some of the full marathon distance markers mixed up with the half markers. But whatever happened, I was definitely averaging 4:34s from 15km to the finish! I would love to have the splits from the last 2km. 18-20 is 8:27 in my watch, but I'm not certain that's right.
Thursday, September 18, 2008
Marathons Past
This last weekend I did a 34k training run. That may be the furthest I've ever run outside of an actual marathon. It was definitely almost as tough as running a marathon itself.
It got me thinking about past races and times. It occurred to me that I'd lost track of how many marathon's I've run. I had the feeling it was somewhere around 10, but I couldn't be sure.
After a bit of searching around the websites of the races I've run, it turns out that this upcoming Auckland marathon will be my 9th. For future reference, here are the races and times:
It got me thinking about past races and times. It occurred to me that I'd lost track of how many marathon's I've run. I had the feeling it was somewhere around 10, but I couldn't be sure.
After a bit of searching around the websites of the races I've run, it turns out that this upcoming Auckland marathon will be my 9th. For future reference, here are the races and times:
Event | Time | Comments |
---|---|---|
Grandma's Marathon 2002 | 3:48:11 | First Marathon with Craig, Pete, and Scott |
Twin Cities Marathon 2003 | 3:59:54 | Ran by myself, beautiful weather. Breaking 4:00 in this race is what made me think I could just keep running without training. |
Grandma's Marathon 2004 | 4:00:20 | Ran with Peter Akimoto. Stayed in the Clown House. I probably would have wimped out on this one if Peter hadn't been keen on driving up to Duluth on Friday night. |
Twin Cities Marathon 2005 | 5:18:06 | Ran this one with some first timers from work. For the record, running slower is more painful that just running as fast as you can (To a point at least, the very first marathon, I was at the best fitness level, but in the worst shape at the starting line, and in the most pain afterwards.) |
Auckland Marathon 2006 | 4:28:16 | First New Zealand Marathon. This one made me decide that I'd better get training again after all. |
Rotorua Marathon 2007 | 4:51:10 | This one was brutal. Pouring rain at the start line, cold wind later. This is the only marathon where I thought for a while that I might not finish. |
Auckland Marathon 2007 | 4:08:20 | I was in overall good shape for this one, but not the greatest running shape. I held the end together quite well, but just didn't have the leg muscles to finish under 4:00 |
Rotorua Marathon 2008 | 4:07:03 | Much better than the last Rotorua, in fact the day was nearly perfect. Same story as Auckland 2007, good run, just couldn't pull in under 4:00 |
The last few months I've put in more running than any year since 2002. We'll see how that works out.
This weekend I'm running a half Marathon. "The Legend" named for Arthur Lydiard's training route in the Waitakere's. Looking at Arthur's training methods, they're nearly identical to what my old high school cross country coach used to use. I may have to study up on that again, I wouldn't mind seeing how close I can get to my 5k PR (18:03) one of these days in between marathons.
Anyway, here's The Legend, I'll post a race report afterwards:
Wednesday, September 10, 2008
Compile Error in ASP.Net (error CS0103: The name 'X' does not exist in the current context)
Note: I would have liked to title this post "Microsoft Voodoo make Hulk MAD!!" but for reasons outlined in the rant below, I went with the title above.
The Problem
In an ASP.Net web project you may see one of these two compile error messages referring to a control in a page:
In the Visual Studio 2005 Output window:
"error CS0103: The name 'X' does not exist in the current context"
"error CS0117: 'XPage' does not contain a definition for 'X'"
and
In the VS.Net 2005 Compile Error List
"The name 'X' does not exist in the current context."
Where 'X' is your control variable name (like TextBox1). If you're seeing these, then you may have the same problem I did.
My problem more specifically was that I was copying files from one (working) VS.Net solution which contained one sort of web project, to another stand-alone project. I needed the new project to have a .CSProj file so our build guys could compile the site with whatever they're using. As soon as I copied the first non-static content into the new Project, the errors above started.
My Solution
The technical root cause of the problem was that there was no variable referring to the control(s) in the page object model.
More details
When I added a new page from scratch, a WebForm1.aspx.designer.CS file appeared, with the following code in it:
protected global::System.Web.UI.WebControls.TextBox TextBox1;
Hmmm . . . why did the other page not have a designer.cs file? In fact the original project I was copying from has no Designer.cs files at all.
I went back to the other (working) project and right clicked on the object referece to my control. In response to "Go to Definition" I got a message box stating:
"The definition of the object is hidden."
WTF?!?
Hidden where exactly? Visual Studio's little "Show All Files" option is greyed out. A look at the file system revealed no mystery files. This was starting to sound familiar from my long ago reading about new partial class features.
After Googling "The definition of the object is hidden" I had my answer (see references for details, specifically [1]).
It turns out that I'd stumbled into a gap between "Web Site Project" and "Web Application Project"[2]. I was attempting to manually copy files from a "Web Site" into a "Web Application". In a "Web Site Project", the compiler does some code generation for you, and hides it away in a temporary assembly stored in the location specified by
HTTPRuntime.CodeGenDir
. "Web Application Projects" were rolled into VS.Net 2005 with Service Pack 1.
So anyway, throwing the textBox variable declaration into the code-behind file allowed a successful compile with a cut down version of the page. That was definitely it.
Now that I knew what I was looking for, I searched on "Converting a Web Site Project to a Web Application Project". Sure enough, that turned up [4] Walkthrough: Converting a Web Site Project to a Web Application Project in Visual Studio 2005
Great . . . not only does this guide contain an exact description of the specifics of the problem, but it's a detailed guide to the solution. I still need to read a bit more of this tomorrow, but this has certainly cleared the biggest roadblock. To rub salt in the wounds, if you do the file copy from IDE window to IDE window it all happens magically, I never would have seen this problem at all:
"Visual Studio includes an option to convert pages and classes within Web application projects to use partial class declarations. Partial classes are used to separate designer-generated code from code-behind code. These designer-generated classes are stored in a separate file from the code-behind file. This conversion process causes Visual Studio 2005 to recursively examine every page, user-control, and master-page in the project, and to automatically generate a .designer.cs file for each. Visual Studio also changes the .aspx or .ascx files to use the codeBehind attribute instead of the codeFile attribute."
<BonusRant read="optional">
I get incredibly annoyed with some of these 'easy' problems. I want to be able to just look up the error message in a search engine, but it seems I always run across the same pattern of search results:
1. Often the top couple of hits are totally irrelevant sites that happened to be experiencing the same error at the time that the crawler bot visited.
2. The next hit or two are even more annoying. Typically, it's somebody who has innocently(naively) cut and pasted their error message into some forum site or support board. Their post is at the top, then there follow the useless trolls and know-it-alls who bitch about posting off topic or demand more irrelevant data. Then the whole thing either trails off, or the person solves their own problem, but doesn't post the solution. Better forums at least they put a little mark on the solution (if one has emerged).
3. After the first page or so of search results, you just get forum sites that scrape other forum sites, or tons of cross posts of the original problem to ghost-town forums.
So anyway, the moral of this story is: here's my contribution back to the internet: The error message and a solution in one troll-free page. ;-) I've seen quite a number of search hits for other technical posts here, so hopefully this helps somebody.
1. Often the top couple of hits are totally irrelevant sites that happened to be experiencing the same error at the time that the crawler bot visited.
2. The next hit or two are even more annoying. Typically, it's somebody who has innocently(naively) cut and pasted their error message into some forum site or support board. Their post is at the top, then there follow the useless trolls and know-it-alls who bitch about posting off topic or demand more irrelevant data. Then the whole thing either trails off, or the person solves their own problem, but doesn't post the solution. Better forums at least they put a little mark on the solution (if one has emerged).
3. After the first page or so of search results, you just get forum sites that scrape other forum sites, or tons of cross posts of the original problem to ghost-town forums.
So anyway, the moral of this story is: here's my contribution back to the internet: The error message and a solution in one troll-free page. ;-) I've seen quite a number of search hits for other technical posts here, so hopefully this helps somebody.
</BonusRant>
References
[1]The Definition of the Object is Hidden
http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=115127
[2]Visual Studio.Net 2005 Web Application Projects
http://msdn.microsoft.com/en-us/asp.net/aa336618.aspx
[3]ASP.Net 2.0 Hidden Files and Assemblies
http://blogs.msdn.com/daviddu/archive/2006/06/03/616324.aspx
[4]Walkthrough: Converting a Web Site Project to a Web Application Project in Visual Studio 2005
http://msdn.microsoft.com/en-us/library/aa983476(VS.80).aspx
Labels:
Technology
Monday, September 01, 2008
Tech Ed NZ 2008
Tech Ed New Zealand is on at the moment. It's day two.
I was excited about it over the weekend and yesterday morning, but I've had enough now.
This is one of those in between years when everything is pretty much where it was last year. Visual Studio 2008 and .Net Framework 3.5. I didn't even see anything shiny or fun in the Silverlight or WPF department. Most annoying of all, in between sessions when I went down to play in the hands on labs, all the lab virtual machines had expired beta versions of Expression Blend, rendering them unusable for WPF and Silverlight labs.
Ah well, maybe it will be more fun next year. I really only learn from what I work with every day anyway. At the moment, that's WCF via VS.Net 2005, most of my work doesn't even have GUIs other than my own test harnesses.
Speaking of testing, one of my co-workers: Rob Fonesca-Ensor gave a presentation on Dependency Injection, Inversion of Control and Unit Testing during the New Zealand .Net Users Group Code Camp on Sunday. Very good presentation. There's some stuff I'll actually use soon, I need to do some follow-up on the Ninject framework.
Two other good things out of Tech Ed: Scott Hanselman is coming over here to talk to our developers in our lunchroom for a couple hours. Scott's ASP.Net MVC presentation was the high point of day one. Then OpShop is playing at TechFest tonight.
I was excited about it over the weekend and yesterday morning, but I've had enough now.
This is one of those in between years when everything is pretty much where it was last year. Visual Studio 2008 and .Net Framework 3.5. I didn't even see anything shiny or fun in the Silverlight or WPF department. Most annoying of all, in between sessions when I went down to play in the hands on labs, all the lab virtual machines had expired beta versions of Expression Blend, rendering them unusable for WPF and Silverlight labs.
Ah well, maybe it will be more fun next year. I really only learn from what I work with every day anyway. At the moment, that's WCF via VS.Net 2005, most of my work doesn't even have GUIs other than my own test harnesses.
Speaking of testing, one of my co-workers: Rob Fonesca-Ensor gave a presentation on Dependency Injection, Inversion of Control and Unit Testing during the New Zealand .Net Users Group Code Camp on Sunday. Very good presentation. There's some stuff I'll actually use soon, I need to do some follow-up on the Ninject framework.
Two other good things out of Tech Ed: Scott Hanselman is coming over here to talk to our developers in our lunchroom for a couple hours. Scott's ASP.Net MVC presentation was the high point of day one. Then OpShop is playing at TechFest tonight.
Labels:
New Zealand,
tenz8
Wednesday, August 27, 2008
Waikato Tough Guy and Gal
The photos are finally available from the race.
It was a 6 (1 lap) or 12 (2) kilometer race through a mud track and army-style obstacle course.
Kel ran her 6K in 1:20:23
I did the 12K in 1:35:33
My lap 1 was 43:06
Lap 2 was 52:26.
It felt like lap 2 was slower mostly due to congestion on the course and obstacles.
Weather was good, rain overnight (good for mud), but mostly sunny and just slightly chilly during the race. We had just a bit of a shower about halfway through.
Overall a lot of fun, definitely have to do this one again next year. Hopefully we can get a team together next time!
Labels:
Adventure,
New Zealand,
Race,
Training
Wednesday, August 13, 2008
Tuesday, July 22, 2008
Updates to Kel's Site
Kel did another Darjit Sculpture workshop this last weekend.
This time she made a couple of bird sculptures. One for an upcoming competition.
http://www.kelhicreative.com/DarjitGallery.htm
This time she made a couple of bird sculptures. One for an upcoming competition.
http://www.kelhicreative.com/DarjitGallery.htm
Labels:
New Zealand
Sunday, June 15, 2008
Snowplanet
It's winter here in New Zealand, and the ski slopes are starting to open. I heard the other day that this is the earliest opening for some since 1992.
Later this season we'll get down to the south island to hit Cadrona or Treble Cone. But in the meantime, Staton and I went up to check out Snowplanet.
In Minnesota, there'd be no need for a place like this. But down here, even in the depths of winter, you'd have to drive 3 or 4 hours from Auckland to find snow. Even then it's hit or miss. We went skiing at Whakapapa last year towards the end of the season, and the snow was pretty poor.
Snowplanet's like a bunny hill in a box. Like a Minnesota hill, you spend more time on the lift and in the queue than on the downhill, but it's nice for knocking a little rust off before heading for the mountains.
Later this season we'll get down to the south island to hit Cadrona or Treble Cone. But in the meantime, Staton and I went up to check out Snowplanet.
In Minnesota, there'd be no need for a place like this. But down here, even in the depths of winter, you'd have to drive 3 or 4 hours from Auckland to find snow. Even then it's hit or miss. We went skiing at Whakapapa last year towards the end of the season, and the snow was pretty poor.
Snowplanet's like a bunny hill in a box. Like a Minnesota hill, you spend more time on the lift and in the queue than on the downhill, but it's nice for knocking a little rust off before heading for the mountains.
Labels:
Adventure,
New Zealand,
Ski
Saturday, May 10, 2008
New Zealand Music Month
In honour of NZ Music month, I thought I'd link some of my favorite Kiwi Music.
In no particular order or organisation:
Evermore: Running
Minuit: Fuji
Atlas: Crawl
Scribe: F.R.E.S.H.
Scribe: Say it Again
Solaa: Sylphlike
Tiki Taane: Tangaroa (God of the Sea)
Have a look at Amplifier.co.nz as well.
In no particular order or organisation:
Evermore: Running
Minuit: Fuji
Atlas: Crawl
Scribe: F.R.E.S.H.
Scribe: Say it Again
Solaa: Sylphlike
Tiki Taane: Tangaroa (God of the Sea)
Have a look at Amplifier.co.nz as well.
Labels:
Music,
New Zealand,
NZMusicMonth
Rotorua Marathon 2008
I completed the Rotorua Marathon last weekend (May 3rd).
I ran 4:07:03, which is my fastest New Zealand marathon, and way better than Rotorua last year. However it's a ways off my best marathon time (3:48), and probably not quite fast enough to keep me ahead of Craig when he runs the Marine Corp marathon in October. Fortunately, the Auckland Marathon is just a few days later (2 Nov), so I've got something definite to shoot for if Craig does beat me. ;-)
Anyway, conditions were just about perfect for Rotorua this year. Sunny, slightly cold, dry, and partly cloudy. It was an all around fantastic day for running. The only possible compliant is a little bit of a headwind along the open stretches around kilometers 25 to 35 or so.
My splits are surprisingly even. I can't come up with any issues with this race: Weather was perfect, the course is fast, and my nutrition/hydration felt great this time. I just need to do some training and run faster next time. I think that 8:01 for K35 is a misplaced marker. I did take a food break around there, but not that long, the 5:30 before that makes it doubly suspicious. I think that 5:30 probably ought to be about 6:30, with one minute off the 8:00 and about 30-40 seconds of the remaining 7:00 going to slacking off at the water stop. That would make the last kilometer my slowest at 7:06 (pretty much to be expected), and my fastest that 4:57 on the big downhill on the back side of the lake (also no surprise).
Km Elapsed Split
1 6:06 6:06
2 11:56 5:50
3 17:17 5:20
4 22:54 5:36
5 28:15 5:21
6 33:35 5:19
7 38:38 5:02
8 44:11 5:33
9 49:31 5:19
10 55:04 5:32
11 1:00:36 5:32
12 1:05:56 5:19
13 1:11:09 5:13
14 1:16:35 5:25
15 1:21:57 5:22
16 1:27:54 5:57
17 1:33:59 6:04
18 1:38:56 4:57
19 1:44:30 5:33
20 1:50:20 5:50
21 1:56:33 6:13
22 2:02:05 5:31
23 2:07:27 5:21
24 2:13:27 6:00
25 2:19:29 6:01
26 2:25:04 5:34
27 2:31:01 5:57
28 2:36:28 5:26
29 2:42:19 5:50
30 2:48:06 5:47
31 2:54:06 5:59
32 3:00:30 6:24
33 3:07:27 6:56
34 3:13:01 5:33
35 3:21:02 8:01
36 3:27:28 6:25
37 3:33:55 6:26
38 3:40:24 6:28
39 3:47:06 6:42
40 3:53:36 6:29
41 3:59:58 6:22
42 4:07:03 7:06
Labels:
Marathon,
New Zealand,
Race,
Training
Sunday, May 04, 2008
Photo Catchup Part II
Still more catching up to do . .
As a Christmas present, I enrolled Kel in a Darjit Garden Sculpture workshop over in Tauranga. She created a planter for her mum's garden.
I took some photos, then headed off to climb Mt. Maunganui, and do some surf kayaking at the beach.
She liked that class so much, she enrolled for another one before leaving at the end of the second day. In that one she's been making a big garden throne. That's still in progress, she's going to cover it with mosaic.
A couple of weekends ago I drove down to Tauranga to pick it up (it takes a week to dry, and Kel was on call that next weekend). On the way back, I stopped in Hamilton to catch the Nightglow part of the Balloons Over Waikato festivities.
Over the last few weeks, we've been photographing all of Kel's paintings and Sculptures, and posting them to a web site we've set up. http://www.kelhicreative.co.nz/. I'll post more of the Darjit Garden Sculpture photos there as they progress.
Photo Catchup
Alright, It's been way too long since I've posted to do much in the way of catchup. I'll have to settle for a barrage of photos. Here goes:
Highlights:
After getting back to New Zealand, we had a second holiday celebration down in Whakatane, Kel's hometown in the Bay of Plenty. For those of you who've met Kel's mother's dog Cindy, we saw her for the first time after her summer haircut, it was hilarious! Definitely much nicer to have the shorter coat for swimming over at Ohope.
Ok, this post is getting long. To be continued. . .
Trip to Minnesota, late December early January
Highlights:
- Seeing family again
- Kel's first white Xmas
- Staying up North at Grand View Lodge with the gang
- Dogsledding
- Cross Country Skiing with Craig and Jeff
- Catching up with friends in town
- Seeing all the Xmas Lights
- Catching a Wild game in St. Paul
Second Christmas in Whakatane
After getting back to New Zealand, we had a second holiday celebration down in Whakatane, Kel's hometown in the Bay of Plenty. For those of you who've met Kel's mother's dog Cindy, we saw her for the first time after her summer haircut, it was hilarious! Definitely much nicer to have the shorter coat for swimming over at Ohope.
Miscellaneous News from back in NZ
- In mid January, I did the Wild Turkey Off-Road Half Marathon. That was a blast, after about 7 km along the beach, it had a whole long canyoneering section in the middle. I spent more time taking photos than running, but it was all great fun. My friend Staton spent most of the race trying to keep his iPod dry. :-)
- For my birthday this year, Kel bought me a kayak! That's been out several times now, around Whakatane and Mt Maunganui.
- We went to see Bon Jovi in Christchurch
Ok, this post is getting long. To be continued. . .
Subscribe to:
Posts (Atom)