Quantcast
Channel: Teaching with Free Software
Viewing all articles
Browse latest Browse all 10

Telegram Server Software is Private not Proprietary

$
0
0

Telegram is free software. When it is said like this, it means the client software is free software. However, the server software is not free or nonfree, it is private software. Although this explanation can be applied to Signal, Threema and any other free software messengers, this is focused only to Telegram.

The Problems

There are some people in free software community say that or imply that Telegram does direct injustice to the users because the server software is, they said, “proprietary software.” This is not true. This lumps together different issues into one and reach a misguided result. This impacts many people who use Telegram, including me and many of my students, as this hinders people away from a good free software. I often find this when reading comparisons of instant messengers and the discussions mostly by people who value decentralization over anything. For example, see FSFI comparison, Freie-Messenger comparison. I respectfully disagree with them in this particular case.

The Explanation

To understand this concept, let’s read Free Software is even more important now:

(2) The freedom to make and distribute exact copies when you wish. (It is not an obligation; doing this is your choice. If the program is free, that doesn’t mean someone has an obligation to offer you a copy, or that you have an obligation to offer him a copy. Distributing a program to users without freedom mistreats them; however, choosing not to distribute the program—using it privately—does not mistreat anyone.)

To understand this more, let’s read Categories of free and nonfree software:

Private or custom software is software developed for one user (typically an organization or company). That user keeps it and uses it, and does not release it to the public either as source code or as binaries.

A private program is free software (in a somewhat trivial sense) if its sole user has the four freedoms. In particular, if the user has full rights to the private program, the program is free. […]

Free software is a matter of freedom, not access. In general we do not believe it is wrong to develop a program and not release it.[…]

To understand this even more, let’s read Network services are not free or nonfree:

It is meaningless to say that the service is “nonfree,” or that it is “free.” That distinction makes no sense, for services. […]

What’s clear is that the issues about a service are different from the issues about a program. Thus, for clarity’s sake, it is better not to apply the terms “free” and “nonfree” to a service.

Let’s suppose a service is implemented using software: the server operator has copies of many programs, and runs them to implement the service. These copies may be free software or not. If the operator developed them and uses them without distributing copies, they are free in a trivial sense since every user (there’s only one) has the four freedoms.

The lesson is as the following:

  1. Free software means freedom, not access — so everyone who develops private server software does not have obligation to offer you a copy.
  2. Software that runs in somebody else’s computer is the responsibility of that somebody, not you — so if that software is nonfree, that somebody does wrong to himself, not you.
  3. Choosing not to publish a software is not the same as publishing nonfree software — so everyone in Telegram’s position is not like people who publish nonfree software.
  4. Network services are not either free or nonfree, it is not the same as software. Many people will evaluate the client software only, so respect their choice.
  5. If you reject Telegram because the server software is private (which you incorrectly call “proprietary software”), you should reject to visit (stop using web browser to) a lot of websites which the server software runs IIS or Windows Server or such proprietary software or more extremely reject to visit all websites which the server software is private.
  6. If you did point 5, you should reject to use ATM too, as the software running in the ATM is Microsoft Windows.

The Conclusion

I disagree with some people who say that or imply that Telegram does direct injustice incompatible to software freedom, its server software is proprietary/nonfree, and using it is wrong because it is “centralized”.

“Software injustice”: Telegram is free software to the end-users and this is not an injustice.

“Server is proprietary software”: Telegram server is private software, it is not the same as proprietary software. The server software is not running in the end-users computers, it does not directly affect the end-users, and Telegram does not do wrong with not publishing the software.

“Centralized is wrong”: it is not wrong to end-users who need Telegram. It is even not wrong to people who love independence, decentralization and self-hosting as they can still use any other software for that purpose.

My practice is as the following:

  1. Like any other free software, I use Telegram because the software running in my computer is free.
  2. I use and recommend Telegram FOSS version from F-Droid for Android phone users.
  3. I do not reject Telegram just because the server software is not published/private.
  4. I separate software freedom issues from privacy issues and security issues.
  5. I do not reject Telegram or any other free software based on choices of network shapes, for instances, centralized, decentralized, peer-to-peer, distributed, serverless or whatever.

The Suggestions

I suggest as the following:

  • Instead of saying Telegram server software “proprietary” or “nonfree”, say it private software.
  • Do not call or imply software that is not decentralized proprietary.

I believe it is enough.


Viewing all articles
Browse latest Browse all 10

Trending Articles