Why I’m Running

January 6th, 2011

The long term results of a sedentary career (desk job) and lifestyle are frightening. Like many software developer and other knowledge based workers, I can spend up to 10 hours, 5 days a week sitting in a chair looking at a screen. It has been suggested that “[staring at a screen] is associated with lower resting metabolic rate” (TV watching ‘makes you obese’), and regardless of being “slim or fat … every week spent inactive is roughly equivalent to smoking a packet of cigarettes” (Laziness will send us to an early grave). General health guidelines recommended that we “should do a minimum of 30 minutes moderate-intensity physical activity, five days a week” (How much exercise?), but exercising consistently five days a week is tough without a preferred physical activity.

Up until a 2005 (since University) I was focused on gaining industry knowledge and experience (being active wasn’t a priority) and nearing my 30th birthday I began to realize my sedentary lifestyle (career pursuits) were taking a toll on my health. I was becoming a pasty red-eyed developer. Going up stairs could leave me winded, riding a bike for 30 minutes was painful, and my metabolism was slowing down.

I made a couple attempts at becoming more fit. The bike; biking was my first attempt to exercise consistently. Cruising the city on a bike had a low barrier to entry, but getting out of the city required about a 2 hour time commitment, and riding in winter was tough. Rollers stepped in for the winter months, but seemed pretty easy without the resistance – I plan on getting a trainer next winter. Then came the gym, but the time limits on the aerobic equipment were frustrating and I didn’t have a desire to work on bulking up. Enters running. Running offered, the lowest barrier to entry (simplicity, tie up your running shoes and run anywhere), an efficient way to maintain cardiovascular fitness (an intense workout can take 30 minutes or less), and fun challenges (races, community, and competition).

I run because it reduces stress, simplifies my focus, makes me feel great, it’s social, and it’s a great way to maintain a fitness base for other pursuits like: biking, hiking, skiing, and even going up the stairs. I run because my career choice doesn’t necessarily facilitate good health.

Author: Adam Kahtava Categories: Personal, Running Tags:

Whois Service Updates: ARIN’s New RESTful API

December 7th, 2010

My Whois Service is fixed. The American Registry for Internet Numbers (ARIN) released a fantastic new RESTful API which meant my old text parsing code (dependent on their old service) was broken for a couple weeks. Check out the new ARIN RESTful API and my service source code updates.

Author: Adam Kahtava Categories: .NET, ADC Services, Open Source, RESTful, Services, WCF, XML Tags:

Travel Stories

November 1st, 2010

A couple fun stories from our trip around Europe.

The $30 laundry. We packed light, which made laundromats a frequent necessity. One evening in Italy we found a laundromat, I found the change machine, but couldn’t read the instructions. Thinking that these machines were universal, I fed it a 20 Euro bill. I was surprised when the machine expelled 20 Euro worth of flat pieces of metal that could only be used in that laundromat. I carried the fake coins around for the remainder of the trip, tried to use them at other laundromats, but never did find another washer that took the fake coins.

Emergency at Buckingham Palace. We met up with a friend in England who took us on a tour of traditional British Pubs – bangers & mash, along with many fresh pulled pints were consumed. The next day I decided to go for a run through the Royal Parks, I ran for an easy 45 minutes, but as I approached the heart of the park, in front of Buckingham Palace, I started feeling a tightness in my stomach. I frantically began my search for a toilet. I started scoping out the snack vendors for facilities, nothing, I started moving towards the park’s parameter, nothing, I looked for possible tree coverage, nope. Visions of being arrested for squatting in-front of Buckingham Palace were screaming through my mind just as a found a tourist map with clearly marked bathrooms, a quick stop at the Green Park tube station and I was back at it. Crisis averted.

The economy hotel. We booked most our hotels the day-of on Hotwire or similar bidding type websites. Not knowing what hotel we were purchasing led to a very wide variation of quality in our accommodations – which kept things interesting and fun. Hotel Wanda was definitely one of our interesting experiences. We struggled for sometime finding Hotel Wanda in the medieval streets of Florence, but eventually bumbled into a 20 foot door with a buzzer for our hotel, we rang, the door was buzzed open, we stood in a dark room of halls, doors, apartment entrances, plaster statues, and stairs – no signage. After some trial and error we discovered the hotel entrance on the 2nd floor where we were greeted by a man at reception (and the only member of staff in the hotel). The man apologized for being drunk, then showed us our room and disappeared. The room was huge, a giant ashtray was sitting on our table (both of us are somewhat sensitive to smoking), upon further inspection, the comforter was riddled with cigarette burns, and the lock on the door was broken. We decided to make the best of it, opened the windows to let some fresh air in, and headed out to explore the city. Upon our return (in the evening) we discovered there was a bar beneath our room, the smoke from the bar patrons, along with their conversations and the music were wafting into our opened windows. No hotel staff were to be found. We closed the windows, popped in the earplugs, and tried to salvage the night. It was a cheap hotel, and we certainly got what we paid for.

We weren’t the only one with similar experiences at Hotel Wanda:

an apparently very drunk gentleman yelled at us from down the street and asked if we were looking for Hotel Wanda. He apologized, took us upstairs and, despite being extremely intoxicated, attempted to tell us which rooms we could have. Although the rooms were very big, it was a bit dark and strange.- Crazy experience (and not in a good way)

Author: Adam Kahtava Categories: Personal, Running Tags:

Back at it: A Summer Recap

October 28th, 2010

I love summer, every moment of it! It’s difficult to write a blog post or even digest tech content in the precious summer months.

A Summer Recap

Biking. I was able to get lots of mountain biking in. Although the conditions were usually wet and the trails muddy, I was still able to get out on the bike twice a week. Besides, according to my philosophy, the amount of mud you take home on your bike is directly proportionate to the amount of fun you’ve had. No mud, no fun. Although most my friends would disagree. :) I also picked up a bike for Steph at the end of this summer and we toured some of the easier albeit LONG rides (Elbow Loop, Goat Creek to Banff Springs to Canmore to Goat Creek).

Hiking and Backpacking. We managed to knock of a couple local hikes: Mount Baldy (photos), Mount Lawrence Grassi (photos), Moose Mountain (photos), Black Prince Lake (photos), Prairie Mountain (photos), Stanley Glacier (photos) along with a backpack trip to Floe Lake (photos) and another to Forks and Turbine Canyon (photos).

Europe. I FINALY got to Europe, something I’ve been wanting to do for a long-long time. Europe lived up to my expectations, we visited France (photos), Italy (photos), Vatican City, Holland, Belgium (photos), and England (photos). My favourite country while in Europe was Italy. Italy was more exciting, crazy, dirty, and entrepreneurial than the other countries, but Thailand is still my favourite country. I’m dying to go back to Southeast Asia.

Running. When I wasn’t biking, or hiking, I’d fall back on my trusty shoes, and you can bet I was running while in Europe. Running was an amazing way to experience a city. My favourite run was in Paris (running from Notre Dame, through the the Louvre gardens, to the Arc de Triomphe, under the Eiffel Tower, then back to Notre Dame). I want to do the Paris Marathon next year. I also ran the parameter of Lamballe France, through the rural country side and down a river near Gupry France (South of Rennes), the circumference of Venice Italy (I got horribly lost), through the hill paths between Manarola and Riomaggiore Italy (an hour long hill workout in the heat), a 12km session on a Belgium treadmill (yawn), and around the Royal Gardens of England (pretty). Yeah… I admit I am borderline obsessed with running.

So now that summer is over I’m back at it. A big thank-you for sticking around. :)

Author: Adam Kahtava Categories: Calgary, Personal, Running Tags:

On Teams: Religious Debates Erode Respect

July 15th, 2010

“religious debates … consist largely of people expressing strongly held personal beliefs about things that can’t be proven. … they rarely result in anyone involved changing his or her personal view. … besides wasting time, these arguments create tension and erode respect among team members, and can often prevent the team from making critical decisions.” – Steve Krug, Don’t Make Me Think

There we have it, religious debates erode respect.

Author: Adam Kahtava Categories: Software, Team Work Tags:

Finishing a Marathon

June 7th, 2010

At the 32km marker a series of signs were staked into the grass along the course. The first sign read “You’re doing it!”, the next “Only 10 more kms!”, and the next “You’re running a marathon! You ARE a marathon runner!” A tear welled in the corner of my eye, perhaps from the pain in my quads, or the reality of still being 10km from the finish, but more likely because it finally dawned on me that I was indeed running a marathon – an event I’d been looking forward to since running the Half Marathon a year earlier.

Training for a Marathon was relativity easy. Basically you run one long run every week, in addition to running 6-10km 4 times every week, then rinse and repeat for 3 months. As boring as that may sound, once I got into a routine, and found a running partner, I looked forward to running. Here’s the schedule I followed (I know, I know, don’t laugh, it’s from the far from reputable About.com): Basic Marathon Training Schedule for Beginners.

My next goal is to qualify for a Boston Marathon (qualifying time is 3 hours and 10 minutes) and run alongside the 20,000 participants in the Boston next year. I’m not too far off the qualifying time, as I managed to finish in 3:22.

Get out there and run! :)

Author: Adam Kahtava Categories: Calgary, Personal, Running Tags:

We All Live In An Uncle Bob Dialog

May 31st, 2010

Robert C. Martin (affectionately known as “Uncle Bob” in the development community) has a number of great books demonstrating the benefits of OOD/OOP and good design principles. Those acquainted with his books will also be familiar with his generous use of conversation dialogs between developers.

A sample excerpt:

RCM: “Will you help me write a little application that calculated bowling scores?”
RSK: “… Sure, Bob, I’d be glad to help. … I used to be a pretty good bowler … “
RCM: “Let’s begin with scoring a single game …”
RSK: “OK, we’re going to need some test data. Let me sketch out a little picture of a scorecard …”
RSK: “Shall we start at the end of the dependency chain and work backward? …”
- A Programming Episode from Agile Principles, Patterns, and Practices

This dialog continues for some 40+ pages as we’re walked through a paired programming session demonstrating test driven development and refactoring techniques. Admittedly, while reading these dialogs, I initially thought they were a bit over-the-top (campy), but as I actively listen to the communication happening within my team I realize that these dialogs are happening all around me.

An excerpt from this past week:

Me: “Will you help me write a stored procedure to retrieve the customer’s cart items count and default lightbox items count?”
Dev: “Sure, Adam, I’d be glad to help.”
Me: “Cool! This will be more efficient than aggregating the data from multiple repositories …”

Pull yourself in, that’s right, a little closer to the campfire, now sing it with me, “We all live in a yellow submarine… errr… an Uncle Bob dialog, an Uncle Bob dialog.” :)

Author: Adam Kahtava Categories: Musings, Software, Testing Tags:

Book Reviewed: Rework by Jason Fried and David Heinemeier Hansson

May 27th, 2010

Rework by Jason Fried and David Heinemeier Hansson has been on Amazon’s top ten list for a couple months now and for good reason, it’s captivating, easy to read, engaging, and fun. However, I was disappointed with the lack of references. If the authors had included references to texts that back up many of their opinions (books like the Mythical Man-Month, Peopleware, etc…) then Rework could have more impact on corporate decision makers. Unfortunately, without the external references this book is easily passed of as highly opinionated and subjective.

Author: Adam Kahtava Categories: Book, Review Tags:

Transparency, the Underpinnings of Becoming an Unprofessional

May 25th, 2010

The business world is full of “professionals” who wear the uniform and try to seem perfect. In truth, they just come off as stiff and boring. No one can relate to people like that.
Don’t be afraid to show your flaws. Imperfections are real and people respond to real. … Don’t worry about how you’re supposed to act. Show the world what you’re really like, warts and all … talk like you really talk. Reveal things that others are unwilling to discuss. Be upfront about your shortcomings. … You might not seem as professional, but you will seem a lot more genuine. – Rework: Jason Fried, David Heinemeier Hansson

I’ve struggled with the personal vs professional tension for sometime. Back in 2002, I started this site with the intention of professional self promotion (image above is my site from 2003). The results were predictable: the tone boring, the topics dry and most visitors saw through the veil of self promotion. I’ve matured since then (well I hope I have). :) Over the years I’ve found that a personal, down-to-earth tone maintains a healthy level of transparency both on the web and in real life. As Gandhi once said:

Happiness is when what you think, what you say, and what you do are in harmony.

Author: Adam Kahtava Categories: Musings, Personal Tags:

Install Git On Windows With PowerShell

May 4th, 2010

I like Git and here's a PowerShell script that I use to download and install Git on my Windows based development machines.

POWERSHELL:
  1. # Installs git for Windows via PowerShell
  2. #
  3. # Sample usage:
  4. #
  5. #  Install git:
  6. #    PS> install-git
  7. #
  8. # Adam Kahtava - http://adam.kahtava.com/ - MIT Licensed
  9.  
  10. function global:install-git {
  11.   install-file 'http://msysgit.googlecode.com/files/Git-1.6.4-preview20090730.exe'
  12. }
  13.  
  14. function global:install-file([string] $urlPath) {
  15.   $filename = download-file($urlPath)
  16.   invoke-item $filename
  17. }
  18.  
  19. function global:download-file([string] $urlPath) {
  20.   $urlSplit = $urlPath.split('/')
  21.   $filename = (Resolve-Path .).ToString() + '' + $urlSplit[$urlSplit.length - 1]
  22.   $webclient = New-Object "System.Net.WebClient"
  23.   $webclient.DownloadFile($urlPath, $filename)
  24.   return $filename
  25. }

Not familiar with Git? Then head over to the best online Git resource available.

You can find more of my PowerShell development scripts here.

Author: Adam Kahtava Categories: .NET, PowerShell Tags: