Pat Eyler just published an interview/discussion with Dave Thomas, Cory Foy, Tim Bray and I on the subject of code reading and testing legacy code. I think the resulting article is a very interesting read with a lot of insight (thanks to the other participants). It was a fun discussion which left me feeling honored to be among such distinguished people. If you’d like, you can read this interview on Pat’s blog.

In an attempt to satisfy our need for identity and belonging, we desperately try to wear as many labels as possible, and to a certain extent labels are a necessity. When people ask you what you do for a living, it’s far easier to reply “I’m a computer programmer” than to try and explain the plurality and complexity of the exact criteria of your job.

The problem with labels is that they can place you in a box, at times greatly limiting who and what you are. So while it’s okay to use labels to efficiently communicate with other people, it’s important not to fall into the trap of taking them too seriously, thus letting them become who you are - or are not.

It’s not the label per se, but rather our perception of what our identification with a given role implies. If I identify myself too strongly as a “rubyist” I may not be inclined to recognize the good that is found elsewhere in other programming languages, or worse still, reject such good in an attempt to defend the choice I opted to identify myself with. This inclination is the basis of many of the “religious wars” you see online.

I sometimes find myself in the odd predicament of limiting myself because of some label or assumption of what “a person like me” can and cannot do. In such instances though I’m reminded of a few stories about courageous individuals who went beyond labels, above the layer of conventionality, breaking what common sense would have considered a “difficult to challenge” limit. I’m reminded of blind people who took on photography and managed to be successful at it, or of a black kid of Kenyan origins who managed to become the President of the United States of America. But there is one story in particular that always gets me, it’s the story of Django Reinhardt, after whom the the popular Python framework was named.

Django was a Gypsy jazz guitarist who was severely injured in a fire when he was eighteen. As a result of this accident his right leg was paralyzed and the third and fourth fingers on his left hand were severely burned. Doctors recommended amputating his leg and were pretty darn sure that he would never play guitar again due to the extensive damage to his hand. Django refused the amputation though and left the hospital as soon as he could. Within a year he was able to walk again, albeit with the aid of a cane. Even more surprisingly, despite being “disabled” in his left hand, he persisted through the pain to practice his beloved instrument. He went on to reinvent the conventional approach to guitar playing by performing solos with the use of only two fingers, using his half-paralyzed fingers for chord work. Today Django is considered one of the most influential guitarists of the 20th century.

I’ve learned to consciously fight the urge to limit myself. Whatever labels you feel may be cutting your potential short or holding you back, I encourage you to break free and rise above them. Does doing so mean you’ll reinvent the way a musical instrument is played, reshape the course of history or become a hero in your field? Perhaps, but even if it doesn’t, your own life stands to become richer and freer because you decided not to live within the confines of a label.

This is a short note to warn my fellow Canadians about an important matter related to our internet access. As you probably know, Canadian Telecom providers are nothing to boast about, but this time they are trying to pull a fast one that would have a major impact on Canadian internet users. The CRTC (Canadian Radio-television and Telecommunications Commission) instructed Bell to provide ISPs with wholesale service speeds that match their own retails customers. As things currently stand though this is not the case. You can have 16Mbit/s if you choose Bell, but only 5Mbit/s if you opt for an ISP like Teksavvy (which is the ISP I use). Bell opted not to adhere to this directive and instead decided to take the issue to the federal Cabinet, while at the same time filing a tariff application with the CRTC that proposed the introduction of Usage Based Billing (UBB) to its wholesale customers.

If Bell were to be successful with their application, ISPs would be forced to change their current offerings, cap internet usage and substantially increase the price of extra Gigabytes per month. In practice, we’d be paying more to get much less, and most people would not go through the hassle of dealing with this, thus opting for Bell - despite their absurds usage limits (60GB per month, are you kidding me?).

If this scenario doesn’t float your boat or down right outrages you, please send your polite comments and concerns to the CRTC, by clicking this link. For the subject select Tariff, and as a subject, use File Number # 8740-B2-200904989 - Bell Canada - TN 7181.

I personally sent them the following message:

Please do not accommodate Bell’s monopolistic tendencies by letting them introduce Usage Based Billing (UBB) to its wholesale customer accounts. Canada is behind many other first world countries in the Telco sector. Don’t let our country fall even further behind. For Canadians to be innovative in the high tech field, unlimited, high speed access to the Internet is a must. Thank you for your attention.

The deadline for sending comments regarding this matter is today at midnight, so please, if you want write to them, do so ASAP!

(Via Teksavvy’s email to its customers)

Next Page →