I did it. I ordered a digital SLR camera. Namely a Nikon D60 with 8-55 VR and 55-200 VR lenses. I'm also going to pick up a UV filter and a memory card. I'll think about getting a new bag and a spare battery. FSM help me if I just use it as a point and shoot all the time. I really want to get into more interesting types of photography and play around with things like HDR and tilt shift. Most of all, I want to take better pictures. I understand that the camera can play a small role in that, but it can certainly help. I figure that I'll start off with an actual "my first SRL" type of camera rather than jumping into something that's more towards the professional end of the spectrum.
My next thought is how am I going to use this when travelling - do I store it in a backpack? A camera bag that looks like a backpack? I think that a lot of cameras bags are the over-the-shoulder type of bag so you can easily get to your stuff, but I find that type of bag ends up hurting me. We're coming up to a trip so I can try it out there. I'll just have to do some test runs with it first.
Now I just have to wait for the camera parts to come into the store. There is only one camera body left in all the henry's in the city. The closest 8-55 VR lens is in Brampton... I don't expect to have my new toy until Jan. 10th. I want it now, but what can you do. That's what I get for buying / ordering it 3 hours before the sale ends.
NEW TOY!!!! :-D
Wednesday, 31 December 2008
Tuesday, 30 December 2008
Distributed blogging
Something that I've always wanted to be able to do when traveling is to blog as you go. However, that usually means you're connected to the internet for the whole time you want to read / write. I wanted an "offline" blog that I could sync a handheld computer at a coffee shop (in the amount of time it took to buy a coffee) and then continue on my way. Perhaps to read any comments at the hotel that night. Perhaps compose a post while waiting for a leg of a flight. It's just inconvenient and expensive to have to pay by the minute to be able to write blog posts and read comments.
Ryan pointed out jekyll as a way using git to generate a static blog. That way you could write posts locally, and sync them to a service / web server that would publish them. Now that's a cool idea.
The place where it breaks down in my head is when you want some give and take on a blog - comments. For anyone leaving comments they are not going to have an account with my source control server. People are going to want to post a comment and see instant feedback. That can be done with software fine - that's how this blog works. To try and keep the garbage out (comment spam), you'll have to require some form of logic on the server to stop that.
Comments are one of my favourite things about blogging, so I wouldn't want to move to software that doesn't support that most basic of needs. I don't really want to totally re-invent the wheel and re-implement all blog software because, frankly, I'm much too lazy for that. So I see the issue not as "how do I write better blog software" but as "how do I swap out the backend of existing blog software to meet my needs". Now, swapping out a backend that was designed for db and changing it to a flat file is probably way harder that it would be in theory.
Changing a backend for existing cots products doesn't fit the do the simplest thing that could possibly work, but redoing all the front end work and anti spam measures doesn't either. I'll have to think about this one some more.
Ryan pointed out jekyll as a way using git to generate a static blog. That way you could write posts locally, and sync them to a service / web server that would publish them. Now that's a cool idea.
The place where it breaks down in my head is when you want some give and take on a blog - comments. For anyone leaving comments they are not going to have an account with my source control server. People are going to want to post a comment and see instant feedback. That can be done with software fine - that's how this blog works. To try and keep the garbage out (comment spam), you'll have to require some form of logic on the server to stop that.
Comments are one of my favourite things about blogging, so I wouldn't want to move to software that doesn't support that most basic of needs. I don't really want to totally re-invent the wheel and re-implement all blog software because, frankly, I'm much too lazy for that. So I see the issue not as "how do I write better blog software" but as "how do I swap out the backend of existing blog software to meet my needs". Now, swapping out a backend that was designed for db and changing it to a flat file is probably way harder that it would be in theory.
Changing a backend for existing cots products doesn't fit the do the simplest thing that could possibly work, but redoing all the front end work and anti spam measures doesn't either. I'll have to think about this one some more.
Labels:
blog
Saturday, 20 December 2008
Are you pregnant?
We've been in our house for more than a year and we've been married for more than 4 months. That means when ever we're around family or friends one of the questions that always seems to be asked is "is Laura pregnant?" because apparently that's the next logical step. It feels like the question is pretty much guaranteed every outing at this point. If Laura's not drinking alcohol? Then it doesn't matter what we answer, we just get a "riiiiight" followed by a wink.
So frustrating.
So frustrating.
Labels:
rant
Friday, 19 December 2008
*grumble*
I've got an airport extreme because I wanted wireless N, things to "just work", and to pay too much for a router. Well, those were Andrew's words.
Anyways, sometimes something goes wrong with the internet connection, so the easiest way to fix it is to remotely reboot the router. Everything comes back and I can surf the web again. Also need to do that when new firmware comes out. What happens? The network drive stops working. It looks mounted, but when I try and access it, it just spins saying "Connecting...". I can't unmount / eject it either because it says it's busy. I'm tried rebooting various parts of the system - my computer, the router, the network drive. Nothing worked. So I turned off the whole shabang. Waited while power drained from all the devices, then turned it all back on.
It works. For now. Every time they seem to push out a new update, they either get networking working or break it - alternatively. It can be pretty frustrating. Apple's "It Just Works" feels like a lie... they should change it to "it works most of the time".
Anyways, sometimes something goes wrong with the internet connection, so the easiest way to fix it is to remotely reboot the router. Everything comes back and I can surf the web again. Also need to do that when new firmware comes out. What happens? The network drive stops working. It looks mounted, but when I try and access it, it just spins saying "Connecting...". I can't unmount / eject it either because it says it's busy. I'm tried rebooting various parts of the system - my computer, the router, the network drive. Nothing worked. So I turned off the whole shabang. Waited while power drained from all the devices, then turned it all back on.
It works. For now. Every time they seem to push out a new update, they either get networking working or break it - alternatively. It can be pretty frustrating. Apple's "It Just Works" feels like a lie... they should change it to "it works most of the time".
Thursday, 18 December 2008
Internet Fridge
One thing that I always looked on with scorn was kitchen appliances that are "connected to the internet". I always thought that was the dumbest thing. Why would anyone want their fridge connected to the 'net? It didn't make sense to me until this week when we were at the grocery store.
What foods had we written on the board on the fridge? How much milk was left in the fridge? It became guesswork. RFID chipped food containers so the fridge could provide you an "inventory". Tablet connected "white board" that you could sync / read from a mobile device. There would be less guesswork, less transcribing of lists to other lists, less annoying stuff. Now I get it.
The next thing that I'd love to have for grocery shopping? In store pickup. Do some ordering online, say what time (aprox) you'll be there, pull up and have them load the car. Done. The amount of time we spend wondering around the store looking for things or waiting in line would be ours again. That's probably 1-2 hours per week. I can't really see it happening in the short term, but that would be so good.
What foods had we written on the board on the fridge? How much milk was left in the fridge? It became guesswork. RFID chipped food containers so the fridge could provide you an "inventory". Tablet connected "white board" that you could sync / read from a mobile device. There would be less guesswork, less transcribing of lists to other lists, less annoying stuff. Now I get it.
The next thing that I'd love to have for grocery shopping? In store pickup. Do some ordering online, say what time (aprox) you'll be there, pull up and have them load the car. Done. The amount of time we spend wondering around the store looking for things or waiting in line would be ours again. That's probably 1-2 hours per week. I can't really see it happening in the short term, but that would be so good.
Labels:
random thoughts
Monday, 8 December 2008
Waltzing Blackflies
One thing that I always liked on tv when I was smaller was the Log Driver's Waltz. Much later came Blackfly, which is also a classic. Catchy, lots of interesting things to watch, just enjoyable.
It's a bit funny that the nfb is selling the shorts on dvd for 15 $... the clips areyou youtube of course if you look on the official site in flash: Blackfly and Log Driver's Waltz. I just watched both sets and now I have a mix of the songs in my head...
It's a bit funny that the nfb is selling the shorts on dvd for 15 $... the clips are
For he goes birling down a-down the white water
That's where the log driver learns to step lightly
In North On-tar-i-o-i-o, in North On-tar-i-o
Labels:
movies and music
Film is cheap
For a while I've been saying "film is cheap, the moment is expensive" as a way to say "shoot lots of pictures". This does even really make any sense anymore as there is no film. I saw an updated version of that expression where they said "ones and zeros are free". I don't really agree with this one. There is always a cost. A cost of going through them to decide if you want to keep them, of storing the photos, of doing any processing the photos, tagging, backup, etc. The cost of each digital picture is very, very low, but it is a non-zero value. Like everything in life, there is always a cost.
Sunday, 7 December 2008
Body & Soul & Dick
I remember an episode of 3rd Rock from the Sun where Dick gives an eulogy about someone that everyone hates (edit: everyone hates the guy that died, not the speech). I remember it as being such a beautiful speech. Every once and a while I look around on the intertubes for what episode it was. Tonight I was able to figure it out. Apparently it was called "Body & Soul & Dick" and was Episode #8 (internal production code 113).
For the life of me, I can't find anywhere that eulogy appears. The best that I've come is forum posts asking the same question in 2002 and pointing to a currently broken website that looks like it was last updated in 2001. *sigh* I don't actually want to buy that series just to find that 1 minute. Perhaps I'll rent it.
Just a note: if you can't think of the word "eulogy", can you imagine how hard it was for me to figure out the by just using words like "funeral" "3rd rock from the sun" and "dick". Sometimes the interweb is not a forgiving place when you're unable to come up with the right keywords. :-(
For the life of me, I can't find anywhere that eulogy appears. The best that I've come is forum posts asking the same question in 2002 and pointing to a currently broken website that looks like it was last updated in 2001. *sigh* I don't actually want to buy that series just to find that 1 minute. Perhaps I'll rent it.
Just a note: if you can't think of the word "eulogy", can you imagine how hard it was for me to figure out the by just using words like "funeral" "3rd rock from the sun" and "dick". Sometimes the interweb is not a forgiving place when you're unable to come up with the right keywords. :-(
Labels:
movies and music
How to take better pictures
I love photos, but I'm still not happy with what I produce. I'd like to think that it's something wrong with the camera, but I know better than that. If you ever want to see what other people can do with your camera, just take a look on flickr for some examples. Here are the ones using the same camera as us - a sony cyber-shot DSC-P73.
A couple of years ago I had "figured it out" for what I was doing wrong with sunset pictures and how to fix it. I now think that I was wrong and it has more to do with the white balance rather than anything else. Here's one page that explains white balance pretty well.
Another site that I've been spending a lot of time reading is one with tons of tips on... well, everything. There is a how to photograph section as well as portrait photography tips section. Pretty useful and interesting, but be warned - I've lost like 1/2 day or more reading that site. General tips are as follows:
1) get low to your subject if they're kids / pets / animals
2) rule of thirds
3) when shooting people / animals, use the burst / rapid fire mode because the 3rd picture might be the best
4) experiment and take your camera everywhere - but still put it down and be a person
5) plan ahead if possible and be prepared
One thing that I have a lot of trouble is wrapping my head about the concept of aperture and quotes like "Set a small aperture (ie a larger number) to increase the depth of field". Wait, set a small number to get a big number? Huh? I think that I understand - because the aperture is a expressed as a function of the f stop over the number. Bigger the number on the bottom - the smaller the fraction becomes - the smaller the hole.
Ya, I've probably got that totally wrong. Oie. I just get confused when big equals small which changes depth. Ah well. I'll have to keep looking at it until I figure it out.
A couple of years ago I had "figured it out" for what I was doing wrong with sunset pictures and how to fix it. I now think that I was wrong and it has more to do with the white balance rather than anything else. Here's one page that explains white balance pretty well.
Another site that I've been spending a lot of time reading is one with tons of tips on... well, everything. There is a how to photograph section as well as portrait photography tips section. Pretty useful and interesting, but be warned - I've lost like 1/2 day or more reading that site. General tips are as follows:
1) get low to your subject if they're kids / pets / animals
2) rule of thirds
3) when shooting people / animals, use the burst / rapid fire mode because the 3rd picture might be the best
4) experiment and take your camera everywhere - but still put it down and be a person
5) plan ahead if possible and be prepared
One thing that I have a lot of trouble is wrapping my head about the concept of aperture and quotes like "Set a small aperture (ie a larger number) to increase the depth of field". Wait, set a small number to get a big number? Huh? I think that I understand - because the aperture is a expressed as a function of the f stop over the number. Bigger the number on the bottom - the smaller the fraction becomes - the smaller the hole.
Ya, I've probably got that totally wrong. Oie. I just get confused when big equals small which changes depth. Ah well. I'll have to keep looking at it until I figure it out.
Monday, 1 December 2008
Love our new stove
It may sound weird, but I absolutely love our new stove. I wanted a gas stove because I had enjoyed cooking with one when in high school, but I couldn't never point to an exact reason. The sales people will tell you things like "instant on" and "super control", but that just sounds like a crock to me (even if they are right). Not counting how it's got a probe that checks the internal temp of food when you cook it and turns off the oven at the right time that makes the perfect roast, why do I like it?
It's hot. Yes, that sounds dumb, but for searing I was always frustrated with a electric stove. I wasn't able to sear food and it would always seem to turn out with a blah meal. Now I can keep the pan pretty hot for pan searing of fish or what-not (mmm... love the what-not). I just love it so much... I'm so glad that I've got gas. (You don't hear me express that thought much.) ;-)
It's hot. Yes, that sounds dumb, but for searing I was always frustrated with a electric stove. I wasn't able to sear food and it would always seem to turn out with a blah meal. Now I can keep the pan pretty hot for pan searing of fish or what-not (mmm... love the what-not). I just love it so much... I'm so glad that I've got gas. (You don't hear me express that thought much.) ;-)
Sunday, 30 November 2008
Project Archive has Begun
I've wanted for a few years to now to digitize all the old family photos. Having started doing some work on it this week I'm starting to see the huge amount of work that it will be. Over part of Friday and all of Saturday, I was about to scan and index 3 boxes (40 each) of slides. That works out to about 1/2 days work per 40 and I think that I have somewhere in range of 100 times as many slides in the family. Maybe double that. I think that I'm going to have to be selective in the slides that I scan in order to finish in my lifetime. :-/
One thing that I think will be important is to make sure I can somewhat cross reference the original physical media. The reason for this is that if I want to be able to go back and rescan a selected slide because I want to blow it up for a print or something, that would necessary. Hopefully just scanning them at a quality that will look okay in a digital picture frame will be good enough at this point. I'm not trying to get these published in National Geographic or anything, I'm just trying to get them out of boxes and be enjoyed while people are still alive. It's all well and good to be scanning all the pictures, but if no one is alive that was involved in any way, it's somewhat less important.
One thing that I am really impressed by is my great-grandmother (GGM). I think that she died in 1987 (?), so it's been a while. All of her slides have written on them 1) who's in it 2) the year 3) the place (most of the time) 4) sometimes the event (e.g. Christmas, Dee's visit, etc) and the month. Then it's all crossed referenced on a little folded piece of type written paper with the slide number and the same information again. That's crazy organized. I don't think that our flickr tagging is up to that standard. It sure makes the archiving easier and more interesting though.
Some of the slides I've come across my GGM marked as "old slides" - without a year on them. They are studio pictures of my dad and his brothers. I think that my dad's about 10 or 11. So weird to see these pictures for the first time.
It's funny when I think of it. The current generation being born is probably the first generation where every detail of their lives from before they were born until they die will be captured electronically. Photos, videos, facebook status, emails, etc. Nothing new about having access to those of your parents, but now it will cost practically nothing to keep, index, replicate and search those. I mean that my whole picture directory on my computer is only about 15G right now. I've had a digital camera for about 4 years now, so let's say 4 G per year, doubling file size every 3 years (which I think is too liberal an estimate, but whatever)... That comes out to 163828 G which is 163 terabytes. That seems like a huge number now, but I've bought a 1 T drive for like 125 $. How much will it cost to store 163 T in 40 years? The price of a coffee? Less?
So, I hope that my work of converting from a physical medium to a digital medium will be worth it. Any future conversions should hopefully only cost computer time and disk space: both of which are practically free. What am I going to do with the pictures? Scan everything and put it on digital picture frames to be enjoyed by people who know who's in the pictures while they are alive. The thing that saddens me is that I know that I won't be able to complete my task in that time. I'll just have to choose my pictures carefully.
One thing that I think will be important is to make sure I can somewhat cross reference the original physical media. The reason for this is that if I want to be able to go back and rescan a selected slide because I want to blow it up for a print or something, that would necessary. Hopefully just scanning them at a quality that will look okay in a digital picture frame will be good enough at this point. I'm not trying to get these published in National Geographic or anything, I'm just trying to get them out of boxes and be enjoyed while people are still alive. It's all well and good to be scanning all the pictures, but if no one is alive that was involved in any way, it's somewhat less important.
One thing that I am really impressed by is my great-grandmother (GGM). I think that she died in 1987 (?), so it's been a while. All of her slides have written on them 1) who's in it 2) the year 3) the place (most of the time) 4) sometimes the event (e.g. Christmas, Dee's visit, etc) and the month. Then it's all crossed referenced on a little folded piece of type written paper with the slide number and the same information again. That's crazy organized. I don't think that our flickr tagging is up to that standard. It sure makes the archiving easier and more interesting though.
Some of the slides I've come across my GGM marked as "old slides" - without a year on them. They are studio pictures of my dad and his brothers. I think that my dad's about 10 or 11. So weird to see these pictures for the first time.
It's funny when I think of it. The current generation being born is probably the first generation where every detail of their lives from before they were born until they die will be captured electronically. Photos, videos, facebook status, emails, etc. Nothing new about having access to those of your parents, but now it will cost practically nothing to keep, index, replicate and search those. I mean that my whole picture directory on my computer is only about 15G right now. I've had a digital camera for about 4 years now, so let's say 4 G per year, doubling file size every 3 years (which I think is too liberal an estimate, but whatever)... That comes out to 163828 G which is 163 terabytes. That seems like a huge number now, but I've bought a 1 T drive for like 125 $. How much will it cost to store 163 T in 40 years? The price of a coffee? Less?
So, I hope that my work of converting from a physical medium to a digital medium will be worth it. Any future conversions should hopefully only cost computer time and disk space: both of which are practically free. What am I going to do with the pictures? Scan everything and put it on digital picture frames to be enjoyed by people who know who's in the pictures while they are alive. The thing that saddens me is that I know that I won't be able to complete my task in that time. I'll just have to choose my pictures carefully.
Thursday, 27 November 2008
I'd rather spend the money on...
I keep on thinking how awesome it would be to have a smart phone. I could look up directions when I'm lost, keep in contact on the move, check out blogs or reviews, check movie times, etc. Then I look at the monthly cost. It hurts looking at those numbers for something that would essentially be a toy. Then I had an epiphany. For me it would just be a toy. And you know what?
I'd rather spend that money on lego.
If I'm going to spend 75-125 $ / month on a toy, I'd rather it be something that I could keep on enjoying after the month ends. I could hand it off to people. It would work my imagination. I'd be happier. So if you see me playing with little plastic blocks off in my own world, don't think that I'm simple. It's just my preferred toy. ;-)
I'd rather spend that money on lego.
If I'm going to spend 75-125 $ / month on a toy, I'd rather it be something that I could keep on enjoying after the month ends. I could hand it off to people. It would work my imagination. I'd be happier. So if you see me playing with little plastic blocks off in my own world, don't think that I'm simple. It's just my preferred toy. ;-)
Labels:
home life
Wednesday, 19 November 2008
No watch...
Last week my watch battery died so I put it into my bag so I'd have it with me so I could pick up a new battery. Apparently it was a bad place to put it because it ended up breaking where the band is attached to the watch part. So that means I need to grab a new watch.
The problem is, do I wait for post christmas sales to get one? That probably would be the smart move. The problem is that 1) I don't know what time it is and 2) I feel naked, but not in the good way. I've worn a watch almost constantly as far back as I can remember. I think that I actually even have my original "trainer" watch too, but I don't think that I could wear that to work.
Now should I get something that looks pretty fancy like the Rosendahl Watch II or should I just look at something like a 50$ digital watch? Fancy GPS watch? Smart looking analog watch? So many choices, so little money...
The problem is, do I wait for post christmas sales to get one? That probably would be the smart move. The problem is that 1) I don't know what time it is and 2) I feel naked, but not in the good way. I've worn a watch almost constantly as far back as I can remember. I think that I actually even have my original "trainer" watch too, but I don't think that I could wear that to work.
Now should I get something that looks pretty fancy like the Rosendahl Watch II or should I just look at something like a 50$ digital watch? Fancy GPS watch? Smart looking analog watch? So many choices, so little money...
Labels:
home life
Wednesday, 12 November 2008
Dead code finder
One thing that I would love to have is a tool that will run in the background that will look for dead code. It would separate code that 1) is never used and 2) code that is only used by tests. There is a plugin for eclipse and PMD which claim to remove dead code, but both only talk about class members and parameters and private methods. Eclipse does that already if you crank up the warnings.
The original problem might not be as easy as you'd think at first though... some code like serialVersionUID is only used by the JVM, other code might be not called like private constructors, other code might be called via reflection.
Perhaps this could highlight code that is never references AND is never hit by tests. Either way it would be a nice fast way to cut down the LOC of a project. It would be awesome to take a project and instantly burn off all the cruft.
One can dream.
The original problem might not be as easy as you'd think at first though... some code like serialVersionUID is only used by the JVM, other code might be not called like private constructors, other code might be called via reflection.
Perhaps this could highlight code that is never references AND is never hit by tests. Either way it would be a nice fast way to cut down the LOC of a project. It would be awesome to take a project and instantly burn off all the cruft.
One can dream.
Labels:
work
Sunday, 9 November 2008
Whooomp!
Last night after around 10:30 (I think) we heard a huge whoomp that shook the house. We thought that it was something really heavy that fell - I though that it was the garage. So, taking a look around in the house we found nothing, so I was putting on my coat to take a look around outside. When I stepped out I could see a fire through the trees on the train track. The garage was okay.
So, since it was a big noise, lots of flame we could see ~ 500 feet away, and it looked like it was on the train tracks, we called 911. I wanted to go and take a look, but Laura didn't think that was such a hot idea with the continuing sounds of smaller explosions. Just because "we didn't know what it was" and something about "not wanting to die"... seesh.
Soon someone at the train station held a horn on, I guess as a warning. Then the fire trucks showed up. There was a thick black smoke, but it looked like the fire started to die down by then. One of the neighbours that wasn't concerned about winning a Darwin award came back and told us that it looked like a new truck that someone had set on fire. So my guess is that it was stolen and then burned, which I think happens more often than not.
I've seen cars burn before, having lived in the country where they usually take said stolen cars to burn, but I've never seen / heard one that exploded quite so much. That was our excitement for the night.
If I find any news articles, I'll post them.
So, since it was a big noise, lots of flame we could see ~ 500 feet away, and it looked like it was on the train tracks, we called 911. I wanted to go and take a look, but Laura didn't think that was such a hot idea with the continuing sounds of smaller explosions. Just because "we didn't know what it was" and something about "not wanting to die"... seesh.
Soon someone at the train station held a horn on, I guess as a warning. Then the fire trucks showed up. There was a thick black smoke, but it looked like the fire started to die down by then. One of the neighbours that wasn't concerned about winning a Darwin award came back and told us that it looked like a new truck that someone had set on fire. So my guess is that it was stolen and then burned, which I think happens more often than not.
I've seen cars burn before, having lived in the country where they usually take said stolen cars to burn, but I've never seen / heard one that exploded quite so much. That was our excitement for the night.
If I find any news articles, I'll post them.
Labels:
home life
Tuesday, 4 November 2008
Best... ticket... comment... EVER.
Being a watcher on ticket sometimes is amusing because you can see comments before they get removed.
One ticket I was watching "Bob" made a comment this comment:
To which another person in the thread who has been contributing patches commented:
Too funny.
One ticket I was watching "Bob" made a comment this comment:
Another way is to NOT use Maven, and write a build in pure ant.
Personally, I rewrote the build in Nant, and I removed all maven dependencies.
From my experience, Maven is too buggy to be useful...
To which another person in the thread who has been contributing patches commented:
Thank you for your valuable contribution to this bug report, [Bob]. I have no doubt that your comment is vital in solving this issue.
Too funny.
Monday, 3 November 2008
Cost of running a gas fireplace
We just got a gas fireplace for the warmth (heating one room rather than the whole house), and for looks. Mostly I think that it was a splurge. Now the question is how much does it actually cost to run the fireplace? The spec lists BTU's / hour, but what does that actually mean? Time for some quick calculations.
The spec for the fireplace lists it as a max input of 26,000 BTU / hour. On some random prof's web page I found that 1 cubic meter ñ dry = 36,409 Btu when dealing with natural gas. Looking at the enbridge site, they show variable charges for gas supply charge (33.7551 ¢/m≥) and delivery charge (max 15.3843 ¢/m≥).
Doing the math:
volume consumed: 26,000 btu / hour * (1 m≥ / 36,409 Btu) = 0.714109149 m≥ / hour.
rate: (33.7551 ¢/m≥ + 15.3843 ¢/m≥) / (100 ¢ / 1 $) = 0.491394 $ / m≥
total cost: (0.714109149 m≥ / hour) * (0.491394 $ / m≥) = 0.350908951 $ / hour.
So, at about 35 cents per hour, it's nice to have a gas fireplace and enjoy it.
The spec for the fireplace lists it as a max input of 26,000 BTU / hour. On some random prof's web page I found that 1 cubic meter ñ dry = 36,409 Btu when dealing with natural gas. Looking at the enbridge site, they show variable charges for gas supply charge (33.7551 ¢/m≥) and delivery charge (max 15.3843 ¢/m≥).
Doing the math:
volume consumed: 26,000 btu / hour * (1 m≥ / 36,409 Btu) = 0.714109149 m≥ / hour.
rate: (33.7551 ¢/m≥ + 15.3843 ¢/m≥) / (100 ¢ / 1 $) = 0.491394 $ / m≥
total cost: (0.714109149 m≥ / hour) * (0.491394 $ / m≥) = 0.350908951 $ / hour.
So, at about 35 cents per hour, it's nice to have a gas fireplace and enjoy it.
Sunday, 2 November 2008
Netbook
I've been thinking about getting a netbook for when we go traveling. It would be useful to have something to be able to read books, take notes, write emails / blog posts without necessarily going to an internet cafe. Ideally have somewhere we could offload the pictures from the digital camera to. Another requirement would be that I wouldn't cry if someone robbed me for it.
I was mentioning this to Andrew and he pointed out that if he was getting something portable, he'd actually want it portable: small enough to fit into a pocket. So, along the lines of having something to tap out notes and check emails, something like an ipod touch or a pda would be ideal. The only "gotcha" to that idea is not having somewhere to offload pictures to - and that's the thing that we've found has continued to a limiting factor on our travels. (aside, I see I can now get a 8G card for my camera for 59$. Pretty cheap fix to that problem).
Maybe all I need is a pda - if they even makes those anymore...
I was mentioning this to Andrew and he pointed out that if he was getting something portable, he'd actually want it portable: small enough to fit into a pocket. So, along the lines of having something to tap out notes and check emails, something like an ipod touch or a pda would be ideal. The only "gotcha" to that idea is not having somewhere to offload pictures to - and that's the thing that we've found has continued to a limiting factor on our travels. (aside, I see I can now get a 8G card for my camera for 59$. Pretty cheap fix to that problem).
Maybe all I need is a pda - if they even makes those anymore...
Labels:
random thoughts
Thursday, 30 October 2008
Just fax it
Sometimes it blows my mind the importance that some people put on having a fax. Faxes seem to be able to be used for legal purposes, but not email. The other day I was emailed some numbers by one party and had to send them to a second. So, I replied to the email requesting the numbers cutting and pasting them in. The replied that they couldn't accept them that way. They asked I print out the original email and fax it.
Huh. Print out an email... then fax it...
It's like something out of dilbert. It just blows my mind sometimes. Maybe lawyers and financial groups will be able to catch up to the 1990's in another 10 or 15 years. I really hope so.
Huh. Print out an email... then fax it...
It's like something out of dilbert. It just blows my mind sometimes. Maybe lawyers and financial groups will be able to catch up to the 1990's in another 10 or 15 years. I really hope so.
Saturday, 25 October 2008
Socialism is such a dirty word in the US
Being unable to get away from news of the upcoming election in the states, you end up hearing commentators or quick interviews of people in the streets. One of the things that I keep on hearing is the word "socialism". It seems to being used in the same context as "child molester" or "terrorist".
Maybe I'm getting socialism confused with social programs like universal healthcare, but it seems like in the US if anything even smells like a social run anything, then clearly it's communist and the voters will be forced to eat their own young.
I just don't get it. And maybe I don't have to. I just don't understand the arguments against some social programs, and by taking one, you'll have to convert everything. Life isn't that black and white. It's a choose your own adventure.
Maybe I'm getting socialism confused with social programs like universal healthcare, but it seems like in the US if anything even smells like a social run anything, then clearly it's communist and the voters will be forced to eat their own young.
I just don't get it. And maybe I don't have to. I just don't understand the arguments against some social programs, and by taking one, you'll have to convert everything. Life isn't that black and white. It's a choose your own adventure.
Labels:
random thoughts
Tuesday, 14 October 2008
Burned and I should have known better
The drive on my mac totally died last Friday. I guess I should have seen it as there has been some weird behaviour on and off for a few months. I thought that it was something funny with firefox. Apparently not. :-(
The worse part? I don't have backups for some important-ish files, but I hope I will be able to get away with the loss. So far tonight I've re-installed the OS and some apps like firefox. I think that the one of the next things that I should do is set up time machine, but with my NAS drive at 86% full, I'm not sure if I'll have the room. Maybe it's time to set up another NAS drive as the "primary" drive and just use another one as a backup. Either way this has emphasized my need to set up multiple backups, including off site backups.
One benefit is that I have a bunch of services like mail "in the cloud" so those are not effected by this drive failure. Heaven help me if those services decide to shut down, but that's a different story.
This incident has brought my my interest in netbooks again. It would be nice to have a backup computer that I'd been able to do things like look at message boards for symptoms and issues, price shopping, and still being connected. But that's a thought for another day.
The worse part? I don't have backups for some important-ish files, but I hope I will be able to get away with the loss. So far tonight I've re-installed the OS and some apps like firefox. I think that the one of the next things that I should do is set up time machine, but with my NAS drive at 86% full, I'm not sure if I'll have the room. Maybe it's time to set up another NAS drive as the "primary" drive and just use another one as a backup. Either way this has emphasized my need to set up multiple backups, including off site backups.
One benefit is that I have a bunch of services like mail "in the cloud" so those are not effected by this drive failure. Heaven help me if those services decide to shut down, but that's a different story.
This incident has brought my my interest in netbooks again. It would be nice to have a backup computer that I'd been able to do things like look at message boards for symptoms and issues, price shopping, and still being connected. But that's a thought for another day.
Labels:
home life
Wednesday, 8 October 2008
Dobsonian telescope
Ever since I had first heard of a sonotube telescope, I've wanted to build one. I've since figured out that they are called Dobsonian telescopes - or Dob. All the harder to find that info since I can't spell sonotube... I thought that it was sona tube.
I'd love to use one and play around with taking some pictures of the stars and planets, but I would guess that all light pollution in Ottawa would have an adverse effect on it. I don't know if that would be pointless for around here.
Either way it seems like it would be fun to build. ;-)
I'd love to use one and play around with taking some pictures of the stars and planets, but I would guess that all light pollution in Ottawa would have an adverse effect on it. I don't know if that would be pointless for around here.
Either way it seems like it would be fun to build. ;-)
Monday, 6 October 2008
Brains over personality
Something that occurred to me tonight: when picking co-workers I'd rather trade social grace for smarts / efficiency at their job. Picture someone that might be really gruff or hard to deal with, but they are really good at their job. Of course there are limits to what would be acceptable, but if I had to choose.
The ideal co-worker would be great at both. And while we're at it, I want a pony too.
The ideal co-worker would be great at both. And while we're at it, I want a pony too.
Blogging about thinking about blogging
I find myself many times a day composing a blog post in my head. Figuring out how to present my thought / rant, how to structure the text to be both clear and entertaining. Then when I do have a chance to sit down to put some text to the screen: I draw a blank. It's annoying because I feel that I'm missing out on many chances for interesting (to me) brain dumps. *sigh*
Thursday, 25 September 2008
Offline can be liberating
Today I tried working from home to distance me from distractions: email, email alerts from ticket changes, IM, slashdot, co-worker's questions, co-workers a cube over, blogs, mailing lists, meetings, etc...
I found that while at home I was still being distracted by the electronic distractions. I wasn't being as effective as I wanted to be. So I packed up my laptop and what I needed, and left the house. I then worked the rest of the day with no connection to the 'net. It was liberating. Hours of work at a time without interruptions. I got so much done it blows my mind.
Being physically disconnected from everything wasn't enough, I had to be electronically disconnected as well. In an age when everything is online, it was a nice change. ;-)
I found that while at home I was still being distracted by the electronic distractions. I wasn't being as effective as I wanted to be. So I packed up my laptop and what I needed, and left the house. I then worked the rest of the day with no connection to the 'net. It was liberating. Hours of work at a time without interruptions. I got so much done it blows my mind.
Being physically disconnected from everything wasn't enough, I had to be electronically disconnected as well. In an age when everything is online, it was a nice change. ;-)
Labels:
work
Saturday, 13 September 2008
Software rotations
After seeing how the medical community trains doctors, I wonder if something similar would work for software as well. Send "engineers on training" for 4-6 week stints in various "specialties". So you'll be desktop support, then a DBA, then a java programmer, then you're doing .Net, then QA, then you're PM'ing a project, ...
Do that for 2-5 years and expect people to get up speed in almost no time. How would that go? They do that with people's health (properly supervised and with slowly increasing responsibilities), why can't they do it with software?
By expecting people to get up to speed right away, I think that a lot of unnecessary process would quickly be cut out and best practices would quickly "cross-pollinate" across different sub-fields of software development. Best of all, people would understand the pain that other groups suffer because of actions done in other groups.
We've talked for a couple of years about rotating a developer into the maintenance group for a 3 month stint so we can fix the issues that cause pain over the course of the life of a project. I don't know if that will happen, but I think that it would be good to be able to see the side of things from different viewpoints. At the very least I think that it would foster better relations between groups.
I just think that by having people work in all of the different phases of a project and groups in an organization would help people see things from a system perspective. It's all about the big picture.
Do that for 2-5 years and expect people to get up speed in almost no time. How would that go? They do that with people's health (properly supervised and with slowly increasing responsibilities), why can't they do it with software?
By expecting people to get up to speed right away, I think that a lot of unnecessary process would quickly be cut out and best practices would quickly "cross-pollinate" across different sub-fields of software development. Best of all, people would understand the pain that other groups suffer because of actions done in other groups.
We've talked for a couple of years about rotating a developer into the maintenance group for a 3 month stint so we can fix the issues that cause pain over the course of the life of a project. I don't know if that will happen, but I think that it would be good to be able to see the side of things from different viewpoints. At the very least I think that it would foster better relations between groups.
I just think that by having people work in all of the different phases of a project and groups in an organization would help people see things from a system perspective. It's all about the big picture.
Labels:
random thoughts
Thursday, 11 September 2008
Most Honest
For the second year in a row I was on the winning team at our work charity golf tournament. And by winning I mean the people who go home with an award. And by an award I mean the "Most Honest" trophy.
I feel that the trophy is correctly named. We were playing best ball, but I don't think that we were that bad. This year we were +17 which is pretty good in my books. Last year the team ahead of us were fall down "refreshed" and they somehow did better than us.
Now I've got bookend trophy's, it's all good. ;-)
I feel that the trophy is correctly named. We were playing best ball, but I don't think that we were that bad. This year we were +17 which is pretty good in my books. Last year the team ahead of us were fall down "refreshed" and they somehow did better than us.
Now I've got bookend trophy's, it's all good. ;-)
Wednesday, 10 September 2008
Pay no attention to that man behind the curtain
I was hiding at work today. In a fort made out of a whiteboard.
That's what it's come down to for me to be able to work on tasks "uninterrupted". Well, as close as I can get that is. People still come and knock on the "do not disturb" sign, which I find hilarious.
*sigh*
That's what it's come down to for me to be able to work on tasks "uninterrupted". Well, as close as I can get that is. People still come and knock on the "do not disturb" sign, which I find hilarious.
*sigh*
Labels:
work
Sunday, 7 September 2008
Buttons that don't "push"
Our new stove is really fancy. Buttons, knobs, blinking lights: it's got it all. My only issue is that the buttons are behind glass and just "sense" your finger (from heat I assume). There's about a second lag from putting your finger on the button to getting feedback. I used these buttons a lot for the first time yesterday and I found it a little frustrating and it was making my fingers sore. I was pushing the buttons which is totally useless. It's like pushing on a window.
I'm a huge fan of control interfaces with buttons that push, knobs that turn. All of which "click". It's really nice to get both the "touch" as well as the sound part of the feedback that what you've done has registered rather than just seeing the feedback on a screen.
Our microwave has a knob that pops out that you can spin it to set the time. I almost always use that to set the controls. There's just something satisfying about using that.
I've seen a laser keyboard interface where it projects a keyboard on a table and you're supposed to type on that. After the initial "cool" factor, I'd guess that would be a painful, gross way to type in. Not fun at all.
Give me buttons that push, knobs that twirl, levers that turn / pull. That's what I want in a computer interface.
I'm a huge fan of control interfaces with buttons that push, knobs that turn. All of which "click". It's really nice to get both the "touch" as well as the sound part of the feedback that what you've done has registered rather than just seeing the feedback on a screen.
Our microwave has a knob that pops out that you can spin it to set the time. I almost always use that to set the controls. There's just something satisfying about using that.
I've seen a laser keyboard interface where it projects a keyboard on a table and you're supposed to type on that. After the initial "cool" factor, I'd guess that would be a painful, gross way to type in. Not fun at all.
Give me buttons that push, knobs that twirl, levers that turn / pull. That's what I want in a computer interface.
Labels:
home life
Wednesday, 3 September 2008
Unintended benefits of CI
One cool unintended benefit of having a CI server going is that there is somewhere that has the latest code for all projects checked out in the file system. When issues that have come up that might be cross projects, I can just use find, grep, and other fun command line tools to quickly find effected projects. Then because the naming convention used in our CI server is tied to our issue tracking (thank god) I can quickly open up tickets for the teams to address the issues.
This doesn't help if a project is in prod and has been fixed since, but it's a lot better than not knowing where to start.
At some point, using good software tools has a benefit greater than the sum of it's parts. ;-)
This doesn't help if a project is in prod and has been fixed since, but it's a lot better than not knowing where to start.
At some point, using good software tools has a benefit greater than the sum of it's parts. ;-)
Labels:
work
Tuesday, 2 September 2008
Biking != Running
I've been biking ~ 1 hour, 5 days a week since March or April. I consider myself to be in "okay" shape.
Laura took me for a 30 minute run on Sunday and I am so sore. Biking is sooo different than running it's not funny at all. My legs are killing me yesterday and today. Oie.
I don't get it. Biking seems to be all about the legs and running seems to be about breathing. Why are my legs so sore??? Oie. This just sucks because I know I want to start running a lot more, especially with the weather getting colder and the opportunity to bike will go away with the snow.
No exercise seems to prepare you for another one. They all seem to use their own set of muscles. Now I think I just have to figure out 3 or 4 different things that I can do often that will help me stay in shape.
Laura took me for a 30 minute run on Sunday and I am so sore. Biking is sooo different than running it's not funny at all. My legs are killing me yesterday and today. Oie.
I don't get it. Biking seems to be all about the legs and running seems to be about breathing. Why are my legs so sore??? Oie. This just sucks because I know I want to start running a lot more, especially with the weather getting colder and the opportunity to bike will go away with the snow.
No exercise seems to prepare you for another one. They all seem to use their own set of muscles. Now I think I just have to figure out 3 or 4 different things that I can do often that will help me stay in shape.
Labels:
running etc.
Friday, 29 August 2008
Model this
Something that I didn't know about until now is that you can help build models for google earth. Interesting... you could model a bunch of "important" buildings and your own house. Cool.
Now that's another thing that I can add to the list of "if I had more spare time I would..." :-P
Now that's another thing that I can add to the list of "if I had more spare time I would..." :-P
Thursday, 28 August 2008
Code Generation
Tools are always great when they help build software faster and cleaner. Code generation can be great, if used well.
The 2 different times that I think that code generation is good is:
1) generate the code as a framework to save typing. This gets checked into your project and follows the same rules for naming, style, documentation, and coverage as if a developer wrote it. If the code needs to be "tweaked", that's cool. It should never be re-generated.
2) code that is generated as part of your build. This is generated every build. This code isn't checked in, it should never be tweaked. If you have to, then you'll either have to wrap those classes, use a factory, subclass them. Just no tweaking.
There is a 3rd way. An evil and broken path to go down. It's a hybrid of the other 2. It's when you have to occasionally regenerate the code and then tweak it to get it to work. Manually tweaking it, over and over again. Evil. This technique is to be hunted down and exterminated like code without tests.
The 2 different times that I think that code generation is good is:
1) generate the code as a framework to save typing. This gets checked into your project and follows the same rules for naming, style, documentation, and coverage as if a developer wrote it. If the code needs to be "tweaked", that's cool. It should never be re-generated.
2) code that is generated as part of your build. This is generated every build. This code isn't checked in, it should never be tweaked. If you have to, then you'll either have to wrap those classes, use a factory, subclass them. Just no tweaking.
There is a 3rd way. An evil and broken path to go down. It's a hybrid of the other 2. It's when you have to occasionally regenerate the code and then tweak it to get it to work. Manually tweaking it, over and over again. Evil. This technique is to be hunted down and exterminated like code without tests.
Labels:
work
Friday, 22 August 2008
QotD - When you treat people like idiots...
"When you treat people like idiots, theyÃll behave like idiots."
- Hans Monderman
- Hans Monderman
Monday, 18 August 2008
Lego Batman
If there is something that's going to make me poor, it's going to be Traveller's Tales. I see that they are coming out with a lego Batman in September. *sigh* I am almost finished with the Indiana Jones game and now I see this. Don't they understand I can't spend all my time playing lego games? I mean, I've got more important things to work on in the future.
Ah well.
Ah well.
Sunday, 17 August 2008
Not as cool as you're think
Everytime I see someone with a ear piece for their phone, I think of this comic where we get a little explanation from Lobot from Star Wars. If you're actually using the ear piece, I don't think that it's that bad. It's not even that bad if you're wondering around alone and I can only assume that you're expecting a call. However, if you're walking around at Greekfest with your wife and 2 small children, take the ear piece off.
It just seems disrespectful to me. It seems like you're telling your kids that they are less important to listen to with both ears than a potential phone call.
Just take it out and interact like a normal human being.
It just seems disrespectful to me. It seems like you're telling your kids that they are less important to listen to with both ears than a potential phone call.
Just take it out and interact like a normal human being.
Labels:
rant
Friday, 15 August 2008
Wicked
Laura and I went to see Wicked last night at the NAC and it was wonderful. The leads were so expressive and had the timing down pat. The small jokes were funny. Overall it was just a great show.
It was such a great story I'm not going to go out and look for the book.
It was such a great story I'm not going to go out and look for the book.
Tuesday, 12 August 2008
Quantity Always Trumps Quality...
... but only if you learn from your experiences. Ryan sent me a link to Jeff Atwood's post of Quantity Always Trumps Quality via Hey! Heads Up. Go read Jeff's post before continuing with this one. Don't worry, I'll wait.
All done? Good.
The gist of it is that if you write lots of software and learn from your mistakes, you'll become better at writing software. But from my observation, the learning is the hard part, not the writing of software.
My current boss gave me a great analogy about "years of experience" and how it's a really crappy way to evaluate someone. One candidate might have 5 years of experience in job X, and a second might have 20 years. But for those 20 years, it could be the same year over 20 times. The person with 5 years, it could be 5 totally different years.
I'm not sure if I've explained it well. The differences in the 20 vs 5 years is if you learn from your mistakes. If you keep on writing software how you did last year because you were able to get it to work last year, then that means you're probably putting yourself into an experience loop. If you're writing software and go "how can I do this better / faster / cleaner than last year?" that shows you've move ahead.
For me, it's a shitty day when I don't learn something new. For example, I've been working with java for a while and yesterday I learned that I should be using Integer.valueOf(...) instead of new Integer(...). I didn't learn that because I stumbled across that blog post, but because I was trying out pmd in an effort to learn how to make software better.
Make Software Better.
All done? Good.
The gist of it is that if you write lots of software and learn from your mistakes, you'll become better at writing software. But from my observation, the learning is the hard part, not the writing of software.
My current boss gave me a great analogy about "years of experience" and how it's a really crappy way to evaluate someone. One candidate might have 5 years of experience in job X, and a second might have 20 years. But for those 20 years, it could be the same year over 20 times. The person with 5 years, it could be 5 totally different years.
I'm not sure if I've explained it well. The differences in the 20 vs 5 years is if you learn from your mistakes. If you keep on writing software how you did last year because you were able to get it to work last year, then that means you're probably putting yourself into an experience loop. If you're writing software and go "how can I do this better / faster / cleaner than last year?" that shows you've move ahead.
For me, it's a shitty day when I don't learn something new. For example, I've been working with java for a while and yesterday I learned that I should be using Integer.valueOf(...) instead of new Integer(...). I didn't learn that because I stumbled across that blog post, but because I was trying out pmd in an effort to learn how to make software better.
Make Software Better.
Labels:
tech
Monday, 11 August 2008
An unexpected extra hour of biking
Today I was pulling into work when I realized that I had left my bike lock at home. Unhappy words followed. I biked over to the sporting goods store to see if I could buy a new lock, but they were not going to open for another hour. More unhappy words followed.
So I turned my bike and went home.
I came back to work, but I really didn't want to. I'd much rather have stayed at home, but you can't have everything I guess.
I often think of working from home, but then I think that I'll miss bike commuting. Yes, I said that I would miss commuting. Crazy, but when it's fun that makes all the difference. It's even fun in the rain (sans lightening).
So I turned my bike and went home.
I came back to work, but I really didn't want to. I'd much rather have stayed at home, but you can't have everything I guess.
I often think of working from home, but then I think that I'll miss bike commuting. Yes, I said that I would miss commuting. Crazy, but when it's fun that makes all the difference. It's even fun in the rain (sans lightening).
Labels:
home life
Friday, 8 August 2008
Rain rain go away
I can't freaking believe it. It's raining all the time. Crazy amounts in a short time. It wouldn't be so bad if it didn't mean that I have like 3 hours of possible outdoor working time per week. It sounds like a lot, but when it's sunny I'd rather be enjoying the sunshine than cutting the lawn.
*sigh*
*sigh*
Labels:
home life
Monday, 28 July 2008
QotD - How to lose stupid
Too funny... quoted from an AC on /.
"You can stop eating to lose weight, but you'd have to stop breathing to lose stupid"
Another quote, totally unrelated...
"You'll wish that you had done some of the hard things when they were easier to do."
"You can stop eating to lose weight, but you'd have to stop breathing to lose stupid"
Another quote, totally unrelated...
"You'll wish that you had done some of the hard things when they were easier to do."
Maven repo on a thumb drive
When working at home on maven stuff, to make your life easy for you you can take your local repo with you on a thumb drive. I used rsync to move the files to the drive, but I don't necessarily want to pull them off like that.
With maven you can simply put in a new entry into your settings.xml file to pull from your thumb drive like this:
<mirrors>
<mirror>
<mirrorOf>central</mirrorOf>
<name>thumb</name>
<url>file:///path/to/thumb/repository</url>
<id>my-thumb</id>
</mirror>
</mirrors>
And that's it. This is also useful when you're "cleaning up" your local repo. Instead of deleting it and redownloading it all from a corp repo, you can copy your existing repo to something like ~/old_repo/ and point to that as your first repo. I have not *actually* tried it. That's a post for another day. :-D
Update: One downside of this is that it appears that snapshots are not pulled in. It might be better to just up some repositories that point to the thumb drive rather than using the mirror.
Friday, 25 July 2008
Frickn' cars...
On my way to work today I was biking along on the paint like normal. The only problem was that a car decided to turn right... right into me. Luckily they noticed as I was yelling louder and louder and had my body / bike pressed up against the side of their car.
I'm happy that they didn't turn quickly or that I wasn't going too fast. I'm still not sure what exactly went wrong or who was at fault. I'm just happy that no one got hurt... especially me.
*sigh* I'd love wide bike lanes with a curb separating cars from bikes.
I'm happy that they didn't turn quickly or that I wasn't going too fast. I'm still not sure what exactly went wrong or who was at fault. I'm just happy that no one got hurt... especially me.
*sigh* I'd love wide bike lanes with a curb separating cars from bikes.
Labels:
running etc.
Wednesday, 23 July 2008
Over thinking the problem
I was trying to figure out how I'd detect changes to cvs within a given period. This is because we're looking for projects that need to be built by the CI server. So I was at first playing around with cvs command, sed, and other commands. Then it occurred to me that I was over thinking this problem. When you check something in, the files change in cvs.
The actual solution was a lot simpler than I was making it out to be at first. It was essentially this:
find /our/cvs/location -mtime -32 | grep -v -f projects_already_tracked.txt
Now, I put in a script that has variables, emails me if it finds anything and I call that in a cron, but that one liner is pretty much it. The only draw back is that this solution doesn't work for branches (if the project is on the "already tracked" list), but I think that's 95% there.
The actual solution was a lot simpler than I was making it out to be at first. It was essentially this:
find /our/cvs/location -mtime -32 | grep -v -f projects_already_tracked.txt
Now, I put in a script that has variables, emails me if it finds anything and I call that in a cron, but that one liner is pretty much it. The only draw back is that this solution doesn't work for branches (if the project is on the "already tracked" list), but I think that's 95% there.
Saturday, 19 July 2008
Poster child for the foot fetish crowd
Having pictures up on flickr is a great way to share snapshots (literally) of our life with friends, family, and occasionally people we don't know. It's been interesting because sometimes people will comment on or favourite a picture. This rarely happens, but it's usually interesting when it does.
Sometimes it just gets weird.
Laura took a picture of me about a year or 2 ago with my feet towards the camera. It was one of those silly moments. After about a year of the picture being up someone favourited it. Someone who didn't really have any of their own pictures up, but had favourited a lot of pictures of people's feet. Okay, that's a bit weird. Then someone else did. And another and another. A that point it just starts to feel creepy. So we changed the visibility of the image to just friends and family.
I like sharing. Just don't go all creepy.
Sometimes it just gets weird.
Laura took a picture of me about a year or 2 ago with my feet towards the camera. It was one of those silly moments. After about a year of the picture being up someone favourited it. Someone who didn't really have any of their own pictures up, but had favourited a lot of pictures of people's feet. Okay, that's a bit weird. Then someone else did. And another and another. A that point it just starts to feel creepy. So we changed the visibility of the image to just friends and family.
I like sharing. Just don't go all creepy.
Labels:
home life
Thursday, 17 July 2008
Don't build sql with string concatenation
How freaking hard is it to understand that you don't freaking build sql with string concatenation. Use a prepared statement. Is this concept really hard to understand? It's a simple way of preventing an attack by writing safe code.
It's not like this is a java specific attack. Sanitize inputs and don't be a shit head. If you get burned, it will be no one's fault but your own.
Frick.
It's not like this is a java specific attack. Sanitize inputs and don't be a shit head. If you get burned, it will be no one's fault but your own.
Frick.
Labels:
rant
Squeaky floors
It's very hard to sneak around in a house that has squeaky floors. I try be quiet when I get up because I can't sleep, tired but with my brain is running 1000 km / minute. Usually in a circle.
Sometimes I play scenarios in my head. Negotiations, bluffs, half-truths. All scenarios usually end badly. I don't think that I can bluff. Hell, I probably suck at getting my ideas across. I think that is my only technique is the truth. It's only a bluff if you're not prepared to act on it. Otherwise it's just you laying all your cards on the table.
I wish when my head hits a pillow I could just fall asleep... *sigh*
Sometimes I play scenarios in my head. Negotiations, bluffs, half-truths. All scenarios usually end badly. I don't think that I can bluff. Hell, I probably suck at getting my ideas across. I think that is my only technique is the truth. It's only a bluff if you're not prepared to act on it. Otherwise it's just you laying all your cards on the table.
I wish when my head hits a pillow I could just fall asleep... *sigh*
Wednesday, 16 July 2008
Montreal
We just got back from a weekend in Montreal. We didn't plan anything specific, just to hang out and wander around. Some highlights that we ended up going to: the biodome and seeing some lemurs among others; the planetarium which could use some updated seating, but fun otherwise; Mount Royal which is always good for a climb; les 3 brasseurs; just for laughs on St. Denis. I thought that this would be more shows than just a kick ass street party.
I love Montreal.
I love Montreal.
Saturday, 12 July 2008
Folding bikes...
I've got a couple of folding bikes. They're at my folks place, but I've got to bring them to the house. Now I just saw a strida online... cool! The 800 $ price means I can't see myself getting one, but cool none the less.
Labels:
home life
So close to Metric
Tonight I saw Metric and we were so close to the stage, you could measure it in feet. *ba dum bump* Compared to any other concert that I have been to, there was no crush of people or (much) body surfing which usually ends up with me taking a foot to the back of the head and seeing stars for a while.
There is something to be said to be close to the stage. The last show we went to the NAC we were in the top balcony and it was hard for me to make out the peoples faces properly. The NHL game that I remember most was were we were sitting first row, second level and you could hear the players yelling at each other. They yell? Wow.
You loose something when you're too far back. We had purchased other tickets for NAC shows that were in the top level. I took them back and exchanged. It sucks paying more, but sometimes it is very much worth it.
There is something to be said to be close to the stage. The last show we went to the NAC we were in the top balcony and it was hard for me to make out the peoples faces properly. The NHL game that I remember most was were we were sitting first row, second level and you could hear the players yelling at each other. They yell? Wow.
You loose something when you're too far back. We had purchased other tickets for NAC shows that were in the top level. I took them back and exchanged. It sucks paying more, but sometimes it is very much worth it.
Friday, 11 July 2008
I wouldn't have thought of that...
One really good thing about working on older code written by someone else (or many other people) is that you see all kinds of new things. Some are tricks, some are hacks, some are just... "different". I find myself going over code sometimes, trying to figure it out, and coming to a realization of what it does.
The really interesting ones are the ones where I say to myself "I would have never thought of that!". That can be a good thing, a bad thing, or just different. The one that I came across the other day was a method for deep cloning an object using serialization. The method serialized the object into byte buffer, and then wrote it right back into a new object.
I usually hate clone methods to start with, using a copy constructor instead in the rare cases I need to make a copy of something. One disadvantage I've found doing this is that you have to be very careful that you clone all the attributes of that class properly. That way you don't get 2 objects pointing to the same list for example.
One advantage of the serialization clone method is that you're not going to run into this problem and it's somewhat "future proof". Interesting. Hugely expensive and tricky, but interesting.
The really interesting ones are the ones where I say to myself "I would have never thought of that!". That can be a good thing, a bad thing, or just different. The one that I came across the other day was a method for deep cloning an object using serialization. The method serialized the object into byte buffer, and then wrote it right back into a new object.
I usually hate clone methods to start with, using a copy constructor instead in the rare cases I need to make a copy of something. One disadvantage I've found doing this is that you have to be very careful that you clone all the attributes of that class properly. That way you don't get 2 objects pointing to the same list for example.
One advantage of the serialization clone method is that you're not going to run into this problem and it's somewhat "future proof". Interesting. Hugely expensive and tricky, but interesting.
Tuesday, 1 July 2008
Appliance Hunter
We've just got a couple of new appliances. A new stove (GE Profile PGB916SEMSS) (note: this link was working... I'll check it later since the GE site is having "issues" right now) and a washer dryer pair. Our current stove broke, so we used the excuse to get a gas one (and make me really happy) and we've been pretty unhappy with our current washer and dryer.
After a bunch of shopping for a range (ie stove) these are the features that became important to us:
We found consumer reports pretty helpful. I didn't agree with their ratings all the time, but the user reviews were pretty helpful. For like 6$ for a month of website use, that's something that I can deal with.
For front loading washer and dryers there are lots of complaints about mold. Most of the problems sound like they could be solved by RTFM (keeping the door open, wiping the rubber gasket down after use, ...). I don't have sympathy for the people that refuse to follow the instructions and then have problems.
We found it frustrating and confusing dealing with all the sales people. It was pretty much guaranteed that if you talked to one sales man they'd tell you something like "Apples are much better than oranges. I've got apples at home and have not ever had a problem. Oranges... not so much. But that's my experience. Lots of people aren't happy with oranges", and the next guy would tell you the exact opposite. No joke. That went for features, brands, how to use it, everything.
The most laid back people we dealt with were at home depot. Like most times there you get one person who really knows there stuff and then a bunch of people who just take up space. I enjoyed dealing with the guy at universal appliances the most because of what he knew and how he dealt with us. However, we ended up going corbeil because they were able to give us the best price (with a sale on).
I'm glad that the shopping is done. Now we just have to get it installed and running.
After a bunch of shopping for a range (ie stove) these are the features that became important to us:
- continuous grills so it's easier to move pots around
- glass control panel (vs plastic that some have)
- cast iron grills. I probably won't be super delicate on it, so if it's got the coated ones I'm assuming that I'd wreck them
- convection. ya.
- high btu burners. We were looking a kitchenaid range at first but 2/4 burners were 6000 btu which sound pretty useless
- control lockouts
- stainless steel look. ;-)
- black / dark top so it won't show the dirt / wear like something with a light colour top
We found consumer reports pretty helpful. I didn't agree with their ratings all the time, but the user reviews were pretty helpful. For like 6$ for a month of website use, that's something that I can deal with.
For front loading washer and dryers there are lots of complaints about mold. Most of the problems sound like they could be solved by RTFM (keeping the door open, wiping the rubber gasket down after use, ...). I don't have sympathy for the people that refuse to follow the instructions and then have problems.
We found it frustrating and confusing dealing with all the sales people. It was pretty much guaranteed that if you talked to one sales man they'd tell you something like "Apples are much better than oranges. I've got apples at home and have not ever had a problem. Oranges... not so much. But that's my experience. Lots of people aren't happy with oranges", and the next guy would tell you the exact opposite. No joke. That went for features, brands, how to use it, everything.
The most laid back people we dealt with were at home depot. Like most times there you get one person who really knows there stuff and then a bunch of people who just take up space. I enjoyed dealing with the guy at universal appliances the most because of what he knew and how he dealt with us. However, we ended up going corbeil because they were able to give us the best price (with a sale on).
I'm glad that the shopping is done. Now we just have to get it installed and running.
Monday, 30 June 2008
Can't set a cookie on a redirect
Not that I use cookies much, but I found something interesting today: you cannot set a cookie on a redirect. From that post it looks like if you use a non-session cookie (has expires attribute) it will work.
The reason why this was found? Firefox barfs on it with a The page is not redirecting properly message. Of course IE 6 doesn't do this...
I've had to know http enough to have to reference the spec for close to 10 years now, and I'm still learning stuff.
Update: apparently I was full of shit. The problem was that there is a cookie size limit in FF that that was the part that wasn't working. The cookies still work on the redirect. Now that makes me wonder what all those other people were talking about. :-/
The reason why this was found? Firefox barfs on it with a The page is not redirecting properly message. Of course IE 6 doesn't do this...
I've had to know http enough to have to reference the spec for close to 10 years now, and I'm still learning stuff.
Update: apparently I was full of shit. The problem was that there is a cookie size limit in FF that that was the part that wasn't working. The cookies still work on the redirect. Now that makes me wonder what all those other people were talking about. :-/
Friday, 27 June 2008
What the deaf man heard
I've got a slight hearing problem. Nothing that bothers me in any way. I only have troubles where there is a lot of background noise.
We went out to the Heart and Crown last night for a work thing for Laura. As I was sitting there wondering what the hell people were talking about and trying not to look like too much of a freak while I cupped my hand around my ear, I thought up a way to describe what's it like for me at a bar.
Picture yourself sitting beside a loud set of rapids. Now turn on 3 stereo's pretty loud so all the sounds blends so there isn't really much that's distinguishable. That's the background sound. Now try and listen to a tv where the sound is turned all the way down to like 1 bar. That's the conversation.
For the most part I hear about 1/2 of a word, every 4-5 words. I can sort of keep up with the gist of what's going on, but a lot of the time that's not enough. I just sit there and try and look interested and watch for clues where I should laugh or look concerned at the right time. That's harder than it looks.
That's why I like drinking at home better. That and it's cheaper. :-P
Update: Okay, to be clear: I love going to pubs. I love the atmosphere, the people, the drinks. However, if you're going to a loud pub to have long conversation to get caught up with someone, it might not be the best place. Please don't read my above post and think that I am a "pub hater".
We went out to the Heart and Crown last night for a work thing for Laura. As I was sitting there wondering what the hell people were talking about and trying not to look like too much of a freak while I cupped my hand around my ear, I thought up a way to describe what's it like for me at a bar.
Picture yourself sitting beside a loud set of rapids. Now turn on 3 stereo's pretty loud so all the sounds blends so there isn't really much that's distinguishable. That's the background sound. Now try and listen to a tv where the sound is turned all the way down to like 1 bar. That's the conversation.
For the most part I hear about 1/2 of a word, every 4-5 words. I can sort of keep up with the gist of what's going on, but a lot of the time that's not enough. I just sit there and try and look interested and watch for clues where I should laugh or look concerned at the right time. That's harder than it looks.
That's why I like drinking at home better. That and it's cheaper. :-P
Update: Okay, to be clear: I love going to pubs. I love the atmosphere, the people, the drinks. However, if you're going to a loud pub to have long conversation to get caught up with someone, it might not be the best place. Please don't read my above post and think that I am a "pub hater".
Labels:
home life
Thursday, 26 June 2008
Don't bike on sidewalks (apparently)
If you do bike on the sidewalk you could have a run in with the po-po, 5-0, coppers, flatfoots, fuzz, the heat, the man... You get the idea.
Now, this didn't happen to me personally, but someone I know. While they were biking to work they cross the canal at the pretoria bridge. Apparently a pedestrian was hit by a biker the other day, so the 5-0 was out handing out pamphlets about bike safety and how you're "more likely to be hit by a car or seriously injured if you bike on the sidewalk". Okay. Sure. Maybe. But I can't see how that holds true at that intersection where most people go from bike path to bike path, and the only way to do it is to 1) walk your bike or 2) bike on the road there were drivers are making quick turns.
This post isn't an argument about how people should be able to bike on the sidewalks. I see both sides of the argument and I understand it. I think that the lesson we can all take away from this incident is this: make sure you look and see if there are any cops around before you break the law. :-P
Now, this didn't happen to me personally, but someone I know. While they were biking to work they cross the canal at the pretoria bridge. Apparently a pedestrian was hit by a biker the other day, so the 5-0 was out handing out pamphlets about bike safety and how you're "more likely to be hit by a car or seriously injured if you bike on the sidewalk". Okay. Sure. Maybe. But I can't see how that holds true at that intersection where most people go from bike path to bike path, and the only way to do it is to 1) walk your bike or 2) bike on the road there were drivers are making quick turns.
This post isn't an argument about how people should be able to bike on the sidewalks. I see both sides of the argument and I understand it. I think that the lesson we can all take away from this incident is this: make sure you look and see if there are any cops around before you break the law. :-P
Labels:
home life
Saturday, 21 June 2008
Write in the style of the language you are working in
Like any programming language, there are certain styles for declaring variables, formatting, etc. I find that it usually turns into some kind of religious argument, based on the first language that the person worked in. What you like shouldn't matter: follow the style of the language.
I think that it reflects poorly if the programmer is not able to adapt to the language they are working with to follow the best practices for style etc. It makes it distracting when you read java code and go "oh, this was a C developer" or when you read ruby and know that the person's first language was java and they were too lazy to change.
Just like when you travel: try to respect the customs of the natives and don't stir up shit because that's how you're most comfortable with things. When in Rome...
I think that it reflects poorly if the programmer is not able to adapt to the language they are working with to follow the best practices for style etc. It makes it distracting when you read java code and go "oh, this was a C developer" or when you read ruby and know that the person's first language was java and they were too lazy to change.
Just like when you travel: try to respect the customs of the natives and don't stir up shit because that's how you're most comfortable with things. When in Rome...
Labels:
rant
Friday, 20 June 2008
The awesome bar is... well, awesome
There was a lot of flack about the new awesome bar in firefox 3. I was wondering if I'd have to turn it off and revert to v2 behaviour.
Well, after about 1 day of use I'm enjoying it. No longer am I digging around my bookmarks. I just go to the bar and *boom* I can get something that I've bookmarked or gone to recently. At first I thought that it was doing a check against google, but it's just all local which is even better. ;-)
Well, after about 1 day of use I'm enjoying it. No longer am I digging around my bookmarks. I just go to the bar and *boom* I can get something that I've bookmarked or gone to recently. At first I thought that it was doing a check against google, but it's just all local which is even better. ;-)
Thursday, 19 June 2008
Firefox 3
At work I've upgraded to firefox 3. Pretty good so far. I'm most impressed with how fast it is. I didn't think that I would notice any difference, but I do.
So far it hasn't crashed with using the newest version of gmail (which is something). My disappointment is that some plugins that I use (like adblock) aren't FF3 compatible yet. Most of all I'm sad that google browser sync won't be ported to FF3. So I've decided to try out Mozilla Weave and take that for a test spin. So far, so good.
Ah browser progress...
So far it hasn't crashed with using the newest version of gmail (which is something). My disappointment is that some plugins that I use (like adblock) aren't FF3 compatible yet. Most of all I'm sad that google browser sync won't be ported to FF3. So I've decided to try out Mozilla Weave and take that for a test spin. So far, so good.
Ah browser progress...
Wednesday, 18 June 2008
Ribs Ottawa
It's that time of year again: rib fest. Mmmm..... I just hope that it's not raining too much to enjoy it.
Labels:
random thoughts
Friday, 13 June 2008
QotD - Boys have all the fun
I heard this today and it totally cracked me up: "Boys have all the fun: they get twice the meat and all the alcohol."
Too funny. I love being a guy. ;-)
Too funny. I love being a guy. ;-)
Tuesday, 10 June 2008
Can't make it drink...
Like the expression goes: you can lead a horse to water by you can't make it drink. That's the way I feel sometimes. You can do work to help people work and help out with tools, but for some that's just not enough. You have to hand hold, baby sit, monitor. But none of that is really needed if people use common sense and think about what work would be needed for the next person to take over the project.
I've come to grips with not caring how other people work. Not my project, I don't know what issues were going on so who am I to judge. But it still ticks me off when I have to pick up the mess that someone else did and the mess was just because they were too lazy to do it right the first time.
So many issues would go away if people just did the best they know how to at the time. I can't fault anyone for that. Doing it the short cut way usually just ends up being the long cut over time and that makes me angry. You wouldn't like me when I'm angry.
*sigh*
I've come to grips with not caring how other people work. Not my project, I don't know what issues were going on so who am I to judge. But it still ticks me off when I have to pick up the mess that someone else did and the mess was just because they were too lazy to do it right the first time.
So many issues would go away if people just did the best they know how to at the time. I can't fault anyone for that. Doing it the short cut way usually just ends up being the long cut over time and that makes me angry. You wouldn't like me when I'm angry.
*sigh*
Labels:
work
Sunday, 8 June 2008
Stupid trick for those born in 1980
A friend pointed out a somewhat interesting thing for figuring out the age of people born in 1980. Say, for instance the current year is 2031: you take the first 2 digits (20) and add them to the last 2 in order to get the age of the person. eg: 20+31=51.
Neat but trivial trick that will only work for this century. I just wish that I had not spent as much time tonight as I did trying to explain it though... :-/
Neat but trivial trick that will only work for this century. I just wish that I had not spent as much time tonight as I did trying to explain it though... :-/
Labels:
random thoughts
Wednesday, 4 June 2008
Cook for the joy of it
Something that I've always enjoyed playing around with is cooking. I just find it fun and a creative experience. Not that everything I do turns out great, but it's edible (most of the time). Cooking to just eat and add fuel to your body gets old, really fast. Playing around with different types of flavours, textures, contrasts and colours doesn't really add a lot of time to food prep, but it makes the experience of eating so much more enjoyable. It actually makes dinner an experience rather than just a normal thing that you do like brushing your teeth.
Like anything, I think that it would be good to take classes to expand my skills and knowledge. I found some with a quick search, but at 139 $ / night, that's pretty steep.
Maybe I should just pick up a part time job to learn more and actually get paid for my time... :-P
Like anything, I think that it would be good to take classes to expand my skills and knowledge. I found some with a quick search, but at 139 $ / night, that's pretty steep.
Maybe I should just pick up a part time job to learn more and actually get paid for my time... :-P
Labels:
food and drink
Monday, 26 May 2008
One Year down
It's been one year now since we were married. This year has flown by...
It's been a very good year. ;-)
It's been a very good year. ;-)
Labels:
home life
Thursday, 22 May 2008
To kill a Tree or not?
I'm looking at picking up a tech book. I thought that I was supposed to be out May 1st, but apparently the release date has been moved to Sept 15th. That's a bit of a wait that I wasn't expecting.
They are offering the book in pdf (as a beta) where you'll be able to download the final book when it comes out. Now the question is do I want to just get the pdf version, or should I pick up the dead tree version as well since they are cheaper as a package. It's going to be around 900 pages, so it's not exactly a pocket book either.
What do you think the pro's vs con's of the dead tree version?
They are offering the book in pdf (as a beta) where you'll be able to download the final book when it comes out. Now the question is do I want to just get the pdf version, or should I pick up the dead tree version as well since they are cheaper as a package. It's going to be around 900 pages, so it's not exactly a pocket book either.
What do you think the pro's vs con's of the dead tree version?
Labels:
random thoughts
Wednesday, 21 May 2008
Basic mutator for java
One technique that was discussed in school that I thought was really interesting was mutating your software in order to test your test suite. What I'd like is a "basic" mutator that just comments out your line and tells you if that had any effect on your test suite. For everything that I've found, they are mostly papers published by PhD's with more discussion and less implementation, seemly abandoned projects, or projects that I can't actually find code for. They all do one level above of what I'd want for a basic mutator: they change the code rather than commenting it out.
I think that showing lines that "don't matter" to the test suite in conjunction with lines that are hit / not hit with your test suite would be really, really useful.
I think that showing lines that "don't matter" to the test suite in conjunction with lines that are hit / not hit with your test suite would be really, really useful.
Labels:
work
Tuesday, 20 May 2008
No DMCA for us
Dear Minister Prentice,
I'm quite concerned by the news that I've been reading about the introduction of US style copyright reform into Canada. I fear that the introduction of reform of this type will not benefit the consumers, artists, or society at all.
Dr. Michael Geist has proposed eight key principles that should be addressed to maintain a balanced, fair approach to Canadian copyright law. I'm sure that you've taken the time to read it, but it's worth reading again.
http://www.michaelgeist.ca/content/view/2572/125/
I've CC'ed my MP as well as the PM and I hope that everyone understands how important this issue is to me and Canadians as a whole.
I'm looking forward to seeing you make legislation that is best for Canadians.
I have no idea if this will make a difference. Let's hope so. Go Geist go!
Saturday, 17 May 2008
I'm such a noob...
Sometimes when you're using a tool you figure out how to do something but it's not the proper way but it works well enough. I've been doing this for a long, long time while using *nix tools. Like when using
The most annoying thing: I found the answer really hard to find because it's so, so simple. Just press "q" and it'll quit. Damn command line and their cryptic commands... q for quit... what kind of a genius thought of that one? I'd have thought that it would be something like shift-h-1-t. You know, so everyone could figure it out.
Now all the geeks can read this and think less of me. I just have to say "we all have gaps". :-P
man
I'd "exit" it by ctrl-z. I know that this just stops the process and when I exit the shell it warns me that there are stopped jobs in the background. I just didn't know how to exit it properly. Maybe I just remember using csh and it was different or maybe I just forgot.The most annoying thing: I found the answer really hard to find because it's so, so simple. Just press "q" and it'll quit. Damn command line and their cryptic commands... q for quit... what kind of a genius thought of that one? I'd have thought that it would be something like shift-h-1-t. You know, so everyone could figure it out.
Now all the geeks can read this and think less of me. I just have to say "we all have gaps". :-P
Labels:
tech
Wednesday, 14 May 2008
Everything has a camera, just don't use it!
One thing that I've noticed a lot lately is that there seem to be a lot of posts on boingboing about "security" people going after people taking photos. The reason is either 1) "I've copyrighted the street" or 2) "Oh nooos! You could be a terrorist!!!11". Either way it seems like an abuse of power over nothing.
The part that I find funnest? That cameras are being put into practically everything. Phones, computers, pda'a... you name it. Even some cameras have the ability to take pictures now I hear. There are in everything, but pretty soon it seems that you won't be able to use them, unless your a government, then you have to use them. You know, in order to protect the children...
My one tiny comfort is that this seems to be in the UK and USA. The craziness doesn't seem to have taken hold here (yet).
Scary thought: One day carrying a camera will be mandatory, but taking pictures will be a form of thoughtcrime.
War is Peace
Freedom is Slavery
Ignorance is Strength
The part that I find funnest? That cameras are being put into practically everything. Phones, computers, pda'a... you name it. Even some cameras have the ability to take pictures now I hear. There are in everything, but pretty soon it seems that you won't be able to use them, unless your a government, then you have to use them. You know, in order to protect the children...
My one tiny comfort is that this seems to be in the UK and USA. The craziness doesn't seem to have taken hold here (yet).
Scary thought: One day carrying a camera will be mandatory, but taking pictures will be a form of thoughtcrime.
Tuesday, 13 May 2008
Life is cyclic
Laura pointed out the other day that all our pictures seem to be the same. Every year we bike to the tulip festival and take (arguably goofy) pictures of ourselves. I saw pictures from last year and the only way I figured out that the pictures were from last year is because we were in different clothes.
I think that's just the nature of life though. Sunrise, sunset and all that. I'd start to worry if we stopped doing stuff like going to see the tulips just because we have done it before.
I think that's just the nature of life though. Sunrise, sunset and all that. I'd start to worry if we stopped doing stuff like going to see the tulips just because we have done it before.
Friday, 9 May 2008
Support is a *good* thing
The response that I usually see when a bug is raised in an open source project when someone asks for fix is "it's open source... so fix it yourself". That makes sense and seems like a reasonable "cost" for using the free software, but it's not that helpful all the time. Even if you fix it and submit a patch, that's no guarantee that the patch will be applied to source control in any reasonable time.
One of the maven plugins we use and had to patch (someone else supplied the patch) went without the patch being supplied for close to 2 years. It might be longer but I was (at the time) monitoring the mailing list and when they were going to cut a release I asked why the most voted for issue, with a patch, wasn't going into the release.
Don't get me wrong, I'm not complaining about open source. I'm just saying that it has some drawbacks when people are not working on it as their paid full time job.
Sometimes there are benefits to have a support contract for software. Yes, I know that you can get this with open source... It's just nice to be able to file a bug and not worry about solving it myself. To have someone who is familiar with the code fix it (as a committer) is a nice thing.
If this seems rambling I think that it just means that I need more coffee... oie.
One of the maven plugins we use and had to patch (someone else supplied the patch) went without the patch being supplied for close to 2 years. It might be longer but I was (at the time) monitoring the mailing list and when they were going to cut a release I asked why the most voted for issue, with a patch, wasn't going into the release.
Don't get me wrong, I'm not complaining about open source. I'm just saying that it has some drawbacks when people are not working on it as their paid full time job.
Sometimes there are benefits to have a support contract for software. Yes, I know that you can get this with open source... It's just nice to be able to file a bug and not worry about solving it myself. To have someone who is familiar with the code fix it (as a committer) is a nice thing.
If this seems rambling I think that it just means that I need more coffee... oie.
Wednesday, 7 May 2008
Just one task
Something that I'm going to try to do is every night make sure that I do at least one task that I'd rather not do. Something, anything will count... raking the leaves, working on my bike, doing the dishes, assembling something, drinking beer... it's all work and it all needs to be done.
I think that (one of) my problem is that my natural state of being is sloth. I find it really easy to come home and do nothing at all. Maybe stare at the tv or surf the 'net. Wasted time that I can't explain where it went at all. Not good.
I hope that this becomes a habit and not just another failed experiment.
I think that (one of) my problem is that my natural state of being is sloth. I find it really easy to come home and do nothing at all. Maybe stare at the tv or surf the 'net. Wasted time that I can't explain where it went at all. Not good.
I hope that this becomes a habit and not just another failed experiment.
Tuesday, 29 April 2008
Winter to Summer to Spring
It's pretty random weather out there. Cold, damp, windy. Normal spring weather I guess. Not really ideal biking weather. I'm biking anyways... now I just have to figure out how to tune up my bike. I bought a stand so I don't have to turn it on its handle bars, but I've been somewhat distracted.
My plan is to figure out how to keep our bikes in top running order so biking more enjoyable and so the wheels don't fall off. You know, the little things. I've been trying to learn by watching some videos on the web, but like all content on the web, that can be hit and miss. We'll see how that goes.
My plan is to figure out how to keep our bikes in top running order so biking more enjoyable and so the wheels don't fall off. You know, the little things. I've been trying to learn by watching some videos on the web, but like all content on the web, that can be hit and miss. We'll see how that goes.
Wednesday, 23 April 2008
Biking route is too short
I'm trying to figure out the best way to keep fit and stay happy. I'd love to run more, but I'm too sleepy lazy in the morning, after work I'm usually zonked and need to make dinner, and in the middle of the day can take a large chunk of the day. It also really sucks if there are meetings scheduled right around lunch too.
I'm not sure if I'd want to run as much if my bike route wasn't so short. Don't get me wrong, I wouldn't trade it for another one. When it's raining and cold, it feels a bit too long. On the nice, warm days it feels far, far too short. I'd like to stretch out my route to go down to hogs back and back up to downtown (up to downtown?).
However, that still doesn't address the lack of running. Running often is something that I miss. I'm going to have to suck it up and pick one routine.
I'll let you know how that goes.
I'm not sure if I'd want to run as much if my bike route wasn't so short. Don't get me wrong, I wouldn't trade it for another one. When it's raining and cold, it feels a bit too long. On the nice, warm days it feels far, far too short. I'd like to stretch out my route to go down to hogs back and back up to downtown (up to downtown?).
However, that still doesn't address the lack of running. Running often is something that I miss. I'm going to have to suck it up and pick one routine.
I'll let you know how that goes.
Tuesday, 22 April 2008
First they came...
I find history very interesting because I don't really think that people have changed much in the last couple thousand years, and probably won't change too much in the next couple. That's why I find poems like First They Came... pretty chilling. I don't think that rights and freedoms evaporate in one day. There are always steps. We just have to watch out for those steps.
Monday, 21 April 2008
Please forgive me
I want everyone to know that it was with the best intentions that I did what I did. It was one of these things that I was looking at the "greater good". I'm not sure if I made the right decision at all....
I bought bike shorts.
The shorts that I usually bike are running shorts that act more like mini sails and show more than anyone wants to see. I think that I'll still feel like a tool in my shorts on my old man bike... ah well. I just wanted anyone to know that if they see me in public, I'm doing this for them.
I bought bike shorts.
The shorts that I usually bike are running shorts that act more like mini sails and show more than anyone wants to see. I think that I'll still feel like a tool in my shorts on my old man bike... ah well. I just wanted anyone to know that if they see me in public, I'm doing this for them.
Sunday, 20 April 2008
Sucker for cranks
I don't know why, but I find manual powered flashlights fascinating. I understand how they work, hell, I could probably build (a crappy) one. But if you give me a choice between one that needs batteries (AA, D, etc), or a crank one that you don't have to constantly crank, I'll choose the crank one every time. I'm a sucker for them, what can I say.
I bought another one today for my commuting bike. I don't often bike when I feel that I'd need a light, but for those few times that I should have had one but didn't, it's been really, really scary. At this point I think that the lights are more useful on the bike trails so pedestrians will see me coming. I find bikers and drivers mostly aware of bikers in Ottawa since they expect them to be out and about.
I bought another one today for my commuting bike. I don't often bike when I feel that I'd need a light, but for those few times that I should have had one but didn't, it's been really, really scary. At this point I think that the lights are more useful on the bike trails so pedestrians will see me coming. I find bikers and drivers mostly aware of bikers in Ottawa since they expect them to be out and about.
Saturday, 19 April 2008
Cycling awareness
Something that I've been meaning to post for a little bit is an interesting cycling awareness video. When you follow the link, don't read the comments at first: just watch the video. Stop reading this post and go watch the video. This post will be here when you get back.
Things like this scare me when biking. I usually am wearing pretty bright clothings with a bunch of reflectors. Next I think I need a flashing light on the front to be seen not just by cars, but by other bikers. With the costs of gas constantly going up, I don't think that there will be a shortage of people biking to work this year.
Things like this scare me when biking. I usually am wearing pretty bright clothings with a bunch of reflectors. Next I think I need a flashing light on the front to be seen not just by cars, but by other bikers. With the costs of gas constantly going up, I don't think that there will be a shortage of people biking to work this year.
Labels:
cool
Thursday, 17 April 2008
Nicest day yet
This was the nicest day since we moved into our new place. There's still some snow on the lawn, but it's nice enough to sit outside. To sit on our porch, having a drink (is that illegal on your front lawn?), watching the sunset, waiting for the pizza guy to show up... well, that's "happiness" if I do say so myself.
I'm getting really excited about being able to do a lot more outside like biking more and badminton... things just have to dry out (stop flooding) a bit more and it'll all be good. I'm just not looking forward to the yardbook...
I'm getting really excited about being able to do a lot more outside like biking more and badminton... things just have to dry out (stop flooding) a bit more and it'll all be good. I'm just not looking forward to the yardbook...
Tuesday, 15 April 2008
Smart blankets
One thing that I always thought funny while watching Star Trek: TNG was how silly their beds and blankets looked. Super thin and slidy, like they'd fall right off of you. They're in the future, so there must be something that I'm missing, right?
I find a heavy blanket really comforting. There's something nice about being under a pile of blankets. The only issue that I find with a ton of blankets is that you simply get too hot. Unless you're going to sleep in a fridge, it's not going to help.
What I picture a future blanket would be is heavy and fluffy so you get the physical and psychological comfort, but with some self regulating temperature system that would keep you at the correct temperature. I used "correct" rather than "constant" because I think (random observation) that your temp changes based on your stage of sleep. The smart blanket would take that all into account.
Now I just have to find one.
I find a heavy blanket really comforting. There's something nice about being under a pile of blankets. The only issue that I find with a ton of blankets is that you simply get too hot. Unless you're going to sleep in a fridge, it's not going to help.
What I picture a future blanket would be is heavy and fluffy so you get the physical and psychological comfort, but with some self regulating temperature system that would keep you at the correct temperature. I used "correct" rather than "constant" because I think (random observation) that your temp changes based on your stage of sleep. The smart blanket would take that all into account.
Now I just have to find one.
Monday, 14 April 2008
Speed of Slowness
The speed of the internet connection I have actually ends up having a significant impact on my productivity at work. It's somewhat scary how much I notice a slowdown. I guess that's what happens when I spend most of my day bouncing around forums, doing research, downloading upgrades, etc.
I'm starting to approach dial-up speeds today for some strange reason. Then things bounce back up to "big pipe" speeds. Either way, it's driving me nuts... Impatience is becoming my number one emotion while on a computer at work. :-(
I'm starting to approach dial-up speeds today for some strange reason. Then things bounce back up to "big pipe" speeds. Either way, it's driving me nuts... Impatience is becoming my number one emotion while on a computer at work. :-(
Sunday, 13 April 2008
Retro Chic
In the spirit of keeping with the "look" of our house which was built in the 60's, we decided to buy some furnature that went with some of other hand-me-down stuff. We ended up picking up a kitchen hutch, table and chairs made by Vilas Furniture Manufacturing Co. Probably meant to be a dinning set (Laura tells me).
I wish that I could find some info about that company, but all that I can find is that they used to operate out of Quebec and they have been closed for a while now. Ah well, I guess wikipedia doesn't actually have everything yet.
I think that we need to take a break from used ottawa for a while now.
I wish that I could find some info about that company, but all that I can find is that they used to operate out of Quebec and they have been closed for a while now. Ah well, I guess wikipedia doesn't actually have everything yet.
I think that we need to take a break from used ottawa for a while now.
Saturday, 12 April 2008
Happy news
Something that Laura and I have been talking about for a couple of years has finally and we're both so very happy. We've been trying for the last little while and it's finally happened. We've got a foosball table and we couldn't be happier. :-P
Labels:
home life
Thursday, 10 April 2008
iPod as a gateway device
Something that occurred to me today was how dangerous MS must see the use of iPods being. First people start using an iPod. Then maybe at a party someone is passing around a mac and they try it there. Pretty soon they're buying a mac for themselves for when they're at home "working". A small step from that is them bring it into work and then it all just goes to hell. That's all assuming that they don't switch to the hard stuff.
MS has to be concerned about iPod use. Apple targets children and children are our future. Why won't someone please think of the children?
MS has to be concerned about iPod use. Apple targets children and children are our future. Why won't someone please think of the children?
Labels:
random thoughts
Wednesday, 9 April 2008
Super Mario - JS version
A friend pointed out that there is a super mario that's done totally in javascript. No images, just js. Pretty cool....
Labels:
cool
Saturday, 5 April 2008
Now on Leopard
I've just upgraded to leopard on my macbook. It was far, far smoother than I thought it would go. The part that took the longest time was backing up all my data (which makes me just realize how bad I am at making backups). It was pretty much insert disk, click next a couple of time (selecting "archive and install") and then it rebooted. All my files are where I left them, even my desktop picture is the same. That's crazy smooth.
Labels:
home life
Wednesday, 2 April 2008
It's not magic
One thing that I find I have to do when dealing with a new technology is come up with a "realistic" mental model of how it works under the covers. It doesn't have to be accurate in the sense of implementation details, but it has to make sense as if you were writing it in pseudo code. If it has a step 2 of ? or involves the word "magic" in your pseudo code, it's not good enough.
Code / config you write in language: assembly, C, java, or ruby, it all comes down to operations for the hardware and the last time I checked there was no
There's always a learning stage when picking up a new framework / language. Don't give up, keep working on that mental model. Don't leave step 2 blank.
Code / config you write in language: assembly, C, java, or ruby, it all comes down to operations for the hardware and the last time I checked there was no
read_programmers_mind()
function. It's not magic.There's always a learning stage when picking up a new framework / language. Don't give up, keep working on that mental model. Don't leave step 2 blank.
Labels:
rant
Monday, 31 March 2008
Overloading properties in maven
I don't know how to say this well, so I'll just state the problem and the solution.
P: In maven, if you declare a variable for a host (where you keep config files or something), if you cannot reach the host your build might fail. I've got this issue for a groovy build script, checkstyle and pmd config's.
A: Rather than modifying your pom and possibly messing up the code, you can change your local settings.xml file to have that property instead. It seems to take priority over vars in parent poms.
Ideally, I'd store those config files with the parent pom, but I've not had time to look into how to do that.
P: In maven, if you declare a variable for a host (where you keep config files or something), if you cannot reach the host your build might fail. I've got this issue for a groovy build script, checkstyle and pmd config's.
A: Rather than modifying your pom and possibly messing up the code, you can change your local settings.xml file to have that property instead. It seems to take priority over vars in parent poms.
Ideally, I'd store those config files with the parent pom, but I've not had time to look into how to do that.
Friday, 28 March 2008
Secure maven repo
Most of the maven repo's out there are accessible over plain http. However, you might want to secure your maven (corporate?) repo. If you have scp / ssh private-public keys set up it's pretty easy once you know the config. Like most things "maven", finding the config is the hard part. ;-)
Thursday, 27 March 2008
Vasovagal syncope
I learned a new word (?) today: vasovagal syncope. I also learned that I don't like giving fasting blood while working on almost no sleep. Ya, that was fun. Threw me off for most of the day too, especially the morning.
The worst part about the experience? They couldn't actually get any blood so I've got to do it all again. :-(
Double frick.
The worst part about the experience? They couldn't actually get any blood so I've got to do it all again. :-(
Double frick.
Wednesday, 26 March 2008
iTunes - clunky and broken
One thing that I seem to be continually disappointed from apple is iTunes. Holy craptastic. If you do a search for things like removing duplicates you get close to 200k hits. There's 3rd party commercial products that you can buy to solve this issue. iTunes allows you to "see" the duplicates in a playlist, but they don't provide anyway to prevent them. Crazy. You'd expect something that been around for over 7 years to have fixed what I'd think is a basic problem.
Another thing that keeps on causing me grief is that my media is on an external drive since I've got a macbook. So, I point my media library to the external drive, but if iTunes starts up and my drive isn't already mounted it just resets to the default location. So then I've got some files on each drive, but all the files I have iTunes doesn't think exist anymore. I end up clicking on a bunch of songs to to get things going again. It would be nice if there was a generic "now the drive is remounted, check if the files are there" button, or *gasp* have it happen automatically. I know that this is a pretty complicated thing, but it would be good if you could set a "primary" media library location and default to a secondary one if that's not accessible. And when the primary is available, to "merge" in any new media that might have been added.
I recognize that this is a total pipe dream since apple isn't even able to put a "no duplicates" on a playlist. What technical roadblock causes that? No one knows of a data structure that only allows one instance of something in it? *grumble*
This is one reason why it's nice to have open source software sometimes... there would be a patch even if the commiters don't want to have that feature.
Frick.
Another thing that keeps on causing me grief is that my media is on an external drive since I've got a macbook. So, I point my media library to the external drive, but if iTunes starts up and my drive isn't already mounted it just resets to the default location. So then I've got some files on each drive, but all the files I have iTunes doesn't think exist anymore. I end up clicking on a bunch of songs to to get things going again. It would be nice if there was a generic "now the drive is remounted, check if the files are there" button, or *gasp* have it happen automatically. I know that this is a pretty complicated thing, but it would be good if you could set a "primary" media library location and default to a secondary one if that's not accessible. And when the primary is available, to "merge" in any new media that might have been added.
I recognize that this is a total pipe dream since apple isn't even able to put a "no duplicates" on a playlist. What technical roadblock causes that? No one knows of a data structure that only allows one instance of something in it? *grumble*
This is one reason why it's nice to have open source software sometimes... there would be a patch even if the commiters don't want to have that feature.
Frick.
Labels:
rant
Tuesday, 25 March 2008
Costa Rica - Part 2 - Transportation
In my ever lazy pace of blogging, this is the second part of my Costa Rica "series". See Part 1 to catch up on all the exciting details.
Traveling in Costa Rica more touristy areas is pretty much like anywhere else I've gone minus the public transportation. A bunch of crazy cab drivers who can zoom around while you silently pray to yourself. In Alajuela by the airport they're a little more crazy. Blowing through red lights and stop signs, looking like they are about to smash up their car, getting you to your destination through a dizzying set of roads and back alleys so that you aren't sure exactly where you are. Pretty standard stuff.
Around Arenal we actually rented a small car for the day so we could get around. Driving there was actually kind of fun with the gentle up and down of the roads. That was the first time we had rented a car in a foreign country and over all it was a brief and pleasant experience.
About 50 minutes into our 2 hour journey we met up with another "taxi" that had been sent and half of the people switched to the other cab. About 5 minutes after the transfer we got a flat tire. In the middle of the jungle. Nothing around except for squirrel monkeys. The driver had a X tire iron and actually torqued the end of the iron trying to take off the rusted nuts (he used a pipe for leverage). As I had mentioned in Part 1, people are really friendly and a Tico stopped to talk and help. He had a X tire iron too, but that didn't seem to work. It didn't take long until our driver took out a hammer and chisel. No joke. He was wailing one those nuts to try and get them to turn. I've never seen or heard of someone trying to take a tire off like that. There's a reason: it doesn't work too well. I wasn't paying too much attention and then I heard a car door slam and the guy who was helping us drove off with our driver. Luckily he came back with another tire iron after like 10 minutes, but we didn't know that. He didn't explain it before he left... we wouldn't have understood him anyways. Short story, he came back, was able to change the tire and we got back just a little late. As for how many lug nuts we had on the tire: I don't ask questions I don't want to know the answer.
Traveling in Costa Rica more touristy areas is pretty much like anywhere else I've gone minus the public transportation. A bunch of crazy cab drivers who can zoom around while you silently pray to yourself. In Alajuela by the airport they're a little more crazy. Blowing through red lights and stop signs, looking like they are about to smash up their car, getting you to your destination through a dizzying set of roads and back alleys so that you aren't sure exactly where you are. Pretty standard stuff.
Around Arenal we actually rented a small car for the day so we could get around. Driving there was actually kind of fun with the gentle up and down of the roads. That was the first time we had rented a car in a foreign country and over all it was a brief and pleasant experience.
Domestic Air Travel
From San Jose we flew down to Puerto Jimenez on a small 12 passenger plane. It's a very different experience to be so close to the front of the plane where you can reach out and touch the controls. The landing in Port Jim was interesting. I don't know what they are saying with the graveyard right beside the airstrip, but I figured that it was better not to ask. Pretty smooth operation overall. When we flew back it to SJ was really, really windy. As the plane was about to touch down the it was swinging left and right about 30 degrees off center. I think that we landed on one wheel instead of them both touching down at the same time. A great experience.Taxi's in the Osa
Some taxi's in the Osa are nice, new SUV's. However, most seem to be pickup trucks where they have 2 bench's in that back that you sit on. Padding on the bench is a bonus. Not bad overall. This is how we got from Port Jim to Carate on the taxi colectivo. It was fine going there since they just kept on pulling up more trucks based on how many people were leaving. If you see your stop, just pound on the roof of the cab and the driver will stop. Coming back from Carate was, shall I say, "interesting". They had only sent one truck to do the trip back on the afternoon we decided to leave, but there was 16 or 17 people that wanted to go back on the afternoon bus (note: try and take the morning bus). So in the back of the pickup truck was 11 people, a spare tire, a propane tank (?!?), everyone's gear (huge backpacks), with 3 people literally hanging off of the back and 3 in the cab.About 50 minutes into our 2 hour journey we met up with another "taxi" that had been sent and half of the people switched to the other cab. About 5 minutes after the transfer we got a flat tire. In the middle of the jungle. Nothing around except for squirrel monkeys. The driver had a X tire iron and actually torqued the end of the iron trying to take off the rusted nuts (he used a pipe for leverage). As I had mentioned in Part 1, people are really friendly and a Tico stopped to talk and help. He had a X tire iron too, but that didn't seem to work. It didn't take long until our driver took out a hammer and chisel. No joke. He was wailing one those nuts to try and get them to turn. I've never seen or heard of someone trying to take a tire off like that. There's a reason: it doesn't work too well. I wasn't paying too much attention and then I heard a car door slam and the guy who was helping us drove off with our driver. Luckily he came back with another tire iron after like 10 minutes, but we didn't know that. He didn't explain it before he left... we wouldn't have understood him anyways. Short story, he came back, was able to change the tire and we got back just a little late. As for how many lug nuts we had on the tire: I don't ask questions I don't want to know the answer.
Sunday, 23 March 2008
As the mayhem subsides
... all I hear is the dishwasher. This year we hosted Easter. I think that this if the first time we've had a mildly large group (9 adults, 6 kids) and it went much better than I had feared. I always half expect there to be blood and broken dishes and am always pleasantly surprised. Allowing the kids to play the wii probably creates as many issues as it solves though. Ah well.
It's great to be able to see everyone and it's wonderful to actually have the space to see them all at the same time. Come summer time we'll be able to host a bbq as well. Having a house does have its advantages. ;-)
It's great to be able to see everyone and it's wonderful to actually have the space to see them all at the same time. Come summer time we'll be able to host a bbq as well. Having a house does have its advantages. ;-)
Friday, 21 March 2008
Dr. Mario and Bacteria Extermination
So Dr. Mario and Bacteria Extermination is due to be out in March. No date set for north america, just sometime in 2008. How long does it take to do a language translation and retesting on a games these days?
My only guess for the lag is for setting up the extra infrastructure for the online component, but even then how long does that take? *sigh* I just want everything now. Ah well. I guess that I should take out GH3 that we bought last night. ;-)
My only guess for the lag is for setting up the extra infrastructure for the online component, but even then how long does that take? *sigh* I just want everything now. Ah well. I guess that I should take out GH3 that we bought last night. ;-)
Thursday, 20 March 2008
Earth Hour '08
Something that Laura pointed out the other day that I thought was funny. They announced that Ottawa is going to support "earth hour" hour where everyone is supposed to turn off their lights for 1 hour on the 29th. To highlight this they unveiled a 3 story tall banner on city hall. Laura looked at that and said "I wonder how many people's offices that blocks".
I just think that it's funny. Before the banner they could probably just turn off the lights in those rooms. Now with the banner saying "turn off your lights for 1 hour", those people will probably need to turn on their lights for the whole working day. Too funny.
I just think that it's funny. Before the banner they could probably just turn off the lights in those rooms. Now with the banner saying "turn off your lights for 1 hour", those people will probably need to turn on their lights for the whole working day. Too funny.
Labels:
random thoughts
Tuesday, 18 March 2008
Arthur C. Clarke Is Dead At 90
Many sites are covering the death of what I consider one of the great authors of our time. I wouldn't consider his great because of the words he wrote, but the ideas that he inspired. Sir Clarke was the first hard sci-fi author that I read and it opened me to a whole genre. I often think about Clarke's third law and wonder at what point tech will be so interwoven into our lives that we won't be able to tell where it begins.
To steal a quote: I hope wherever he's gone, it's full of stars.
To steal a quote: I hope wherever he's gone, it's full of stars.
Labels:
random thoughts
Friday, 14 March 2008
How important is your problem?
There are some tricks that I've been using to not get totally over whelmed and flooded with work. I don't know if it's good or bad, but it helps me stay sane while working with other developers.
Filter #1:
When someone raises an issue while in passing or at the water cooler (figuratively), I'll ask them to raise a ticket so that can be addressed. If I never see the ticket, then the issue wasn't important enough to them to spend the 30 seconds of their time. It's not worth me spending time on it either. This kills 75% of "issues".
Filter #2:
On the rare cases that it gets past #1, then most of the time the ticket is somewhat vague and needs some clarification. I could guess what they mean, but I bounce the ticket back to them so they can fill out what they mean with their fuzzy ticket hand waving. When you later follow up with these issues you find out that they weren't really issues after all. This kills another 20% of issues.
That leaves the tickets that people need and want, and have a clear idea of the requirements. It takes off 95% of the tickets and reduces it to the issues of the "now". I'm not saying that this is a good idea to do with all people. I'm saying that it works for developers interacting with developers.
Filter #1:
When someone raises an issue while in passing or at the water cooler (figuratively), I'll ask them to raise a ticket so that can be addressed. If I never see the ticket, then the issue wasn't important enough to them to spend the 30 seconds of their time. It's not worth me spending time on it either. This kills 75% of "issues".
Filter #2:
On the rare cases that it gets past #1, then most of the time the ticket is somewhat vague and needs some clarification. I could guess what they mean, but I bounce the ticket back to them so they can fill out what they mean with their fuzzy ticket hand waving. When you later follow up with these issues you find out that they weren't really issues after all. This kills another 20% of issues.
That leaves the tickets that people need and want, and have a clear idea of the requirements. It takes off 95% of the tickets and reduces it to the issues of the "now". I'm not saying that this is a good idea to do with all people. I'm saying that it works for developers interacting with developers.
Thursday, 13 March 2008
It happened
I'm told that it happens to a lot of guys. I didn't think that it would happen to me. I'm careful, I pay attention at the right times and I'm usually super focused. I guess that I just got a little too distracted by the radio playing in the background or I was thinking about what I was going to do after. All it takes is one slip up though and I guess it can happen to anyone.
Tonight I locked my keys in the car. The car was running; in the driveway; with my house keys in it; me without a cell phone; right after I dropped Laura off for work. I closed my eyes and pictured how I was going to solve this problem without too many options springing to mind. First thing I did was start to circle the car trying all the doors. The 3rd one I tried opened (it was the back door). The gods we certainly smiling upon me tonight. I think that maybe Laura is right and that we do need an automatic door opener.
Tonight I locked my keys in the car. The car was running; in the driveway; with my house keys in it; me without a cell phone; right after I dropped Laura off for work. I closed my eyes and pictured how I was going to solve this problem without too many options springing to mind. First thing I did was start to circle the car trying all the doors. The 3rd one I tried opened (it was the back door). The gods we certainly smiling upon me tonight. I think that maybe Laura is right and that we do need an automatic door opener.
Git
The other day Ryan told me about Git and sent me a video of Linus Torvalds talking about it. Clearly I'm ugly and stupid from Linus's definition. Let's leave it as I just don't really "get it" yet and I'll iterate the issues that I see with it and people can tell me why I'm wrong / right.
Here's my understanding of Git:
Git was designed for open source projects with many people working on the project at the same time. Low bandwidth, quick merges, etc. No one is special. Everyone can modify the code, but what code become the "lead" code is based on a network of trust of developers.
Here's why I'm not sure if it will work well in a corporate env (as they are now):
1) corp's have servers that they backup, work stations they do not. If the code is only on workstations, I see that as very dangerous because of hard drive failure, viruses could wipe out your whole project (because generally all workstations are based on the same image and usually all windows).
2) for smaller projects where it is 1 or 2 developers, this whole network of trust isn't needed. You can't tell your boss "Fred spent 2 weeks on that feature, but I don't trust him, so I'm not going to take it". If you don't trust some else's code in your company, that's a different issue and I think that you have to address that in a different way. The whole "no node is special, but you need a network of trust" strikes me as a Animal Farm-esq way of saying "all animals are equal, but some animals are more equal than others".
3) most project teams are co-located on the same LAN. Bandwidth is a non-issue.
4) if you have a build system that's doing continuous integration, what's it building against? Do you need to have it installed on each person's workstation?
Overall it looks pretty exciting. It looks like what it was designed for it does very well. There doesn't seem to much tool support for it (IDE integration, etc) yet, but that only comes when things hit a certain critical mass.
Tell me what I'm missing and or how it would be addressed. I might be bitching about not being able to climb through the window but missing the door I am standing beside. ;-)
Here's my understanding of Git:
Git was designed for open source projects with many people working on the project at the same time. Low bandwidth, quick merges, etc. No one is special. Everyone can modify the code, but what code become the "lead" code is based on a network of trust of developers.
Here's why I'm not sure if it will work well in a corporate env (as they are now):
1) corp's have servers that they backup, work stations they do not. If the code is only on workstations, I see that as very dangerous because of hard drive failure, viruses could wipe out your whole project (because generally all workstations are based on the same image and usually all windows).
2) for smaller projects where it is 1 or 2 developers, this whole network of trust isn't needed. You can't tell your boss "Fred spent 2 weeks on that feature, but I don't trust him, so I'm not going to take it". If you don't trust some else's code in your company, that's a different issue and I think that you have to address that in a different way. The whole "no node is special, but you need a network of trust" strikes me as a Animal Farm-esq way of saying "all animals are equal, but some animals are more equal than others".
3) most project teams are co-located on the same LAN. Bandwidth is a non-issue.
4) if you have a build system that's doing continuous integration, what's it building against? Do you need to have it installed on each person's workstation?
Overall it looks pretty exciting. It looks like what it was designed for it does very well. There doesn't seem to much tool support for it (IDE integration, etc) yet, but that only comes when things hit a certain critical mass.
Tell me what I'm missing and or how it would be addressed. I might be bitching about not being able to climb through the window but missing the door I am standing beside. ;-)
Labels:
tech
Sunday, 9 March 2008
Cool art - Stefan Horik
In case I ever loose the little post card that we have of a painting by Stefan Horik, I'm blogging this so that we can find his name later. We saw some of his work in a gallery a couple of years ago in Quebec City and it was great. I've found some pictures online but it's no where near "wow" as they are in real life. The ones we saw are pretty "gunky" so it's hard to capture that in a jpg I guess.
One of these days we'll pick up something of his when it's a bit more in the budget to buy original art. ;-)
One of these days we'll pick up something of his when it's a bit more in the budget to buy original art. ;-)
Labels:
random thoughts
Friday, 7 March 2008
Costa Rica - Part 1
In order to try and "pay it forward", I'm going to blog about our experiences traveling to Costa Rica this Feb 2008 for 2 weeks. I'm planning on having several posts to describe in more detail some things, but let's start off small.
We also did a coffee tour which was really interesting to see and taste the steps that go into the process of growing and making coffee. I don't feel bad about paying more of fair traded coffee anymore...
When you're in Santa Elena and the area, you are either going uphill or downhill. There's not really anything in between. I think that the town was somewhere around 1500 m above sea level, some farms were 1100 m and the coffee processing "plant" was like 800 m. And that's maybe a couple of km away. We did a hike to the tallest point around (1800 m) and I think that the slope was 30-45 degrees for 95% of the hike. I've done a bunch of hiking at that was hard.
Okay, that's a good start for now. Other sections will be "The Osa" and "Transportation".
Nicest People Ever
A co-worker of mine has told me that the people are super nice. For the most part where ever we travel we find the people nice-ish at the very least. The ticos were calm, patient and friendly."Dry Season" is a lie
We were in the Osa (which I'll do a whole post for) during "dry season". I think that it should be called "less wet season" instead. It poured every day for minimum one hour, luckily mostly at night. I think that the humidity was 90%+. In order to give you an idea what that's like, we had "dry fit" clothing that would get wetter if you hung it up and it didn't rain on it. Crazy. That was a small, small thing compared to the beauty of the Osa, so don't let that discourage you from going there. More details later.Monteverde
We did some really touristy stuff in Monteverde like ziplining with selvatura. That was awesome and such a great experience. We also did the "tarzan swing" which I can only describe as 1/4 of a second of sheer terror followed by 30 seconds of joy. Laura who's not comfortable with heights did both. I'm very proud of her.We also did a coffee tour which was really interesting to see and taste the steps that go into the process of growing and making coffee. I don't feel bad about paying more of fair traded coffee anymore...
When you're in Santa Elena and the area, you are either going uphill or downhill. There's not really anything in between. I think that the town was somewhere around 1500 m above sea level, some farms were 1100 m and the coffee processing "plant" was like 800 m. And that's maybe a couple of km away. We did a hike to the tallest point around (1800 m) and I think that the slope was 30-45 degrees for 95% of the hike. I've done a bunch of hiking at that was hard.
Okay, that's a good start for now. Other sections will be "The Osa" and "Transportation".
Labels:
travel
How to kill a process in unix
Every so often a test case on our CI machine opens a port for a mock smtp server and then somehow leaves it open. I ssh into the machine and close the port. It usually take me 10 minutes to remember / find the command and 10 seconds to do all the work.
The command that I run is this:
Hopefully I'll be able to find it faster now rather than digging though my email. :-/
The command that I run is this:
fuser -n tcp -k [port number]
Hopefully I'll be able to find it faster now rather than digging though my email. :-/
Thursday, 6 March 2008
Jboss http access log
I never remember where it is, so I'm blogging about it so that I can find it easily...
If you want to turn on the access log in jboss 4 so you can see the http requests (404's, etc) in order to find broken links, just do the following:
Edit the server.xml file. For the default server in the default location, it is ${jboss.server.home.dir}/jboss-web.deployer/server.xml. Uncomment the "Access logger" section. The log file will show up in ${jboss.server.home.dir}/log/localhost_access_log.{todays_date}.log
If you want to turn on the access log in jboss 4 so you can see the http requests (404's, etc) in order to find broken links, just do the following:
Edit the server.xml file. For the default server in the default location, it is ${jboss.server.home.dir}/jboss-web.deployer/server.xml. Uncomment the "Access logger" section. The log file will show up in ${jboss.server.home.dir}/log/localhost_access_log.{todays_date}.log
Tuesday, 4 March 2008
Trip post-mortem
One thing that we feel is really important is to have a trip post-mortem (lessons learned) discussion and to document it. It sounds super nerd-ish, but it's really frustrating to find yourself saying on a trip "shit, we forgot [something] again... let's remember it next time". It's also a good idea to discuss what you did well, what needs work, did you pack any gear that you'd thought that you'd need but never used, etc.
For instance, when we were in Europe we did a lot of low light pictures that didn't turn out too well. We thought that bringing a tripod would be a great solution to that, so for our Costa Rica trip we took one. I think that we used it once in 2 weeks. It wasn't too heavy, but next time it might not be the best thing to take on a camping trip.
Another example is for most of our trips we don't take cutlery so we end up buying plastic forks, knives and spoons. We've got a ton of those now. It would be much better to take some camping cutlery instead.
Lessons learned are only learned in you don't keep on making the same mistakes. :-P
For instance, when we were in Europe we did a lot of low light pictures that didn't turn out too well. We thought that bringing a tripod would be a great solution to that, so for our Costa Rica trip we took one. I think that we used it once in 2 weeks. It wasn't too heavy, but next time it might not be the best thing to take on a camping trip.
Another example is for most of our trips we don't take cutlery so we end up buying plastic forks, knives and spoons. We've got a ton of those now. It would be much better to take some camping cutlery instead.
Lessons learned are only learned in you don't keep on making the same mistakes. :-P
I miss my ring
We took our wedding rings in to get engraved. I find myself going to play with my ring and not finding it. It's been less than a year and I really don't like being without it. *sigh*
Tuesday, 12 February 2008
Websphere causes joy...
I'm blogging this so that maybe other people don't waste as much time on this issue as we did. And of course it's not an issue with JBoss. JBoss always seems to make sense and work. Ah well.
The issue was for the form based authentication. In the form it used a jstl tag for the action like this:
Now, that looks correct. In websphere when you type in a username and password (good or bad), it doesn't set the ltap cookie, but then it tries to forward you on to the page you requested, which then generates a 403 not authorized. The above tag targets the root of your app (since it has the leading slash).
The issue seem to be that you have to have the action target to the same location of your jsp that's used for the login page. If you target the context root but your jsp is in some path like [context root]/secure-section/login.jsp, it won't work.
In the end it sometimes pays not to be fancy. Just leave your login action as a plain html one like this:
The issue was for the form based authentication. In the form it used a jstl tag for the action like this:
<form action="<c:url value='/j_security_check'/>" method="post"> ...
Now, that looks correct. In websphere when you type in a username and password (good or bad), it doesn't set the ltap cookie, but then it tries to forward you on to the page you requested, which then generates a 403 not authorized. The above tag targets the root of your app (since it has the leading slash).
The issue seem to be that you have to have the action target to the same location of your jsp that's used for the login page. If you target the context root but your jsp is in some path like [context root]/secure-section/login.jsp, it won't work.
In the end it sometimes pays not to be fancy. Just leave your login action as a plain html one like this:
<form action="j_security_check" method="post"> ...
Labels:
work
Subscribe to:
Posts (Atom)