Lisensi open source yang memusingkan

Catatan (17 Oktober 2009): Bila Anda masuk ke blog ini untuk mencari arti dari open-source dan semacamnya, Anda dapat melihatnya di bagian comment yang merupakan klarifikasi dari Pak Eus mengenai arti open-source dan free software yang sebenarnya. Komentar tersebut merupakan tanya jawab dan klarifikasi antara saya dan Pak Eus dalam Bahasa Inggris, yang untuk sementara dapat diterjemahkan dari Google Translate dengan klik di sini. Untuk ke depannya saya akan menulis artikel baru yang dikhususkan untuk membahas tentang open-source ini. Artikel di bawah pada dasarnya hanya merupakan sebuah artikel yang membahas kebingungan saya terhadap dual-lisensi yang diadopsi oleh MySQL, dan hal lainnya yang tertulis seperti lisensi-lisensi software yang ada hanya merupakan penjelasan dari apa yang saya ketahui 1 tahun lalu tentang lisensi software bersamaan saat saya menulis artikel ini. Terima kasih atas perhatiannya.

Seringkali kita mendengar kata “program / software open-source” di mana-mana mulai dari internet sampai media cetak dan elektronik lainnya. Open source merupakan sebuah konsep untuk program yang source code-nya dapat dilihat oleh publik dan setiap orang bisa menggunakannya untuk tujuan apapun, baik non-komersial ataupun komersial.

Bila pada program berbayar sering kita dengar yang namanya copyright atau hak cipta, maka pada program open-source kita akan mendengar copyleft. Pada dasarnya copyleft merupakan kebalikan dari copyright (berhubung left memang lawan dari right). Copyright bertujuan melindungi hak cipta sebagai sebuah hasil karya dan hak ciptanya tidak boleh diutak-atik tanpa ijin dari penciptanya. Sedangkan copyleft bertujuan melindungi sebuah hasil karya open-source agar tetap open-source.

Sama seperti software berbayar, software open-source juga memiliki beberapa jenis lisensi yang mengikat antara developer dengan pengguna dan developer turunannya (derivatif) dalam hal pengubahan kode, penggunaan kode pada program lain, redistribusi software derivatif. Beberapa lisensi yang terkenal adalah:

  • GPL atau General Public License, merupakan lisensi yang paling umum dipakai oleh software open-source. GPL dianggap sebagai lisensi yang sangat pro open-source karena memiliki peraturan yang sangat mengikat bagi developer yang ingin me-redistribusi dan mengubah source code program berbasis GPL, umumnya disebut copyleft. Program yang dibuat dari program GPL harus melisensi program buatannya juga menggunakan GPL yang artinya harus juga berupa open-source.
  • LGPL atau Lesser General Public License, merupakan lisensi yang lebih longgar dalam hal penggunaan programnya sebagai link. Program derivatif dari source code berlisensi LGPL tetap harus melisensi programnya dalam GPL atau LGPL, akan tetapi links (sebagai library) boleh dipergunakan oleh program berlisensi open-source maupun komersial. Mudahnya, program berbasis LGPL hanya boleh digunakan bebas sebagai library atau link selama program yang berbasis LGPL tidak diubah kodenya. Bila mau diubah, maka program harus dilensi sebagai GPL atau LGPL.
  • MIT atau Massechusetts Institute of Technology License, merupakan lisensi bebas yang dapat dipakai untuk keperluan komersial dan open-source. Program derivatif hanya diminta untuk menulis copyright atau hak cipta dari developer program aslinya dalam tiap copy program derivatif-nya.
  • BSD atau Berkeley Software Distribution License merupakan lisensi bebas yang mirip dengan MIT License, hanya saja nama developer program aslinya tidak boleh dipergunakan untuk promosi untuk source code / software hasilnya.
  • Apache License merupakan lisensi bebas dengan keharusan software derivatif harus mencantumkan copyright dan paten developernya dalam program dan dokumentasinya, serta membuat dua file khusus berisi lisensi yang digunakan dan pemberitahuan mengenai nama software asli dan developernya.
  • MPL atau Mozilla Public License mengharuskan program derivatif untuk menggunakan MPL juga, akan tetapi juga memperbolehkan program berlisensi MPL dipergunakan bersama file-file yang source-code nya tertutup.

Copyright dan copyleft sama-sama bersifat mengikat, akan tetapi pada kenyataannya pelanggaran copyleft masih merupakan pelanggaran yang dianggap sebelah mata. Karena sifat open-source tersebut, software-software yang menggunakan copyleft menjadi sulit dihitung kerugiannya bila terjadi suatu pelanggaran karena “keterbukaannya” itu. Pelanggaran juga sering terjadi karena ketidaktahuan developer mengenai lisensi open-source yang juga memiliki keterikatan.

Salah satu hal yang sering membuat bingung adalah ketika GPL digabung dengan lisensi komersial yang mengharuskan orang membayar sejumlah uang untuk lisensi komersial bila tidak memenuhi standar GPL. Kebingungan ini muncul bila seorang developer web diminta untuk mengerjakan website menggunakan MySQL (berlisensi ganda GPL dan komersial) dan PHP (yang bersifat source-visible) dan kemudian menempatkan perkerjaannya pada server milik client yang juga menggunakan MySQL. Dengan keadaan source code PHP yang source-visible (belum tentu open-source walaupun bisa dilihat), apakah developer atau pihak client diharuskan membeli lisensi dari MySQL?

Kalau memang ternyata harus, tentu ini berarti pengembangan website dengan menggunakan MySQL tidak ubahnya dengan mengembangkan website dengan menggunakan server database lainnya yang berbayar seperti SQL Server bila menerima proyek dari client dengan kontrak yang mengharuskan kerahasiaan kode dijaga. Kalau misalnya benar bermasalah, satu-satunya jalan keluar adalah menggunakan server database lainnya yang tidak berlisensi GPL seperti Firebird atau PostgreSQL.

Di sisi lain, saya juga sempat membaca pertanyaan-pertanyaan yang diajukan para pengguna MySQL soal lisensi MySQL di mysql.com. Beberapa orang mengatakan selama tidak didistribusikan dengan bundling MySQL, hal ini tidak bermasalah. Sedangkan beberapa orang lain mengatakan bahwa menggunakan MySQL pada pekerjaan merupakan bentuk linking dan menjadi bermasalah.

Jadi bagaimana menurut Anda sendiri sebagai pengguna MySQL?

This entry was last modified on: October 17th, 2009 at 20:39

15 Responses to “Lisensi open source yang memusingkan”

  1. [...] Forum « Lisensi open source yang memusingkan [...]

  2. This article uses inaccurate definitions that confuse people.
    Therefore, based on:
    1. Free Software vs. Open Source: http://www.gnu.org/philosophy/open-source-misses-the-point.html
    2. Selling Free Software: http://www.gnu.org/philosophy/selling.html
    3. Free Software, Free Society: http://www.gnu.org/philosophy/fsfs/rms-essays.pdf
    4. GPL FAQ: http://www.gnu.org/licenses/gpl-faq.html

    I try to straighten things up here by copying-and-pasting a conversation that I have with my friend who referred to this blog:

    (08:32:07 AM) eus: Hehhe…. the writer doesn’t really understand where Free Software, Open Source and proprietary software stand.
    (08:32:36 AM) eus: First, the mistake is in differentiating software into two types: berbayar (commercial) and open-source.
    (08:32:41 AM) Mr. X: then
    (08:33:41 AM) Mr. X: AFAIK, GPL doesn’t worry or deal with the ‘paying’ / berbayar aspect of the SW
    (08:33:51 AM) eus: Exactly :-)
    (08:33:58 AM) Mr. X: it concerns itself with the openness of the source
    (08:34:21 AM) eus: To be accurate, focusing on guaranteeing the four basic freedoms: http://gnu.org.
    (08:34:28 AM) eus: The truth is that the types should be:
    1. Free Software (guarantees 4 basic freedoms)
    2. Open Source (may only have some of the 4 basic freedoms)
    3. Proprietary (no freedoms)
    (08:34:39 AM) eus: Each of them can either be commercial or not.
    (08:34:52 AM) Mr. X: right
    (08:34:53 AM) eus: Even proprietary software can be distributed for free.
    (08:35:00 AM) Mr. X: yup
    (08:35:12 AM) eus: The second mistake is saying that copyleft is different that copyright.
    (08:35:23 AM) eus: The truth is that copyright is not copyleft and vice versa.
    (08:35:34 AM) eus: All types of software is copyrighted.
    (08:35:44 AM) eus: However, software uses licensing.
    (08:36:04 AM) eus: Based on the licensing, we can differentiate the types of the software.
    (08:36:19 AM) eus: Open Source licenses may rob some of the basic freedoms.
    (08:36:28 AM) eus: Proprietary licenses rob all of the basic freedoms.
    (08:36:38 AM) eus: Free Software licenses give all of the basic freedoms.
    (08:36:57 AM) eus: Copyleft speaks nothing up to this point.
    (08:37:30 AM) eus: Now _some_ Free Software licenses (notable GPL) employ copyleft.
    (08:38:16 AM) Mr. X: am checking on gnu.org as well now
    (08:38:21 AM) eus: Copyleft means that the license says in a legally binding manner that the receiver of the software must not deprecate the next receiver of the software of any of the basic freedom.
    (08:38:46 AM) eus: For example, Mr. X gives Eus software licensed under a copyleft license (GPL).
    (08:38:58 AM) Mr. X: then
    (08:39:13 AM) eus: Under copyleft, Eus is not allowed to give Mr. A the software under another license that robs one of the 4 basic freedoms.
    (08:39:33 AM) eus: Or, a license that removes the copyleft nature.
    (08:39:53 AM) Mr. X: agreed and understood
    (08:39:57 AM) eus: But, some Free Software and Open Source licenses are not copylefted.
    (08:40:03 AM) Mr. X: e.g MIT
    (08:40:07 AM) eus: IOW, they are permissive.
    (08:40:10 AM) eus: Exactly :-)
    (08:40:17 AM) Mr. X: or Mozilla
    (08:40:20 AM) eus: Yes.
    (08:41:17 AM) Mr. X: what is the definition of ‘bundled’ or ‘integrated’ in so far as requiring for the resulting application to take effect the ‘copyleft’ nature of GPL
    (08:41:18 AM) eus: The final confusion that the writer has is that s/he doesn’t understand the difference between using two software on the same host and linking those two software.
    (08:41:46 AM) Mr. X: the case being PHP front end and MySQL
    (08:41:53 AM) eus: The definition of bundled or integrated is being explained now that I am explaining the final confusion of the writer.
    (08:42:15 AM) eus: Okay, using PHP frontend and MySQL backend do not involve linking.
    (08:42:17 AM) Mr. X: your previous statement addressed my Q actually
    (08:42:24 AM) Mr. X: go on
    (08:42:34 AM) eus: So, you are using two software on the same host.
    (08:42:39 AM) eus: That is legal under GPL.
    (08:43:08 AM) eus: So, there is no problem with that.
    (08:43:13 AM) Mr. X: my understanding is that if I modify MySQL at the source level and include the PHP FE as a ‘suite’
    (08:43:37 AM) Mr. X: ht end result is still that theMySQL++ still has to be GPL given MySQL is GPL with copyleft
    (08:43:45 AM) eus: Correct.
    (08:44:00 AM) Mr. X: and my PHP FE is still my prerogative as to which license I want to apply or impose
    (08:44:10 AM) eus: Correct.
    (08:44:18 AM) Mr. X: the GPL (ie.. copyleft) nature still stops at MySQL++ ‘unit’
    (08:44:26 AM) eus: Exactly :-)
    (08:44:32 AM) eus: Specifically, you are still using two software on the same host if the way you access the MySQL++ is still the same (i.e., through Apache).
    (08:44:35 AM) Mr. X: on top of that I can still charge $$$ for MySQL++ and PHP+FE
    (08:44:41 AM) eus: Correct! :-)
    (08:44:46 AM) eus: Then, we can be rich!
    (08:45:06 AM) Mr. X: license in this sense or as most people know it actually is a multiplexed term
    (08:45:14 AM) Mr. X: license as in ‘free’dom
    (08:45:18 AM) Mr. X: and license as in ‘price’
    (08:45:18 AM) eus: Yes, and that is wrong :-)
    (08:45:40 AM) Mr. X: the basic and correct definition should be license as in ‘freedom’ not pricing.
    (08:45:52 AM) eus: Yes, exactly.
    (08:45:56 AM) eus: It is like confusing Intelectual Property with trademark, patent, copyright, trade secret, etc.
    (08:45:58 AM) Mr. X: or at least qualify the pricing license with say, ‘pricing license’
    (08:46:23 AM) eus: Yes, we can do so.
    (08:46:47 AM) eus: Even the writer of the article treated Open Source as source-visible and Free Software as Open Source.
    (08:46:51 AM) Mr. X: to bridge the existing ‘confusing’ albeit too late practice with the proper use/definition
    (08:46:55 AM) eus: That is a _wrong_ treatment.
    (08:47:12 AM) eus: Yes, even the writer of the article uses the _wrong_ definitions.
    (08:47:37 AM) Mr. X: what’s the fundamental diff between free Sw and open source
    (08:47:45 AM) Mr. X: free as in ‘freedom’
    (08:48:06 AM) eus: Yes, exactly.
    (08:48:12 AM) Mr. X: for sake of discussion I think it’s safe to assume that when we say ‘free’ it means ‘freedom’ not gratis.
    (08:48:21 AM) eus: Yup! :-)
    (08:48:33 AM) eus: But, the general public is not educated about that.
    (08:48:44 AM) eus: So, I prefer to say “free as in freedom”.
    (08:49:21 AM) Mr. X: sorry, I missed it a bit. so the fundamental diff between open source and free sw is?
    (08:50:29 AM) Mr. X: the 4 basics:
    (08:50:40 AM) Mr. X: The freedom to run the program, for any purpose (freedom 0)
    (08:50:45 AM) Mr. X: The freedom to study how the program works, and change it to make it do what you wish (freedom 1). Access to the source code is a precondition for this.
    (08:50:52 AM) Mr. X: The freedom to redistribute copies so you can help your neighbor (freedom 2).
    (08:51:00 AM) Mr. X: The freedom to improve the program, and release your improvements (and modified versions in general) to the public, so that the whole community benefits (freedom 3). Access to the source code is a precondition for this.
    (08:51:36 AM) Mr. X: which of the 4 does open source not in compliance with?
    (08:52:16 AM) eus: Free Software gives us the four basic freedoms as stated in gnu.org. Open Source Software only gives us the source code but robs one of the four basic freedoms. For example, JVM has the source code out there. But, it doesn’t allow you to distribute your modification.
    (08:52:34 AM) Mr. X: i see
    (08:52:44 AM) eus: http://www.gnu.org/philosophy/open-source-misses-the-point.html
    (08:53:14 AM) Mr. X: understood.
    (08:53:24 AM) eus: Oh, another confusion that the writer of the article has is that Free Software always means releasing your work to the public.
    (08:53:27 AM) eus: That is wrong.
    (08:53:33 AM) Mr. X: it’s the fine print of the or any opens source license itself.
    (08:53:44 AM) eus: The truth is that Free Software only obligates you to give the freedom to the receiver of your software.
    (08:53:56 AM) eus: If the receiver of the software is only a company, you are not obligated to make your work public.
    (08:54:10 AM) eus: It is still private but Free Software since it gives the company the four basic freedoms.
    (08:54:15 AM) Mr. X: make ‘public’ meaning?
    (08:54:25 AM) eus: Distributed over the Internet.
    (08:54:38 AM) eus: Whether it is copylefted or not, it can be negotiated during the contract with the company.
    (08:54:44 AM) eus: But, most likely it won’t be copylefted.
    (08:54:59 AM) Mr. X: i see
    (08:55:07 AM) eus: Yes, most likely it won’t be copylefted if we sell software to a company like Nestle.
    (08:55:45 AM) eus: Because if Nestle is acquired by another company, their contract agreement that covers the software will surely demand Nestle to give all rights of the software to the buyer. Correct?
    (08:56:13 AM) Mr. X: if we use MySQL and deliver a solution using MySQL (under GPL), that means the freedom is passed on to Nestle (the basic freedom)
    (08:56:30 AM) eus: Yes, so Nestle has the four basic freedoms over MySQL.
    (08:56:31 AM) Mr. X: yes, to the question.
    (08:57:22 AM) Mr. X: however, my software house is not obliged to give the source code to MySQL in a say, DVD, to fulfill my software house’s responsibility under the GPL
    (08:57:36 AM) eus: Actually it is.
    (08:58:07 AM) Mr. X: From what I have read on the GPL, that obligation is replacable or can be fulfilled by providing a link or infomraiton to the source.
    (08:58:21 AM) eus: That is why in the contractual agreement we can say:
    The following applications are covered by GPL:
    MySQL
    some other applications
    They are bundled with GNU/Linux Ubuntu and their source code can be found in the Ubuntu disc.
    (08:58:35 AM) Mr. X: since, my software house itself is not storing or owning the source, right now, for all practical purposes.
    (08:58:53 AM) eus: Yes, I mean you are obliged to give the source with one or other means.
    (08:59:18 AM) Mr. X: ok. agreed then.
    (08:59:39 AM) Mr. X: thanks for reconfirming my understanding.
    (08:59:45 AM) eus: Yup, so in the contractual agreement, it can also be said that the source code can be downloaded over the Internet at URL ….. or be asked of your software house in case the URL doesn’t work any longer.
    (08:59:56 AM) Mr. X: understood.
    (08:59:58 AM) eus: Yes, it’s my pleasure to help with the licensing matter :-)

  3. To make it clear where free software, open-source software and proprietary software stand, let me give you the following explanation:

    Basically, the software industry is politically divided into two sides:
    1. Free Software (free doesn’t mean gratis, it means freedom as in `free
    speech’)
    2. Proprietary software

    The Free Software side is further divided into two parts:
    1. Free Software
    2. Open Source Software

    While Free Software gives you the essential freedom to control your
    computing devices, Open Source Software only gives you the source code
    but sometimes not the freedom.

    To elaborate, Free Software gives you the following freedoms (from
    http://gnu.org):
    1. Freedom to use the software for any purpose you want (non-free
    software may forbid you from using the software in cellphones, for
    example). As an analogy, if you buy a motorcycle, you have your freedom
    to use the motorcycle for any purpose you want. You can rent it to
    someone else, you can use it for Ojek, you can burn it if you want, you
    can use it for street racing and any other purpose. However, non-free
    software does not give you such a freedom. For example, you may not be
    allowed to enhance the ICU of your motorcycle, which is embedded
    software, to be able to accelerate to 100 km/h in 2 second. Well, that’s
    surely very limiting and frustrating. We in the free society must have
    our freedom and defend our freedom accordingly.

    2. Freedom to modify the software for your own personal use (non-free
    software may not allow you to do this, for example). As an analogy, if
    you have your own motorcycle, you have your freedom to modify it. You
    can paint it with other color, you can change the muffler, you can
    change the tire, you can even change the whole body as well as any other
    crazy modification that you may like. However, non-free software does
    not give you such a freedom. For example, you may not be allowed to
    enhance the search facility to find files in Microsoft Windows with
    regular expression.
    To be able to modify software, you need the source code of the software.
    In other words, the availability and openness of source code is a
    prerequisite of having free software.

    3. Freedom to sell or give away (i.e., redistribute) the software
    without any change/modification (non-free software may not allow you to
    give the software to your girlfriend, for example). As an analogy, if
    you have your own motorcycle, you are at your freedom if you want to
    give the motorcycle to your girlfriend. You are also have the freedom to
    sell the motorcycle with a profit (i.e., you sell it at a higher price)
    to your friend. However, non-free software does not give you such a
    freedom. For example, the license of your particular Microsoft Windows
    may not allow you to lend the software or sell the software at a higher
    price to a third party. If you can do anything with your motorcycle, why
    you cannot do anything you please with the software that controls your
    computing devices?

    4. Freedom to sell or give away (i.e., redistribute) the software with
    changes/modifications (non-free software may not allow you to modify the
    software and sell your modification to another person, for example). As
    an analogy, if you have your own motorcycle, you are free to modify it,
    for example by tweaking its machine, and redistribute the motorcycle,
    for example by selling the motorcycle to Valentino Rossi because your
    tweak results in an 125cc engine that can speed up to 100 km/h in 1
    second! Non-free software, however, does not give you such a freedom.
    For example, in the old days, although you had the source code of the
    JVM (Java Virtual Machine) to make some modifications, the license of
    the source code didn’t allow you to redistribute your modifications.
    This was very frustrating for me when I worked at a software company
    that really needed a custom tweak to the JVM for the clients.

    Okay, so by having those four essential freedoms, the software is Free
    Software because it gives you the essential freedoms to control your
    computing devices.

    Proprietary software usually does not give you any of the essential
    freedoms. Open Source Software, however, gives your the source code but
    not the freedom to use the source code. For example, you can make some
    modifications for your own personal use, but you are not allowed to sell
    your modification and use your modification in cellphones.

    So, I hope I have explained Free Software clearly to you. If you have
    any question, feel free to ask me.

    • Hi,

      it’s a long comment for an article, however I must thank you for the explanation. :) Your explanation give me (and maybe also other readers) many information. This article is 1 year old and I’ve also got many information from the internet, but honestly not as much as what you explained above.

      Just for information, I decided to write down this article because I was confused about what MySQL dual license meant that day. Then I searched on many web forums and found there were also many people who were confused about the licensed term, whether they may distribute their program commercially or they may only distribute their program in open source term. What I knew that day about GPL was that GPL is a copyleft license which means every source code that using MySQL library must also be distributed as open source. This idea means that I must release all my projects under GPL also. However since I got the answer from MySQL staff, I realized that my previous idea was totally wrong. Using GPL-ed program without modifying it’s source code doesn’t mean I make derivative work from it so I can licensed my work with any other licensed that I want.

      Since I didn’t know what licensed that I must used (GPL or commercial), I wrote this article and placed a question “do developers must purchase a commercial license from MySQL for the source visible software?”. That time I almost decided to use PostgreSQL which gives the developer freedom to use their software without paying since there are no commercial licensed that confused me.

      Besides wrote down my thought about MySQL license, I thought it was better if I also wrote down what I knew about open source licenses. However this article was not updated although I’ve learn more about open source and free software for past 1 year so many information may be inaccurate. So I must admit that’s my bad for causing many people got wrong information about free and open source software by reading this blog. I will try to write a new article and also linking to more reliable source so reader will get more useful information rather than just an article that’s consists only about my experience and what I thought. :happy:

      I hope you don’t license your comments with commercial license since I may quotes your comment on my other blog entry someday. Hehe… Just kidding. ;)

      Best regards.

  4. Reading your comment, I need to clear some things up:

    1. Being commercial does not have anything to do with the license. All software can be commercial (i.e., sell at a price) including GPL-ed software (Free Software).

    2. You can commercially sell GPL-ed software that you have modified. It is still legal under GPL as long as you license the software under a GPL/GPL-compatible license to the buyers.

    3. In the case of MySQL-Apache-PHP, you don’t have to license your PHP code under GPL because your code is interpreted by PHP, and you use MySQL database through PHP. Therefore, the legal burden stays in the GNU/Linux distribution that you use because the GNU/Linux distribution is the one that combines those three applications. Your PHP script code whatsoever has nothing to do with the legality of combining MySQL-Apache-PHP. And, you are free to license your PHP script code under any license you want including proprietary licenses (this is not advisable though). This is so because your script is an input to the MySQL-Apache-PHP engine, and an input is not covered by the copyright, and hence the licenses, that cover the engine. Therefore, you can license your PHP code in terms different from those of the MySQL-Apache-PHP.

    4. Selling your IT solution in which you use MySQL as your DB and PHP scripts as your business logic by employing a GNU/Linux distribution such as GNU/Linux Ubuntu does not obligate you to license your DB DDL (e.g., CREATE TABLE …) and DML (e.g., INSERT INTO employee VALUES …) as well as your PHP scripts under licenses that cover MySQL and PHP because your DB DDL and DML as well as your PHP scripts only act as input to a big engine called GNU/Linux Ubuntu (c.f. http://www.gnu.org/licenses/gpl-faq.html#MereAggregation)

    Okay, so those four points should be able to clarify all confusions.

    Finally, please kindly refer to software that give you the four basic freedoms (see http://gnu.org for the four freedoms) as free software (free doesn’t mean gratis here but freedom as in “free speech”), and please refer to software that only give you the soure code but only some of the four freedoms as open source software instead of source-visible software because “open” already means “source-visible” but not “freedom”.

    PS: My writing, of which I hold the copyright, expresses my opinion, and therefore, it is not modifiable. You, however, are licensed to distribute my writing without any modification for any purpose you want (including a commercial purpose in which you sell my writing) provided that you acknowledge me (Tadeus Prastowo) as the author of the writing.

    PS 2: Free software may not always copylefted. For example, any software licensed under the MIT license is free software but not copylefted.

    • Okay, I got the point now. Even with open source license, I still can get money from selling my own software. :)

      Since long ago, I’ve known the “free” means here like what you said: free as free speech, not as free beer. The confusion here only referred to dual license of MySQL which are GPL and commercial which commercial here means that I must pay for certain condition. And of course I will look for other solutions which are free as “gratis” if I must spend money since I am still a student which don’t want to spend thousands dollar just for a database engine. I’ve got the answer when I asked MySQL staff directly from email 2 days after I wrote this article. I also wrote an article dedicated to the question I asked at http://etersoul.com/2008/10/13/jawaban-mysql-mengenai-lisensi/

      And why did I write about source-visible there? Because I found some PHP projects which are not an open source project. One of them was MyBB (MyBulletinBoard) which was a PHP based web forum (now it is an GPL-ed one). They licensed it with their own license which allow anyone to use and modify their software as long as the creator name (MyBB Group) was not removed from the footer. There was also an explanation from the creator which said that the software was a source visible software since it used PHP, but it was not an open-source one since they restricted the user from removing the creator name.

      From what I know, until the developer use encryption / protection engine, every software which is developed in PHP will be source-visible (because PHP itself is a scripting language, similiar as JavaScript), even thought it is not intended to be open-source software. This raise a question, is it true what the MyBB developer said? Does that mean every PHP software which is not encrypted or protected will be an open source one since it is source-visible? :)

      Regards

  5. Okay, so I guess I have got my points across to you.

    IMO, MyBB created just another confusion by defining the term “source visible”. Logically, there is no difference between being “open source” and “visible source” because an opened source code is definitely visible and a visible source code needs to be opened first. In other words, that justifies the truth that being open source doesn’t mean having all of the four basic freedoms that are defined in http://gnu.org. This in turn tells us that software that gives its users all of the four basic freedoms should be called “free software” instead of “open source software”. So, having the restriction of removing the creator name, MyBB is still aptly called “open source software”.

    For your last paragraph, the PHP scripts are still called “open source” because proprietary software always means “closed source” (c.f., http://en.wikipedia.org/wiki/Proprietary_software#Literal_and_legal_meanings). So, yes, every PHP software that is not encrypted or protected will be called open source software but not proprietary software nor free software. If you understand this, it means that you really understand where free software, open source software and proprietary software stand.

    • Then everything is clear now for me.

      Thanks for your willingness to answer every question that I asked and clarify any mistakes that I made on my article. If I have any more question about open source and free software I will ask you by email, of course if you allow me to do so. ;) As I said before, I will sometimes write a new article that are dedicated to explain about free software and open source (not like this one which the main topic is about MySQL license), and I hope you still want to assist me in case if there are any mistakes, of course I will learn more before write it.

      For now, I will place clarification in my post in case if there are any people who come here “by mistake” so they will find better answers from the comment section.

      Regards

  6. With pleasure I will assist you in the matter of free software, open source software and proprietary software. Just send me an e-mail.

    It is highly recommended that you read the very inspiring book: Free Software, Free Society. It can be downloaded here: http://www.gnu.org/philosophy/fsfs/rms-essays.pdf
    The book is the first step to understand how we can defend our computing freedoms in this information age.

    Finally I really thank you that you put a clear notice for people who will come here in the future so that they won’t be confused.


    Best regards,
    Eus (FSF member #4445)

    In this digital era, where computing technology is pervasive, your
    freedom depends on the software controlling those computing devices.

    Join free software movement today! It is free as in freedom, not as in
    free beer!

    Join: http://www.fsf.org/jf?referrer=4445

    • Hi, if you don’t mind I would like to ask you some other questions about “open source” software.

      As you said before, every programming language that are not encoded / encrypted / protected (such as PHP and Javascript) will be classified as open source when it’s delivered to other users. So that based on what you told me, as I working on my project which are source-visible and not encoded, the project will be classified as “open source” project even though I take money from the job I do.

      Now I’m working on my college assignment to search for the definition of open source and proprietary software, then I remembered the definition you told to me before. I also searched from the internet for reliable source and found Open Source Definition here. The first point said:

      1. Free Redistribution

      The license shall not restrict any party from selling or giving away the software as a component of an aggregate software distribution containing programs from several different sources. The license shall not require a royalty or other fee for such sale.

      I think this point is not compatible with the contract that was signed by me and the client. There is a point in the contract defining that the developer must keep the code secret and may not release it to the public. Also there is a point on the contract that define the right of the client to use it and modify the code anytime in the future, however may not redistribute or sell it to other parties, so that the code is not publicly available. That’s now why I think my software cannot be classified as an open source like what you said before, even I let the clients to take away the source code.

      What do you think about this? Is my project still classified as open-source project based on the definition from Open Source Definition I found above?

      Regards

      • You said:

        … the project will be classified as “open source” project even though I take money from the job I do.

        Let me remind you again that being free or open has nothing to do whatsoever with getting money from such software.

        If you let your code plainly readable and modifiable, that means that your code is open source already although your code does not conform to the full extent of Open Source Definition. Your code is open, and it is aptly called open source. As I said before, open does not mean free as in freedom since as in your case, you may lose some of the four basic freedoms (http://gnu.org).

        So, your project is aptly classified as private open-source software project because the distribution term is very constrained.

        • In my case, I’ve only give a freedom for the client to modify the software in the future for their own use. So is that why my software still fall in the open source category?

          Then how about when someone who make PHP project like me that use stricter contract? Even though they are provided with source code, the developer restricts the client to change the code (which I am still allow it) and to pass it to other parties. So they only have a right to use the software provided as is without any permission to change the source code. When they want to change a feature on the software, they must tell the developer about it and may not change it by them selves. Is this still classified as open source?

          Regards and thanks for the answer

          • Although you only give your client the freedom to modify the software in the future for their own use, your software is still open source because of the nature of the code that is left in the open.

            Even when a non-obfuscated PHP code is licensed under a stricter license, the code is still open source.

            To make this clear, let’s consider Michelangelo’s David (http://en.wikipedia.org/wiki/David_(Michelangelo)).

            The statue is located in a public museum for everyone’s eyes.
            Is the statue naked? I will say yes.

            Now the museum that owns the statue license the statue to you as far as the statue is kept in your room for your own eyes only.
            Is the statue naked? I will say yes, it is still naked.

            So, now change “museum” with “software developer”, “statue” with “code” and “naked” with “open source”. You should get the idea now.

  7. Ah, thanks for the explanation once again. Yesterday I’ve also ask my project manager about this thing, and he gave me the same explanation as yours. Even he said that our projects are categorized as open source projects. I must admit that even I’ve try to learn about open source for long time, my knowledge about open source software and definition is not good enough. I hope you still willing to answer my question if I ask you again sometimes. :)

    Regards

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

:alien: :angel: :angry: :-l :blink: :blush: :cheerful: :cool: :cry: :devil: :dizzy: :ermm: :face: :getlost: :D :happy: :heart: :kissing: :lol: :ninja: :pinch: :| :( :shocked: :sick: :sideways: :silly: :sleeping: :) :p :unsure: :w00t: :wassat: :whistle: ;) :x :bat: :beer: :cake: :camera: :cat: :clock: :cocktail: :cup: :dog: :email: :film: :kiss: :lightbulb: :note: :phone: :present: :rose: :star: :tup: :tdown: :wiltedrose: :unlove: