Web Design. Development. Optimization. RSS 2.0
 Thursday, April 21, 2005

There is a lively debate going on in the open-source community, and it comes down to the morality of reverse engineering software.

What happened is that Linux kernel development was using a closed-source (commercial) tool for their source code control application (SCM) called BitKeeper. Linus Torvalds has said that BitKeeper was far and away better than any free source code control application, including CVS.

The creator of BitKeeper gave Linux developers a free (web based I think) way of getting to the Linux source code, and everyone was happy. Well, everybody except for one person.

That person decided to try and reverse engineer the protocol so that he could develop his own way of getting stuff out of the source code server without using a BitKeeper client. When asked to stop, he wouldn't. And so the owner of BitKeeper revoked the license for all of Linux. So basically, this is a case of “looking a gift horse in the mouth“. Or “one bad apple ruining the whole bunch“. There are many cliches that could apply here.

Commercial software developers have a right to try to make a profit. They also have the right to set the terms of a license. And they have the right to revoke that license if those terms are violated. Noone can dispute these rights.

But do “hackers” have the right to try and break the secret algorithms in commercial programs? Is reverse-engineering ever immoral or wrong? Since software is all virtual and not physical, let's look at some real-world examples of reverse engineering and see if there is a parallel...

Technically speaking, reverse-engineering is the process of figuring out how something works. In this example, BitKeeper was being reverse engineered so that the hacker could create his own client without using the (free) one provided by BitKeeper. It's an odd reason, I know.

A real world example would be if you opened up a phone handset to figure out how it worked, and then built your own handset to plug into your phone so you would not have to use the original one that came with it. There is probably not anything wrong with doing this to a telephone if you wish, because there is nothing secret about the way a telephone handset communicated with the phone base. Also, you clearly own the phone, and there is a concept in law (I think) that says that if you own something, you can do anything you want with it (including using a phone as a doorstop instead of as a phone). You do not own software - software is licensed - so this analogy does not apply.

But what if you refused to use the bank's ATM machine, and instead reverse-engineered how it communicated with the bank's central servers so that you can develop your own ATM machine? Is that right or wrong? Clearly it is wrong - because the bank owns both the ATM machine and the servers. Clearly there are several things wrong with this, not the least of which is that it takes away some important levels of security embedded in the ATM machine itself.

And if the bank takes the ATM machine away from the people reverse-engineering it, whose fault is it? The bank, or the people trying to break their communication protocol?

 

Thursday, April 21, 2005 12:15:56 AM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] -
The Blogging Life
Del.icio.us Digg Technorati Blinklist Furl reddit
 Tuesday, April 19, 2005

Man, I tell ya. I'm getting old. How old? I'm so old, that when I hear something in the news that my government does that I don't like, I write an email to my MP to complain about it. For my American friends, a Member of Parliament (MP) is equivalent to a Congressman in the U.S.

These emails are never angry - just my thoughtful opinions on the issue. I figure if an MP is “on the fence“, a bunch of supportive emails will help decide the issue. If a politician thinks his popularity is dipping and he might not get reelected, and he gets 200 emails from his constituents opposing some issue, he might just vote against it to save his skin. If you don't speak up, you won't be heard. 

I have sent emails of all levels of government, from my city councillor, to the mayor, to the Premier, to the Prime Minister. When a recent health issue was in the news, I sent emails to some of the top managers in the Health department. I have no shame when it comes to finding someone to hear my complaint.

I rarely get a response. But when I do, it's always interesting. Today's response takes the cake, though.

An assistant to my MP writes me an email back, asking for my postal address, so my MP can mail me a letter with his response.

Ugh.

 

Tuesday, April 19, 2005 5:33:14 PM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] -
The Blogging Life
Del.icio.us Digg Technorati Blinklist Furl reddit
 Monday, April 18, 2005

The next beta version of Visual Studio 2005 (with Team System) is now up on MSDN for those with access.

I was lucky to get a preview build of Beta 2 just over a month ago since I am writing a book for Manning on it. All I can say is that it has been an extremely smooth experience installing it and playing with it over the past month or so. Almost everything works. A few hiccups here and there, but that is to be expected in Beta software, especially since I have it configured in a non-standard way. (I have seen a couple of things with the MS Project integration that needs more finish.)

So, don't just stand there. Go out, get it, install it, and play!

 

Monday, April 18, 2005 8:15:46 PM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] -
Visual Studio 2005
Del.icio.us Digg Technorati Blinklist Furl reddit

Last week's Apprentice showed a task where some of the final 6 candidates could work all night without sleep, and some could not. At least two absolutely insisted on stopping work at 2am to get 6-7 hours rest.

I find I am able to go without rest some nights. Normally, I can sleep “all day” - I consider 10 hours a good night's sleep, and typically get 6 hours during the week. But when I am writing, and have to get a chapter done by tomorrow, I can go all night and it doesn't seem to affect me much the next day.

Some times I wonder, “why do we even NEED to sleep?” What is going on while we sleep that our body cannot do without. One web site says that missing one night's sleep makes us cranky, missing two nights of sleep reduces our ability to think clearly, and missing 5 nights of sleep will cause us to hallucinate. Clearly, sleep is necessary to the human body. But why?

Another web site says that scientists currently believe that, of all the organs in the human body, only the brain “needs” sleep. That is, we don't go to sleep because we're physically tired (our muscles need a break) - we can sit down and watch TV and get just as much physical rest.

So why is it? Scientists don't really know, but the best theory so far is that the neurons in our brain need to slow down in order to be replenished with energy. Just like a battery that needs to be recharged overnight to be fresh the next morning.

"If we accept the premise that all animals sleep, then it looks like there's something special about neurons, about basic energy requirements. Neurons are among the cells that have highest energy requirements. Our brain, 1 or 2% of our total bodily weight, uses up 20% of our energy; so the brain is the most energy-demanding organ we have," O'Hara explains. He concludes that energy usage is one very possible function of sleep. Neurons require this loss of consciousness to slow down just enough so they can replenish themselves for normal functioning. "It's hard to get solid data to support that, but no data I know of refutes the idea."

 

Monday, April 18, 2005 6:08:29 PM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] -
The Blogging Life
Del.icio.us Digg Technorati Blinklist Furl reddit
 Friday, April 15, 2005

Here is an absolutely cool blog entry from a Microsoft researcher who analyzes a problem he had getting lunch the other day in software development process terms. Can you tell that he spends his days creating MSF software development process methodologies? Naw.

In addition this restaurant had a broken organizational structure and poor separation of responsibilities. The "Anderson lunch project" should rightly have been the responsibility of the waiter who should have been playing the project manager role (and maybe the program manager role). The waiter should have analyzed our requirements and understood our priorities. This should have been communicated to the chefs and the order of production of our sushi should have been negotiated against the competing orders at the time. The sushi chefs should have been purely responsible for the production of sushi. They should not have had any project management, program management or scheduling responsibility. After all, they had no direct contact with the customer and as the system's capacity constrained resource, they should not have been wasting sushi making capacity trying to do anything else.

 

Friday, April 15, 2005 2:28:50 AM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] -
Technology
Del.icio.us Digg Technorati Blinklist Furl reddit
 Wednesday, April 13, 2005

As I mentioned, I purchased a new LCD monitor and video card over the weekend. Still loving the monitor.

Yesterday, I was talking to a friend who also recently purchased a 19 inch LCD monitor. We got to talking about prices. Turns out, he paid $499 for his (Hyundai make monitors?), while I paid $449 for mine (BenQ). Different brands, of course. But while surfing a local computer store web site, my jaw slightly dropped when I saw an LCD monitor with similiar specs listed for $381. So, since I bought the cheapest 19 inch LCD I could find, by shopping around a bit more I could have saved $70. Damn, I hate that feeling.

Anyways, I started looking for the cheapest price anywhere on the Internet for the same monitor (couldn't find any online stores that sold it cheaper, whew). That led me to start looking for the cheapest price I could find for my video card (which I paid $199 for).

Whoa. First, there are the American sites. Amazon.com has the exact same video card for $82 USD (or about $100 CDN). That's half price, and that's depressing. But I can't compare a price I found in a retail store here with the price off a U.S. based web site - it's an unfair comparison. Amazon.com won't ship the item to Canada, so I have to pretend that amazon.com doesn't exist.

Then I found a Canadian site that offered that video card for $149. Exact same make, model and everything. Ah, I think. Best Buy has a lowest price guarantee. I'll just pop by the store and pick up my $50.

Well, the in store experience started off a bit rough. One employee I talked to said he didn't think Best Buy would honor a price I found online, but I should check with the manager. Another said “We don't match wholesalers. For instance, we won't match a price you find at CostCo, because we just can't compete with that.”  That was an interesting statement, but I guess you have to purchase a membership to CostCo so that is why they can sell things a bit cheaper.

So the young lady goes off to do some “research” on this price I found. In my head I was preparing for battle. I had memorized all the Best Buy “fine print” required for the price match. Heck, it was printed in large font on a poster beside the customer service desk. The price had to be in Canadian dollars, had to be available for immediate delivery, had to include the cost of next day delivery shipping, no special clearances, no restricted sales, yadda yadda. I had an air-tight case, I thought. If they declined, I figured I could even sue in court for my $50, since what I was asking for was clearly covered by their so-called guarantee. It was a chess game, and I had my first 6 moves planned out in advance.

And then she came back from her “research” in the back office, and told me she would refund the money. No problems, no attitude, she was friendly. (I was actually slightly disappointed I didn't get to argue my case.) But still, extra bonus points for not making me fight for it.

And thus, I am able to renew my membership in the Best Buy fan club. My wife says, “It would be stupid of them not to refund the money. You're in here every week.” So way to go, Best Buy. It's so odd to have an experience dealing with “customer service” that results in satisfaction, that I kind of don't know how to react. Should I write them a letter? Well, a positive blog entry will have to do. Oh, and a free link: Best Buy Canada.

Retailing is a tough business to be in. Any schmuck can open an online store (or eBay) and sell goods for 50 cents above the wholesale price. There are even some retail outlets, like CostCo or Tiger Direct, that are happy to make the tiniest sliver of a profit off of most things, and make it up on volume. So a full service store, with helpful staff and a forgiving refund policy would have a tough time competing on price alone. But they do, which is great.

 

Wednesday, April 13, 2005 11:35:25 PM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] -
The Blogging Life
Del.icio.us Digg Technorati Blinklist Furl reddit
 Monday, April 11, 2005

The world is anxiously waiting the next release of Visual Studio 2005 with Team System. I haven't heard any news lately as to what the hold up is. There must be some major bug that has to get fixed before it can get out the door.

Anyways, as I may have mentioned before, I have a version of Team System installed and it has been working great. I'm slowly chugging along at a Team System book I am writing, so this is forcing me to get into all the cool new parts of the system. I am seeing some cool things.

Anyways, I have to get back to writing. But I just thought I should stop and say thanks to all the great people at Microsoft who have worked on this incredible product. All the belly-aching over pricing and licensing is for nothing - this thing is really worth it.

 

Monday, April 11, 2005 3:55:23 AM (Eastern Daylight Time, UTC-04:00)  #    Comments [0] -
Visual Studio 2005
Del.icio.us Digg Technorati Blinklist Furl reddit
Archive
<April 2005>
SunMonTueWedThuFriSat
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567
About the author/Disclaimer

Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.

© Copyright 2008
Scott Duffy
Sign In
Statistics
Total Posts: 484
This Year: 44
This Month: 6
This Week: 0
Comments: 76
Themes
Pick a theme:
All Content © 2008, Scott Duffy
DasBlog theme 'Business' created by Christoph De Baene (delarou)