Thanks for the response, Clemens.  I love a good debate.

After reading the response to my letter, I’ve finally discovered the argument that Clemens Vasters is trying to make.  It’s not that sharing is the problem - it’s that people are making money off the work of these duped open-source kids that get nothing in return. 

He’s hidden his point underneath a cloak of hatred for open-source evangelists and companies, calling the companies that profit off open-source the selfish ones.  Unfortunately, this is the result of not understanding the open-source ecology I mentioned before works whatsoever, despite his claims.

I enjoyed how he called RedHat, in particular, a “deeply unethical entity”.  As an open-source contributor, I find their actions to be highly beneficial to the community at large.  RedHat has provided an aggregation and polishing service on top of all the relevant open- and free-software available.  This is one of many ways of making money off open source, described in Eric S. Raymond’s Magic Cauldron essay.  As an aside, I suggest anyone considering attacking open-source read this first.

What distribution of Linux do I run at home?  RedHat.  They’ve given me the ability to toss a high-quality OS on my computer at home for zero cost.  Not only is it “free” as in gratis, but I have the ability to fix bugs I find and submit them back.  This is the “free” as in libre part of open-source that Clemens clearly does not understand.  This is the part of the ecology Clemens has missed.  This is how myself, as an individual, can hold the hand of a giant such as RedHat while both of us gain in return. At no time do I feel ripped of by RedHat.  In fact, I get a personal sense of pride whenever I know that something I contributed, no matter how small, has made it into all of the copies of RedHat out there.

I’m pretty sure Clemens still don’t understand this distinction I’ve described above.  Sure I don’t see any money from RedHat, but that’s not the point of my life.  I have a job that pays the bills.  I contribute to open-source to reap the rewards of helping polish a solid OS at home that I like.  If you want to make money on the side, go ahead - but don’t call me an idiot because I choose altruistic rather than monetary reasons for my hobby.

Also, if you say that I am confusing “free software” and “open source”. I am not. “Open” is the political argumentation line, “free” is the economic argumentation line of the same thing. If this sort of confusion exists for mostly everyone and one of the most often repeated line in OSS arguments is “you don’t understand the difference”, then that’s caused by the simple fact that these terms are simply two angles of looking at the same story. The OSS “eco-system” only functions because both is true.

Here’s where his argument breaks down.  Freedom (free as in libre) is the most important part of open-source.  It’s a shame that english has lumped together libre and gratis- two related, but fundamentally different principals- under the same word.  This is where most people are often tripped up.  However, the mandate of the Free Software Foundation is pretty clear.  In fact, the first words on their homepage are:

Free as in Freedom

I don’t have the freedom to modify my Windows installation or the copy of the .NET framework installed on my system.  In fact, if there’s a bug, I’m at Microsoft’s mercy to fix and distribute the patch. With the .NET framework itself, I’ve personally used reflector to track down and diagnose a number of bugs, but I haven’t been able fix them.  Our company ends up waiting a year for the next framework release while we try to create a band-aid around the problem in the meantime.

Now, fast-forward to the Mono project.  I find a bug in their framework.  Not only do I have the source available, but I can fix it and submit it back to the project for inclusion in the next release.  I don’t have to work around it in my own product.  Oh yeah - the other users of Mono also benefit from this.  This is just part of the freedom of open-source.

In his reponse, I found his statement of a “no-GPL” policy at his company to be counter to his original argument.  If he finds companies that distribute the end result of an open-source project without rewarding the original programmers to be selfish, this the BSD license is absolute worst one could choose.  There’s nothing stopping me from taking dasBlog, polishing it up and turning it into a boxed product of my own and paying Clemens nothing.  Not only that, but I benefit from your improvements while you see none of mine.  Isn’t this what you describe as selfishness? 

Matthew, selfish is not the one who wants to get a tangible reward for his work. Selfish is the one who denies that reward.

Commercial software developers are not selfish.  Expecting money for hard work is not selfish.  When one insults others that give with no expectation of a reward, they are living in selfish world of their own.  I’m puzzled by Clemens’ personal contraditions with regards to giving.  He donates his own time to maintaining an open-source blog product, but then turns around and calls others doing the same thing clueless.  Strange.  I’m pretty sure he believes that all open-source developers are poor, parent-mooching cheapskates.  This is a sad way to view the world.

I leave you now with the results of the FLOSS (free/libre open-source survey) results describing the reasons that open-source developers contribute.  Perhaps with a little understanding, you might learn to hate less:

Read full post

In response to “Where do you want to go, Aiden?”:

Dear Clemens,

I’ve never spoken with you in person, and probably never will, but I feel compelled to answer your public letter on behalf of your friend, Aiden.  I found it difficult to extract your argument from your letter, but I’ll chalk it up to not understanding exactly what open-source is, or why people would ever consider sharing the fruit of their time with others.

I have a simplistic view of open-source that might make sense to you:

I give what I can (A).  You give what you can (B).  We both gain A+B=Z.  Another hundred people come along and use it, giving nothing.  They all get Z as well.  Has this devalued my Z?  Nope.

Now, a few weeks down the road, another person comes by and gives C.  Everyone now has A+B+C=ZZ.  You and me (and the other hundred people) all gained from each incremental addition.

Not only did I gain a major return on my investment, but I also end up getting to work on something that fuels my passion and keeps me interested.  It’s not something that my company tells me to do - it’s something that I want to do.  Sure, that girl at the bar doesn’t care that there’s a few dozen people using my profiler, but I’m confident and comfortable enough with myself that I can feel good about the quality and usefulness of my work without monetary reward.

It’s idiocy. It’s bigotry.

Nope.  It’s called sharing.  If you think that giving without the expectation of receiving is “idiocy” or “bigotry”, you’re living an awefully selfish life.  I’ve managed to contribute a fair bit of my time while still managing to provide for a family and keep up the payments for my car and house.

The world of open-source is so large and its interactions so complex that neither you nor I could describe it in a single letter.  I know it’s tough for a Microsoft Regional Director to see the ecology of open-source as it really is, but I urge you to take a deeper look before forming your opinions. 

Perhaps then you might understand how symbiosis works, and how a single developer can work hand-in-hand with a mighty giant of a corporation while both can benefit.

Read full post

I’ve finally figured out how to wire up an encoder (ie: a knob) to a keyboard emulator like the I-PAC.  Easy logic - a flip-flop, some AND and NOT gates.  Extra credit: redesign this logic to replace AND and NOT with NAND.

I knew that electrical engineering degree would come in handy at some point!  Here’s the waveform it produces:

As the encoder turns counter-clockwise (the first two turns), a signal on the CCW_TURN line is generated.  As it turns clockwise (the last two turns), a signal on the CW_TURN line is generated.  There’s a possibility that if the AND gate on the bottom left there is too fast, you might end up with a turn in the wrong direction.  I’m hoping it “just works” when I build it.

Read full post

Three interesting places I’ve found for purchasing arcade-quality controls:

Right now, I’m investigating various control-to-USB converters. 

Happ Controls has the “USB Game Control Interface” for US$185.  This interface can convert two 8-way joysticks, six buttons for each joystick, a three-button trackball, a couple of start select buttons and some coin counters.  It looks like it would do everything I’m looking for, but the price is pretty steep.

Ultimarc has the I-PAC (US$69) and the Opti-PAC (US$44).  These are for button-to-keypress and optical-to-usb-mouse conversion, respectively.  It also has the cool feature of mapping keyboard LED lights externally.  I’m not certain what MAME supports, but it would be cool to get the weapons truck light to flash in Spy Hunter.

Read full post

I’ve been tossing the idea of building a MAME cabinet around in my head for a while and I’m getting close to decided whether to do it or not this summer.  I’m hoping that with enough planning, it should be a smooth enough project for me to complete during the warm months here in Calgary.

I’m planning on starting my design with the “LuSID’s Arcade Flashback” plans.  You get an idea of what this cabinet will look like on Russ Prince’s site.  It won’t be identical, but the general shape should be the same.  Since I work best with visuals (I couldn’t get a sense of scale from the design or photos of similar cabinets), I’ve mocked up what the cabinet would look like with two average size adults.  It’s a fair bit smaller than I thought, but will likely fit in the space I’m planning for it.

I’m hoping to plan, from construction to finishing to software, all of the necessary components and tools that I’ll need.  If I’m prepared, I shouldn’t have any trouble when it comes to building the thing itself.

Read full post