Archive for the 'Musings' Category

define:irony

This is from the Linux magazine: “Just days after Stallman finished celebrating the 25th anniversary of his GNU Open Source project, the controversial free software activist was again making headlines.”
www.linux-magazine.com/online/news/richard_stallman_cloud_computing_a_trap

Hopeful Again

I hope no one who implemented CSS support into IE6 works in the software industry anymore.

End of the Editor Wars

My search for the perfect editor has finally come to an end. Yesterday I found it and it is called NetBeans IDE 6.5.

I downloaded and installed the package for PHP development. It simply does so much right. Its project management, symbol lookups, code completion, in-file searches, across-files searches and source navigation are superb. Using its PHP debugger to debug my local apache server was a breeze and its MySQL client is excellent.

If you come across the strange JDK rendering problem you can find the fix here: http://forums.netbeans.org/topic4851-0-asc-15.html

Free Ignorance

Here is my five-months-late take on the Negroponte-Microsoft love story announcement. It is an ironic story in which the FLOSS community is harnessed to pull the OLPC wagon to Africa and goes ballistic when told that they have to carry Microsoft in that wagon as well. I say that anyone in that community feeling betrayed can only complain of his or her own ignorance.

Take a look at Negroponte’s announcement (http://www.olpcnews.com/people/negroponte/nicholas_negroponte_sugar_olpc.html): The term Open Source appears 27 times in the announcement and comments while Free Software appears in one comment only where it is being slammed. Take a look at the Wikipedia article on OLPC (http://en.wikipedia.org/wiki/Olpc): The term Open Source appears 7 times but nothing there on Free Software.

Well, isn’t Open Source all about that corporate-friendly magical method for creating high quality software? Not about user freedoms or hating a particular corporate. You would think the FLOSS community members who feel strongly about something would actually know what it means, right? wrong.

And guess what, there is a two years old interview with Stallman on YouTube in which he warns of such an occurrence (http://www.youtube.com/watch?v=fBogiLGPMwA). This is what he says beginning on minute 08:45: “I ask you to please always call it Free Software because that way you will encourage other people to pay attention to the question of freedom. The term Open Source was formulated by people who did not want to talk about freedom and that is the stupidest thing any people can do. If people don’t talk about freedom it gets forgotten and then somebody says ‘if you will just accept these little restrictions, here is this convenient pleasure you can have’, essentially saying ‘we will sell you something in exchange for your freedom’. And if you have not been thinking about freedom and realizing what freedom means, you might accept that poisonous deal and then your freedom is gone.”

GPL and the Copyright Problem

First I chose GPL for Winpdb, then only 2 years later I actually discovered Free Software, what it stands for and the fascinating universe behind these two words, but now a year later I have stumbled on a problem.

GPL is a tool that uses copyright to enforce software freedom, but… in order to be able to enforce that there must be a copyright holder that can take action. The FSF is aware of this and is carefully requiring contributors and their employers (!) to sign legal papers of copyright transfer: http://www.fsf.org/licensing/licenses/why-assign.html

The problem is that most GPL projects can not afford to force potential contributors to get their employers to sign legal papers as it will reduce the number of contributions to 0 and therefore the copyright to their projects is either dispersed among the different contributors or even worse, is questionably held by a single person or entity (with emphasis on questionably).

What does that practically imply on GPL?

On my search for answers I stumbled upon an interesting article from the year 2000 in Advogato (A recommended site). It became even more interesting when I spied a comment by one Bram Cohen who at the time was little known in the Universe as he did not yet leave his job to write BitTorrent: http://www.advogato.org/article/183.html

I would appreciate your educated opinion or a reference to articles on this subject.

Quiet

It has been rather quiet lately with Winpdb. I have been gradually getting less and less feedback, bug reports and requests either here or in the sourceforge pages. Since it is being downloaded as usual I can only assume it is a sign of maturity. Maybe it just works.

On the other hand I have been contemplating lately the social phenomena of user community indifference. A piece of software can have tens of thousands of users and still generate negligible collaboration activity. It is a mystery. I mean, given this behavior what makes the Wikipedia concept work? What makes one project a collaboration party and another a single person effort?

In any case, this silence on the Python desktop front coincides with my personal shift into the grazing grounds of web development. Finally. Probably one of the last in the herd of software developers, late to get out of bed as usual, I lifted my head from the desktop grass and started marching in search of some XHTML. The first pasture I found by recommendation was of Ruby and RoR. I found the grass over there totally indigestible. Every one says how wonderful and natural it is and that Ruby is actually a lost twin sister of Python. Sorry, but I could see no resemblance what so ever. Sure, Python is not a perfect language but the beautiful thing about it is that it magically disappears and quickly becomes second nature, an extension of your brain. Trying to program in Ruby felt like eating lunch full of sand. I therefore marched on and this time I decided to start from the basics with PHP, XHTML, CSS, SQL, JavaScript, AJAX etc… PHP is another curiosity. It is the most terrible language I ever stumbled upon. How it has become such a corner stone of web development is a mystery. But I decided to give it a serious try this time. After all, the other grazers on that pasture told me PHP programmers are in high demand.

To get PHP, SQL, and the rest into my system I am writing a small and simple MVC framework from scratch. It is called Bolepo and I will soon put it online. Probably in this website initially until it starts crying that it wants its own space. It already has a cute and useful ORM library. I swear.

The Tychod

Tychod stands for Tycho debugger which is a reference to a story/article by Richard Stallman called “The road to Tycho” about a world where possession of a debugger has been made illegal to prevent people from working around DRM mechanisms.

An interesting point that Stallman discusses in another article “The GNU Project” is that popularity of free software is spreading faster than the philosophy of freedom that motivated it. This is what he says:

Estimates today are that there are ten million users of GNU/Linux systems such as Debian GNU/Linux and Red Hat “Linux”. Free software has developed such practical advantages that users are flocking to it for purely practical reasons.

The good consequences of this are evident: more interest in developing free software, more customers for free software businesses, and more ability to encourage companies to develop commercial free software instead of proprietary software products.

But interest in the software is growing faster than awareness of the philosophy it is based on, and this leads to trouble. Our ability to meet the challenges and threats described above depends on the will to stand firm for freedom. To make sure our community has this will, we need to spread the idea to the new users as they come into the community.

But we are failing to do so: the efforts to attract new users into our community are far outstripping the efforts to teach them the civics of our community. We need to do both, and we need to keep the two efforts in balance.

A Python Cyborg

Python is a kind of brain extension. With its help thoughts instantly become working programs.

The Kernighan Extension

Understanding is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to understand it.
–Nir

Who Needs Debuggers?

Judging by download numbers Winpdb is used by approximately 1 in every 500 Python programmers. Given that Python is easy to learn and use, I am still puzzled by this number.

This is what Wikpedia has to say about debuggers: “The importance of a good debugger cannot be overstated. Indeed, the existence and quality of such a tool for a given language and platform can often be the deciding factor in its use, even if another language/platform is better-suited to the task.”

Is Winpdb useful enough to expect wider use? or do you feel it is not ready yet?

« Previous Page