Łukasz Gołek · WIMiC AGH
#include <iostream>
int main() {{
std::cout << "Hello, World!" << std::endl;
return 0;
}}
00000000 7f 45 4c 46 02 01 01 00 |.ELF....| 00000010 02 00 3e 00 01 00 00 00 |..>.....| 00000020 00 00 00 00 00 00 00 00 |........| ...
With closed software, you only ever receive the compiled binary — the source code is never shared:
00000000 7f 45 4c 46 02 01 01 00 |.ELF....| 00000010 02 00 3e 00 01 00 00 00 |..>.....| 00000020 00 00 00 00 00 00 00 00 |........| ...
The user does not have access to the source code, meaning they cannot verify how the software works or what operations it performs. Bugs cannot be fixed independently, nor can the software be customized to meet specific needs.
The vendor decides on the development direction, updates, and end of support. If the company discontinues support, the user may be forced to purchase new software.
Closed-source software often collects user data without full transparency. It may include DRM (Digital Rights Management) mechanisms that restrict the use of purchased products.
The user must pay for licenses, subscriptions, and updates. Vendor lock-in can occur, making switching to another provider expensive and difficult.
The user cannot verify the software's security independently or through third-party experts. If a vulnerability is discovered and not patched by the vendor, users remain exposed to potential attacks.
In case of issues, the user relies entirely on the vendor's technical support. New features cannot be added, nor can existing ones be modified, even if necessary.
Proprietary file formats may prevent easy migration to other systems. Vendors can enforce policies that block access to data (e.g., Adobe blocking user accounts in certain countries).
Vendors may deliberately restrict interoperability with competing software. Updates can break compatibility with older versions, forcing users to upgrade or switch systems.
| Issue | Microsoft | Apple | Other | |
|---|---|---|---|---|
| Lack of Control | Windows 11 forces automatic updates, sometimes breaking compatibility with older hardware and software. | Google restricts Android users from easily installing apps outside the Play Store, making sideloading harder with security warnings. | iOS does not allow users to install apps from outside the App Store unless they jailbreak their devices. | Meta (Facebook) frequently changes its algorithms, affecting content visibility without user control. |
| Vendor Dependence | Microsoft discontinued Windows 7 and older Office versions, forcing users to upgrade or lose security updates. | Google stops updating Pixel phones after a few years, even if the hardware still works fine. | Apple stops supporting older macOS versions, making older Macs obsolete even if they still function well. | Adobe moved to a subscription-only model, preventing users from purchasing perpetual licenses. |
| Issue | Microsoft | Apple | Other | |
|---|---|---|---|---|
| Tracking & Undesired Features | Windows 10 and 11 collect extensive telemetry data, even if users try to disable tracking. | Google tracks users' location even when location services are turned off. | Apple collects analytics data from iPhones, even if users opt out of tracking (as revealed in lawsuits). | Meta (Facebook) tracks users across the web using invisible trackers, even when logged out. |
| Higher Costs | Microsoft 365 requires a subscription, replacing the one-time purchase model of Office. | Google takes a 30% cut from Play Store transactions and enforces its in-app payment system. | Apple forces all iOS developers to use its in-app payment system, taking a 15–30% commission. | Adobe Creative Cloud forces users to pay monthly, making them lose access to their work if they stop paying. |
| Issue | Microsoft | Apple | Other | |
|---|---|---|---|---|
| No Independent Security Audits | Windows is closed-source, so security experts cannot fully audit it for vulnerabilities. | Android's core is open-source, but Google Play Services is closed-source, preventing full security audits. | iOS is entirely closed-source, making it difficult for independent experts to verify its security. | WhatsApp's encryption is controlled by Meta, meaning users must trust that it isn't compromised. |
| Limited Repair & Customization | Microsoft locks down Surface devices, making them difficult to repair. | Google makes unlocking bootloaders difficult on some Android devices, voiding warranties if modified. | Apple enforces strict "Right to Repair" restrictions, disabling features if unofficial parts are used. | John Deere prevents farmers from repairing their own tractors by locking software behind DRM. |
| Issue | Microsoft | Apple | Other | |
|---|---|---|---|---|
| Risk of Losing Personal Data | Microsoft OneDrive users have been locked out of their files due to policy violations or account issues. | Google can suspend accounts without warning, cutting users off from Gmail, Drive, and Photos. | Apple has locked users out of their iCloud accounts for violating terms, sometimes without clear reasons. | Adobe has banned users from accessing their purchased software in sanctioned countries. |
| Compatibility Issues | Microsoft makes older versions of Office incompatible with newer Windows versions to push upgrades. | Google's proprietary services (like YouTube and Gmail) work poorly on non-Chrome browsers. | Apple prevents iMessage from working on Android, deliberately creating incompatibility. | Tesla cars use proprietary software, making third-party repairs and upgrades difficult. |
Google Play Services — a closed-source component of Android — has extensive permissions on your device. It can silently install, remove, or update apps in the background, even without your consent. Play Protect can remotely uninstall apps from your phone if it deems them harmful, sometimes without notifying the user.
Google can force updates on apps, even if you have disabled them.
2020: Google quietly pushed the "COVID-19 Exposure Notification" app to millions of devices without user consent.
2019: A hidden security update was pushed to Google Play Services, which users couldn't opt out of.
Google can remotely remove apps from your device if they are flagged as malicious or violating their terms. This has happened with VPNs or emulators not approved by Google.
In managed mode (typically used for work phones), Google can execute commands on the device, such as pushing apps, changing settings, or locking the user out.
Some Android devices — particularly from Chinese manufacturers — may have hidden mechanisms that allow the manufacturer or carrier to remotely modify the system.
Microsoft can push security updates or system updates that modify system behavior, install new features, or remove vulnerable programs. Windows 10 and 11 also send telemetry data to Microsoft, often without clear user consent.
For enterprise devices, Microsoft can manage and push updates or install apps remotely using Intune, which could include running or modifying code.
Microsoft enforces a platform where apps must pass through its store, limiting the ability of users to run arbitrary code.
Apple enforces strict control over the iOS ecosystem by requiring all apps to be downloaded via the App Store.
While iOS is closed-source, Apple can update the OS remotely through the App Store or system updates.
Apple can push updates, remove apps, or manage settings on devices. Technically, Apple has the ability to execute code remotely on an iPhone.
While these actions are usually intended for security, updates, and remote management, they raise serious questions about the level of control these companies have over users' devices.
If you want to avoid this level of control:
If a company possesses the disk encryption key, it theoretically has the ability to decrypt a user's data — without the user's consent.
While Apple claims to follow "zero-knowledge" principles, it may provide access to data at law enforcement request. Apple also has access to encrypted backup data in iCloud.
Google stores encryption keys for data in Google Drive and other cloud services. Google can decrypt and provide access if required by an investigation or in accordance with its privacy policy.
Windows 10/11 and OneDrive use data encryption, but Microsoft — as the owner of these services — has access to encryption keys and can access user data if required by law or for other reasons.
If a company holds the encryption key, it may provide access to encrypted data upon a court order or law enforcement request — even without user consent. Apple, despite defending user privacy, has been forced to provide data access in terrorism-related investigations. Both Google and Microsoft can be required to hand over user data upon request from law enforcement.
If the company's key management infrastructure is compromised, all user data encrypted with those keys could be exposed at once — affecting millions of users simultaneously.
There is no technical guarantee that a company will not misuse the encryption keys it holds. Users must trust the company's policies — without any means of independent verification.
When the entity providing encryption is the same entity that could be compelled to decrypt, the entire security model collapses. True encryption requires that only you hold the key.
Corporations already have the decryption keys, so their encryption loses any real purpose. You are not protected from the very entity that could breach your privacy.
It's far more important to secure the BIOS with a password than to rely on system-level encryption services like BitLocker.
There are tools that do this really well and for free, such as LUKS (Linux Unified Key Setup), where you alone hold the encryption keys or password. No corporation, no government agency — only you.
The concentration of power — over infrastructure, data, and legislation — in the hands of a few corporations represents a fundamental threat to personal freedom and privacy.
Private, open-source communicator. End-to-end encrypted by default. No data collection, no ads, no corporate surveillance.
Privacy-hardened web browser based on Firefox. Tracking protection on by default, no telemetry, no fingerprinting.
Private mail clients. Note: every email on Gmail is read and analyzed by Google — even if it feels private.
Privacy-respecting search engine and browser. Does not build profiles or track search history.
Private, open operating system. Full source code available for inspection. No forced telemetry, no hidden keys, no corporate backdoors.
There are hundreds of Linux distributions — here are some of the most well-known ones:
…and hundreds more. Each distribution is a different combination of kernel, package manager, default desktop environment, and philosophy.
The complete family tree of Linux distributions — from 1991 to today — is best viewed interactively on Wikipedia:
The Linux Distribution Timeline is a large SVG diagram maintained on Wikipedia showing the genealogy and relationships between hundreds of Linux distributions from 1991 to the present day.
🔗 Open full timeline on Wikipedia →The system is constantly updated — there are no classic version releases. You always run the latest packages.
New versions of the system are released periodically and require a migration between major versions.
The system is based on stable releases, but some components are updated more frequently.
Arch Linux and derivatives. Fast and simple.
Debian, Ubuntu. Easy to use, large repositories.
Fedora, RHEL, CentOS. Better dependency support.
openSUSE. Advanced features, system snapshots.
Gentoo. Source-based, compile-from-source system.
These are distributions that automate so much that the user doesn't really know what is going on in their system.
User-friendly distros with lots of automation — these distros often do a lot of things in the background without giving the user full control:
Collects anonymous telemetry data by default (can be disabled, but users rarely do this).
Automatic driver and update installation, which simplifies use but can be questionable.
Integrated analytics and automatic downloads of some apps.
Automatic mirror and update management, which could impact security.
Some distributions are heavily automated, and it is unclear what exactly they do:
A beautiful but controversial Chinese distribution. It was suspected of transmitting telemetry data to servers in China.
A Chinese government-sponsored distribution, fully automated, but it is not entirely clear what processes are running in the background.
Looks like Windows 11, but runs on Ubuntu. It is unclear what changes it introduces to the base system.
Distros that hide too much from the user:
While generally secure, automates a lot of things — for example, it hides kernel updates, which can be a security risk.
Very limited user control over the system and updates.
Based on Arch, but automates so many things that the user may not be aware of changes to the system.
Rolling release, you build it yourself
Compile everything from source
Independent, runit init, musl libc
Rock stable, 30+ years of reliability
Oldest surviving distro, minimal automation
Phase 1 — Installation & system fundamentals
Phase 2 — Compile-from-source, USE flags, kernel
Gentoo allows users to precisely tailor the system to their hardware and individual needs. With the Portage tree and the ability to compile source code, users have full control over configuring their system.
By compiling from source, users can optimize the system for their specific hardware, resulting in a faster and more efficient system.
Gentoo is designed to be secure by default, with a strong emphasis on user security and privacy. You know exactly what is installed and why.
Gentoo has a strong and active community known for its expertise and willingness to help. Detailed documentation in the Gentoo Handbook covers everything.
The Portage system allows users to easily manage and update their system with fine-grained control over USE flags, compile-time options, and system composition.