Saturday, December 31, 2005

Happy New Year

A big Happy New Year to all. As the new year approaches all of us can look forward to new opportunities and experiences remembering that life is what you make of it. We never know what may be right around the corner.

Wishing everyone the very best in the coming year.

Thursday, December 08, 2005

Using the right tool for the job

Having developed software for quite a few years now, we won't discuss how long since I don't want to date myself :-), it is very easy to stick with a language you use frequently. When a problem arises, you immediately think, "how would I solve that in C++ or Java?". This seems perfectly reasonable given you know the language well and should be able to put something together pretty quick.

Just the other day I found myself in such a situation, I needed to pull apart a binary file to ensure it was being generated correctly. The code that produced the file was in java, however it was a small part of a much bigger system and thus was not easily reused for my purposes. Sitting in my chair I'm thinking how I can quickly put something together that will output the contents of the file and maybe do a little validation in the process. Using C or C++ would not be to bad but require the setup of a VC++ project, generate a main(), write some file code, etc, etc, etc. Nothing hard here, just tedious. Java was no better, I would have to create many of the same things required by C++.

It was about this point that a thought came to me, why not use Ruby? A little Ruby script could pull the file apart easily enough and there would be no need for a main and the file code would be really simple. Only problem, although I've used Ruby for a few things I'm still learning alot about the language so it would no doubt be quite a bit slower to write an app in Ruby than it would be with Java or C++ right? Well, Ruby it is, after all, this adds a little variety into my development life!

So first things first, how to read binary data from a file using Ruby? A quick web search outlined how to use the File class and the associated read method to access binary file data. After that things just flew. Quite literally, 5 minutes after I started a complete Ruby program was on the screen in front of me that would produce a nicely formatted output to the standard console outlining the contents of the binary file. Could I have written the same thing in C++, sure, would it have been completely done in 5 minutes, doubtful.

This is productivity at its best. The little program is easy to read, can be extended in no time and proves to be a valuable debugging tool. Pretty good for 5 minutes time! This just goes to show, using the right tool / language for the job can really pay off even if you don't know it as well as another tool.

Monday, November 28, 2005

It's snowing - first one this year

Skiing started early this year and now we have our first snow fall in the city. It may not be sticking in all areas (ie sea level) but the upper areas are certainly getting accumulation. The morning commute should be an interesting one given that Vancouver drivers really don't get much experience with snow and as a result, they don't really know how to drive in it!

Monday, November 21, 2005

One of lifes interesting tid bits

It really is the little things in life that make each day worth living, you just never know when something interesting will happen. This morning I was driving into work just like any other day except that it was quite foggy. The fog was sitting pretty low

Fog in November is unsual for Vancouver so everybody was driving pretty slow. As I pulled up to an intersection I looked over at a building complex that had its sprinklers running. You have to wonder why a sprinkler system was running when it has been wet and foggy for days but that is another story. The cool thing about this scene was that the sprinklers were spraying a fine mist which was immediately turning into fog. It was like a special effects person had setup a bunch of fog generators on the lawn. Each sprinkler produced a column of fog that went straight up about six feet before melding with the rest of the fog. All in all it looked pretty cool.

Funny how the little things can spruce up a day.

Monday, November 07, 2005

Developers Corner

Many of us in the software field often have discussions about the latest tech or software development techniques. We glean these details from a variety of sources many of which we don't give a second thought to. Well today a coworker and I were having just such a discussion and the inevitable question came up, "What resources do you use to keep up with the latest tech?".

Now you can answer a question like this by rattling of a few resources that come to mind or perhaps send them a few URLs from your list of bookmarks, neither of these really covers the question completely though. I'm not sure about you but I use many different resources to keep up with the latest and many of these resources I visit only periodically. From these sites, blogs, etc I usually come across other sites that provide interesting bits, the net result being a bit of a spider web of connections. Hmmm, maybe that is why it is called the world wide web. :-)

Anyway, as a result of this discussion I thought it might be interesting to start posting sites I have found useful with the hope that others may also contribute to this list. These sites will span software development, software design, tools and technologies and probably a few sites talking about gadgets, etc.

To start of I've trolled my bookmarks to come up with a few sites I've found useful over the last while.

.Net Developers Journal - This is a Microsoft site that provides a good source of... you guessed it.... .Net related info.

O'Reilly OnLamp - The OnLamp site has been a favorite of mine for a while due to the combination of well written articles and coverage on some of the latest developments in software tech.

Raganwald - What we have here is a personal blog that talks about software development from a variety of angles. Stop by often because if todays post doesn't interest you tomorrows may.

InformIT - All things software. Includes info on software design, toolkits, developments in the markerplace, and much much more.

Safari - Although this is a pay site, I think it is invaluable for those who want to read up on the lates tools and techniques. Safari is an online book store that works on a monthly subscription. They have an excellent selection of books and some very useful search facilities. There is a 2 week trial giving you a chance to try before you buy.


Let me know if you have a favorite blog, website, discussion group or other resource.

Tuesday, November 01, 2005

Pumkin Mania

Halloween has come and gone and as many a year past, we carved up a number of pumkins this year. To make life just a little more interesting, we bought an extreme pumpkin carving book this year. You know, looking at the pictures it seems like the pumpkins should not be too difficult to carve.... Lets just say there is a reason the word extreme is in the title! :-)


This pumpkin is a template I found on the web and since Emma likes cats, it was a natural choice. The pumpkin came out quite nice and was certainly popular with our trick or treaters.




As I mentioned earlier, we picked up a new set of extreme carving templates. Being one that likes a challenge, I picked this template and went to it. A couple hours later it was done, doesn't look to bad I certainly need to refine my carving skills to get all the detail. Well, there is always next year!





Here are a couple of small pumkins we put in our tree just to add a little interest as people came up the stairs to our door. If you are looking for a way to get into pumpkin carving, I'd highly recommend the Pumpkin Masters books. They come in different collections several of which are good for beginners and they usually come with tools to help you with the carving.


Friday, October 28, 2005

Many friends move on

We all experience times where good friends that we work with move on to new endeavors, but it is not so common to have several of them leave the company within a couple months and it is even less common to have several of them leave the country.

Alas, I've recently found myself in this situation. Don't get me wrong, I'm very happy for all of them as they move on to new and exciting opportunities, and through instant messaging we will be in touch often. Problem is, these are folks that I have corresponded with daily and whose companionship I have enjoyed a great deal.

Departures like these create a void in your life, think of how much time we spend with our coworkers and how they affect our lives, both good and bad. Every week I spend at least 40 hours with these people, exchanging ideas, discussing work related activities and sharing experiences, etc. The office environment certainly feels different now, not sure how to describe it other than it feels colder.

To my friends, you know who you are, I bid you the very best of luck in your new adventures and it is my sincerest hope that we will stay in touch long into the future.

Sunday, October 02, 2005

Serenity

Well last night we went to see Serenity, not sure if we were giving into lots of hype or if we were going to see a good movie. I can now say that this is a very entertaining movie.

For those not familiar with the movie, it is based on the series Firefly which was killed by one those oh so intelligent TV networks after only one season. Firefly had gained quite a following and there was an incredible response to its cancellation, including fans going to the extent of raising funds trying to encourage the network to give the show another chance.

Obviously Firefly never got the opportunity to film another season, thus the original founder of the series, Whil Wheaton decided to make a followup movie, and Serenity was born. Even though Serentiy starts where the series left off, you really don't have to be familliar with the series in order to enjoy the movie.

Serenity is a good mix of fantasy, sci fi and action genres. Although not a good movie for younger children due to some violence and scary monsters it is great for everybody else. As far as movies go I'd say this definitely rates an eight out of ten which is quite incredible given the quality (or lack there of) of todays movies.

Give it a shot, I'm sure you won't be dissapointed.

Friday, July 15, 2005

Real world version of "The Terminal"

Who would have thought that you would actually see a case of somebody being stuck in an airport for an extended period of time like in the movie "The Terminal". We have not only one, but two individuals who have been stuck in their respective airports for quite some time.

Check out the full story here.

Friday, June 10, 2005

Apples switch to Intel, what does it mean?

For those who haven't been living under a rock or in some deep dark cave, you have probably heard that Apple is switching over to Intel chips for their new systems starting in 2006. Many have responded with something akin to shock and awe since this is much like hell (or whatever dark place you believe in) freezing over. When you look at this in a more detached way however, the move makes a great deal of sense for long term growth of the Apple platform.

One thing Apple has always done was make business decisisons that drive sales of the hardware. Initially, the move to Intel chips looked like they might have broken this trend since it would mean that OSX could run on non Apple branded systems. If this was to happen they would have to compete with other vendors in all branches of thier market. Most damaging would probably be the high end of Apples market where they currently make a tidy profit that helps pay for thier R&D. A change of this nature would most likely yield results like those of the early 90's when Apple allowed other manufacturers to produce clone Macs. For those that don't know, this proved to be a disasterous move for Apple as their profits were vanishing very quickly. Why by an Apple system when you could get a more powerful system from another vendor for less money?

Fortunately, rumblings from the Apple World Wide Developers Conference this week would seem to indicate that Apple will be locking OSX so that it only runs on Apple branded hardware. This is obviously unfortunate for those of us that would like to run OSX on our new shiny PC but is good news for the Mac community.

I mentioned earlier that in the long term this switch will be a good move for Apple, now I'll explain why. The PowerPC processor is a great processor in its own right and had put pressure on Intel / AMD chips in the past. Problem is, the PowerPC has not moved forward the way Intel / AMD chips have. Steve Jobs promised the Mac community a G5 PowerBook some time back, today it still hasn't seen the light of day, and the simple reason is, that chip runs too hot and consumes too much power. Compare this to the current mobile offerings by Intel and AMD, the Pentium-M runs pretty cool and has a good deal of processing power.

In addition to the chips available now, one has to look at the long term plans for the Intel line. By the time Apple is ready to sell Intel based Macs, there will be new 64 bit chips available and new chips based on the mobile core that will be optimal for systems like the iMac, Mac mini and of course thier line of laptops. John "Hannible" Stokes has written a good piece on the long term roadmap for Intel chips and what it might mean for Apple, check it out here.

Intel brings many components to the table that will help Apple with their hardware woes, one does have to wonder though if Apple has enough style and technology to make for a compelling platform. OSX is a great OS so there is hope that with Apples style and the continuing evolution of OSX they will make a good go of it.

We only have to wait a couple of years to know the outcome! :-)

Thursday, June 02, 2005

Multiple PCs? Check out Multiplicity

Been a fan of desktop customization software for some time, especially that produced by a company called Stardock. They produce a wide variety of tools to change the look and operation of your desktop, all of it falls under the Object Desktop brand. Recently they introduced a new tool called Multiplicity, this product is a departure from Stardocks previous tool sets as it does not help you with desktop customization. Instead, this tool allows you to use a single mouse and keyboard across multiple PCs.

Initially this may sound like a me to product, sure, many people know of PC Anywhere or the popular and free VNC. This tool however differs from these others, you use it to control other computers at your desk that have their own displays. It works kinda like having multiple monitors on your PC, when you move the mouse around, it jumps from one monitor to another. Multiplicity does the same thing with your computers, you set it up so that when the mouse moves off the edge of one screen, it appears on the monitor of your other PC.

Not only can this be very useful if you have more than one PC at your desk, but it can also be really handy for laptops. This is where I really experienced how useful this tool could be. Often I bring my laptop to the office, however when ever I want to use it, I move away from my desktop computers keyboard / mouse and use the laptops track pad and keyboard. Not a big deal, but it is a little cumbersome. Things get a little more complicated when I want to tranfer a small piece of information like an URL, image, etc. Typically I'd email these things to myself or transfer them over the corporate network. Either way it was slow and clumsy.

With Multiplicity, I can sit at my desktop system, simply move my mouse of the edge of one screen and voila, I'm now controlling my laptop. Now, I need to copy some text from a webpage, no problem, copy it to the clipboard on my laptop, move the mouse back to my desktop system and paste away. The simplicity of this software is what really makes it work so well. If you are running multiple computers at your desk, this may be what you need. Check it out at www.multiplicity.net for more details.

Sunday, April 17, 2005

Sun Run 2005

The Vancouver Sun Run, North Americas largest 10k marathon was held today and we participated as usual. We don't run, but it is a good opportunity to get out, get some fresh air and have a good power walk! This years event started off a little wet but by the time we got started, around 10:00 am, the weather was behaving itself.

The Sun Run is an interesting event to be involved in as there are close to 50,000 people walking, running or participating in the wheel chair portion. This basically takes over the entire downtown core for several hours.





This is at the start of the race before we got going. There are a lot of people here!





Here are the ladies while we wait to get going. Yes it is a bit wet out there, thankfully it started to clear as we began the run.




Near the starting line this was the view looking back. Not often you see that many people all in one place.




Mid way through the race everybody is doing well and having a great time.




Whew! The end of the race is near, just have to go down that hill and we are home free.





After the race we came across this cool little Volkswagen Bug that was all decked out. Of course we had to take a photo!




After all that exercise what was there to do but go have a great meal! We went to a funky little place in east Vancouver. There were some really interesting murals on the walls.



Mmmm, that is a lot of food, what a deal! Why do I feel like after all the exercise I'm going to end up putting more calories on than I took off?!?!?! :-)

Thursday, March 31, 2005

Supersizerama

Tonight I flipped through the channels to see if anything good was on and noticed that the movie Supersize Me was playing on Movie Central. Having never watched this much publicized movie, we decided to see what all the hubbub was about. If you are unfamiliar with the show, the basic story line is a guy decides to eat all his meals at McDonald's for a full month.

Now, you should know that Emma and I eat pretty healthy, lots of home cooked meals or eating out at good restaurants. We probably eat fast food only a half dozen times a year, so watching somebody eat McDonald's morning, noon and night for a full month was rather disgusting.

What was even worse was the transformation the poor guy went through during that month. You could literally see the color of his skin change and he gained like 17 pounds in 12 days! Half way through the show I was actually feeling ill. Looking at the processing that goes into most fast food and the chemicals that are added, it is no wonder I feel rather ill when I do eat fast food.

Well, I'm outta here.

Tuesday, March 29, 2005

TDD experiences

Since early January some of us in my office have been exploring the use of Test Driven Development and it's potential benefits in our development process. I first became aware of TDD several years ago when the idea was just breaking onto the scene of software development. At that time there was very little information and virtually no proof that it brought any benefits to the software development table.

These days the picture is quite different, a simple search in your favorite search engine will turn up many references to TDD, including books, how to's, blog entries, etc. Although it takes some time to get used to TDD, the benefits do begin to show themselves, I had one of these moments recently. Although I've been working with some legacy code which makes using TDD much harder, I've still be able to put in a variety of unit tests. These tests are quite useful as you work with the code because you know very quickly if some existing piece of functionality has been broken. This idea is a staple of TDD, however my experience recently helped enstill this idea.

I was working on an alternate implementation of a class that had a fairly rich set of unit tests associated with it. The changes being made were rather central to the class, so I just went ahead and coded the new implementation. Now, with traditional software development techniques, you would then create some developer tests or run the code through some known conditions to make sure it behaves as expected. This works, but in reality does not provide you with very good code coverage, also, these tests are often thrown away once the initial developer testing is performed, not exactly and ideal situation.

My situation was a little different since there was a rich set of unit tests to measure the state of the code. Once the code was complete, I ran the tests (only took about a second to run them) and voila, immediate feedback on what worked and what didn't. Go back and fix the broken tests, etc. It is quite interesting how positive you feel about your changes when there are a rich set of tests that verify your code. Obviously these tests are not very useful if they take alot of time to run, in TDD, you are encouraged to produce small well defined tests that execute quickly. As mentioned previously, the few hundred tests running against this particular module all run in less than a couple of seconds!

If you are interesting in checking out TDD, check out www.testdriven.com or pick up Dave Astels book, Test Driven Development: A Practical Guide. This book is an excellent start for those looking at TDD and want to know more about it and how it works.

Sunday, March 27, 2005

The birthday bash.

A bunch of us got together to celebrate my 34th birthday by doing a little bowling at The Zone, and a dinner at the Old Spaghetti Factory. We had a great time and would just like to extend a special thank you to all our friends who made the occassion a blast.

That little gal has a birds eye view of the bowling mayhem. Great smile Janet!

Smile! You're on candid camera.

Four ladies and a very cute kid, compliments of Kevin and Masako.

It's going....it's going.......turn left......arg....


No, Steve isn't having any fun bowling.....no not at all....while Helen, Kevin and Masako watch the activities. The kids are in their own little world.

I'm ready for my closeup! :-)

Everybody is so intent on getting the perfect score.


Of course they are smiling, they had some great scores!

A photo op for the Howard family, however they seem rather focussed on the bowling.

Finally a strike! Time to 'strike' a pose. Way to go MarleneX.

Here I am, the birthday boy, all smiles after getting a strike!

Here is Lori, Alex and Kira, but hmm, where is the missing Pat?

Going for a walk.

Saturday, March 12, 2005

Spring Skiing

Today we took our friends Terry and Jared, who are from South Africa, up for a day of skiing at Whistler mountain. It proved to be a bright sunny day and the conditions at the top of the mountain were very good.

The girls flopped in the snow!

Here we are in the village just getting ourselves organized.

Here is Terry and Jared near the entrance to the Harmony bowl.

Lots of smiles at the end of a great day of skiing. These two look like sisters with the matching tops.