I have a bit of a rant in me right now so you may want to duck and cover. Although I tend to dis­agree with some of the rabid and rather con­strain­ing ide­olo­gies in the open source com­mu­nity, I have always agreed with the basic issue that the source code should be open so that the cus­tomer of that code can go in and tweak it to meet their needs. Closed source code puts con­straints around their code so that the one using the code can not use it as they need it. In web devel­op­ment where most code involved by default has to be open there should be open­ness. But there are those who would close things down.

I am work­ing with a client devel­op­ing a refresh of their web site. It is start­ing to look pretty good. They are using Joomla 1.5 for their base and adding a bunch of third party exten­sions, sev­eral of which they have paid for, to help meet their needs. I have gone in and tweaked a cou­ple of them to match the exten­sions more closely to the needs of my client. Joomla and most of those exten­sions are open source. But I have run into one that needs some tweak­ing but they encrypted their code with IonCube so it can only be run with the IonCube decoder.

The exten­sion is from sakic.net and they should be ashamed of them­selves. Quite frankly, I would that no php devel­oper ever use these encoders so that the encoder devel­op­ers would just go out of busi­ness. And, cus­tomers should never pay for some­thing that uses these encoders!

I believe firmly that the devel­op­ers should receive com­pen­sa­tion for their work if they so desire. I have no prob­lem with pay­ing for these third party exten­sions. But for them to pre­vent the end user from being to able to change the code to meet their needs… growl. One won­ders what they are hid­ing, could it be nefarious?

This is one of the biggest prob­lems with closed source code, espe­cially from small devel­op­ers. One does not have any way of know­ing what is going on inside that black box or how it could even inno­cently be doing some­thing dam­ag­ing. Nor could one go in and fix a bug real quick instead of hop­ing that the devel­oper will fix it. Don’t get me started again with third party data sources! My client has run into a sit­u­a­tion as well with a third party data source that has a bug and they refuse to fix it — that sim­ply rein­forced my dis­like for them.

On the other hand, I don’t go so far as to say that devel­op­ers have to fol­low exactly the Open Source Initiative’s def­i­n­i­tion of “open source.” I believe a devel­oper has to have the right to restrict dis­tri­b­u­tion of their code for one. In fact, I feel this points out prob­a­bly the one big idea that I really take issue with the open source com­mu­nity. They do not care one whit about the devel­oper, they only care about the rights of the end user. Obviously, from this post, I sin­cerely care about the end user’s rights but they have to be bal­anced with the developers.

So let me be plain. Do not pur­chase prod­ucts from sakic.net until they stop encod­ing their prod­ucts. They could pro­tect their intel­lec­tual prop­erty by proper copy­right pro­vi­sions and still allow peo­ple to mod­ify their code for their own needs. But this wan­ton dis­re­gard for their customer’s needs pre­cludes me from rec­om­mend­ing their products.

If you are a php devel­oper, do not use IonCube or any of the other encoders (includ­ing Zend Guard). Lets rid our­selves of these warts in the PHP com­mu­nity. I still find it sad that Zend encour­ages closed source code using an open sourced lan­guage. Growl!

Ok, rant off for now.

Tagged with:
 

Leave a Reply

Looking for something?

Use the form below to search the site:


Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!

Visit our friends!

A few highly recommended friends...