Unixism https://unixism.net Of consoles and blinking cursors Tue, 01 Oct 2024 14:49:19 +0000 en-US hourly 1 https://wordpress.org/?v=6.8.5 157576625 Being Raised by the Internet https://unixism.net/2024/10/being-raised-by-the-internet/?utm_source=rss&utm_medium=rss&utm_campaign=being-raised-by-the-internet Tue, 01 Oct 2024 14:49:19 +0000 https://unixism.net/?p=699 From Jimmy Miller’s blog:

Starting at the age of 12, I was given $20 a week for my food. (If it was a good week. Otherwise it might $10 or even $0). During the school year that meant I just had to make that stretch for dinner and the weekends — I had free school lunch. But in the summer, that made things quite a bit harder. One week, I had only a few jars of sprinkles left in the top of our pantry.

When I did have money for food, I had to buy it. Luckily there were a few restaurants and a large grocery store about a half-mile walk away. I still remember the first time I made that trip alone. It was snowing, I didn’t have a heavy coat and my brother didn’t want to go with me. I was scared, but eventually gave into the hunger and went and bought something at the grocery store. From then on I found a new freedom.

[…]

Computers became my outlet away from all of this. In an effort to have more computer time to himself, my brother found a computer out by the dumpster, brought it in, and told me it was my computer now. I knew very little about computers at the time but I knew two things 1) I needed a wireless card. 2) I needed to get Windows ME off this thing (I didn’t know any of the passwords for the accounts). Luckily a kid at school and some people at church had mentioned Linux. I burned CDs for Fedora, CDs for Suse, but I couldn’t get either of them working. Then I learned about Ubuntu and their live CD. I got it working!
[…]

I am forever indebted to these people. They weren’t all famous people, nor successful people. Some of them had companies that failed. Some of their blogs were obscure and lost to time. (I doubt I will ever find the tutorial for making a website in flash+php+xml+mysql that I once followed). I’m sure some of them felt like failures. Perhaps they didn’t get rich like they hoped, or popular, or never succeeded in changing the world. But they all had one thing in common, they decided to openly and freely share their work.

They may not have set out to share out of altrusitic motivations. I am certain they never intended to inspire a 12 year-old kid to find a better life. But it doesn’t matter their motivations. They changed my life. All I can say is thank you. Thank you for sharing your work. Thank you for your blogs posts, your tutorials, thank you for your slashdot comments, for your posts on digg. No matter how small your contribution, it mattered to me. You changed my life. Thank you.

Be kind.

]]>
699
Real-time Linux is officially part of the kernel after decades of debate https://unixism.net/2024/09/real-time-linux-is-officially-part-of-the-kernel-after-decades-of-debate/?utm_source=rss&utm_medium=rss&utm_campaign=real-time-linux-is-officially-part-of-the-kernel-after-decades-of-debate Sat, 21 Sep 2024 13:14:10 +0000 https://unixism.net/?p=695 Kevin Purdy writing for Ars Technica:

If you wanted to use “Real-Time Linux” for your audio gear, your industrial welding laser, or your Mars rover, you have had that option for a long time (presuming you didn’t want to use QNX or other alternatives). Universities started making their own real-time kernels in the late 1990s. A patch set, PREEMPT_RT, has existed since at least 2005. And some aspects of the real-time work, like NO_HZ, were long ago moved into the mainline kernel, enabling its use in data centers, cloud computing, or anything with a lot of CPUs.

But officialness still matters, and in the 6.12 kernel, PREEMPT_RT will likely be merged into the mainline. As noted by Steven Vaughan-Nichols at ZDNet, the final sign-off by Linus Torvalds occurred while he was attending Open Source Summit Europe. Torvalds wrote the original code for printk, a debugging tool that can pinpoint exact moments where a process crashes, but also introduces latency that runs counter to real-time computing. The Phoronix blog has tracked the progress of PREEMPT_RT into the kernel, along with the printk changes that allowed for threaded/atomic console support crucial to real-time mainlining.

What does this mean for desktop Linux? Not much. Beyond high-end audio production or replication (and even that is debatable), a real-time kernel won’t likely make windows snappier or programs zippier. But the guaranteed execution and worst-case latency timings a real-time Linux provides are quite useful to, say, the systems that monitor car brakes, guide CNC machines, and regulate fiendishly complex multi-CPU systems. Having PREEMPT-RT in the mainline kernel makes it easier to maintain a real-time system, rather than tend to out-of-tree patches.

Fun inclusion for folks who deal with hardware that needs precise reaction times.

]]>
695
Windows NT vs. Unix: A design comparison https://unixism.net/2024/09/windows-nt-vs-unix-a-design-comparison/?utm_source=rss&utm_medium=rss&utm_campaign=windows-nt-vs-unix-a-design-comparison Wed, 11 Sep 2024 03:34:56 +0000 https://unixism.net/?p=692 From Julio Merino’s newsletter:

Over the years, I’ve repeatedly heard that Windows NT is a very advanced operating system and, being a Unix person myself, it has bothered me to not know why. I’ve been meaning to answer this question for years and I can do so now, which means I want to present you my findings.

My desire to know about NT’s internals started in 2006 when I applied to the Google Summer of Code program to develop Boost.Process. I needed such a library for ATF, but I also saw the project as a chance to learn something about the Win32 API. This journey then continued in 2020 with me choosing to join Microsoft after a long stint at Google and me buying the Windows Internals 5th edition book in 2021 (which I never fully read due to its incredible detail and length). None of these made me learn what I wanted though: the ways in which NT fundamentally differs from Unix, if at all.

[…]

NT was groundbreaking technology when it launched. As I presented above, many of the features we take for granted today in systems design were present in NT since its inception, whereas almost all other Unix systems had to gain those features slowly over time. As a result, such features don’t always integrate seamlessly with Unix philosophies.

Today, however, it’s not clear to me that NT is truly “more advanced” than, say, Linux or FreeBSD. It is true that NT had more solid design principles at the onset and more features that its contemporary operating systems, but nowadays… the differences are blurry. Yes, NT is advanced, but not significantly more so than modern Unixes.

What I find disappointing is that, even though NT has all these solid design principles in place… bloat in the UI doesn’t let the design shine through. The sluggishness of the OS even on super-powerful machines is painful to witness and might even lead to the demise of this OS.

Brilliant read for those of you interested in operating system design.

]]>
692
The Insecurity of Debian. https://unixism.net/2024/09/the-insecurity-of-debian/?utm_source=rss&utm_medium=rss&utm_campaign=the-insecurity-of-debian Sat, 07 Sep 2024 11:07:30 +0000 https://unixism.net/?p=690 From Unix.foo

In June of 2023 Red Hat made a controversial decision to change how they distribute the source code behind Red Hat Enterprise Linux (RHEL). There have been a lot of keyboards tapped angrily across social media that left many uncertain about the ramifications of the decision. There were many questions about the future viability of downstream rebuilds of RHEL affecting distributions like Rocky Linux, AlmaLinux, Oracle Linux, and others. Each have since made announcements to try and calm their communities.

Still. Many in the open source community have interpreted Red Hat’s decision for what it really was: A dick move.

There has been a steady uptick of people stating that they will migrate (or already have) to Debian – seeking refuge from what they see as greedy corporate influence. I understand the sentiment fully. However, there’s a problem here that I want to talk about: security.

The ugly truth is that security is hard. It’s tedious. Unpleasant. And requires a lot of work to get right.

Debian does not do enough here to protect users.

[…]

Debian, a stalwart of the open-source community, is revered for its stability and extensive software library. I am a fan and donate to the project every year (you should too!) even though I don’t run it in production environments.

However, its default security framework leaves much to be desired. Debian’s decision to enable AppArmor by default starting with version 10 signifies a positive step towards improved security, yet it falls short due to the half-baked implementation across the system.

Debian’s reliance on AppArmor and its default configurations reveals a systemic issue with its approach to security. While AppArmor is capable of providing robust security when properly configured, Debian’s out-of-the-box settings fail to leverage its full potential

A clear and concise critique of Debian’s approach to security as CentOS refugees continue to flock to it.

]]>
690
Elasticsearch is Open Source, Again https://unixism.net/2024/08/elasticsearch-is-open-source-again/?utm_source=rss&utm_medium=rss&utm_campaign=elasticsearch-is-open-source-again Fri, 30 Aug 2024 22:23:46 +0000 https://unixism.net/?p=687 Shay Banon writing on the Elastic blog:

[LOVE.] The tl;dr is that we will be adding AGPL as another license option next to ELv2 and SSPL in the coming weeks. We never stopped believing and behaving like an open source community after we changed the license. But being able to use the term Open Source, by using AGPL, an OSI approved license, removes any questions, or fud, people might have.

[Not Like Us] We never stopped believing in Open Source at Elastic. I never stopped believing in Open Source. I’m going on 25 years and counting as a true believer. So why the change 3 years ago? We had issues with AWS and the market confusion their offering was causing. So after trying all the other options we could think of, we changed the license, knowing it would result in a fork of Elasticsearch with a different name and a different trajectory. It’s a long story.

[Like That] The good news is that while it was painful, it worked. 3 years later, Amazon is fully invested in their fork, the market confusion has been (mostly) resolved, and our partnership with AWS is stronger than ever. We were even named AWS partner of the year. I had always hoped that enough time would pass that we could feel safe to get back to being an Open Source project – and it finally has.

Cloud companies were making open source licensing for infrastructure software pretty non-viable. Here’s a story with a slightly happy ending.

]]>
687
the art of programming and why i won’t use llm https://unixism.net/2024/08/the-art-of-programming-and-why-i-wont-use-llm/?utm_source=rss&utm_medium=rss&utm_campaign=the-art-of-programming-and-why-i-wont-use-llm Tue, 27 Aug 2024 20:50:15 +0000 https://unixism.net/?p=685 From Kenneth Nym’s blog:

using llm to write code is like asking an artist to paint for you. if you only want the end result, by all means! if you are like me who enjoy the process of painting, then why would you bother automating the fun part away? one may say, “but i am only using llm to write code. i am still doing the problem solving myself!”. to me, programming isn’t complete if i don’t get to express the solution in code myself. it isn’t my art if i don’t create it myself.

I love driving. But it’s hard to believe that human-driven cars have a place in the future. In the same vein, I love programming as well. But, well.

]]>
685
Did you lose your AirPods? https://unixism.net/2024/08/did-you-lose-your-airpods/?utm_source=rss&utm_medium=rss&utm_campaign=did-you-lose-your-airpods Sun, 25 Aug 2024 13:05:28 +0000 https://unixism.net/?p=682 From Alex Yancey’s blog:

A friend found some AirPods on the ground and tapped them to his phone, revealing only the serial number and the last four digits of the owner’s number. He turned to me for help.

Light story on how the ability to program can be a superpower.

]]>
682
Linux Market Share Reaches New Peak https://unixism.net/2024/08/linux-market-share-reaches-new-peak/?utm_source=rss&utm_medium=rss&utm_campaign=linux-market-share-reaches-new-peak Sat, 24 Aug 2024 01:11:20 +0000 https://unixism.net/?p=679 Senthilkumar Palani writing for OSTechNix:

The Linux operating system has reached a notable milestone in desktop market share, according to the latest data from StatCounter. As of July 2024, Linux has achieved a 4.45% market share for desktop operating systems worldwide.

[…]

This data reveals some interesting patterns:

  1. Linux started the period at 3.12% and ended at a peak of 4.45%, showing overall growth.
  2. There was a noticeable jump between November and December 2023, from 3.22% to 3.83%.
  3. The 4% threshold was first crossed in February 2024.
  4. Despite some fluctuations, the general trend has been upward, with July 2024 marking the highest point.

These numbers represent millions of users worldwide choosing Linux as their primary desktop operating system, indicating a growing interest in open-source alternatives.

What’s probably making it easy for Linux here is the fact that the real operating system for most “apps” that people actually use, is the browser. The underlying operating system (Linux/macOS/Windows) is just the device driver for whatever hardware that’s running the browser. That is—at least for most people. Nevertheless, the trend upward is super clear and that is just great to see!

]]>
679
Archiving “The Famous Computer Cafe” https://unixism.net/2024/08/archiving-the-famous-computer-cafe/?utm_source=rss&utm_medium=rss&utm_campaign=archiving-the-famous-computer-cafe Wed, 21 Aug 2024 01:47:13 +0000 https://unixism.net/?p=676 Kay Savetz on The Internet Archive’s blog:

The Internet Archive is now home to 53 episodes of The Famous Computer Cafe, a 1980s radio show about the new world of home computers. The program included computer industry news, product reviews, and interviews, and aired from 1983 through 1986 on radio stations in southern and central California.

The creators of The Famous Computer Cafe saved every episode on reel-to-reel tapes, but over the years the tapes were forgotten, and, ultimately, lost. Earlier this year archivist Kay Savetz recovered several of the tapes in a property sale, and recognizing their value and worthiness of professional transfer, launched a GoFundMe to have them digitized, and made them available at Internet Archive with the permission of the show’s creators.

While full of time-capsule descriptions of 1980s technology news, the most exciting aspect of the show has been the variety and uniqueness of the interviews. The list of people that the show interviewed is a who’s-who of tech luminaries of the 1980s: computer people, musicians, publishers, philosophers, journalists. Interviews in the recovered recordings include Timothy LearyDouglas AdamsBill Gates, Atari’s Jack Tramiel, Apple’s Bill Atkinson, and dozens of others. The recovered shows span November 17 1984 through July 12, 1985.

Brilliant.

]]>
676
Leaving Neovim for Zed https://unixism.net/2024/08/leaving-neovim-for-zed/?utm_source=rss&utm_medium=rss&utm_campaign=leaving-neovim-for-zed Wed, 21 Aug 2024 01:07:55 +0000 https://unixism.net/?p=674 From Steve Simkin’s blog:

Every now and then I would update a plugin in Neovim and everything would break, and I would have to spend time fixing it instead of getting work done. This resulted in slimming down my config more and more, but there was still so much that went into making all the basics work. I stuck with it because it was still better than using VSCode, which I did try for a two week sprint to see if it could be any better. It was also key to a terminal based workflow that other editors couldn’t really match.

The sentiment started to shift again not too long ago as I started working in some really large code bases, and boy Neovim was struggling. I would have random hang ups, frozen screens, stuff that just drove me nuts when productivity was king. I tried switching to other terminal emulators too such as Alacritty and Wezterm but it didn’t help much.

This is when Zed came back into my sights. I heard about it months before and even gave it a shot back then, but didn’t stick with it because it wasn’t a terminal workflow. However it boasted as being fast, and I decided it was worth another shot. Two months later and I’ve been daily driving it since. I wasn’t sure if it would really hold up, but I can say now it has been an amazing experience and I don’t see myself going back.

If you’re looking for a Nvim replacement, Zed ain’t it:

You can probably gather so far that I’m a huge Zed fan, however I will say it’s not a 1/1 replacement to Neovim. What makes Neovim so special is that it’s native to the terminal. Whenever I need to edit a configuration file for an app or just edit something really quickly while I’m already navigating in a terminal, nothing beats the convenience of whipping out Neovim. Opening Zed for every single file like that would get exhausting, but for longer term sessions or projects it’s perfect. If you compare to motorcycles, Neovim is my dirt bike and Zed is my cruiser.

Should you use Zed:

If you’re still on the fence of trying Zed I would say it’s at least worth giving it a shot for a few days. In my experience so far it’s a unique and capable text editor, but ultimately I vouch for anything that makes you more productive. That might end up being VS Code or Jetbrains or hell maybe even EMacs. Do what’s best for you, but don’t be too stubborn to try something new.

Modern IDEs can hardly be called minimalistic just because modern development is’t minimalistic. But the genius of Zed was to take the most popular “plugins” that most engineers use anyways and integrate it right into the editor in an opinionated way. Depending on how much you like or don’t like these built in integrations, YMMV. But, Zed is something you should not ignore.

]]>
674