Archive for the ‘Revelation’ Category

Let’s see, today I

  • Fixed a bug that I’ve been working on for over a week (which I would have fixed in a day if the China team hadn’t put in a kluge to hide the most visible symptom). Oh, and the root cause was a module that the China team had written violating a basic assumption of my pre-existing gui code.
  • Had a job interview at Paychex which went pretty well, but included a strange little math test at the end which was fun but I’m not sure how relevant it is.
  • Went for a paddle - I meant to make six miles, but I only managed four because my shoulder is bugging me.
  • Got a call from the sleep clinic at Sleep Insights “reminding” me that I had a consult appointment at 11:20 am tomorrow, which is kind of strange because I had a sleep study at a completely different sleep clinic tomorrow evening.

I thought about writing more on each of those things, but I figured my blog is boring enough without the help. So if you really need more details, comment and I’ll inflict more detail on you.

Today I did the same paddle as I wrote about in Rants and Revelations » Blog Archive » Long Slow Distance training.

The bay was pretty calm, and I started off with a bit of a following swell and an almost imperceptible tail wind. At the one mile point, the wind started to turn to my face, and it was pretty much a side wind the whole time.

In spite of the new paddle, or maybe because of it, my total time wasn’t much better than the last time - about 1:05 instead of 1:12. Since adjusting my technique, I seem to be using a muscle in my shoulder that I haven’t been using before, so I get very sore up there and have to keep stopping and resting it. Here are my splits:

End of the channel (about 0.5 miles): 0:05.12
One Mile Point (about 1.0 miles) 0:12.21
Two Mile Point (about 1.8 miles) 0:22.24
Bridge (about 2.7 miles) 0:32.41
Two Mile Point (about 3.6 miles) 0:42.00
One Mile point (about 4.4 miles) 0:52.03
End of the channel (about 4.8) 0:59.41
Finish (about 5.3) 1:05.00

StackOverflow is now in open beta, so anybody can sign up and participate. And evidently, anybody has. The quality of the questions has gone way down, and the quantity has gone way up. It used to be that I’d stop back every 15-30 minutes and hit refresh, and there’d be a few new questions, but a couple I’d already seen would still be on the “Newest Questions” page. Now when I do that, not only have all the questions I’ve already seen been shoved off of page 1, sometimes they aren’t even on page 2.

And a lot of the questioners are obviously not looking as they’re typing their subject line, because one of the really nifty features of StackOverflow is that as you type your subject line, it picks out keywords and shows you other questions with the same keywords. If you pay attention, often times you’ll find your question has already been asked and answered. So seeing questions that you know were already answered before is a prime indicator that people aren’t paying attention to that feature.

In some ways, it reminds me of September in the good old days of Usenet. Hopefully it will calm down a bit after a while.

Actually, that reminds me of something - on day 1 of the open beta, somebody asked “So how is StackOverflow just not a re-implementation of Usenet groups”, which quickly got deleted as off-topic or moderated down so far that I couldn’t see it any more. (Which pretty much answers that question, doesn’t it?) I have some thoughts about that, but I should probably leave that for another post.

I’m testing a new update script for my navaid.com waypoint database. The old update scripts were written for when I was running on MySQL, and I’ve switched to PostGIS to support the new iPhone version of the CoPilot flight planning program. One of the salient features of the new iPhone version is that it attempts to be smart about downloading waypoints as you need them. One of the ways it does that is by asking my server for all the points in a particular area that have changed since a given date. The app keeps track of all the “areas” it has seen, and when the last time it was updated, and asks for an update of those areas at certain intervals. But that means I have to keep track of when a point was last updated. It also means that I need to keep track of what “area” a point is in. For the areas, I use a pseudo-quadtree where I allow only 500 points in an “area”, and when it gets more than that I split the cell into four sub-cells and mark the original cell as “superseded”. The new sub-cells have a “supersedes” value, so if the app asks for an area X, and area X has been split, I can say “X has been superseded, and here are the area ids A, B, C, and D that supersede it.”

But all this means that my new update scripts have to get the new data for a waypoint, figure out which old waypoint it was equivalent to (even if the waypoint has been resurveyed and is at a slightly different location and/or it has changed id), and only save the point anew if something significant has changed. Oh, and if the new data is missing information that the old data has, try to be smart about keeping the old data - for instance, George Plews’ Airports In Canada web site has data for airports in Canada that I can’t get any other way, but it’s also got data for airports that either were in the DAFIF data or are in the FAA data, and those two data sources often have much more information about runways and communications frequencies that Plews doesn’t have. So I want his latest data, but I don’t want to lose the other stuff that he doesn’t.

One of the things I do to match up the old with the new data is look with a bit of geographic “slop” - in the case where the ID matches I look within 0.05 degrees latitude and 0.05 degrees longitude (which believe me, in Alaska is way too big an area), and if the IDs don’t match, I look within 0.025 degrees longitude and 0.025 degrees longitude. These numbers were chosen extremely arbitrarily, and still causes a bit of a problem with a couple of airports that are near the US/Canada border because when I’m loading the FAA data it changes some Canadian airport to the nearby US airport, and then when I load the Plews data it changes it back.

Testing out my load scripts, I discovered two things:

  1. Sometimes the resurveyed point has moved enough that it’s in a different “area”. And that’s going to confuse the hell out of the algorithm that the app uses for getting updates, because it will ask for updates for the old area, and not get anything for that point. That’s going to require some thought to fix.
  2. In the next FAA data load, they’ve actually moved a couple of airports by 1.0 degrees of latitude or longitude. And judging by what I’m seeing on the Our Airports site maps, it appear the new values are correct, so the old ones must have been a data entry error. In this case, my “match the old” algorithm didn’t find anything to match within its radius of action, so it made a new point and marked the old one as deleted. The app should deal with that nicely.

Hmmm. Need to think how to handle this…

There is a major function in our program called the Migrator. It’s purpose is to “migrate” content from the content storage to the various feature players, either manually under user control or automatically based on what is on the schedule. Unfortunately the original requirements, put in place for a potential customer who ended up going a different way, were that the user had to be able to see and control each individual file in the migration job, and to each destination. This meant there is a tree showing each destination, and all the top level containers (playlists), all the middle level containers below that (CPLs) and then all the individual files (track files, fonts, projector control files, etc) below that, all wrapped up in a nice little collapsable tree. (Thanks to Sun providing an example implementation of JTreeTable on their web site.)
Continue reading ‘Stackoverflow comes through again’ »

Tonight’s “B Team” workout was actually a paddle tryout. We had a representative from Brača-Sport with about a dozen different paddles, and both the rep and Dan were doing a pretty good job of matching us up with paddles that are good for us. In my case, they suggested I try the Brácsa II, the VI and the VIII, but they were sure I’d like the VIII the most. And I did. The VIII has a very long and narrow blade, and it gives me a very gentle catch. With my big fat wide Big Spoons paddle, paddling hard gives me a big hard jerk when I first put the blade in the water and start pulling, but this one seems to ramp up from less drag to more gradually.

Dan, Lars (the factory rep), and several of the other paddlers remarked on how much better my stroke was with this paddle. Being a wing paddle, it comes out of the water as it passes my body almost on its own. And it’s light as a feather.

I’m really excited about this paddle - as I’ve been ramping up the amount I paddle in preparation for the Long Lake race, I’ve been getting more elbow pain, and I think the more gentle catch will go a long way towards alleviating that pain.

Funny story: the company is called Brača-Sport, but the paddles are called Brácsa. That wasn’t intentional - but after they made their first lot of paddles, they sent them out to be silk screened, and they came back with this typo on them. They had spent all their money on the carbon fibre, and had none left to fix the problem, so they shrugged and changed the name of the paddles but not the company.

As in, “I should be”, I think.

I’ve been kicking around the idea of participating in the Long Lake Long Boat Regatta kayak race. It’s a 10 miler (Dan says it’s closer to 9 miles, but I’m not sure I believe him). I was doubtful about doing such a long race, but he said that if I tried 3 times a week between now and then, I could do it. I was torn between trying it this year, or waiting for a year and giving myself time to get used to such a long distance. And there was a Hugger’s Ski Club clambake that same day - Vicki and I were doing that sort of “well, if you want to do A, I don’t mind skipping B” dance, and again I was thinking the clambake would be a good excuse to miss the race this year.

But at the same time, Vicki and I have talked about taking a couple of weekends away at a nice hotel or B&B. And then I discovered that the start line for the regatta is on the beach in front of the “turn of the century” Adirondak Hotel. Suddenly it seemed like things were swinging the way of doing the race - Vicki and I can have a nice weekend away at a nice hotel, and I can have my race, and Sunday Vicki and I can go for a nice leisurely paddle together. And they have a vacancy with the room with the queen sized bed and the private bathroom. SOLD! I just hope they have a hot tub to recover.

I wonder if Frank will let me borrow the Looksha?

If you care about your “reputation points” (which I keep thinking of as “XP”), don’t go dissing Windows.

A person asked what to do about their parent’s virus infected computers. There were some “real” answers, so I jokingly suggested that they do like I do, and threaten to install Linux on them - that way, they either take you up on the offer and they never have viruses again, or they stop calling you and call somebody else, and it’s a win for you either way.

So far in the last two hours, that question has been voted down 4 times, losing me 8 XP.

I think I overdid it a bit. I went kayaking, and because I left it so late, the parking lot at Bay Creek was full, forcing me to launch from the public park across the street. No dock, just a lot of very horrible sucky mud.
Continue reading ‘I’m sooooo tired’ »

I’m in the beta for StackOverflow.com, a site for programmers to ask and answer questions, with cool features like “reputation scores” and voting and badges. Now maybe it’s because it’s the beta and so it’s self-selected for people who are motivated to do things, but so far it’s already totally supplanted comp.lang.java.* as the place I want to ask or answer questions.

I’m hoping it will continue to be my favourite question and answer place when it’s overrun by spammers and “first post” losers.

While I continue to debate with myself whether I want to leave a job I’ve mostly enjoyed for the last 6+ years, I get an email. As explanation, I seem to be the only person here who regularly uses Macs at home, and I have a bit of a reputation as being able to solve various problems that have cropped up here, as well as recommending hardware upgrades and the like.

Hi Paul,

We’ve got a couple of “APPLES” here in our lab that we primarily use for Final Cut Pro editing. We just recently upgraded to LEOPARD, and things just aren’t “right”…..Xxxx (lab manager) has authorized me to provide you with a charge number for you to come and see if you can help. Please let me know if you have some availability in the next week or two to check them out….thanks very much!

Yyyyyy M. Yyyyyyyy | Video & Digital Content Specialist | EI DIGITAL INTERMEDIATE LAB |
Eastman Kodak Company | 2400 Mt. Read Boulevard | Rochester, NY 14650-3089 |

I told her that she’d have to talk to my boss, Nancy about it. So she sent her and email and CCed me:

Hi Nancy,

We’ve got a couple of G5 “APPLES” here in our lab that are heavily utilized for Final Cut Pro editing. We recently upgraded to the newest operating system (LEOPARD), and things just aren’t “right”….word on the street has it that Paul Tomblin has a vast knowledge of APPLE hardware, and we would like to request that Paul come and take a look at them, to determine what is going on. We do have an APPLE support agreement, but it only covers software support.

Xxxx Xxxxx our lab manager, has authorized me to provide Paul with a charge number for him to come and see if he can help. I would estimate it would only take him about 2-4 hours.

Let me know if you have any other questions or concerns.
Yyyyyy M. Yyyyyyyy | Video & Digital Content Specialist | EI DIGITAL INTERMEDIATE LAB |

I can just see what Nancy is going to say when she gets that after my resignation letter.

Today was quite a departure for me. Normally I avoid paddling on the bay like the plague, both because of the waves and because of the power boaters. But there is a race coming up in a few weeks that’s the culmination of the kayak racing season, and it’s nearly 10 miles up and down “Long Lake”. So I figured I needed to do more distance, and I also needed some experience on lakes. I thought I’d try paddling up to the Bay Bridge and back, since Dan says that’s 5 miles. (It turns out that Google Maps Pedometer shows it being more like 5.3 miles.)
Continue reading ‘Long Slow Distance training’ »

Various stuff graphed.

Various stuff graphed.

Source document

Sorry, Vicki, I didn’t know how to break this to you, but I’ve fallen in love. One of the racing team members, Frank, is selling his old Necky Looksha II kayak. It’s 20 feet long, 20 inches wide, weighs about 45 pounds, and as the time above shows, fast as hell, and beautiful.

Considering how much of the time I was worrying about tipping over rather than concentrating on my stroke, the fact that I was 1.26 minutes (76 seconds) faster than last week shows just how fast this kayak is. My split after the bay portion of the race was only 21 seconds faster than last week, which shows that not only was I wasting more time adjusting to the new boat out there, but also the lighter boat allowed me to keep more energy for the second half. This the first time I haven’t had to stop for a drink of water during the race. And obviously, after I learn to paddle it without worry, I’ll get even faster.

So here’s my plan:

  1. Finish the Pygmy Boat kit this fall. Try it out a bit and see how I like it.
  2. Next spring, sell either the Pygmy Boat or the Skerray.
  3. If Frank still hasn’t sold his Looksha by then, buy it. Otherwise look for something equally fast and challenging.
  4. Profit?