Site menu Noblesse oblige
e-mail icon
Site menu

Noblesse oblige

e-mail icon

2013.07.31

This article expresses the author's opinion at the time of writing. There are no guarantees of correctness, originality or current relevance. Copying the whole article is forbidden. Transcription of selected parts is allowed provided that author and this source are mentioned.

After some consideration, I decided to open the source code of my apps that emulate HP-1xC ("Voyager" series) calculators. In short, they are open-source now, but not free software.

The source code tree of each app can be found at my GitHub page.

The Web version is still in minified/obfuscated to save some bandwidth, but the engine code of Web and phone versions is the same.

You are crazy! Are you a commie?

First of all, I believe that all software should be open-sourced. Everybody benefits from it; I benefit from people that keep their software open-sourced; so it is a matter of consistency to do the same. Noblesse oblige.

Note that I do believe in intellectual property. I have stated my opinions about it in this article, in Portuguese. I just think that a closed-source software is protected twice (by trade secrets and by copyright) or even thrice (if you add software patents to the mix) and this is a bit excessive.

It was not even the main reason, actually. The main reason is that many people have been collaborating to this piece of software since it was made available in the Web. (I won't even mention how many code snippets I borrowed from Stack Overflow, etc.)

Most collaborations came in the form of bug reports, but some people went beyond. In spite of being closed-source, people were digging the obfuscated code and/or the phone app's package and sending patches. (Special thanks to Albert Gräf and André Feltrin Baldessar for your contributions!)

Javascript can't really be 'compiled'. It can be obfuscated but this won't prevent an obstinate programmer to discover how it works. The same happens with Android and iOS apps: both Java and Objective-C allow for deep introspection and even de-compilation.

So, keeping the apps closed-sourced just makes things more difficult for the "good guys" to collaborate, while the hypothetical evil commie hacker that wants to rob me wouldn't be deterred at all.

The mobile apps themselves are completely open-source. The only thing left out is my signing certificate. In the other hand, the Javascript calculator "engine" is presented as a single file (unobfuscated).

The license is not "FLOSS-compliant" either. My intention is to make the apps open-source, not necessarily free software. I could not find a FLOSS license that suited my needs, so I adopted a license similar to Briefs software.

So you are a capitalist pig!

All FLOSS-compliant licenses have this "all or nothing" style, tying together openness, freedom of expression and free beers. As I stated before, I care most about openness (open-source software, open standards, etc.). If you don't agree, so sorry :)

e-mail icon