Language Selection

English French German Italian Portuguese Spanish

Vive La Desktop Difference!

Filed under
Software

The Free Agent e-mail box fills each month with notes from people who are brand new to Linux. It is great to hear from so many people who are trying out Free Software for the first time, but sometimes the mail is predictable.

For instance, this has appeared in my inbox dozens of times: "Should I use KDE or Gnome?" Oh, how I have grown weary of this question. (It's a perennial favorite on newsgroups and forums, too.) Not that it's stupid at all--it's actually a natural question for a user arriving from the land of commercial operating systems, where you don't have this sort of choice. "What? You mean I have two interfaces to choose from?" Yeah, something like that. (I'll not confuse anyone with lesser-known alternatives at the moment.)

So, KDE or Gnome? Not a stupid question--but in my mind, kind of a silly one. Car/computer analogies always hold up well, so let's try one here: If you, dear reader, wrote in asking whether I think you should drive a Mini Cooper or a Hummer, how should I respond? My best bet is to offer no opinion. I know nothing of your preferences or your needs. Either vehicle will get you where you want to go. The difference will be in the experience of getting there. It's the same deal with KDE and Gnome.

Linus Torvalds, the creator of the Linux kernel, recently raised a stir on a public mailing list with some inflammatory comments about the Gnome desktop. He wrote, in part: "This 'users are idiots, and are confused by functionality' mentality of Gnome is a disease. If you think your users are idiots, only idiots will use it. I don't use Gnome, because in striving to be simple, it has long since reached the point where it simply doesn't do what I need it to do. Please, just tell people to use KDE."

This is a classic straw-man argument. I've met more than a few Gnome developers, and I watch their online discussions unfold all the time; I'm here to tell you that they don't believe that "users are idiots, and are confused by functionality." But it sure makes them sound misguided when you frame things that way, doesn't it?

Full Article.

More in Tux Machines

KDE on Android: CI, CD & SDK

I guess we all agree that one of the biggest stoppers to get a contribution out is the ability to get the system ready to start working on the contribution. Today I want to talk a bit about generating Android binaries from our machine. In the KDE Edu sprint we had the blatant realisation that it’s very frustrating to keep pushing the project while not being swift at delivering fresh packages of our applications in different systems. We looked into windows, flatpak, snap and, personally, I looked into Android once again. Nowadays, KDE developers develop the applications on their systems and then create the binaries on their systems as well. Usually it’s a team effort where possibly just one person in the team will be familiar with Android and have the development combo in place: Android SDK, Android NDK, Qt binaries and often several KDE Frameworks precompiled. Not fun and a fairly complex premise. Read more Also:

today's howtos

Linux Kernel and Security: LVM2, Containers, AMD

  • LVM2 Begins Work On Major Changes To Logical Volume Management
    LVM2 as the user-space tools for Logical Volume Management (LVM) on Linux is in the process of going through a big re-work.
  • Containers and Cloud Security
    The idea behind this blog post is to take a new look at how cloud security is measured and what its impact is on the various actors in the cloud ecosystem. From the measurement point of view, we look at the vertical stack: all code that is traversed to provide a service all the way from input web request to database update to output response potentially contains bugs; the bug density is variable for the different components but the more code you traverse the higher your chance of exposure to exploitable vulnerabilities. We’ll call this the Vertical Attack Profile (VAP) of the stack. However, even this axis is too narrow because the primary actors are the cloud tenant and the cloud service provider (CSP). In an IaaS cloud, part of the vertical profile belongs to the tenant (The guest kernel, guest OS and application) and part (the hypervisor and host OS) belong to the CSP. However, the CSP vertical has the additional problem that any exploit in this piece of the stack can be used to jump into either the host itself or any of the other tenant virtual machines running on the host. We’ll call this exploit causing a failure of containment the Horizontal Attack Profile (HAP). We should also note that any Horizontal Security failure is a potentially business destroying event for the CSP, so they care deeply about preventing them. Conversely any exploit occurring in the VAP owned by the Tenant can be seen by the CSP as a tenant only problem and one which the Tenant is responsible for locating and fixing. We correlate size of profile with attack risk, so the large the profile the greater the probability of being exploited.
  • Canonical Releases AMD Microcode Updates for All Ubuntu Users to Fix Spectre V2
    Canonical released a microcode update for all Ubuntu users with AMD processors to address the well-known Spectre security vulnerability. The Spectre microprocessor side-channel vulnerabilities were publicly disclosed earlier this year and discovered to affect billions of devices made in the past two decades. Unearthed by Jann Horn of Google Project Zero, the second variant (CVE-2017-5715) of the Spectre vulnerability is described as a branch target injection attack.

Programming: 5 Pillars of Learning Programming, New Releases of Rust and Git

  • 5 Pillars of Learning Programming
    Learning how to program is hard. I often find that university courses and boot camps miss important aspects of programming and take poor approaches to teaching rookies. I want to share the 5 basic pillars I believe a successful programming course should build upon. As always, I am addressing the context of mainstream web applications. A rookie’s goal is to master the fundamentals of programming and to understand the importance of libraries and frameworks. Advanced topics such as the cloud, operations in general, or build tools should not be part of the curriculum. I am also skeptical when it comes to Design Patterns. They presume experience that beginners never have.
  • The Rust Programming Language Blog: Announcing Rust 1.27
    The Rust team is happy to announce a new version of Rust, 1.27.0. Rust is a systems programming language focused on safety, speed, and concurrency.
  • Rust 1.27 Released With SIMD Improvements
    Most notable to Rust 1.27 is SIMD support via the std::arch module to make use of SIMD (Single Instruction, Multiple Data) instructions directly. Up to now Rust could already make use of LLVM's auto-vectorization support, but this lets Rust developers write SIMD instructions on their own and to allow for the proper Rust code to be executed based upon the CPU at run-time.
  • Git 2.18 Released With Initial Version Of Its New Wire Protocol
    Version 2.18 of the Git distributed revision control system is now available. Arguably most notable about Git 2.18 is the introduction of its new wire protocol "protocol_v2" that is designed to offer much greater performance. This new protocol is designed to be much faster and is already being used at Google and elsewhere due to the significant performance benefits.
  • Git v2.18.0
    The latest feature release Git v2.18.0 is now available at the usual places. It is comprised of 903 non-merge commits since v2.17.0, contributed by 80 people, 24 of which are new faces.