Language Selection

English French German Italian Portuguese Spanish

Exercising Software Freedom in the Global Email System

Filed under

In this post, I discuss one example of how a choice for software freedom can cause many strange problems that others will dismiss. My goal here is to explain in gory detail how proprietary software biases in the computing world continue to grow, notwithstanding Open Source ballyhoo.

Two decades ago, nearly every company, organization, entity, and tech-minded individual ran their own email server. Generally speaking, even back then, nearly all the software for both MTAs and MUAs were Free Software0. MTA's are the mail transport agents — the complex software that moves email around from one Internet domain to another. MUAs are the mail user agents, sometimes called mail clients — the local programs with which users manipulate their own email.

I've run my own MTA since around 1993: initially with sendmail, then with exim for a while, and with Postfix since 1999 or so. Also, everywhere I've worked throughout my entire career since 1995, I've either been in charge of — or been the manager of the person in charge of — the MTA installation for the organization where I worked. In all cases, that MTA has always been Free Software, of course.

Read more

More in Tux Machines

Python Programming

  • Only Python: Friendly-traceback: work in progress

    It's been almost two months since my last blog post and I feel guilty of not haven't taken the time to write more regularly.  I should really tell you about how fantastic Will McGugan's Rich is, and how I have customized it for my projects. I should also tell you how Sylvain Desodt's DidYouMeanPython has been influencing Friendly-traceback latest developments. Also worthy of note is how Alex Hall's FutureCoder project is incorporating so many neat tools that it feels like a real honour that he has incorporated Friendly-traceback in it. Alas, while I have been busy making many changes and addition to the code, the documentation is hopelessly behind and no longer gives a correct picture of what Future-traceback is now capable of. So much to do, so little time. So, I will just end with a picture, and go back to coding, with a promise of writing more ... soon I hope.

  • Python range() Function – Linux Hint

    Python is a modern, general-purpose, and high-level programming language that comes with powerful features. Python has many built-in modules to support diverse operations. The range() function is a built-in function used to perform specific tasks or actions for a definite number of times. In other words, the range() function is used to perform a task iteratively. This function is used in conjunction with the for loop and the while loop.

  • Python Dictionaries – Linux Hint

    Python is an efficient and versatile programming language. It is one of the most frequently used high-level programming languages to perform data-related tasks due to its many supportive built-in modules and functions. To mention some of its many built-in data structures, it has arrays, lists, tuples, etc. Dictionaries are one of the built-in data structures in Python. It holds the data in the form of a key-value pair. The keys are the unique value that acts as a representative of data. The key is also called as “an index value”. Data structures are a very important aspect of any programming language. They are used to store and manipulate the data in a well-organized and efficient way. Therefore, Python dictionaries are more useful when we need to store the data in a form of key-value pair and to access the data faster. The Python dictionaries return the data faster because the key value for every data is unique, therefore the searching time for data is reduced, and we get the result faster. This article explicates the Python dictionaries in detail.

  • Python Classes – Linux Hint

    Python is one of the multiuse high-level programming languages. It is an object-oriented programming language. The main difference between the procedural and object-oriented programming languages is that we cannot create the classes in procedural programming languages. The main focus of procedural languages is on creating functions, and variables for performing the task whereas, in object-oriented programming languages, our main concern is to create objects and use them for performing our tasks. A class is simply a blueprint that contains functions and variables. A class is like a real-life classroom of any institute. It contains some chairs, tables, desks, a projector, walls, etc. base on all these components; we build a classroom. All these components are the variables and functions in a class, and a classroom is an object. The Python classes and objects are explained in this article.

  • FreeBSD process environ and resource limits

    New psutil 5.7.3 is out. This release adds support for 2 functionalities which were not available on BSD platforms: the ability to get the process environment (all BSD) and to get or set process resource limits (FreeBSD only), similarly to what can be done on Linux.  

Kernel: KVM, Btrfs and nosymfollow

Japanese IME on PCLinuxOS 64 KDE5 Magnum 2020 1015

I recently saw that my install of PCLinuxOS was behaving funny after and update: the effects ceased working and web pages were loading slowly. Last time this happened to me, I had to install a new iso because I had been working with a very old one. This time, however, I had kept up with all the updates thanks to the convenient Simple Update Notifier, but something was not good. Anyway, I decided to install the new PCLinuxOS 64 KDE5 Magnum 2020 1015. The installation went well, but I was worried because I normally install the PCLinuxOS GRUB2 on the distro partition, not on the MBR, but it was not possible for me to do it this time, so I was predicting a mess trying to boot OpenMandriva, Mageia, MX Linux, and Elive. Read more

Microsoft Disables GitHub Repository of Open Source Project youtube-dl

Recording Industry Association of America, Inc. (RIAA) sent a notice to GitHub for hosting youtube-dl source code. Microsoft’s GitHub took immediate action to disable the repositories. But was it the right thing to do? Read more