<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Daniel Cosenza&apos;s Blog</title><description>Deep technical notes on operating systems, virtualization, and cloud-native infrastructure — kernels, filesystems, emulation, and the history behind the tools that keep systems running.</description><link>https://danielcosenza.com</link><language>en-us</language><item><title>How to Use a TUI Git Client</title><link>https://danielcosenza.com/posts/sh-howto-tui-git-client</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-howto-tui-git-client</guid><description>A complete walkthrough setting up a terminal-based git interface — staging, committing, browsing history, and resolving conflicts visually, without leaving the keyboard or the terminal.</description><pubDate>Thu, 24 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>howto</category><category>git</category><category>tui</category></item><item><title>How to Debug Shell Scripts With set -x and ShellCheck</title><link>https://danielcosenza.com/posts/sh-howto-debug-shellcheck</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-howto-debug-shellcheck</guid><description>A complete walkthrough of the two genuinely essential shell scripting debugging tools — one that traces exactly what a script actually executes, and one that catches whole categories of bugs before the script ever runs.</description><pubDate>Wed, 23 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>howto</category><category>debugging</category><category>shellcheck</category><category>bash</category></item><item><title>How to Set Up Shell Aliases and Functions Properly</title><link>https://danielcosenza.com/posts/sh-howto-aliases-functions</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-howto-aliases-functions</guid><description>A complete walkthrough of the actual difference between an alias and a function, when each one is the right tool, and how to avoid the specific mistakes that make aliases behave unpredictably.</description><pubDate>Tue, 22 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>howto</category><category>aliases</category><category>functions</category><category>bash</category></item><item><title>How to Use screen as a Session-Persistence Tool</title><link>https://danielcosenza.com/posts/sh-howto-screen-multiplexer</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-howto-screen-multiplexer</guid><description>A complete walkthrough of GNU screen — older and less feature-rich than tmux, but still genuinely useful, and often already pre-installed on systems where tmux isn&apos;t.</description><pubDate>Mon, 21 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>howto</category><category>screen</category><category>multiplexing</category></item><item><title>How to Configure Windows Terminal for Use With WSL</title><link>https://danielcosenza.com/posts/sh-howto-windows-terminal-wsl</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-howto-windows-terminal-wsl</guid><description>A complete walkthrough setting up Windows Terminal specifically for a smooth WSL experience — default profile, font, and the settings that most commonly need adjusting.</description><pubDate>Sun, 20 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>howto</category><category>windows-terminal</category><category>wsl</category></item><item><title>How to Set Up a TUI System Monitor</title><link>https://danielcosenza.com/posts/sh-howto-tui-system-monitor</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-howto-tui-system-monitor</guid><description>A complete walkthrough installing and configuring a full-screen terminal system monitor — real-time CPU, memory, and process information, entirely keyboard-driven, without leaving the terminal.</description><pubDate>Sat, 19 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>howto</category><category>tui</category><category>system-monitoring</category></item><item><title>How to Write Robust, Portable POSIX Shell Scripts</title><link>https://danielcosenza.com/posts/sh-howto-posix-scripting</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-howto-posix-scripting</guid><description>A complete walkthrough writing shell scripts that run correctly under any POSIX-compliant shell — not just whichever one happens to be installed on your own development machine.</description><pubDate>Fri, 18 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>howto</category><category>posix</category><category>scripting</category><category>portability</category></item><item><title>How to Use fzf for Fuzzy Finding in the Shell</title><link>https://danielcosenza.com/posts/sh-howto-fzf-fuzzy-finder</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-howto-fzf-fuzzy-finder</guid><description>A complete walkthrough setting up fzf — a general-purpose fuzzy finder that plugs into history search, file finding, and practically any list-based shell workflow you can pipe text into.</description><pubDate>Thu, 17 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>howto</category><category>fzf</category><category>fuzzy-finder</category></item><item><title>How to Configure a Custom Prompt With Starship</title><link>https://danielcosenza.com/posts/sh-howto-starship-prompt</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-howto-starship-prompt</guid><description>A complete walkthrough installing Starship — a fast, shell-agnostic prompt that works identically across Bash, Zsh, and fish — and configuring exactly which information it shows.</description><pubDate>Wed, 16 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>howto</category><category>starship</category><category>prompt</category></item><item><title>How to Set Up Zsh With Oh My Zsh</title><link>https://danielcosenza.com/posts/sh-howto-zsh-oh-my-zsh-setup</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-howto-zsh-oh-my-zsh-setup</guid><description>A complete walkthrough installing Zsh as your shell, setting up Oh My Zsh, and configuring a theme and a first useful plugin — from a completely default shell to a genuinely productive one.</description><pubDate>Tue, 15 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>howto</category><category>zsh</category><category>oh-my-zsh</category></item><item><title>How to Install and Use a TUI File Manager</title><link>https://danielcosenza.com/posts/sh-howto-tui-file-manager</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-howto-tui-file-manager</guid><description>A complete walkthrough setting up a terminal-based file manager — navigating, previewing, and manipulating files entirely with the keyboard, without ever leaving the terminal.</description><pubDate>Mon, 14 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>howto</category><category>tui</category><category>file-manager</category></item><item><title>How to Set Up and Use tmux for Terminal Multiplexing</title><link>https://danielcosenza.com/posts/sh-howto-tmux-multiplexing</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-howto-tmux-multiplexing</guid><description>A complete walkthrough running multiple shell sessions inside one terminal window, splitting panes, and — most importantly — keeping sessions alive across disconnects.</description><pubDate>Sun, 13 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>howto</category><category>tmux</category><category>multiplexing</category></item><item><title>Fixing Wrong or Missing Colors in Windows Terminal When Using WSL</title><link>https://danielcosenza.com/posts/sh-fix-wsl-terminal-colors</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-fix-wsl-terminal-colors</guid><description>Your shell prompt, ls output, or a TUI app shows the wrong colors, garbled characters, or no colors at all specifically inside Windows Terminal connected to WSL — even though the exact same shell config looks fine over plain SSH.</description><pubDate>Sat, 12 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>fix</category><category>wsl</category><category>windows-terminal</category><category>colors</category></item><item><title>Fixing &apos;Broken Pipe&apos; Errors in Shell Scripts and Pipelines</title><link>https://danielcosenza.com/posts/sh-fix-broken-pipe-sigpipe</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-fix-broken-pipe-sigpipe</guid><description>A command in the middle of a pipeline suddenly dies with a &apos;Broken pipe&apos; error, sometimes only when piped into head or a similar early-exiting command. This is a specific, well-defined signal, not a random failure.</description><pubDate>Fri, 11 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>fix</category><category>pipes</category><category>signals</category><category>scripting</category></item><item><title>Fixing Shell History That Doesn&apos;t Persist or Save Correctly</title><link>https://danielcosenza.com/posts/sh-fix-history-not-persisting</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-fix-history-not-persisting</guid><description>Commands from an earlier session seem to vanish, or history from multiple open terminals overwrites itself instead of combining. Here&apos;s how history file writing actually works, and the specific settings that fix each symptom.</description><pubDate>Thu, 10 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>fix</category><category>history</category><category>bash</category><category>zsh</category></item><item><title>Fixing tmux Keybinding Conflicts With Your Terminal or Shell</title><link>https://danielcosenza.com/posts/sh-fix-tmux-keybinding-conflicts</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-fix-tmux-keybinding-conflicts</guid><description>A keyboard shortcut that works fine outside tmux does something completely different — or nothing at all — once you&apos;re inside a tmux session. Here&apos;s how the prefix key and multiple layers of keybindings actually interact.</description><pubDate>Wed, 09 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>fix</category><category>tmux</category><category>keybindings</category><category>troubleshooting</category></item><item><title>Fixing SSH Sessions That Don&apos;t Know the Terminal&apos;s Actual Size</title><link>https://danielcosenza.com/posts/sh-fix-ssh-terminal-size</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-fix-ssh-terminal-size</guid><description>TUI applications render broken or clipped over SSH, or your terminal doesn&apos;t rewrap correctly after resizing the window. The remote shell has a stale idea of your terminal&apos;s dimensions — here&apos;s how that actually gets synced.</description><pubDate>Tue, 08 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>fix</category><category>ssh</category><category>terminal</category><category>tmux</category></item><item><title>Fixing a Broken Prompt Theme After an Update</title><link>https://danielcosenza.com/posts/sh-fix-broken-prompt-theme</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-fix-broken-prompt-theme</guid><description>Your carefully configured prompt suddenly shows broken characters, missing icons, or throws errors on every new shell after updating a theme or framework. Here&apos;s how to isolate whether it&apos;s a font, config, or version issue.</description><pubDate>Mon, 07 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>fix</category><category>prompt</category><category>zsh</category><category>troubleshooting</category></item><item><title>Fixing &apos;Command Not Found&apos; Right After Installing Something</title><link>https://danielcosenza.com/posts/sh-fix-command-not-found-path</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-fix-command-not-found-path</guid><description>You just installed a tool, its binary is definitely on disk, but your shell insists it doesn&apos;t exist. This is almost always a PATH problem, and there are only a few actual explanations for it.</description><pubDate>Sun, 06 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>fix</category><category>path</category><category>troubleshooting</category><category>bash</category></item><item><title>Fixing Slow Shell Startup Time in Bash or Zsh</title><link>https://danielcosenza.com/posts/sh-fix-slow-shell-startup</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-fix-slow-shell-startup</guid><description>Opening a new terminal tab takes a visibly annoying second or two before you get a prompt. Here&apos;s how to actually find which specific line in your config is responsible, rather than guessing.</description><pubDate>Sat, 05 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>fix</category><category>performance</category><category>bash</category><category>zsh</category></item><item><title>Fixing a Terminal That Shows Garbled Output or Invisible Text</title><link>https://danielcosenza.com/posts/sh-fix-garbled-terminal-output</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-fix-garbled-terminal-output</guid><description>You accidentally catted a binary file and now your terminal shows strange characters, wrong colors, or doesn&apos;t echo what you type. The shell is fine — the terminal&apos;s display state is what actually broke.</description><pubDate>Fri, 04 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>fix</category><category>terminal</category><category>stty</category><category>troubleshooting</category></item><item><title>What Makes a Terminal &apos;TUI-Capable&apos;: ncurses, terminfo, and Raw Mode</title><link>https://danielcosenza.com/posts/sh-tui-ncurses</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-tui-ncurses</guid><description>Full-screen terminal applications like htop and vim don&apos;t just print text — they take over the entire screen, redraw parts of it selectively, and read your keystrokes one at a time. Here&apos;s the layer that makes that possible.</description><pubDate>Fri, 04 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>deep-dive</category><category>tui</category><category>ncurses</category><category>terminal</category></item><item><title>History Expansion and Search: How !!, Ctrl-R, and Shell History Files Actually Work</title><link>https://danielcosenza.com/posts/sh-history-search</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-history-search</guid><description>Re-running the last command with sudo, or fuzzy-searching back through everything you&apos;ve typed today, both rely on the same underlying mechanism — a persisted, indexed log of your previous commands.</description><pubDate>Thu, 03 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>deep-dive</category><category>history</category><category>bash</category><category>zsh</category></item><item><title>Robby Russell Releases Oh My Zsh to Share His Own Config With Coworkers</title><link>https://danielcosenza.com/posts/sh-news-oh-my-zsh-created</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-news-oh-my-zsh-created</guid><description>Born August 28, 2009 as a way to get his own team using Zsh, Oh My Zsh grew into the most widely used Zsh configuration framework — with its original robbyrussell theme still recognizable to millions of terminal users today.</description><pubDate>Thu, 03 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>news</category><category>zsh</category><category>oh-my-zsh</category></item><item><title>Ubuntu Adopts Dash as Default /bin/sh, Exposing Bashisms Everywhere</title><link>https://danielcosenza.com/posts/sh-news-ubuntu-dash-default</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-news-ubuntu-dash-default</guid><description>Ubuntu 6.10 switched its default /bin/sh from Bash to the much stricter Dash in October 2006, purely for faster boot-time script execution — and immediately surfaced years of accumulated non-portable shell scripts across the ecosystem.</description><pubDate>Wed, 02 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>news</category><category>dash</category><category>ubuntu</category><category>posix</category></item><item><title>Shell Scripting Pitfalls: Quoting, Word Splitting, and Why $var Isn&apos;t Always Safe</title><link>https://danielcosenza.com/posts/sh-quoting-pitfalls</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-quoting-pitfalls</guid><description>An unquoted variable works fine in testing, then silently breaks in production the first time it holds a value with a space in it. This is the single most common category of real-world shell scripting bug.</description><pubDate>Wed, 02 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>deep-dive</category><category>quoting</category><category>scripting</category><category>bash</category></item><item><title>Apple Makes Zsh the Default Shell in macOS Catalina</title><link>https://danielcosenza.com/posts/sh-news-macos-zsh-default</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-news-macos-zsh-default</guid><description>Announced June 4, 2019, the switch from Bash to Zsh as macOS&apos;s default shell traced back to a licensing constraint, not a technical judgment about which shell was better — Apple was stuck on an old, GPLv2 Bash version indefinitely.</description><pubDate>Tue, 01 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>news</category><category>macos</category><category>zsh</category><category>apple</category></item><item><title>How Tab Completion Actually Works in Bash and Zsh</title><link>https://danielcosenza.com/posts/sh-tab-completion</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-tab-completion</guid><description>Pressing Tab and getting a sensible list of filenames, commands, or flags looks simple from the outside. Underneath, it&apos;s a programmable system matching the word you&apos;re typing against rules specific to the command you&apos;re running.</description><pubDate>Tue, 01 Sep 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>deep-dive</category><category>completion</category><category>bash</category><category>zsh</category></item><item><title>Fish Ships as a Shell That Deliberately Breaks From POSIX</title><link>https://danielcosenza.com/posts/sh-news-fish-released</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-news-fish-released</guid><description>Released February 13, 2005 by Swedish developer Axel Liljencrantz, Fish chose sensible-by-default behavior and built-in syntax highlighting over POSIX compatibility — a genuinely different bet than Bash or Zsh made.</description><pubDate>Mon, 31 Aug 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>news</category><category>fish</category><category>history</category></item><item><title>Terminal Emulators vs. Shells: What Each One Actually Does</title><link>https://danielcosenza.com/posts/sh-terminal-emulator</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-terminal-emulator</guid><description>&apos;Terminal&apos; and &apos;shell&apos; get used interchangeably constantly, but they&apos;re genuinely separate programs with separate jobs — one draws characters on screen and manages input, the other interprets commands.</description><pubDate>Mon, 31 Aug 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>deep-dive</category><category>terminal</category><category>pty</category><category>shell</category></item><item><title>Bash 4.0 Ships With Associative Arrays and Coprocesses</title><link>https://danielcosenza.com/posts/sh-news-bash-4-released</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-news-bash-4-released</guid><description>Announced by maintainer Chet Ramey on February 20, 2009, Bash 4.0 added key-value associative arrays and several other features that had been requested by scripters for years.</description><pubDate>Sun, 30 Aug 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>news</category><category>bash</category><category>release</category></item><item><title>How Shell Prompt Customization Actually Works</title><link>https://danielcosenza.com/posts/sh-prompt-customize</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-prompt-customize</guid><description>That colorful prompt showing your git branch, exit code, and current directory isn&apos;t a separate program running alongside your shell — it&apos;s a string your shell re-evaluates before every single command.</description><pubDate>Sun, 30 Aug 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>deep-dive</category><category>prompt</category><category>bash</category><category>zsh</category></item><item><title>Job Control: How Shells Manage Foreground and Background Processes</title><link>https://danielcosenza.com/posts/sh-job-control</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-job-control</guid><description>Ctrl-Z, bg, fg, and the &amp; at the end of a command all touch the same underlying mechanism — a shell feature that manages which processes can read your keyboard input at any given moment.</description><pubDate>Sat, 29 Aug 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>deep-dive</category><category>job-control</category><category>processes</category><category>signals</category></item><item><title>Shellshock: A 25-Year-Old Bash Bug Becomes a Global Emergency Patch</title><link>https://danielcosenza.com/posts/sh-news-shellshock</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-news-shellshock</guid><description>Disclosed on September 24, 2014, the Shellshock vulnerability let attackers execute arbitrary commands through a flaw in how Bash processed environment variables — and botnets were scanning for vulnerable systems within hours.</description><pubDate>Sat, 29 Aug 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>news</category><category>bash</category><category>security</category><category>shellshock</category></item><item><title>Bill Joy&apos;s C Shell Ships as Part of 2BSD, Introducing Command History</title><link>https://danielcosenza.com/posts/sh-news-csh-2bsd</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-news-csh-2bsd</guid><description>Distributed starting with the second Berkeley Software Distribution in 1979, Bill Joy&apos;s C shell introduced features — command history, aliases, filename completion — that nearly every shell since has copied in some form.</description><pubDate>Fri, 28 Aug 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>news</category><category>csh</category><category>bsd</category><category>history</category></item><item><title>tcsh and csh: Why FreeBSD&apos;s Shell Heritage Isn&apos;t POSIX</title><link>https://danielcosenza.com/posts/sh-tcsh-freebsd</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-tcsh-freebsd</guid><description>FreeBSD&apos;s default shells didn&apos;t evolve from the Bourne shell lineage Bash and Zsh belong to — they descend from an entirely separate design philosophy, one built to feel more like C than like a scripting language.</description><pubDate>Fri, 28 Aug 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>deep-dive</category><category>tcsh</category><category>csh</category><category>freebsd</category></item><item><title>How Shell Expansion and Globbing Actually Work</title><link>https://danielcosenza.com/posts/sh-expansion-globbing</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-expansion-globbing</guid><description>By the time a command you typed actually runs, the shell has already rewritten it — expanding variables, substituting command output, and turning wildcard patterns into real filenames. Here&apos;s the exact order that happens in.</description><pubDate>Thu, 27 Aug 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>deep-dive</category><category>bash</category><category>globbing</category><category>expansion</category></item><item><title>Paul Falstad Releases Zsh, Combining Ideas From ksh, tcsh, and rc</title><link>https://danielcosenza.com/posts/sh-news-zsh-created</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-news-zsh-created</guid><description>Posted to the alt.sources Usenet newsgroup by a Princeton student in 1990, Zsh combined the strongest interactive features of several existing shells — and, decades later, would become the default shell on macOS.</description><pubDate>Thu, 27 Aug 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>news</category><category>zsh</category><category>history</category></item><item><title>The History of the Unix Shell: From Thompson Shell to Bash and Zsh</title><link>https://danielcosenza.com/posts/sh-history</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-history</guid><description>Every shell in daily use today — Bash, Zsh, tcsh, fish — descends from a lineage that started with a genuinely minimal 1971 command interpreter, branching twice into distinct, still-visible family trees.</description><pubDate>Wed, 26 Aug 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>history</category><category>unix</category><category>bash</category><category>zsh</category></item><item><title>Brian Fox Releases Bash, a Free Alternative to Proprietary Unix Shells</title><link>https://danielcosenza.com/posts/sh-news-bash-released</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-news-bash-released</guid><description>Released as beta version .99 on June 8, 1989, Bash was built for the GNU Project as a genuinely free replacement for the Bourne shell — and would eventually become the default shell on more systems than any of the proprietary shells it set out to replace.</description><pubDate>Wed, 26 Aug 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>news</category><category>bash</category><category>gnu</category><category>history</category></item><item><title>Bash vs. Zsh vs. sh: What Actually Differs Between POSIX Shells</title><link>https://danielcosenza.com/posts/sh-posix-compare</link><guid isPermaLink="true">https://danielcosenza.com/posts/sh-posix-compare</guid><description>They all accept most of the same basic commands, which is exactly what makes their real differences easy to miss until a script written for one breaks silently on another.</description><pubDate>Wed, 26 Aug 2026 00:00:00 GMT</pubDate><category>Shell &amp; Terminal</category><category>deep-dive</category><category>bash</category><category>zsh</category><category>posix</category></item><item><title>How to Compact a WSL2 Virtual Disk to Reclaim Disk Space</title><link>https://danielcosenza.com/posts/wsl-howto-compact-vhdx</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-compact-vhdx</guid><description>A complete walkthrough shrinking a WSL2 distro&apos;s .vhdx file back down after deleting large amounts of data — the specific diskpart steps that actually reclaim the space Windows doesn&apos;t release automatically.</description><pubDate>Tue, 25 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>wsl2</category><category>disk-space</category><category>vhdx</category></item><item><title>How to Use VS Code with WSL via the Remote-WSL Extension</title><link>https://danielcosenza.com/posts/wsl-howto-vscode-remote</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-vscode-remote</guid><description>A complete walkthrough editing and debugging code that lives inside your WSL distro, using a Windows-installed VS Code, without ever copying files to the Windows side or fighting cross-filesystem performance.</description><pubDate>Mon, 24 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>vscode</category><category>wsl2</category><category>development</category></item><item><title>How to Back Up and Restore a WSL Distro</title><link>https://danielcosenza.com/posts/wsl-howto-backup-restore-distro</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-backup-restore-distro</guid><description>A complete walkthrough exporting a WSL distro&apos;s entire state to a portable file, and restoring it later — on the same machine after a problem, or on an entirely different machine.</description><pubDate>Sun, 23 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>wsl2</category><category>backup</category><category>migration</category></item><item><title>How to Configure and Switch WSL2&apos;s Networking Mode</title><link>https://danielcosenza.com/posts/wsl-howto-networking-mode</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-networking-mode</guid><description>A complete walkthrough switching between WSL2&apos;s default NAT networking and mirrored networking mode — and how to verify which one actually solves your specific reachability problem.</description><pubDate>Sat, 22 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>wsl2</category><category>networking</category><category>configuration</category></item><item><title>How to Set Up Docker with the WSL2 Backend</title><link>https://danielcosenza.com/posts/wsl-howto-docker-setup</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-docker-setup</guid><description>A complete walkthrough getting Docker Desktop configured to use WSL2 as its backend, integrating specific distros, and verifying containers actually run using WSL2&apos;s real Linux kernel rather than a separate VM.</description><pubDate>Fri, 21 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>docker</category><category>wsl2</category><category>containers</category></item><item><title>How to Enable systemd in WSL2</title><link>https://danielcosenza.com/posts/wsl-howto-enable-systemd</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-enable-systemd</guid><description>A complete walkthrough turning on systemd support in a WSL2 distro — configuration, the required restart, and verifying services actually manage correctly afterward.</description><pubDate>Thu, 20 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>wsl2</category><category>systemd</category><category>configuration</category></item><item><title>How to Run Linux GUI Applications on Windows with WSLg</title><link>https://danielcosenza.com/posts/wsl-howto-run-gui-apps</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-run-gui-apps</guid><description>A complete walkthrough installing and running a graphical Linux application directly on your Windows desktop — no separate X server setup, no remote desktop session, just a window that opens like any other.</description><pubDate>Wed, 19 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>wslg</category><category>gui</category><category>linux</category></item><item><title>How to Set Up GPU-Accelerated CUDA Workloads in WSL2</title><link>https://danielcosenza.com/posts/wsl-howto-gpu-cuda-setup</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-gpu-cuda-setup</guid><description>A complete walkthrough getting an NVIDIA GPU working for CUDA-accelerated machine learning workloads inside WSL2 — driver setup, verification, and running an actual PyTorch or TensorFlow workload against it.</description><pubDate>Tue, 18 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>wsl2</category><category>cuda</category><category>gpu</category><category>machine-learning</category></item><item><title>How to Access Files Between Windows and WSL Correctly</title><link>https://danielcosenza.com/posts/wsl-howto-file-access-windows-linux</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-file-access-windows-linux</guid><description>A complete walkthrough of both directions of file access — reaching Windows files from Linux, and Linux files from Windows — plus the performance-driven rule for deciding where a given project&apos;s files should actually live.</description><pubDate>Mon, 17 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>wsl2</category><category>filesystem</category><category>files</category></item><item><title>How to Explore Historically Significant Source Code Directly</title><link>https://danielcosenza.com/posts/th-howto-explore-source-code-history</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-howto-explore-source-code-history</guid><description>A complete walkthrough finding and actually reading the original source code behind major moments in computing history — Netscape&apos;s original browser, early Unix, and other codebases released or leaked into the historical record.</description><pubDate>Sun, 16 Aug 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>howto</category><category>source-code</category><category>open-source</category><category>research</category></item><item><title>How to Configure WSL2 Resource Limits with .wslconfig</title><link>https://danielcosenza.com/posts/wsl-howto-wslconfig-resource-limits</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-wslconfig-resource-limits</guid><description>A complete walkthrough of the global .wslconfig file — setting memory, CPU, swap, and networking behavior for every WSL2 distro on your machine from one central configuration file.</description><pubDate>Sun, 16 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>wsl2</category><category>wslconfig</category><category>configuration</category></item><item><title>How to Preserve Old Software and Media Yourself</title><link>https://danielcosenza.com/posts/th-howto-preserve-old-software</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-howto-preserve-old-software</guid><description>A complete walkthrough of the practical steps for personally preserving old floppy disks, cartridges, and software before physical media degrades past the point of recovery — imaging, verifying, and archiving properly.</description><pubDate>Sat, 15 Aug 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>howto</category><category>preservation</category><category>archiving</category><category>digitization</category></item><item><title>How to Install and Manage Multiple Linux Distros in WSL</title><link>https://danielcosenza.com/posts/wsl-howto-multiple-distros</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-multiple-distros</guid><description>A complete walkthrough running several separate Linux distros side by side under WSL — installing additional distros, switching between them, and setting a specific one as your default.</description><pubDate>Sat, 15 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>wsl</category><category>distros</category><category>multi-distro</category></item><item><title>How to Trace a Technology&apos;s Lineage Through Patents and Standards Documents</title><link>https://danielcosenza.com/posts/th-howto-trace-patents-standards</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-howto-trace-patents-standards</guid><description>A complete walkthrough using patent filings and formal standards documents as primary sources for tracing who actually built what first — the same kind of evidence that settled the ENIAC/ABC dispute in court.</description><pubDate>Fri, 14 Aug 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>howto</category><category>patents</category><category>standards</category><category>research</category></item><item><title>How WSL2&apos;s Virtual Disk Actually Grows (and Why It Won&apos;t Shrink on Its Own)</title><link>https://danielcosenza.com/posts/wsl-disk-virtualization</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-disk-virtualization</guid><description>Each WSL2 distro&apos;s filesystem lives inside a dynamically-expanding .vhdx file on your Windows drive. It grows automatically as you use it — but deleting files inside WSL doesn&apos;t shrink it back down, and that&apos;s expected, not a bug.</description><pubDate>Fri, 14 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>deep-dive</category><category>wsl2</category><category>disk</category><category>vhdx</category></item><item><title>How to Install WSL on Windows</title><link>https://danielcosenza.com/posts/wsl-howto-install</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-install</guid><description>A complete walkthrough getting WSL2 and a Linux distro running from a clean Windows installation — the single-command path, and what to check if it doesn&apos;t work cleanly the first time.</description><pubDate>Fri, 14 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>wsl</category><category>installation</category><category>windows</category></item><item><title>How to Get the Most Out of a Visit to a Computer History Museum</title><link>https://danielcosenza.com/posts/th-howto-visit-computer-history-museum</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-howto-visit-computer-history-museum</guid><description>A complete walkthrough preparing for and navigating a real or virtual visit to a computing history museum — what to look for, which institutions maintain the strongest collections, and how to use their digital archives remotely.</description><pubDate>Thu, 13 Aug 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>howto</category><category>museums</category><category>preservation</category><category>research</category></item><item><title>Fixing a WSL2 Virtual Disk That Won&apos;t Shrink After Deleting Files</title><link>https://danielcosenza.com/posts/wsl-fix-vhdx-disk-not-shrinking</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-fix-vhdx-disk-not-shrinking</guid><description>You deleted gigabytes of files inside a WSL distro, but your Windows C: drive shows no space freed up at all. This is expected dynamic-VHD behavior, not a bug — and it has a specific, direct fix.</description><pubDate>Thu, 13 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>fix</category><category>wsl2</category><category>disk-space</category><category>vhdx</category></item><item><title>How GPU Compute Actually Reaches WSL2&apos;s Linux Environment</title><link>https://danielcosenza.com/posts/wsl-gpu-compute</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-gpu-compute</guid><description>Training a machine learning model inside WSL2 using your actual GPU sounds like it shouldn&apos;t work through a virtual machine layer at all. Here&apos;s the specific virtualized GPU mechanism that makes it possible.</description><pubDate>Thu, 13 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>deep-dive</category><category>wsl2</category><category>gpu</category><category>cuda</category></item><item><title>WSL Reaches 1.0 as a Standalone Microsoft Store App</title><link>https://danielcosenza.com/posts/wsl-news-store-ga</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-news-store-ga</guid><description>WSL dropped its &apos;Preview&apos; label in the Microsoft Store on November 22, 2022, decoupling its update cycle from Windows itself entirely — meaning WSL improvements could ship on their own schedule going forward.</description><pubDate>Thu, 13 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>news</category><category>wsl</category><category>microsoft-store</category></item><item><title>How to Fact-Check a Tech History Claim Before Sharing It</title><link>https://danielcosenza.com/posts/th-howto-fact-check-tech-history</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-howto-fact-check-tech-history</guid><description>A complete, practical checklist for verifying a tech history claim you&apos;re about to repeat — because a surprising number of widely-believed stories in this space turn out to be embellished, misattributed, or simply wrong.</description><pubDate>Wed, 12 Aug 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>howto</category><category>fact-checking</category><category>methodology</category><category>research</category></item><item><title>Fixing Docker Desktop&apos;s WSL2 Backend Integration Issues</title><link>https://danielcosenza.com/posts/wsl-fix-docker-desktop-integration</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-fix-docker-desktop-integration</guid><description>Docker Desktop configured to use the WSL2 backend suddenly can&apos;t see your distro, or containers fail to start with confusing errors. Here&apos;s how to work through the specific integration points that commonly break.</description><pubDate>Wed, 12 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>fix</category><category>docker</category><category>wsl2</category><category>containers</category></item><item><title>Microsoft and Canonical Bring systemd Support to WSL</title><link>https://danielcosenza.com/posts/wsl-news-systemd-support-announced</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-news-systemd-support-announced</guid><description>For years, software expecting systemd to be running as PID 1 simply didn&apos;t work correctly inside WSL. That changed in September 2022, closing one of WSL&apos;s longest-standing compatibility gaps.</description><pubDate>Wed, 12 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>news</category><category>wsl2</category><category>systemd</category></item><item><title>Why WSL Didn&apos;t Support systemd at First, and How It Works Now</title><link>https://danielcosenza.com/posts/wsl-systemd-support</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-systemd-support</guid><description>For years, WSL distros ran without systemd — meaning services expecting it simply failed. Here&apos;s why that gap existed, and what changed architecturally to finally close it.</description><pubDate>Wed, 12 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>deep-dive</category><category>wsl2</category><category>systemd</category><category>init</category></item><item><title>How to Explore the Internet Archive&apos;s Software Library</title><link>https://danielcosenza.com/posts/th-howto-internet-archive-software</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-howto-internet-archive-software</guid><description>A complete walkthrough of archive.org&apos;s software preservation collections — running historical software directly in your browser, understanding what&apos;s preserved and why, and using it as a genuine research resource.</description><pubDate>Tue, 11 Aug 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>howto</category><category>internet-archive</category><category>preservation</category><category>software</category></item><item><title>How WSL Actually Packages and Distributes Linux Distros</title><link>https://danielcosenza.com/posts/wsl-distro-packaging</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-distro-packaging</guid><description>Installing Ubuntu via the Microsoft Store feels like installing any other app. Underneath, WSL distros are root filesystem tarballs registered with a small platform layer — and that model is what makes import/export and custom distros possible.</description><pubDate>Tue, 11 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>deep-dive</category><category>wsl2</category><category>distros</category><category>packaging</category></item><item><title>Fixing &apos;Access Is Denied&apos; Errors in WSL After an Update</title><link>https://danielcosenza.com/posts/wsl-fix-access-denied-after-update</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-fix-access-denied-after-update</guid><description>Commands that worked fine yesterday suddenly fail with permission errors after a WSL or Windows update. Here&apos;s how to work through the specific, common causes rather than reflexively reaching for chmod 777.</description><pubDate>Tue, 11 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>fix</category><category>wsl2</category><category>permissions</category><category>troubleshooting</category></item><item><title>Windows 11 Launches With WSL2 as a Default, Integrated Experience</title><link>https://danielcosenza.com/posts/wsl-news-windows11-launch</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-news-windows11-launch</guid><description>When Windows 11 shipped on October 5, 2021, Linux compatibility via WSL2 was no longer an optional add-on developers had to know to seek out — it was part of the platform&apos;s story from day one.</description><pubDate>Tue, 11 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>news</category><category>windows-11</category><category>wsl2</category></item><item><title>How to Emulate an Original IBM PC Today</title><link>https://danielcosenza.com/posts/th-howto-emulate-ibm-pc</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-howto-emulate-ibm-pc</guid><description>A complete walkthrough setting up an emulator that recreates the original 5150&apos;s actual hardware — the 8088 processor, period memory limits, and PC DOS — to run genuinely original early-1980s software.</description><pubDate>Mon, 10 Aug 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>howto</category><category>ibm-pc</category><category>emulation</category><category>dos</category></item><item><title>Fixing WSLg Graphics Rendering and Display Issues</title><link>https://danielcosenza.com/posts/wsl-fix-wslg-graphics-issues</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-fix-wslg-graphics-issues</guid><description>A Linux GUI application launches under WSLg but renders as a blank window, crashes immediately, or displays visual corruption. Here&apos;s how to work through WSLg&apos;s specific rendering stack to find the actual cause.</description><pubDate>Mon, 10 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>fix</category><category>wslg</category><category>graphics</category><category>gui</category></item><item><title>How WSL2 Actually Manages Memory (and Why vmmem Grows)</title><link>https://danielcosenza.com/posts/wsl-memory-management</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-memory-management</guid><description>WSL2&apos;s lightweight VM claims memory dynamically as Linux processes need it — but historically gave that memory back to Windows only reluctantly. Here&apos;s what&apos;s actually happening, and what you control via .wslconfig.</description><pubDate>Mon, 10 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>deep-dive</category><category>wsl2</category><category>memory</category><category>performance</category></item><item><title>Installing WSL Goes From a Multi-Step Process to One Command</title><link>https://danielcosenza.com/posts/wsl-news-install-single-command</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-news-install-single-command</guid><description>For years, setting up WSL meant enabling Windows features manually, downloading a kernel update package separately, and installing a distro as separate steps. The wsl --install command collapsed all of it into one line.</description><pubDate>Mon, 10 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>news</category><category>wsl</category><category>windows</category></item><item><title>How to Research a Tech History Topic Using Primary Sources</title><link>https://danielcosenza.com/posts/th-howto-research-primary-sources</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-howto-research-primary-sources</guid><description>A complete walkthrough moving from a secondhand claim you&apos;ve read somewhere to an actual verified fact — court records, SEC filings, contemporaneous news archives, and original announcements, not just another blog post.</description><pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>howto</category><category>research</category><category>primary-sources</category><category>methodology</category></item><item><title>Fixing a WSL Distro That Won&apos;t Start or Hangs on &apos;Installing&apos;</title><link>https://danielcosenza.com/posts/wsl-fix-distro-wont-start</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-fix-distro-wont-start</guid><description>A distro that hangs indefinitely on first launch, or refuses to start on a machine that&apos;s run WSL fine before, usually traces back to one of a handful of specific, diagnosable causes.</description><pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>fix</category><category>wsl2</category><category>troubleshooting</category><category>distro</category></item><item><title>How WSL Lets Linux and Windows Executables Call Each Other</title><link>https://danielcosenza.com/posts/wsl-interop-executables</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-interop-executables</guid><description>Running notepad.exe from a Bash prompt, or a Linux tool from Windows&apos; own command line, works because of a specific interop layer translating between two completely different executable formats and process models.</description><pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>deep-dive</category><category>wsl2</category><category>interop</category><category>processes</category></item><item><title>WSLg Ships, Letting Linux GUI Apps Run Directly on the Windows Desktop</title><link>https://danielcosenza.com/posts/wsl-news-wslg-released</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-news-wslg-released</guid><description>Announced at Build 2020 and released to Windows Insiders the following spring, WSLg let a Linux graphical application&apos;s window appear on the Windows desktop like any native app — no separate remote desktop session required.</description><pubDate>Sun, 09 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>news</category><category>wslg</category><category>gui</category><category>windows</category></item><item><title>How to Read and Understand Old Internet RFCs</title><link>https://danielcosenza.com/posts/th-howto-read-rfcs</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-howto-read-rfcs</guid><description>A complete walkthrough finding, reading, and actually understanding Request for Comments documents — the original, primary-source specifications behind email, the early internet, and much of the web&apos;s foundational technology.</description><pubDate>Sat, 08 Aug 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>howto</category><category>rfc</category><category>internet</category><category>primary-sources</category></item><item><title>Fixing Slow File I/O When Working on /mnt/c from WSL2</title><link>https://danielcosenza.com/posts/wsl-fix-slow-file-io-mnt</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-fix-slow-file-io-mnt</guid><description>A project that runs fine natively feels sluggish the moment it&apos;s accessed from /mnt/c inside WSL2 — especially anything touching large numbers of small files. Here&apos;s why, and the actual fix.</description><pubDate>Sat, 08 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>fix</category><category>wsl2</category><category>performance</category><category>filesystem</category></item><item><title>How WSLg Gets a Linux GUI Window Onto Your Windows Desktop</title><link>https://danielcosenza.com/posts/wsl-gui-apps-wslg</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-gui-apps-wslg</guid><description>Running a Linux GUI application inside WSL and having its window appear alongside your native Windows apps looks like magic. It&apos;s actually a full Wayland compositor and audio system, tunneled over RDP, running invisibly.</description><pubDate>Sat, 08 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>deep-dive</category><category>wslg</category><category>gui</category><category>wayland</category></item><item><title>GPU Compute Comes to WSL2, Enabling Real ML Workloads</title><link>https://danielcosenza.com/posts/wsl-news-gpu-compute-preview</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-news-gpu-compute-preview</guid><description>Microsoft announced GPU-accelerated compute support for WSL2 at Build 2020, followed by an NVIDIA CUDA preview that let machine learning frameworks like PyTorch and TensorFlow use a physical GPU from inside WSL2.</description><pubDate>Sat, 08 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>news</category><category>wsl2</category><category>gpu</category><category>machine-learning</category></item><item><title>How to Legally Play 1980s Video Games Today</title><link>https://danielcosenza.com/posts/th-howto-play-1980s-games-legally</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-howto-play-1980s-games-legally</guid><description>A complete walkthrough of the legitimate ways to experience the games at the center of the 1983 crash and the era around it — official re-releases, subscription libraries, and properly licensed compilations.</description><pubDate>Fri, 07 Aug 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>howto</category><category>video-games</category><category>preservation</category><category>legal</category></item><item><title>Fixing WSL2 Clock Drift After Sleep or Hibernation</title><link>https://danielcosenza.com/posts/wsl-fix-clock-drift</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-fix-clock-drift</guid><description>The system clock inside WSL2 falls behind Windows&apos; own clock, especially noticeably after your laptop sleeps and resumes. Here&apos;s why the VM&apos;s clock actually drifts, and how to force it back in sync.</description><pubDate>Fri, 07 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>fix</category><category>wsl2</category><category>clock</category><category>time-sync</category></item><item><title>WSL2&apos;s Networking Modes: NAT and Mirrored, Explained</title><link>https://danielcosenza.com/posts/wsl-networking-modes</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-networking-modes</guid><description>WSL2&apos;s original networking design put it behind its own virtual network, invisible to the rest of your LAN by default. Mirrored networking mode, added later, takes a fundamentally different approach — and each has real tradeoffs.</description><pubDate>Fri, 07 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>deep-dive</category><category>wsl2</category><category>networking</category></item><item><title>Microsoft Announces WSL2, Replacing Syscall Translation With a Real Kernel</title><link>https://danielcosenza.com/posts/wsl-news-wsl2-announced</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-news-wsl2-announced</guid><description>At Build 2019, Microsoft revealed WSL2 — not an incremental update, but an entirely different architecture running a genuine Linux kernel inside a purpose-built lightweight virtual machine.</description><pubDate>Fri, 07 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>news</category><category>wsl2</category><category>windows</category></item><item><title>How to Use the Wayback Machine to Research Web History</title><link>https://danielcosenza.com/posts/th-howto-wayback-machine</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-howto-wayback-machine</guid><description>A complete walkthrough of the Internet Archive&apos;s Wayback Machine — finding old captures of a specific site, comparing how a page changed over time, and using it as a genuine primary source rather than just a curiosity.</description><pubDate>Thu, 06 Aug 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>howto</category><category>wayback-machine</category><category>research</category><category>archives</category></item><item><title>How WSL Bridges Two Completely Different Filesystems</title><link>https://danielcosenza.com/posts/wsl-filesystem-bridge</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-filesystem-bridge</guid><description>Linux and Windows filesystems handle permissions, case sensitivity, and paths in fundamentally different ways. WSL&apos;s cross-OS file access works by translating between them at the protocol level — and that translation has real performance costs.</description><pubDate>Thu, 06 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>deep-dive</category><category>wsl2</category><category>filesystem</category><category>9p</category></item><item><title>Fixing WSL2 Networking and DNS Resolution Failures</title><link>https://danielcosenza.com/posts/wsl-fix-networking-dns</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-fix-networking-dns</guid><description>Ping works, but domain names won&apos;t resolve inside WSL2 — or the reverse. Here&apos;s how to actually diagnose whether the problem is DNS configuration, VPN interference, or the networking mode itself.</description><pubDate>Thu, 06 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>fix</category><category>wsl2</category><category>networking</category><category>dns</category></item><item><title>WSL Graduates Out of Beta in the Fall Creators Update</title><link>https://danielcosenza.com/posts/wsl-news-ga-fall-creators-update</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-news-ga-fall-creators-update</guid><description>Eighteen months after its first public reveal, WSL stopped being an experimental preview feature — gaining full Microsoft support, multi-distro installs via the Microsoft Store, and Windows Server compatibility.</description><pubDate>Thu, 06 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>news</category><category>wsl</category><category>windows</category></item><item><title>How to Actually Run Netscape Navigator and Other Vintage Browsers Today</title><link>https://danielcosenza.com/posts/th-howto-play-old-browsers</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-howto-play-old-browsers</guid><description>A complete walkthrough getting historical browsers running in a modern environment — through emulation, virtual machines, and preserved installers — to see the actual software behind the browser wars firsthand.</description><pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>howto</category><category>netscape</category><category>emulation</category><category>preservation</category></item><item><title>Fixing High vmmem Memory Usage in WSL2</title><link>https://danielcosenza.com/posts/wsl-fix-high-memory-vmmem</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-fix-high-memory-vmmem</guid><description>Task Manager shows vmmem consuming several gigabytes of RAM, even when you&apos;re not actively using WSL. Here&apos;s how to actually diagnose what&apos;s holding that memory, and how to cap it properly.</description><pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>fix</category><category>wsl2</category><category>memory</category><category>performance</category></item><item><title>The History of WSL: From a Cancelled Android Project to a Real Linux Kernel</title><link>https://danielcosenza.com/posts/wsl-history</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-history</guid><description>Before WSL let Windows run real Linux binaries, Microsoft tried and abandoned a different compatibility project entirely. Here&apos;s the actual path from that cancellation to today&apos;s tightly-integrated WSL2.</description><pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>history</category><category>wsl</category><category>windows</category><category>linux</category></item><item><title>The Linux Kernel Microsoft Actually Maintains for WSL2</title><link>https://danielcosenza.com/posts/wsl-kernel-maintenance</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-kernel-maintenance</guid><description>WSL2 doesn&apos;t borrow a distro&apos;s kernel — Microsoft maintains its own fork, patched specifically for the virtualized environment WSL2 runs in, and ships it independently of both Windows and any Linux distro&apos;s own kernel.</description><pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>deep-dive</category><category>wsl2</category><category>kernel</category><category>linux</category></item><item><title>Microsoft Cancels Project Astoria, Its Android-on-Windows Bridge</title><link>https://danielcosenza.com/posts/wsl-news-astoria-cancelled</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-news-astoria-cancelled</guid><description>Before WSL let Windows run real Linux binaries, Microsoft was building a bridge to run Android apps on Windows 10 Mobile instead. That project was shelved in February 2016 — clearing the way for what came next.</description><pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate><category>WSL</category><category>news</category><category>history</category><category>windows</category></item><item><title>No, Y2K Wasn&apos;t a Hoax — Here&apos;s the Actual Evidence It Was Real</title><link>https://danielcosenza.com/posts/th-fix-y2k-not-a-hoax</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-fix-y2k-not-a-hoax</guid><description>Because remediation worked, January 1, 2000 passed quietly, and some people concluded the whole thing had been overblown from the start. The systems that skipped the fix tell a very different story.</description><pubDate>Tue, 04 Aug 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>fix</category><category>myth</category><category>y2k</category><category>history</category></item><item><title>No, &apos;The Internet&apos; and &apos;The Web&apos; Are Not the Same Thing</title><link>https://danielcosenza.com/posts/th-fix-web-vs-internet-conflation</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-fix-web-vs-internet-conflation</guid><description>These two terms get used interchangeably in casual conversation constantly. One is a physical and logical network; the other is a specific application built on top of it, invented years later by a specific person.</description><pubDate>Mon, 03 Aug 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>fix</category><category>myth</category><category>internet</category><category>world-wide-web</category></item><item><title>No, Apple Didn&apos;t Invent the Personal Computer</title><link>https://danielcosenza.com/posts/th-fix-jobs-wozniak-pc-myth</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-fix-jobs-wozniak-pc-myth</guid><description>The Apple I and II are often credited as the birth of personal computing. A different machine, from a company most people have never heard of, beat them to market by more than a year.</description><pubDate>Sun, 02 Aug 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>fix</category><category>myth</category><category>apple</category><category>history</category></item><item><title>Correcting the Record on Who Actually &apos;Invented&apos; Email</title><link>https://danielcosenza.com/posts/th-fix-first-email-myth</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-fix-first-email-myth</guid><description>Ray Tomlinson is credited as email&apos;s inventor, and rightly so for one specific, real breakthrough — but the popular version of the story usually skips over the messaging system that already existed before he touched it.</description><pubDate>Sat, 01 Aug 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>fix</category><category>myth</category><category>email</category><category>arpanet</category></item><item><title>No, Napster Wasn&apos;t the First File-Sharing Service</title><link>https://danielcosenza.com/posts/th-fix-napster-not-first-p2p</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-fix-napster-not-first-p2p</guid><description>Napster gets credited as the technology that started internet file sharing. BBSes, Usenet, FTP, and IRC were all moving files between strangers years — in some cases over a decade — before Napster&apos;s 1999 launch.</description><pubDate>Fri, 31 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>fix</category><category>myth</category><category>napster</category><category>file-sharing</category></item><item><title>The Atari Landfill Wasn&apos;t Just E.T. Cartridges — What the 2014 Dig Actually Found</title><link>https://danielcosenza.com/posts/th-fix-atari-landfill-not-just-et</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-fix-atari-landfill-not-just-et</guid><description>Popular legend treats the Alamogordo landfill as an E.T.-specific burial ground. The 2014 excavation found 59 different game titles among the recovered cartridges — a much broader inventory clearance than the popular story suggests.</description><pubDate>Thu, 30 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>fix</category><category>myth</category><category>atari</category><category>video-games</category></item><item><title>No, Bill Gates Never Said &apos;640K Ought to Be Enough for Anyone&apos;</title><link>https://danielcosenza.com/posts/th-fix-640k-gates-misquote</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-fix-640k-gates-misquote</guid><description>One of computing&apos;s most-repeated quotes has no verified source, and Gates has explicitly and repeatedly denied ever saying it. Here&apos;s what the actual paper trail shows — and what he really said instead.</description><pubDate>Wed, 29 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>fix</category><category>myth</category><category>bill-gates</category><category>history</category></item><item><title>Correcting the Record: ENIAC Wasn&apos;t Legally the &apos;First&apos; Computer</title><link>https://danielcosenza.com/posts/th-fix-eniac-abc-dispute</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-fix-eniac-abc-dispute</guid><description>ENIAC is the name most people learn as the first electronic computer. A 1973 federal court ruling says otherwise — and it turned on evidence most retellings of this story leave out entirely.</description><pubDate>Tue, 28 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>fix</category><category>myth</category><category>history</category><category>patents</category></item><item><title>No, Al Gore Never Said He &apos;Invented the Internet&apos; — Here&apos;s the Actual Quote</title><link>https://danielcosenza.com/posts/th-fix-al-gore-internet-quote</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-fix-al-gore-internet-quote</guid><description>One of the most repeated political misquotes in tech culture. Here&apos;s the exact sentence Gore actually said, on the record, and how three days of mockery turned it into something he never claimed.</description><pubDate>Mon, 27 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>fix</category><category>myth</category><category>internet</category><category>history</category></item><item><title>From Mainframes to Microprocessors: The Decades-Long Shrinking of Computing</title><link>https://danielcosenza.com/posts/th-mainframe-to-micro</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-mainframe-to-micro</guid><description>A computer once filled a room and required a specialized staff to operate. The path to a device that fits in a pocket wasn&apos;t one invention — it was a compounding sequence of separate breakthroughs across decades.</description><pubDate>Mon, 27 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>deep-dive</category><category>hardware</category><category>history</category><category>microprocessors</category></item><item><title>The Video Game Market Begins Its Collapse</title><link>https://danielcosenza.com/posts/th-news-video-game-crash-begins</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-news-video-game-crash-begins</guid><description>Through 1983, US video game console and cartridge sales began an unprecedented decline that would erase roughly 97% of the market&apos;s value within two years, taking Atari&apos;s fortunes down with it.</description><pubDate>Sun, 26 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>news</category><category>video-games</category><category>atari</category><category>history</category></item><item><title>Y2K: The Bug That Was Real, Even Though Nothing Visibly Broke</title><link>https://danielcosenza.com/posts/th-y2k</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-y2k</guid><description>Two-digit year fields threatened to make systems worldwide misinterpret 2000 as 1900. Billions were spent fixing it in advance — which is exactly why, to many observers afterward, it looked like the whole thing had been overblown.</description><pubDate>Sun, 26 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>deep-dive</category><category>y2k</category><category>history</category><category>software</category></item><item><title>The Dot-Com Bubble: How Growth-at-Any-Cost Met Reality</title><link>https://danielcosenza.com/posts/th-dotcom-bubble</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-dotcom-bubble</guid><description>Internet companies with no profits, and sometimes no meaningful revenue, reached billion-dollar valuations through the late 1990s. The Nasdaq&apos;s collapse starting in 2000 erased trillions in value in under two years.</description><pubDate>Sat, 25 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>deep-dive</category><category>dotcom</category><category>history</category><category>markets</category></item><item><title>The World Wide Web Is Announced to the Public</title><link>https://danielcosenza.com/posts/th-news-first-website-public</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-news-first-website-public</guid><description>Tim Berners-Lee&apos;s first website had already been running quietly at CERN since December 1990. In August 1991, he posted a public invitation to collaborate — the moment the web actually became something the wider world could join.</description><pubDate>Sat, 25 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>news</category><category>world-wide-web</category><category>history</category><category>internet</category></item><item><title>Napster and the Reordering of the Entire Music Industry</title><link>https://danielcosenza.com/posts/th-napster-p2p</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-napster-p2p</guid><description>A college student&apos;s file-sharing tool lasted barely two years before a court order killed it — but it permanently broke the assumption that music had to be sold as a physical or per-track purchase.</description><pubDate>Fri, 24 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>deep-dive</category><category>napster</category><category>music</category><category>peer-to-peer</category></item><item><title>Napster Launches, Built by a College Student in a Massachusetts Office</title><link>https://danielcosenza.com/posts/th-news-napster-launches</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-news-napster-launches</guid><description>Shawn Fanning&apos;s peer-to-peer file-sharing tool went live in June 1999, launched out of a small Hull, Massachusetts office. Within two years it would be shut down by court order — but not before changing the music industry permanently.</description><pubDate>Fri, 24 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>news</category><category>napster</category><category>music</category><category>history</category></item><item><title>The Morris Worm: The Internet&apos;s First Real Security Wreck</title><link>https://danielcosenza.com/posts/th-morris-worm</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-morris-worm</guid><description>A graduate student&apos;s experiment to measure the internet&apos;s size instead knocked out an estimated 10% of it in a single night. The Morris Worm produced the first felony conviction under US computer crime law.</description><pubDate>Thu, 23 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>deep-dive</category><category>security</category><category>morris-worm</category><category>history</category></item><item><title>The Morris Worm Is Released, Knocking Out an Estimated 10% of the Internet</title><link>https://danielcosenza.com/posts/th-news-morris-worm-released</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-news-morris-worm-released</guid><description>A Cornell graduate student&apos;s self-replicating program, released from MIT&apos;s network on a November night in 1988, spread far faster and further than its own author reportedly intended.</description><pubDate>Thu, 23 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>news</category><category>security</category><category>morris-worm</category><category>history</category></item><item><title>Google Inc. Is Incorporated in Menlo Park, California</title><link>https://danielcosenza.com/posts/th-news-google-founded</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-news-google-founded</guid><description>A Stanford research project on ranking web pages by their link structure became a legally registered company on a single day in September 1998 — the formal starting point for what would become the dominant search engine.</description><pubDate>Wed, 22 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>news</category><category>google</category><category>history</category><category>search</category></item><item><title>The Video Game Crash of 1983: How an Entire Industry Nearly Disappeared</title><link>https://danielcosenza.com/posts/th-video-game-crash-1983</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-video-game-crash-1983</guid><description>US video game revenue collapsed by roughly 97% in under two years. It wasn&apos;t one bad game that caused it — it was market oversaturation, and the rebuilding afterward reshaped the industry&apos;s structure permanently.</description><pubDate>Wed, 22 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>deep-dive</category><category>video-games</category><category>history</category><category>atari</category></item><item><title>From ARPANET to the Internet: How One Protocol Ate Every Network</title><link>https://danielcosenza.com/posts/th-arpanet-internet</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-arpanet-internet</guid><description>ARPANET was one research network among several incompatible experiments in the 1970s. TCP/IP is the specific technical decision that let it absorb all the others into a single, unified internet.</description><pubDate>Tue, 21 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>deep-dive</category><category>arpanet</category><category>internet</category><category>protocols</category></item><item><title>IBM Unveils the Personal Computer at New York&apos;s Waldorf Hotel</title><link>https://danielcosenza.com/posts/th-news-ibm-pc-launch</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-news-ibm-pc-launch</guid><description>Priced at $1,565 with 16KB of RAM and no disk drive, the IBM 5150 didn&apos;t look like a revolution on paper. Its open architecture is what made it one anyway.</description><pubDate>Tue, 21 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>news</category><category>ibm</category><category>hardware</category><category>history</category></item><item><title>The Actual Moth in the Machine: Grace Hopper and the First Recorded Computer Bug</title><link>https://danielcosenza.com/posts/th-grace-hopper-bug</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-grace-hopper-bug</guid><description>A moth taped into a 1947 logbook is one of computing&apos;s most-repeated stories — and one of its most-garbled. Here&apos;s what the primary source, the logbook itself, actually shows.</description><pubDate>Mon, 20 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>deep-dive</category><category>history</category><category>grace-hopper</category><category>debugging</category></item><item><title>AOL Announces It Will Buy Netscape for $4.2 Billion</title><link>https://danielcosenza.com/posts/th-news-aol-netscape-deal</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-news-aol-netscape-deal</guid><description>Less than three years after its landmark IPO, Netscape agreed to be acquired by AOL in an all-stock deal — a merger meant to counter Microsoft that critics immediately doubted, given the two companies&apos; very different cultures.</description><pubDate>Mon, 20 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>news</category><category>netscape</category><category>aol</category><category>acquisitions</category></item><item><title>The IBM PC: How One Product Accidentally Created an Industry Standard</title><link>https://danielcosenza.com/posts/th-ibm-pc</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-ibm-pc</guid><description>IBM built the 5150 quickly, using off-the-shelf parts and an open architecture, expecting a modest niche product. Instead it became the template every PC-compatible computer still traces back to today.</description><pubDate>Sun, 19 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>deep-dive</category><category>ibm</category><category>hardware</category><category>standards</category></item><item><title>Netscape Announces It Will Open-Source Its Browser Code</title><link>https://danielcosenza.com/posts/th-news-netscape-open-source</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-news-netscape-open-source</guid><description>Facing a losing battle against Internet Explorer, Netscape made an unprecedented move for a major commercial software company: giving away the source code to its flagship product, and creating Mozilla to steward it.</description><pubDate>Sun, 19 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>news</category><category>netscape</category><category>open-source</category><category>mozilla</category></item><item><title>The Browser Wars: How Netscape and Internet Explorer Fought for the Desktop</title><link>https://danielcosenza.com/posts/th-browser-wars</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-browser-wars</guid><description>In the mid-1990s, which browser you used determined how much of the web actually worked for you. Here&apos;s how a startup&apos;s early dominance collapsed against a bundled competitor in under four years.</description><pubDate>Sat, 18 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>deep-dive</category><category>netscape</category><category>browsers</category><category>microsoft</category></item><item><title>The History of Tech History: Why This Category Exists on This Blog</title><link>https://danielcosenza.com/posts/th-history</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-history</guid><description>This blog covers operating systems and infrastructure in technical depth. This category exists for the events, products, and moments that shaped the industry those systems live in — verified, dated, and sourced.</description><pubDate>Sat, 18 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>history</category><category>meta</category></item><item><title>Netscape&apos;s IPO Ignites the Dot-Com Boom</title><link>https://danielcosenza.com/posts/th-news-netscape-ipo</link><guid isPermaLink="true">https://danielcosenza.com/posts/th-news-netscape-ipo</guid><description>A company with no profit went public at $28 a share and closed its first day at $58.25, more than doubling in value in hours. Many historians point to this single afternoon as the moment internet mania actually began.</description><pubDate>Sat, 18 Jul 2026 00:00:00 GMT</pubDate><category>Tech History</category><category>news</category><category>netscape</category><category>ipo</category><category>history</category></item><item><title>How to Set Up Printing on Haiku</title><link>https://danielcosenza.com/posts/hk-howto-printing-setup</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-howto-printing-setup</guid><description>A complete walkthrough configuring a printer on Haiku using the Print Kit&apos;s transport and driver add-ons, from adding the printer through to printing a real test page.</description><pubDate>Fri, 17 Jul 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>howto</category><category>printing</category><category>print-kit</category><category>hardware</category></item><item><title>How to Set Up Cloud Save Sync Across Multiple Devices in RetroArch</title><link>https://danielcosenza.com/posts/rg-howto-cloud-save-sync</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-howto-cloud-save-sync</guid><description>A complete walkthrough keeping save files and save states in sync across a desktop, a handheld, and a laptop, so progress made on one device is exactly where you expect it on the next.</description><pubDate>Fri, 17 Jul 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>howto</category><category>retroarch</category><category>saves</category><category>sync</category></item><item><title>How to Write a Simple Native GUI Application on Haiku</title><link>https://danielcosenza.com/posts/hk-howto-native-gui-app</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-howto-native-gui-app</guid><description>A complete walkthrough building a minimal windowed application using Haiku&apos;s Interface Kit and BApplication/BWindow classes — the actual starting point for any native Haiku app, GUI or not.</description><pubDate>Thu, 16 Jul 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>howto</category><category>development</category><category>interface-kit</category><category>programming</category></item><item><title>How to Organize a ROM Collection with Proper Metadata and Artwork</title><link>https://danielcosenza.com/posts/rg-howto-rom-collection-metadata</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-howto-rom-collection-metadata</guid><description>A complete walkthrough taking a messy folder of ROM files and turning it into a properly named, verified, artwork-complete collection that frontends like RetroArch and EmulationStation can actually use well.</description><pubDate>Thu, 16 Jul 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>howto</category><category>roms</category><category>organization</category><category>preservation</category></item><item><title>How to Configure WebPositive: Bookmarks, Privacy, and Downloads</title><link>https://danielcosenza.com/posts/hk-howto-webpositive-config</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-howto-webpositive-config</guid><description>A complete walkthrough setting up Haiku&apos;s native WebPositive browser day to day — organizing bookmarks, configuring privacy and cookie behavior, and setting a sensible download location.</description><pubDate>Wed, 15 Jul 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>howto</category><category>webpositive</category><category>browser</category><category>configuration</category></item><item><title>How to Configure Rewind in RetroArch</title><link>https://danielcosenza.com/posts/rg-howto-rewind-configuration</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-howto-rewind-configuration</guid><description>A complete walkthrough setting up RetroArch&apos;s rewind feature — instantly reversing gameplay frame by frame — plus the memory and performance tradeoffs involved in tuning it well.</description><pubDate>Wed, 15 Jul 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>howto</category><category>retroarch</category><category>rewind</category><category>savestates</category></item><item><title>How to Monitor System Activity with ProcessController on Haiku</title><link>https://danielcosenza.com/posts/hk-howto-processcontroller-monitoring</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-howto-processcontroller-monitoring</guid><description>A complete walkthrough using Haiku&apos;s ProcessController Deskbar replicant to watch CPU load and memory usage at a glance, and dig into individual running teams when something is misbehaving.</description><pubDate>Tue, 14 Jul 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>howto</category><category>monitoring</category><category>processcontroller</category><category>deskbar</category></item><item><title>How to Set Up Multi-Tap and Local Multiplayer in RetroArch</title><link>https://danielcosenza.com/posts/rg-howto-multitap-local-multiplayer</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-howto-multitap-local-multiplayer</guid><description>A complete walkthrough getting 3-4+ player retro games working locally — configuring virtual multi-taps, assigning controllers to the right ports, and handling per-core multiplayer quirks.</description><pubDate>Tue, 14 Jul 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>howto</category><category>retroarch</category><category>multiplayer</category><category>controllers</category></item><item><title>Fixing Disk Mounting and BFS Volume Check Issues on Haiku</title><link>https://danielcosenza.com/posts/hk-fix-disk-mounting-bfs</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-fix-disk-mounting-bfs</guid><description>A secondary drive or partition won&apos;t mount, or Haiku reports filesystem inconsistencies on a BFS volume. Here&apos;s how to diagnose the mount failure and run BFS&apos;s own consistency check safely.</description><pubDate>Mon, 13 Jul 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>fix</category><category>bfs</category><category>disks</category><category>filesystem</category></item><item><title>Fixing &apos;BIOS Not Found&apos; and Bad Checksum Errors in Emulators</title><link>https://danielcosenza.com/posts/rg-fix-missing-bios-file</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-fix-missing-bios-file</guid><description>A console emulator refuses to boot anything, citing a missing or invalid BIOS file. Here&apos;s what these files actually are, why an emulator needs them at all, and how to fix a checksum mismatch.</description><pubDate>Mon, 13 Jul 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>fix</category><category>bios</category><category>emulation</category><category>troubleshooting</category></item><item><title>Fixing and Diagnosing App Crashes Using Haiku&apos;s Debug Server</title><link>https://danielcosenza.com/posts/hk-fix-app-crash-debug-server</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-fix-app-crash-debug-server</guid><description>An application crashes on Haiku and a debug report window appears. Rather than dismissing it, here&apos;s how to actually read what it&apos;s telling you and use it to fix — or usefully report — the crash.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>fix</category><category>debugging</category><category>crash-reporting</category><category>debug_server</category></item><item><title>How to Manage Passwords and Certificates with Keychain Access on macOS</title><link>https://danielcosenza.com/posts/mac-howto-keychain-access</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-howto-keychain-access</guid><description>A complete walkthrough of Keychain Access — viewing saved passwords, storing new items securely, managing certificates, and understanding how iCloud Keychain syncs credentials across your devices.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>macOS</category><category>howto</category><category>keychain</category><category>security</category><category>passwords</category></item><item><title>Fixing Analog Stick Drift and Deadzone Problems in Emulators</title><link>https://danielcosenza.com/posts/rg-fix-controller-deadzone-drift</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-fix-controller-deadzone-drift</guid><description>Your character walks by itself with the stick untouched, or a full push barely registers. This is distinct from a controller not being detected at all — it&apos;s a calibration problem, and it&apos;s fixable in software.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>fix</category><category>controllers</category><category>input</category><category>calibration</category></item><item><title>How to Configure Pod Disruption Budgets in Kubernetes</title><link>https://danielcosenza.com/posts/devops-howto-pod-disruption-budgets</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-howto-pod-disruption-budgets</guid><description>A complete walkthrough setting PodDisruptionBudgets so voluntary disruptions — node drains, cluster upgrades — never take down more replicas of a service than it can actually tolerate at once.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>howto</category><category>kubernetes</category><category>pdb</category><category>availability</category></item><item><title>How to Set Up a RAM Disk on FreeDOS</title><link>https://danielcosenza.com/posts/dos-howto-ramdisk-setup</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-howto-ramdisk-setup</guid><description>A complete walkthrough configuring a RAM disk with the built-in RAM driver — a fast, volatile drive letter backed entirely by memory, useful for temporary files and speeding up disk-heavy tasks.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>howto</category><category>ramdisk</category><category>memory</category></item><item><title>Fixing WebPositive Rendering Problems on Haiku</title><link>https://danielcosenza.com/posts/hk-fix-webpositive-rendering</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-fix-webpositive-rendering</guid><description>Pages look broken, layouts collapse, or certain sites refuse to render properly in Haiku&apos;s native WebPositive browser. Here&apos;s how to isolate whether it&apos;s a page compatibility issue or a local configuration problem.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>fix</category><category>webpositive</category><category>browser</category><category>rendering</category></item><item><title>How to Set Up Automatic Security Updates on Linux</title><link>https://danielcosenza.com/posts/lx-howto-automatic-security-updates</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-automatic-security-updates</guid><description>A complete walkthrough configuring unattended-upgrades (Debian/Ubuntu) and dnf-automatic (RHEL/Fedora) to apply security patches automatically, with sane limits on what gets updated unattended.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>security</category><category>updates</category><category>automation</category></item><item><title>Fixing Shader Compilation Stutter in Emulators and RetroArch</title><link>https://danielcosenza.com/posts/rg-fix-shader-compilation-stutter</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-fix-shader-compilation-stutter</guid><description>A frame-perfect run suddenly hitches every time a new visual effect appears on screen. It&apos;s not a savestate or performance problem — it&apos;s your GPU driver compiling a shader for the first time, mid-frame.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>fix</category><category>shaders</category><category>performance</category><category>retroarch</category></item><item><title>How to Set Up Storage Spaces for Redundant Storage on Windows</title><link>https://danielcosenza.com/posts/win-howto-storage-spaces</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-howto-storage-spaces</guid><description>A complete walkthrough pooling multiple physical drives into a resilient virtual disk — Windows&apos; built-in, software-defined answer to hardware RAID.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>Windows</category><category>howto</category><category>storage-spaces</category><category>redundancy</category></item><item><title>How to Set Up Secrets Management with HashiCorp Vault</title><link>https://danielcosenza.com/posts/devops-howto-vault-secrets</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-howto-vault-secrets</guid><description>A complete walkthrough deploying Vault, storing a secret, and retrieving it from a Kubernetes pod dynamically — instead of secrets sitting as plain base64 in a Kubernetes Secret object.</description><pubDate>Fri, 10 Jul 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>howto</category><category>vault</category><category>secrets</category><category>security</category></item><item><title>How to Build a TSR-Aware Batch Menu System on FreeDOS</title><link>https://danielcosenza.com/posts/dos-howto-tsr-batch-menu</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-howto-tsr-batch-menu</guid><description>A complete walkthrough building a batch-file boot menu that correctly manages memory-hungry TSRs — loading only what a chosen task actually needs, freeing conventional memory for everything else.</description><pubDate>Fri, 10 Jul 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>howto</category><category>batch-files</category><category>tsr</category><category>memory</category></item><item><title>Haiku R1/Beta1 Ships After Nearly Six Years of Work Since Alpha 4</title><link>https://danielcosenza.com/posts/hk-news-r1-beta1</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-news-r1-beta1</guid><description>The first beta release of Haiku R1 arrived on September 28, 2018 — a milestone that had been anticipated for years, marking the project&apos;s transition from alpha-quality software toward an eventual stable 1.0.</description><pubDate>Fri, 10 Jul 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>news</category><category>history</category><category>release</category></item><item><title>How to Configure Network Bonding on Linux</title><link>https://danielcosenza.com/posts/lx-howto-network-bonding</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-network-bonding</guid><description>A complete walkthrough combining two or more network interfaces into a single bonded interface using NetworkManager — for redundancy, throughput, or both, depending on the mode you choose.</description><pubDate>Fri, 10 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>networking</category><category>bonding</category></item><item><title>How to Use Console.app for Diagnosing Problems on macOS</title><link>https://danielcosenza.com/posts/mac-howto-console-diagnostics</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-howto-console-diagnostics</guid><description>A complete walkthrough reading the unified logging system through Console — filtering the noise down to the specific process or subsystem actually relevant to a problem you&apos;re diagnosing.</description><pubDate>Fri, 10 Jul 2026 00:00:00 GMT</pubDate><category>macOS</category><category>howto</category><category>console</category><category>logging</category><category>diagnostics</category></item><item><title>Nintendo&apos;s DMCA Notice Gets the Dolphin Emulator Pulled From Steam</title><link>https://danielcosenza.com/posts/rg-news-dolphin-steam-removed</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-news-dolphin-steam-removed</guid><description>Dolphin was days from launching on Steam when Nintendo sent Valve a DMCA cease-and-desist. Valve pulled the listing rather than take a side — and Dolphin&apos;s Steam release has been in limbo ever since.</description><pubDate>Fri, 10 Jul 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>news</category><category>legal</category><category>emulation</category><category>gamecube</category></item><item><title>How to Configure Windows Defender Application Control (WDAC)</title><link>https://danielcosenza.com/posts/win-howto-wdac</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-howto-wdac</guid><description>A complete walkthrough building an allow-list policy that only permits explicitly trusted applications to run — a meaningfully stronger control than antivirus scanning alone.</description><pubDate>Fri, 10 Jul 2026 00:00:00 GMT</pubDate><category>Windows</category><category>howto</category><category>wdac</category><category>security</category><category>application-control</category></item><item><title>How to Set Up Canary Analysis with Automated Rollback</title><link>https://danielcosenza.com/posts/devops-howto-canary-automated-rollback</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-howto-canary-automated-rollback</guid><description>A complete walkthrough using Flagger to automate a canary rollout that promotes or rolls back based on real metrics — no human needing to watch a dashboard and decide manually.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>howto</category><category>canary</category><category>flagger</category><category>kubernetes</category></item><item><title>How to Connect a USB Drive to FreeDOS with USBASPI</title><link>https://danielcosenza.com/posts/dos-howto-usb-drive-setup</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-howto-usb-drive-setup</guid><description>A complete walkthrough configuring the USBASPI/ASPIDISK driver chain to give FreeDOS a working drive letter for a USB flash drive — DOS-era drivers bridging a much newer standard.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>howto</category><category>usb</category><category>usbaspi</category><category>hardware</category></item><item><title>BeOS 5 Personal Edition Ships Free, Installable Right Alongside Windows</title><link>https://danielcosenza.com/posts/hk-news-beos5-personal-edition</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-news-beos5-personal-edition</guid><description>Be Inc. gave away BeOS 5 Personal Edition for free, installable as a single file that lived inside your existing Windows or Linux system. More than 100,000 people pre-registered before it even launched.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>news</category><category>history</category><category>beos</category></item><item><title>How to Set Up Security Monitoring on Linux with auditd</title><link>https://danielcosenza.com/posts/lx-howto-auditd-monitoring</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-auditd-monitoring</guid><description>A complete walkthrough configuring the Linux audit daemon to watch specific files, commands, and syscalls — and actually query the resulting logs for something useful.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>auditd</category><category>security</category><category>monitoring</category></item><item><title>How to Set Up Screen Time and Parental Controls on macOS</title><link>https://danielcosenza.com/posts/mac-howto-screen-time</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-howto-screen-time</guid><description>A complete walkthrough configuring Screen Time for app limits, content restrictions, and downtime scheduling — for a managed child account or for your own usage discipline.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>macOS</category><category>howto</category><category>screen-time</category><category>parental-controls</category></item><item><title>How to Set Up Netplay for Online Retro Multiplayer</title><link>https://danielcosenza.com/posts/rg-howto-netplay-setup</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-howto-netplay-setup</guid><description>A complete walkthrough hosting and joining a RetroArch netplay session, including the core-matching requirement that causes most first-time connection failures.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>howto</category><category>netplay</category><category>multiplayer</category><category>retroarch</category></item><item><title>Nintendo&apos;s Lawsuit Ends Yuzu: A $2.4 Million Settlement Shuts Down the Switch Emulator</title><link>https://danielcosenza.com/posts/rg-news-yuzu-shutdown</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-news-yuzu-shutdown</guid><description>Nintendo sued Yuzu developer Tropic Haze in February 2024 alleging the Switch emulator existed to facilitate piracy at scale. Within days, Yuzu was gone — and its sister project Citra went down with it.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>news</category><category>legal</category><category>emulation</category><category>nintendo</category></item><item><title>How to Deploy Software with Group Policy</title><link>https://danielcosenza.com/posts/win-howto-group-policy-software-deploy</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-howto-group-policy-software-deploy</guid><description>A complete walkthrough packaging and deploying an MSI installer to multiple computers automatically via Group Policy Software Installation — no third-party deployment tool required.</description><pubDate>Thu, 09 Jul 2026 00:00:00 GMT</pubDate><category>Windows</category><category>howto</category><category>group-policy</category><category>software-deployment</category></item><item><title>How to Set Up Centralized Logging for Kubernetes with the EFK Stack</title><link>https://danielcosenza.com/posts/devops-howto-centralized-logging-elk</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-howto-centralized-logging-elk</guid><description>A complete walkthrough deploying Fluent Bit, Elasticsearch, and Kibana to collect and search logs from every pod in a cluster — one place to look instead of kubectl logs against dozens of pods individually.</description><pubDate>Wed, 08 Jul 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>howto</category><category>logging</category><category>elasticsearch</category><category>kubernetes</category></item><item><title>How to Set Up Long Filename Support on FreeDOS with DOSLFN</title><link>https://danielcosenza.com/posts/dos-howto-doslfn-setup</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-howto-doslfn-setup</guid><description>A complete walkthrough installing DOSLFN, understanding what it can and can&apos;t do, and verifying long filenames actually work with your specific FreeDOS utilities.</description><pubDate>Wed, 08 Jul 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>howto</category><category>doslfn</category><category>filenames</category></item><item><title>How to Set Up Automated Security Audits on FreeBSD</title><link>https://danielcosenza.com/posts/fb-howto-security-audit-updates</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-howto-security-audit-updates</guid><description>A complete walkthrough configuring periodic(8), pkg-audit, and freebsd-update to catch known vulnerabilities and pending patches automatically, with results delivered by email.</description><pubDate>Wed, 08 Jul 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>howto</category><category>security</category><category>pkg-audit</category><category>freebsd-update</category></item><item><title>Be Inc. Goes Public on Nasdaq Under the Ticker BEOS</title><link>https://danielcosenza.com/posts/hk-news-be-inc-ipo</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-news-be-inc-ipo</guid><description>The company behind BeOS — the operating system Haiku would later reimplement as open source — completed its IPO in July 1999, at the height of the dot-com boom, years before the open-source project this blog covers even began.</description><pubDate>Wed, 08 Jul 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>news</category><category>history</category><category>beos</category></item><item><title>How to Use systemd-nspawn Containers on Linux</title><link>https://danielcosenza.com/posts/lx-howto-systemd-nspawn</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-systemd-nspawn</guid><description>A complete walkthrough creating and running a lightweight systemd-nspawn container — useful for isolated testing environments without the overhead of a full container runtime.</description><pubDate>Wed, 08 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>systemd-nspawn</category><category>containers</category></item><item><title>How to Automate Repetitive Tasks on macOS with Shortcuts and Automator</title><link>https://danielcosenza.com/posts/mac-howto-automator-shortcuts</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-howto-automator-shortcuts</guid><description>A complete walkthrough building a real automation with both of macOS&apos;s built-in automation tools — when to reach for each, and how they actually relate to one another.</description><pubDate>Wed, 08 Jul 2026 00:00:00 GMT</pubDate><category>macOS</category><category>howto</category><category>automator</category><category>shortcuts</category><category>automation</category></item><item><title>How to Reduce Input Lag with Run-Ahead</title><link>https://danielcosenza.com/posts/rg-howto-run-ahead</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-howto-run-ahead</guid><description>A step-by-step guide to enabling RetroArch&apos;s run-ahead feature correctly — including the one prerequisite that determines whether it will work at all for a given core.</description><pubDate>Wed, 08 Jul 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>howto</category><category>input-lag</category><category>run-ahead</category><category>retroarch</category></item><item><title>The Ninth Circuit Rules That Emulating the PlayStation BIOS Is Fair Use</title><link>https://danielcosenza.com/posts/rg-news-sony-connectix-ruling</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-news-sony-connectix-ruling</guid><description>Sony sued Connectix over its Virtual Game Station PS1 emulator, arguing that copying the PlayStation BIOS during development was copyright infringement. The Ninth Circuit disagreed — and the ruling still underpins console emulation&apos;s legal footing today.</description><pubDate>Wed, 08 Jul 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>news</category><category>legal</category><category>emulation</category><category>history</category></item><item><title>How to Set Up Virtual Machines on Windows with Hyper-V</title><link>https://danielcosenza.com/posts/win-howto-hyperv-vms</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-howto-hyperv-vms</guid><description>A complete walkthrough enabling Hyper-V and creating a working virtual machine — Windows&apos; own native, type-1 hypervisor, built directly into Pro and Enterprise editions.</description><pubDate>Wed, 08 Jul 2026 00:00:00 GMT</pubDate><category>Windows</category><category>howto</category><category>hyper-v</category><category>virtualization</category></item><item><title>Fixing OOMKilled Containers with Correct Resource Limits</title><link>https://danielcosenza.com/posts/devops-fix-oomkilled-containers</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-fix-oomkilled-containers</guid><description>A container gets killed repeatedly with reason OOMKilled, even though the application &apos;shouldn&apos;t&apos; need that much memory. Here&apos;s how to find its actual peak usage and set limits that reflect reality instead of guesses.</description><pubDate>Tue, 07 Jul 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>fix</category><category>kubernetes</category><category>memory</category><category>resource-limits</category></item><item><title>Fixing Incorrect Date and Time on FreeDOS</title><link>https://danielcosenza.com/posts/dos-fix-rtc-datetime-issues</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-fix-rtc-datetime-issues</guid><description>FreeDOS boots with the wrong date or time every session, or DATE/TIME commands don&apos;t stick. Here&apos;s how to distinguish a dying CMOS battery from a software configuration issue.</description><pubDate>Tue, 07 Jul 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>fix</category><category>rtc</category><category>date-time</category></item><item><title>How to Configure FreeBSD as a Router with pf NAT</title><link>https://danielcosenza.com/posts/fb-howto-router-firewall-nat</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-howto-router-firewall-nat</guid><description>A complete walkthrough turning a FreeBSD box with two network interfaces into a working NAT router/firewall — gateway forwarding, NAT rules, and a sane default-deny ruleset.</description><pubDate>Tue, 07 Jul 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>howto</category><category>pf</category><category>nat</category><category>router</category></item><item><title>Fixing &apos;start-limit-hit&apos; Errors in systemd</title><link>https://danielcosenza.com/posts/lx-fix-systemd-start-limit-hit</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-fix-systemd-start-limit-hit</guid><description>A service refuses to start at all, and systemctl reports start-limit-hit — this is systemd&apos;s own crash-loop protection, and it requires clearing the rate limit as a distinct step after fixing the real cause.</description><pubDate>Tue, 07 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>fix</category><category>systemd</category><category>services</category></item><item><title>Fixing an App That Won&apos;t Quit or Respond on macOS</title><link>https://danielcosenza.com/posts/mac-fix-unresponsive-app</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-fix-unresponsive-app</guid><description>Force Quit doesn&apos;t work, the app&apos;s icon keeps bouncing, or it&apos;s stuck at &apos;Not Responding&apos; indefinitely. Here&apos;s the actual escalation path from gentlest to most forceful.</description><pubDate>Tue, 07 Jul 2026 00:00:00 GMT</pubDate><category>macOS</category><category>fix</category><category>troubleshooting</category><category>applications</category></item><item><title>Spotlight Internals: How macOS Indexes and Searches Your Files</title><link>https://danielcosenza.com/posts/mac-spotlight</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-spotlight</guid><description>How mdworker, metadata importers, and Spotlight&apos;s index let macOS answer file searches in milliseconds instead of scanning the disk on demand.</description><pubDate>Tue, 07 Jul 2026 00:00:00 GMT</pubDate><category>macOS</category><category>spotlight</category><category>indexing</category><category>macos</category></item><item><title>How to Configure CRT Shaders for an Authentic Retro Look</title><link>https://danielcosenza.com/posts/rg-howto-crt-shaders</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-howto-crt-shaders</guid><description>A step-by-step guide to enabling and tuning shader presets in RetroArch — from picking a starting preset to adjusting scanline and curvature intensity to taste.</description><pubDate>Tue, 07 Jul 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>howto</category><category>shaders</category><category>crt</category><category>retroarch</category></item><item><title>Fixing a Windows Update Stuck Downloading</title><link>https://danielcosenza.com/posts/win-fix-update-stuck-downloading</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-fix-update-stuck-downloading</guid><description>The progress bar hasn&apos;t moved in hours and Windows Update reports it&apos;s still downloading. Distinct from an update stuck installing — here&apos;s how to reset the download-side components specifically.</description><pubDate>Tue, 07 Jul 2026 00:00:00 GMT</pubDate><category>Windows</category><category>fix</category><category>windows-update</category><category>troubleshooting</category></item><item><title>Fixing a Kubernetes Node Stuck NotReady</title><link>https://danielcosenza.com/posts/devops-fix-node-not-ready</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-fix-node-not-ready</guid><description>kubectl get nodes shows a node stuck in NotReady state, and pods are being evicted from it. Here&apos;s how to check kubelet, container runtime, and network plugin health in the right order.</description><pubDate>Mon, 06 Jul 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>fix</category><category>kubernetes</category><category>nodes</category></item><item><title>Fixing USB Drive Detection Issues on FreeDOS</title><link>https://danielcosenza.com/posts/dos-fix-usb-drive-not-detected</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-fix-usb-drive-not-detected</guid><description>A USB flash drive doesn&apos;t show up as a drive letter under FreeDOS. Since there&apos;s no native USB support, this comes down to getting USBASPI&apos;s driver chain correctly configured, or falling back to BIOS-level access.</description><pubDate>Mon, 06 Jul 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>fix</category><category>usb</category><category>hardware</category></item><item><title>How to Harden Services on FreeBSD with Capsicum</title><link>https://danielcosenza.com/posts/fb-howto-capsicum-hardening</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-howto-capsicum-hardening</guid><description>A practical walkthrough of Capsicum&apos;s capability mode — how to check if a program supports it, and how sandboxed services actually differ from ordinary ones at the syscall level.</description><pubDate>Mon, 06 Jul 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>howto</category><category>capsicum</category><category>security</category><category>sandboxing</category></item><item><title>Fixing SELinux Denials Blocking a Legitimate Service</title><link>https://danielcosenza.com/posts/lx-fix-selinux-denials</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-fix-selinux-denials</guid><description>A service that works fine with SELinux disabled fails mysteriously with it enforcing. Here&apos;s how to read audit.log, generate a targeted policy module, and fix the actual denial instead of disabling protection.</description><pubDate>Mon, 06 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>fix</category><category>selinux</category><category>security</category></item><item><title>Fixing Bluetooth Connectivity Issues on macOS</title><link>https://danielcosenza.com/posts/mac-fix-bluetooth-issues</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-fix-bluetooth-issues</guid><description>A Bluetooth device won&apos;t connect, keeps dropping, or macOS doesn&apos;t see it at all. Here&apos;s a systematic path through the most common causes before resorting to a full reset.</description><pubDate>Mon, 06 Jul 2026 00:00:00 GMT</pubDate><category>macOS</category><category>fix</category><category>bluetooth</category><category>hardware</category></item><item><title>How to Set Up RetroArch and Install Libretro Cores</title><link>https://danielcosenza.com/posts/rg-howto-retroarch-setup</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-howto-retroarch-setup</guid><description>A complete walkthrough from a fresh RetroArch install to a properly configured, playable core — including the two steps most first-time setups skip.</description><pubDate>Mon, 06 Jul 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>howto</category><category>retroarch</category><category>libretro</category><category>setup</category></item><item><title>Fixing INACCESSIBLE_BOOT_DEVICE on Windows</title><link>https://danielcosenza.com/posts/win-fix-inaccessible-boot-device</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-fix-inaccessible-boot-device</guid><description>Windows blue-screens with INACCESSIBLE_BOOT_DEVICE right at startup, before the desktop ever loads. Here&apos;s how to diagnose whether it&apos;s a driver, disk, or boot configuration problem from Recovery.</description><pubDate>Mon, 06 Jul 2026 00:00:00 GMT</pubDate><category>Windows</category><category>fix</category><category>bsod</category><category>boot</category></item><item><title>Fixing Terraform Provider Version Conflicts</title><link>https://danielcosenza.com/posts/devops-fix-terraform-provider-conflicts</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-fix-terraform-provider-conflicts</guid><description>terraform init fails with incompatible provider version constraints, or plan produces unexpected changes after an update. Here&apos;s how to read the constraint error and pin versions correctly across a team.</description><pubDate>Sun, 05 Jul 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>fix</category><category>terraform</category><category>providers</category></item><item><title>Fixing DOSLFN Long Filename Problems on FreeDOS</title><link>https://danielcosenza.com/posts/dos-fix-doslfn-issues</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-fix-doslfn-issues</guid><description>Long filenames show up truncated to 8.3 format in some programs but not others, even with DOSLFN loaded. This is expected, driver-specific behavior — here&apos;s how to tell which programs actually support it.</description><pubDate>Sun, 05 Jul 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>fix</category><category>doslfn</category><category>filenames</category></item><item><title>How to Set Up a Web Server on FreeBSD with nginx</title><link>https://danielcosenza.com/posts/fb-howto-nginx-webserver</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-howto-nginx-webserver</guid><description>A complete walkthrough installing nginx, enabling it as a proper rc.conf-managed service, and serving a first site — the FreeBSD-idiomatic way, not a generic Linux tutorial adapted.</description><pubDate>Sun, 05 Jul 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>howto</category><category>nginx</category><category>webserver</category></item><item><title>Fixing a Broken GRUB2 Configuration After a Failed Update</title><link>https://danielcosenza.com/posts/lx-fix-grub2-broken-config</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-fix-grub2-broken-config</guid><description>A kernel update left the system unable to boot into any menu entry, or grub-mkconfig fails outright. Here&apos;s how to regenerate a working configuration from a rescue environment.</description><pubDate>Sun, 05 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>fix</category><category>grub</category><category>boot</category></item><item><title>Fixing &apos;Startup Disk Full&apos; on macOS When Files Don&apos;t Add Up</title><link>https://danielcosenza.com/posts/mac-fix-storage-full</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-fix-storage-full</guid><description>About This Mac says the disk is nearly full, but manually adding up visible file sizes doesn&apos;t come close. Here&apos;s how to find what&apos;s actually consuming space, including what Finder normally hides.</description><pubDate>Sun, 05 Jul 2026 00:00:00 GMT</pubDate><category>macOS</category><category>fix</category><category>storage</category><category>disk-space</category></item><item><title>Fixing a Game That Runs Too Fast or Too Slow in an Emulator</title><link>https://danielcosenza.com/posts/rg-fix-wrong-emulation-speed</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-fix-wrong-emulation-speed</guid><description>The game runs, but noticeably faster or slower than it should — usually a frame-timing or region mismatch, not a broken core, and quick to isolate once you know where to look.</description><pubDate>Sun, 05 Jul 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>fix</category><category>performance</category><category>timing</category><category>retroarch</category></item><item><title>Fixing Windows Activation Errors</title><link>https://danielcosenza.com/posts/win-fix-activation-errors</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-fix-activation-errors</guid><description>Windows reports it isn&apos;t activated, or a specific error code appears after a hardware change or reinstall. Here&apos;s how to read the error code and apply the right fix instead of guessing.</description><pubDate>Sun, 05 Jul 2026 00:00:00 GMT</pubDate><category>Windows</category><category>fix</category><category>activation</category><category>licensing</category></item><item><title>HashiCorp&apos;s License Change Sparks the OpenTofu Fork</title><link>https://danielcosenza.com/posts/devops-news-opentofu-fork</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-news-opentofu-fork</guid><description>HashiCorp moved Terraform to the Business Source License on August 10, 2023; within six weeks, a community fork called OpenTF (soon renamed OpenTofu) had gathered 33,000 GitHub stars and joined the Linux Foundation.</description><pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>news</category><category>terraform</category><category>opentofu</category><category>licensing</category></item><item><title>FreeDOS Turns 25, and Jim Hall Tells the Origin Story Again</title><link>https://danielcosenza.com/posts/dos-news-freedos-25th-anniversary</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-news-freedos-25th-anniversary</guid><description>Marking a quarter-century since the June 1994 announcement, FreeDOS&apos;s 25th anniversary in 2019 brought renewed attention from Slashdot, Opensource.com, and Linux Journal to a project still actively releasing new versions.</description><pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>news</category><category>freedos</category><category>anniversary</category></item><item><title>Fixing pf State Table Exhaustion on FreeBSD</title><link>https://danielcosenza.com/posts/fb-fix-pf-state-table-full</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-fix-pf-state-table-full</guid><description>New connections start silently failing on a busy firewall, and pfctl reports the state table is full. Here&apos;s how to confirm it and size the table correctly for real traffic levels.</description><pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>fix</category><category>pf</category><category>firewall</category></item><item><title>SELinux vs. AppArmor: Mandatory Access Control on Linux</title><link>https://danielcosenza.com/posts/lx-mac-security</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-mac-security</guid><description>How SELinux&apos;s label-based policy and AppArmor&apos;s path-based profiles both extend Linux&apos;s discretionary permission model, and how to work with each day to day.</description><pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>selinux</category><category>apparmor</category><category>security</category><category>linux</category></item><item><title>PREEMPT_RT Real-Time Patches Merge Into Mainline Linux</title><link>https://danielcosenza.com/posts/lx-news-preempt-rt-merged</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-news-preempt-rt-merged</guid><description>Announced by Linus Torvalds in September 2024 and landing in kernel 6.12, PREEMPT_RT ended nearly two decades as an out-of-tree patchset — real-time Linux no longer needs a custom kernel build.</description><pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>news</category><category>kernel</category><category>real-time</category><category>preempt-rt</category></item><item><title>macOS High Sierra Makes APFS the Default Filesystem</title><link>https://danielcosenza.com/posts/mac-news-high-sierra-apfs</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-news-high-sierra-apfs</guid><description>Released September 25, 2017, High Sierra automatically converted flash-storage Macs to Apple File System — the biggest filesystem transition on the Mac in nearly two decades.</description><pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate><category>macOS</category><category>news</category><category>apfs</category><category>high-sierra</category><category>filesystem</category></item><item><title>Microsoft Open-Sources Windows Terminal and the Console Host</title><link>https://danielcosenza.com/posts/win-news-terminal-open-source</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-news-terminal-open-source</guid><description>Announced at Build 2019 and pushed to GitHub on May 3, 2019, Windows Terminal brought tabs and modern rendering to the Windows command line — while making both it and the underlying console host genuinely open source.</description><pubDate>Sat, 04 Jul 2026 00:00:00 GMT</pubDate><category>Windows</category><category>news</category><category>windows-terminal</category><category>open-source</category></item><item><title>Kubernetes Removes Dockershim in Version 1.24</title><link>https://danielcosenza.com/posts/devops-news-dockershim-removed</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-news-dockershim-removed</guid><description>Deprecated in December 2020 and fully removed in the April 2022 release of Kubernetes 1.24, dockershim&apos;s removal ended direct Docker Engine support in kubelet — a roughly 16-month migration window the project deliberately built in.</description><pubDate>Fri, 03 Jul 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>news</category><category>kubernetes</category><category>dockershim</category></item><item><title>Microsoft Declares MS-DOS 6.22 and Earlier Obsolete</title><link>https://danielcosenza.com/posts/dos-news-msdos-end-of-support</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-news-msdos-end-of-support</guid><description>On December 31, 2001, Microsoft stopped supporting and patching MS-DOS 6.22 and older versions — though DOS embedded within Windows 95/98/Me lingered in support for years afterward.</description><pubDate>Fri, 03 Jul 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>news</category><category>ms-dos</category><category>end-of-life</category></item><item><title>Fixing a Corrupted GPT Boot Partition on FreeBSD</title><link>https://danielcosenza.com/posts/fb-fix-boot-partition-corruption</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-fix-boot-partition-corruption</guid><description>FreeBSD won&apos;t boot and the loader can&apos;t find the boot partition. Here&apos;s how to inspect and repair the GPT partition table from a live/rescue environment.</description><pubDate>Fri, 03 Jul 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>fix</category><category>boot</category><category>gpt</category></item><item><title>IBM Completes Its $34 Billion Acquisition of Red Hat</title><link>https://danielcosenza.com/posts/lx-news-ibm-redhat</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-news-ibm-redhat</guid><description>Announced October 28, 2018 and closed July 9, 2019, IBM&apos;s purchase of Red Hat was the largest software acquisition in history at the time — and a direct bet on hybrid cloud built around Linux and open source.</description><pubDate>Fri, 03 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>news</category><category>red-hat</category><category>ibm</category><category>business</category></item><item><title>The Mac App Store Opens, Bringing iOS-Style Distribution to the Desktop</title><link>https://danielcosenza.com/posts/mac-news-app-store-launch</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-news-app-store-launch</guid><description>Launched January 6, 2011 with over 1,000 apps, the Mac App Store brought one-click purchase, download, and install to the Mac — and logged a million downloads within its first 24 hours.</description><pubDate>Fri, 03 Jul 2026 00:00:00 GMT</pubDate><category>macOS</category><category>news</category><category>app-store</category><category>distribution</category></item><item><title>Fixing a Controller That Isn&apos;t Detected in Your Emulator</title><link>https://danielcosenza.com/posts/rg-fix-controller-not-detected</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-fix-controller-not-detected</guid><description>The controller works fine in other software, but your emulator doesn&apos;t see it — or sees it, but maps buttons incorrectly. Here&apos;s how to isolate where the problem actually is.</description><pubDate>Fri, 03 Jul 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>fix</category><category>controller</category><category>retroarch</category><category>input</category></item><item><title>Windows 10 Launches as a Free Upgrade for 190 Countries</title><link>https://danielcosenza.com/posts/win-news-windows-10</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-news-windows-10</guid><description>Released July 29, 2015 as a free upgrade for Windows 7 and 8.1 users, Windows 10 reached over 75 million devices within a month — a deliberate bet on rapid adoption over per-copy revenue.</description><pubDate>Fri, 03 Jul 2026 00:00:00 GMT</pubDate><category>Windows</category><category>news</category><category>windows-10</category><category>release</category></item><item><title>Docker Donates containerd to the Cloud Native Computing Foundation</title><link>https://danielcosenza.com/posts/devops-news-containerd-donated</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-news-containerd-donated</guid><description>Accepted as an incubating CNCF project on March 29, 2017, containerd split out the core container-runtime functionality from Docker itself — becoming the shared runtime foundation much of the ecosystem, including Kubernetes, later standardized on.</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>news</category><category>containerd</category><category>cncf</category></item><item><title>Jim Hall Posts the PD-DOS Announcement That Became FreeDOS</title><link>https://danielcosenza.com/posts/dos-news-pd-dos-announcement</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-news-pd-dos-announcement</guid><description>On June 29, 1994, a Usenet post to comp.os.msdos.apps proposing a public-domain DOS kicked off what would be renamed Free-DOS weeks later — a direct response to Microsoft&apos;s plans to fold MS-DOS into Windows 95.</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>news</category><category>freedos</category><category>jim-hall</category><category>history</category></item><item><title>Fixing ZFS ARC Consuming All Available RAM on FreeBSD</title><link>https://danielcosenza.com/posts/fb-fix-zfs-arc-memory</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-fix-zfs-arc-memory</guid><description>ZFS looks like it&apos;s eating every gigabyte of memory on the system. This is the Adaptive Replacement Cache working as designed — here&apos;s how to confirm that and tune it if it&apos;s genuinely a problem.</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>fix</category><category>zfs</category><category>memory</category></item><item><title>Linux Kernel 2.6.0 Ships, Redefining Scalability and Preemption</title><link>https://danielcosenza.com/posts/lx-news-260-release</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-news-260-release</guid><description>Released December 17, 2003, the 2.6 series brought in-kernel preemption, NPTL threading, SELinux, and support for far larger process/user counts — the foundation the kernel built the next two decades on.</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>Linux</category><category>news</category><category>kernel</category><category>release</category></item><item><title>Apple Introduces Boot Camp, Letting Intel Macs Run Windows XP</title><link>https://danielcosenza.com/posts/mac-news-bootcamp</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-news-bootcamp</guid><description>Released as a public beta on April 5, 2006, Boot Camp let Intel-based Macs dual-boot Windows XP just months after Apple&apos;s architecture transition began — a striking bet on cross-platform flexibility.</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>macOS</category><category>news</category><category>boot-camp</category><category>windows</category><category>intel</category></item><item><title>Fixing Audio Crackling and Stuttering in Emulators</title><link>https://danielcosenza.com/posts/rg-fix-audio-crackling</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-fix-audio-crackling</guid><description>The game runs and looks fine, but the audio pops, crackles, or stutters. This is almost always an audio buffer or sync problem, not a broken emulator core.</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>fix</category><category>audio</category><category>retroarch</category><category>performance</category></item><item><title>Windows 7 Launches, Repairing Vista&apos;s Reputation</title><link>https://danielcosenza.com/posts/win-news-windows-7</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-news-windows-7</guid><description>Released to manufacturing July 22, 2009 and to the public October 22, 2009, Windows 7 refined Vista&apos;s foundations into a release widely regarded as one of Microsoft&apos;s most successful, eventually selling over 630 million copies.</description><pubDate>Thu, 02 Jul 2026 00:00:00 GMT</pubDate><category>Windows</category><category>news</category><category>windows-7</category><category>release</category></item><item><title>FreeBSD 10.0 Ships with Clang as Default Compiler and Introduces bhyve</title><link>https://danielcosenza.com/posts/fb-news-100-clang</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-news-100-clang</guid><description>Announced January 20, 2014, FreeBSD 10.0 replaced GCC with Clang/LLVM as the default system compiler on major architectures and debuted bhyve, the project&apos;s native hypervisor.</description><pubDate>Wed, 01 Jul 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>news</category><category>clang</category><category>bhyve</category><category>toolchain</category></item><item><title>FreeBSD Release Engineering: -CURRENT, -STABLE, and Shipping Releases</title><link>https://danielcosenza.com/posts/fb-release-eng</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-release-eng</guid><description>How FreeBSD&apos;s branch model turns ongoing kernel development into predictable, supported releases.</description><pubDate>Wed, 01 Jul 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>release-engineering</category><category>development</category><category>freebsd</category></item><item><title>RetroArch 1.0.0.0 Ships Simultaneously on Seven Platforms</title><link>https://danielcosenza.com/posts/rg-news-retroarch-10</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-news-retroarch-10</guid><description>On January 11, 2014, RetroArch&apos;s first stable 1.0 release launched at once across OS X, Android, iOS, PS3, Xbox 360, Wii, and GameCube — with Windows following weeks later.</description><pubDate>Wed, 01 Jul 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>news</category><category>retroarch</category><category>libretro</category></item><item><title>The FreeBSD Foundation Is Founded</title><link>https://danielcosenza.com/posts/fb-news-foundation-founded</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-news-foundation-founded</guid><description>Created by developer Justin Gibbs on March 15, 2000 as a 501(c)(3) non-profit, the Foundation gave FreeBSD a legal entity for funding development, licensing Java binaries, and sponsoring the project&apos;s growth.</description><pubDate>Tue, 30 Jun 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>news</category><category>freebsd-foundation</category><category>governance</category></item><item><title>FreeBSD 2.0 Ships, Finally Free of AT&amp;T Code</title><link>https://danielcosenza.com/posts/fb-news-20-release</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-news-20-release</guid><description>Released November 22, 1994 and rebased on 4.4BSD-Lite, FreeBSD 2.0 was the first release legally clear of the USL v. BSDi lawsuit&apos;s shadow — the release that secured the project&apos;s legal future.</description><pubDate>Mon, 29 Jun 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>news</category><category>freebsd</category><category>history</category><category>lawsuit</category></item><item><title>PCSX2 Becomes the First Emulator to Boot a PlayStation 2 Game</title><link>https://danielcosenza.com/posts/rg-news-pcsx2-first-boot</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-news-pcsx2-first-boot</guid><description>Started in 2001 by developers Linuzappz and Shadow, PCSX2 reached a defining early milestone on December 19, 2002: the first successful boot of a PS2 game on any emulator.</description><pubDate>Mon, 29 Jun 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>news</category><category>pcsx2</category><category>playstation-2</category></item><item><title>Building Lightweight VMs with Apple&apos;s Virtualization.framework</title><link>https://danielcosenza.com/posts/mac-virtualization</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-virtualization</guid><description>How Virtualization.framework exposes Apple Silicon&apos;s hardware virtualization support directly to Swift applications, without a third-party hypervisor.</description><pubDate>Sun, 28 Jun 2026 00:00:00 GMT</pubDate><category>macOS</category><category>virtualization</category><category>apple-silicon</category><category>macos</category></item><item><title>Dolphin Becomes the First Emulator to Run Commercial GameCube Games</title><link>https://danielcosenza.com/posts/rg-news-dolphin-gamecube</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-news-dolphin-gamecube</guid><description>Released September 22, 2003 by Henrik Rydgård and F|RES, Dolphin was the first GameCube emulator to successfully run commercial titles — and later expanded to cover the Wii as well.</description><pubDate>Fri, 26 Jun 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>news</category><category>dolphin</category><category>gamecube</category><category>wii</category></item><item><title>Building and Loading Your Own Linux Kernel Module</title><link>https://danielcosenza.com/posts/lx-kernel-modules</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-kernel-modules</guid><description>A minimal but complete walkthrough of writing, building, loading, and communicating with a Linux kernel module.</description><pubDate>Thu, 25 Jun 2026 00:00:00 GMT</pubDate><category>Linux</category><category>kernel-modules</category><category>kernel</category><category>development</category><category>linux</category></item><item><title>BIOS Files, Copyright, and the Law: The Real Rules Behind Emulation</title><link>https://danielcosenza.com/posts/rg-bios-legal</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-bios-legal</guid><description>Emulator software and the copyrighted files it needs to run are two separate legal questions with two separate answers — and conflating them is where most confusion about &apos;is emulation legal&apos; comes from.</description><pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>legal</category><category>bios</category><category>copyright</category><category>retrogaming</category></item><item><title>Building a Custom FreeBSD Kernel from Source</title><link>https://danielcosenza.com/posts/fb-kernel</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-kernel</guid><description>Why and how to build a custom FreeBSD kernel configuration, from copying GENERIC to installing the result.</description><pubDate>Mon, 22 Jun 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>kernel</category><category>build</category><category>sysadmin</category><category>freebsd</category></item><item><title>Controller Input Latency: Tracing the Path From Button to Pixel</title><link>https://danielcosenza.com/posts/rg-input-latency</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-input-latency</guid><description>The time between pressing a button and seeing the result on screen passes through more stages than most players realize — and emulation adds a few of its own on top of the ones a real console already had.</description><pubDate>Mon, 22 Jun 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>input-lag</category><category>latency</category><category>retrogaming</category></item><item><title>Automating macOS with launchd Agents and Daemons</title><link>https://danielcosenza.com/posts/mac-launchd-agents</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-launchd-agents</guid><description>A practical guide to writing, installing, and debugging your own scheduled or persistent launchd jobs.</description><pubDate>Fri, 19 Jun 2026 00:00:00 GMT</pubDate><category>macOS</category><category>launchd</category><category>automation</category><category>macos</category></item><item><title>Emulation vs. Virtualization: Two Different Ways to Run Foreign Software</title><link>https://danielcosenza.com/posts/rg-emulation-vs-virtualization</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-emulation-vs-virtualization</guid><description>Both let you run software that wasn&apos;t written for the machine in front of you — but one translates between two different instruction sets, and the other doesn&apos;t translate at all.</description><pubDate>Fri, 19 Jun 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>emulation</category><category>virtualization</category><category>architecture</category><category>retrogaming</category></item><item><title>CRT Shaders and Integer Scaling: Making Old Pixels Look Right on New Screens</title><link>https://danielcosenza.com/posts/rg-crt-shaders</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-crt-shaders</guid><description>A 256x224 image was never meant to be seen as a grid of hard, discrete pixels. Recreating how it actually looked on the display it was designed for is its own genuine technical problem.</description><pubDate>Wed, 17 Jun 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>shaders</category><category>crt</category><category>scaling</category><category>retrogaming</category></item><item><title>Reading /proc and /sys: The Kernel&apos;s Window into Userspace</title><link>https://danielcosenza.com/posts/lx-proc-sys</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-proc-sys</guid><description>How procfs and sysfs expose live kernel state as ordinary files, and the specific paths worth knowing for debugging a running system.</description><pubDate>Tue, 16 Jun 2026 00:00:00 GMT</pubDate><category>Linux</category><category>proc</category><category>sysfs</category><category>kernel</category><category>linux</category></item><item><title>ROM Dumping and Preservation: From Cartridge to File</title><link>https://danielcosenza.com/posts/rg-rom-dumping</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-rom-dumping</guid><description>A ROM file isn&apos;t downloaded into existence — it&apos;s read directly off the memory chips inside a real cartridge, with the same care a museum takes digitizing a fragile original.</description><pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>rom-dumping</category><category>preservation</category><category>retrogaming</category></item><item><title>FreeBSD Networking Internals: Interfaces, Routing, and netstat</title><link>https://danielcosenza.com/posts/fb-networking</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-networking</guid><description>How FreeBSD names and configures network interfaces, manages routing tables, and exposes the tools to inspect both.</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>networking</category><category>routing</category><category>sysadmin</category><category>freebsd</category></item><item><title>Rollback Netcode: How Online Fighting Games Hide Latency</title><link>https://danielcosenza.com/posts/rg-rollback-netcode</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-rollback-netcode</guid><description>The internet has unavoidable latency. Rollback netcode doesn&apos;t eliminate it — it hides it, by having both players simulate a guessed future and quietly correcting the guess when reality disagrees.</description><pubDate>Fri, 12 Jun 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>netcode</category><category>rollback</category><category>multiplayer</category><category>retrogaming</category></item><item><title>macOS App Sandboxing and Entitlements Explained</title><link>https://danielcosenza.com/posts/mac-sandboxing</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-sandboxing</guid><description>How the App Sandbox confines what an application can access by default, and how entitlements grant it specific, narrow exceptions.</description><pubDate>Wed, 10 Jun 2026 00:00:00 GMT</pubDate><category>macOS</category><category>sandboxing</category><category>entitlements</category><category>macos</category></item><item><title>Inside Libretro: The Core/Frontend Architecture Behind RetroArch</title><link>https://danielcosenza.com/posts/rg-libretro-architecture</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-libretro-architecture</guid><description>RetroArch supports dozens of systems without reimplementing shaders, netplay, or rewind for each one — because the emulator logic and everything around it are deliberately different programs.</description><pubDate>Wed, 10 Jun 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>libretro</category><category>retroarch</category><category>architecture</category><category>retrogaming</category></item><item><title>How Save States Work: Serializing an Entire Virtual Machine to Disk</title><link>https://danielcosenza.com/posts/rg-savestates</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-savestates</guid><description>A save state isn&apos;t a save file — it&apos;s a snapshot of literally everything, taken mid-execution. That distinction is why it&apos;s so powerful, and why it&apos;s so fragile across versions.</description><pubDate>Mon, 08 Jun 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>savestates</category><category>emulation</category><category>retrogaming</category></item><item><title>APT, DNF, and Pacman Compared: Package Management Across Linux Distributions</title><link>https://danielcosenza.com/posts/lx-pkg-managers</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-pkg-managers</guid><description>How Debian&apos;s APT, Fedora&apos;s DNF, and Arch&apos;s Pacman differ in dependency resolution, package format, and update philosophy.</description><pubDate>Sun, 07 Jun 2026 00:00:00 GMT</pubDate><category>Linux</category><category>package-management</category><category>apt</category><category>dnf</category><category>linux</category></item><item><title>Cycle-Accurate Emulation and Why It&apos;s So Hard to Get Right</title><link>https://danielcosenza.com/posts/rg-cycle-accurate</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-cycle-accurate</guid><description>&apos;Runs the game correctly&apos; and &apos;matches the original hardware cycle-for-cycle&apos; are very different bars. Most emulation clears the first one easily — the second one has taken decades of reverse engineering.</description><pubDate>Fri, 05 Jun 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>cycle-accurate</category><category>emulation</category><category>retrogaming</category><category>accuracy</category></item><item><title>bhyve: FreeBSD&apos;s Native Type-2 Hypervisor</title><link>https://danielcosenza.com/posts/fb-bhyve</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-bhyve</guid><description>How bhyve uses hardware virtualization extensions to run guest operating systems, and the moving parts behind a running virtual machine.</description><pubDate>Thu, 04 Jun 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>bhyve</category><category>virtualization</category><category>hypervisor</category><category>freebsd</category></item><item><title>How CPU Emulation Works: Interpretation vs. Dynamic Recompilation</title><link>https://danielcosenza.com/posts/rg-cpu-emulation</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-cpu-emulation</guid><description>Every emulator has to answer the same question: how do you run code written for one processor on a completely different one? Two fundamentally different answers, and why most serious emulators eventually need both.</description><pubDate>Wed, 03 Jun 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>emulation</category><category>cpu</category><category>retrogaming</category><category>performance</category></item><item><title>The macOS Boot Process: From Firmware to the Login Window</title><link>https://danielcosenza.com/posts/mac-boot</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-boot</guid><description>How Apple Silicon&apos;s secure boot chain differs from Intel Macs, and the stages both go through to reach loginwindow.</description><pubDate>Mon, 01 Jun 2026 00:00:00 GMT</pubDate><category>macOS</category><category>boot</category><category>apple-silicon</category><category>macos</category></item><item><title>The History of Emulation: Preserving Gaming&apos;s Hardware Before It&apos;s Gone</title><link>https://danielcosenza.com/posts/rg-history</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-history</guid><description>Why software emulation of games and computers became its own discipline, who started the project most responsible for legitimizing it, and how a single court case settled whether any of this was legal in the first place.</description><pubDate>Mon, 01 Jun 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>history</category><category>emulation</category><category>retrogaming</category><category>preservation</category></item><item><title>How to Set Up a Haiku Development Environment and Build From Source</title><link>https://danielcosenza.com/posts/hk-howto-dev-environment</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-howto-dev-environment</guid><description>A complete walkthrough getting the native toolchain installed, writing a minimal Kit-based application, and building Haiku itself from source.</description><pubDate>Sat, 30 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>howto</category><category>development</category><category>kits-api</category><category>haiku</category></item><item><title>eBPF Explained: Safe, Programmable Observability in the Linux Kernel</title><link>https://danielcosenza.com/posts/lx-ebpf</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-ebpf</guid><description>How eBPF lets sandboxed, verified programs run inside the kernel, and why that changed what&apos;s possible for tracing, networking, and security tooling.</description><pubDate>Fri, 29 May 2026 00:00:00 GMT</pubDate><category>Linux</category><category>ebpf</category><category>observability</category><category>kernel</category><category>linux</category></item><item><title>How to Use BFS Attributes and Live Queries Day to Day</title><link>https://danielcosenza.com/posts/hk-howto-live-queries</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-howto-live-queries</guid><description>A practical guide to viewing and setting file attributes, building a saved query, and turning that query into a self-updating virtual folder in Tracker.</description><pubDate>Thu, 28 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>howto</category><category>bfs</category><category>live-queries</category><category>haiku</category></item><item><title>Understanding GEOM: FreeBSD&apos;s Modular Storage Framework</title><link>https://danielcosenza.com/posts/fb-geom</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-geom</guid><description>How GEOM&apos;s graph of providers and consumers underlies partitioning, RAID, encryption, and disk labels on FreeBSD.</description><pubDate>Tue, 26 May 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>geom</category><category>storage</category><category>kernel</category><category>freebsd</category></item><item><title>How to Install and Manage Software with HaikuDepot and pkgman</title><link>https://danielcosenza.com/posts/hk-howto-package-management</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-howto-package-management</guid><description>A complete walkthrough of both the graphical and command-line paths to installing, updating, and removing software on Haiku.</description><pubDate>Tue, 26 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>howto</category><category>packagefs</category><category>haikudepot</category><category>haiku</category></item><item><title>How to Install Haiku on Real Hardware or a Virtual Machine</title><link>https://danielcosenza.com/posts/hk-howto-install</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-howto-install</guid><description>A complete walkthrough from downloading the image to a working desktop, including why starting in a VM is worth doing even if your real goal is bare-metal installation.</description><pubDate>Mon, 25 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>howto</category><category>installation</category><category>haiku</category></item><item><title>Fixing Display and Graphics Driver Issues in Haiku</title><link>https://danielcosenza.com/posts/hk-fix-display-driver</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-fix-display-driver</guid><description>A blank screen, wrong resolution, or corrupted graphics on boot almost always traces to the graphics driver — and Haiku&apos;s safe-mode VESA fallback is the fastest way to confirm it.</description><pubDate>Sat, 23 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>fix</category><category>display</category><category>drivers</category><category>haiku</category></item><item><title>System Integrity Protection: What SIP Actually Locks Down on macOS</title><link>https://danielcosenza.com/posts/mac-sip</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-sip</guid><description>What SIP protects, how it&apos;s enforced below the level of the root user, and the legitimate reasons to disable it temporarily.</description><pubDate>Sat, 23 May 2026 00:00:00 GMT</pubDate><category>macOS</category><category>sip</category><category>security</category><category>macos</category></item><item><title>Fixing Package Conflicts and Broken Dependencies in Haiku</title><link>https://danielcosenza.com/posts/hk-fix-package-conflicts</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-fix-package-conflicts</guid><description>A package won&apos;t install, or the system misbehaves after an update. Because packagefs never unpacks files, most of these problems are fixable by manipulating package activation directly, without touching the file system.</description><pubDate>Thu, 21 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>fix</category><category>packagefs</category><category>haiku</category></item><item><title>Device Drivers and Hardware Support in Haiku</title><link>https://danielcosenza.com/posts/hk-device-drivers</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-device-drivers</guid><description>Haiku&apos;s driver model inherits BeOS&apos;s modular, hot-pluggable design — but as a much smaller, community-driven project, its hardware support has real, practical limits worth understanding upfront.</description><pubDate>Wed, 20 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>drivers</category><category>hardware</category><category>haiku</category></item><item><title>The Linux Virtual File System: One Interface, Many Filesystems</title><link>https://danielcosenza.com/posts/lx-vfs</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-vfs</guid><description>How the VFS layer lets ext4, XFS, Btrfs, NFS, and procfs all answer to the same read/write/open calls.</description><pubDate>Wed, 20 May 2026 00:00:00 GMT</pubDate><category>Linux</category><category>vfs</category><category>filesystems</category><category>kernel</category><category>linux</category></item><item><title>Fixing Haiku Boot Failures with Safe Mode</title><link>https://danielcosenza.com/posts/hk-fix-boot-failure</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-fix-boot-failure</guid><description>Haiku won&apos;t boot normally, or hangs partway through. Here&apos;s how to use the boot loader&apos;s safe mode options to isolate which specific subsystem is actually at fault.</description><pubDate>Tue, 19 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>fix</category><category>boot</category><category>haiku</category></item><item><title>How to Use the Deskbar and Workspaces Effectively on Haiku</title><link>https://danielcosenza.com/posts/hk-howto-deskbar-workspaces</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-howto-deskbar-workspaces</guid><description>A complete walkthrough Haiku&apos;s Deskbar (its taskbar/menu equivalent) and its multiple-workspace system — features inherited directly from BeOS, still central to how Haiku is meant to be used day to day.</description><pubDate>Tue, 19 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>howto</category><category>deskbar</category><category>workspaces</category><category>haiku</category></item><item><title>How to Back Up and Restore a Haiku System</title><link>https://danielcosenza.com/posts/hk-howto-backup-restore</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-howto-backup-restore</guid><description>A complete walkthrough backing up a Haiku installation using BFS attributes and standard file-copying tools, plus what to know about restoring packagefs-managed system data specifically.</description><pubDate>Mon, 18 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>howto</category><category>backup</category><category>bfs</category><category>haiku</category></item><item><title>Why Haiku Isn&apos;t a Unix Clone (and What That Actually Means)</title><link>https://danielcosenza.com/posts/hk-not-unix</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-not-unix</guid><description>Haiku runs on POSIX-like conventions and supports plenty of Unix software, but underneath that compatibility layer, it isn&apos;t descended from Unix at all — its kernel, API, and core assumptions come from somewhere else entirely.</description><pubDate>Mon, 18 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>architecture</category><category>haiku</category><category>unix</category></item><item><title>Inside the FreeBSD Boot Process: BIOS/UEFI, the Loader, and init</title><link>https://danielcosenza.com/posts/fb-boot</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-boot</guid><description>A stage-by-stage walkthrough of how a FreeBSD machine goes from power-on to a login prompt, and where to intervene at each step.</description><pubDate>Sun, 17 May 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>boot</category><category>loader</category><category>kernel</category><category>freebsd</category></item><item><title>How to Set Up Multiple User Accounts on Haiku</title><link>https://danielcosenza.com/posts/hk-howto-multiple-users</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-howto-multiple-users</guid><description>A complete walkthrough creating additional user accounts on Haiku, understanding its current multi-user maturity, and what to expect versus a fully mature multi-user Unix system.</description><pubDate>Sun, 17 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>howto</category><category>users</category><category>permissions</category><category>haiku</category></item><item><title>Haiku R1/Beta 5 Ships as the Project&apos;s Most Polished Release Yet</title><link>https://danielcosenza.com/posts/hk-news-r1-beta5</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-news-r1-beta5</guid><description>Released September 13, 2024, Beta 5 closed out nearly 350 bug and enhancement tickets, added a full GDB 15 port, and brought USB audio device support to the system.</description><pubDate>Sun, 17 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>news</category><category>haiku</category><category>release</category></item><item><title>How to Use Haiku&apos;s Terminal and Shell Environment</title><link>https://danielcosenza.com/posts/hk-howto-terminal-shell</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-howto-terminal-shell</guid><description>A complete walkthrough Haiku&apos;s Terminal application and its bash-based shell — familiar to anyone with Unix experience, with a few Haiku-specific tools worth knowing about.</description><pubDate>Sat, 16 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>howto</category><category>terminal</category><category>shell</category><category>haiku</category></item><item><title>Live Queries: Searching Haiku&apos;s File System Like a Database</title><link>https://danielcosenza.com/posts/hk-live-queries</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-live-queries</guid><description>A live query doesn&apos;t just return files matching a condition once — it keeps the result set current automatically, as files are created, changed, or deleted, for as long as the query stays open.</description><pubDate>Sat, 16 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>live-queries</category><category>bfs</category><category>haiku</category></item><item><title>Fixing Audio That Isn&apos;t Working on Haiku</title><link>https://danielcosenza.com/posts/hk-fix-audio-not-working</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-fix-audio-not-working</guid><description>No sound at all, from any application, usually traces to the Media Server or a driver-detection problem — here&apos;s how to distinguish the two and work through each.</description><pubDate>Fri, 15 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>fix</category><category>audio</category><category>media-kit</category><category>haiku</category></item><item><title>Haiku&apos;s Package Management System Goes Live</title><link>https://danielcosenza.com/posts/hk-news-packagefs-launch</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-news-packagefs-launch</guid><description>After a design drafted in January 2011 and development under funded contracts, Haiku&apos;s packagefs-based package management shipped in September 2013 — reshaping how software gets installed on the system.</description><pubDate>Fri, 15 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>news</category><category>haiku</category><category>packagefs</category></item><item><title>Fixing Networking and DHCP Issues on Haiku</title><link>https://danielcosenza.com/posts/hk-fix-networking-dhcp</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-fix-networking-dhcp</guid><description>No network connectivity, or an interface that won&apos;t get an IP address — here&apos;s how to work through Haiku&apos;s networking stack from hardware detection through DHCP.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>fix</category><category>networking</category><category>dhcp</category><category>haiku</category></item><item><title>The Media Kit: Real-Time Audio and Video in Haiku</title><link>https://danielcosenza.com/posts/hk-media-kit</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-media-kit</guid><description>Haiku&apos;s Media Kit models audio and video processing as a graph of connected nodes passing buffers to each other in real time — the same conceptual model professional media software still uses today.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>media-kit</category><category>audio</category><category>video</category><category>haiku</category></item><item><title>How Homebrew Actually Works: Formulae, Casks, and the Cellar</title><link>https://danielcosenza.com/posts/mac-homebrew</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-homebrew</guid><description>What actually happens on disk when you brew install something, and why Homebrew&apos;s design differs from a traditional Linux package manager.</description><pubDate>Thu, 14 May 2026 00:00:00 GMT</pubDate><category>macOS</category><category>homebrew</category><category>package-management</category><category>macos</category></item><item><title>Fixing Tracker Crashes and Hangs on Haiku</title><link>https://danielcosenza.com/posts/hk-fix-tracker-crash</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-fix-tracker-crash</guid><description>Haiku&apos;s desktop/file-manager shell has stopped responding or crashed. Because Tracker is just another BLooper-based application, restarting it doesn&apos;t require rebooting the whole system.</description><pubDate>Wed, 13 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>fix</category><category>tracker</category><category>haiku</category></item><item><title>Haiku R1/Alpha 1 Ships as the Project&apos;s First Public Release</title><link>https://danielcosenza.com/posts/hk-news-r1-alpha1</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-news-r1-alpha1</guid><description>On September 14, 2009, eight years after OpenBeOS began, Haiku shipped its first version the public could actually download and boot — as a live CD, something BeOS itself never offered.</description><pubDate>Wed, 13 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>news</category><category>haiku</category><category>release</category></item><item><title>Haiku&apos;s Boot Process: From Boot Loader to Desktop</title><link>https://danielcosenza.com/posts/hk-boot-process</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-boot-process</guid><description>A walk through what actually happens between powering on a Haiku machine and reaching a usable desktop, and where things most commonly go wrong along the way.</description><pubDate>Tue, 12 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>boot</category><category>haiku</category><category>kernel</category></item><item><title>Haiku R1/Beta 4 Closes Out 2022 with Broad Stability Work</title><link>https://danielcosenza.com/posts/hk-news-r1-beta4</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-news-r1-beta4</guid><description>Released December 23, 2022, roughly a year and a half after Beta 3, Haiku&apos;s fourth beta continued the project&apos;s pattern of steady, incremental refinement toward an eventual non-beta R1 release.</description><pubDate>Tue, 12 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>news</category><category>haiku</category><category>release</category></item><item><title>Haiku R1/Beta 2 Ships in the Middle of a Global Lockdown</title><link>https://danielcosenza.com/posts/hk-news-r1-beta2</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-news-r1-beta2</guid><description>Released June 9, 2020, roughly two years after Beta 1, Haiku&apos;s second beta arrived as much of the world was under pandemic lockdown — with volunteer development continuing largely uninterrupted.</description><pubDate>Mon, 11 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>news</category><category>haiku</category><category>release</category></item><item><title>Demystifying the Linux Boot Process: From Firmware to systemd</title><link>https://danielcosenza.com/posts/lx-boot</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-boot</guid><description>A stage-by-stage tour from power-on firmware through GRUB, the kernel, initramfs, and systemd reaching a running system.</description><pubDate>Mon, 11 May 2026 00:00:00 GMT</pubDate><category>Linux</category><category>boot</category><category>grub</category><category>kernel</category><category>linux</category></item><item><title>Haiku, Inc. Incorporates as a Nonprofit to Fund Development</title><link>https://danielcosenza.com/posts/hk-news-haiku-inc-founded</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-news-haiku-inc-founded</guid><description>Founded in July 2003 by Michael Phipps in Rochester, New York, Haiku, Inc. gave the OpenBeOS/Haiku project a formal nonprofit structure for accepting donations and funding contractor work.</description><pubDate>Sun, 10 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>news</category><category>haiku-inc</category><category>nonprofit</category></item><item><title>Packagefs: Instant, Reversible Package Activation Without Unpacking</title><link>https://danielcosenza.com/posts/hk-packagefs</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-packagefs</guid><description>Installing a package on Haiku doesn&apos;t copy files onto disk at all — it mounts the package itself as part of a virtual file system, which is exactly what makes activation and rollback instant.</description><pubDate>Sun, 10 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>packagefs</category><category>package-management</category><category>haiku</category></item><item><title>How to Set Up RetroAchievements in RetroArch</title><link>https://danielcosenza.com/posts/rg-howto-retroachievements</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-howto-retroachievements</guid><description>A complete walkthrough enabling RetroAchievements — earning genuine achievements for classic games that never had them, verified against actual game memory state to prevent cheating.</description><pubDate>Sat, 09 May 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>howto</category><category>retroachievements</category><category>retroarch</category></item><item><title>Configuring pf on FreeBSD: A Practical Guide to Packet Filtering</title><link>https://danielcosenza.com/posts/fb-pf-firewall</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-pf-firewall</guid><description>How pf&apos;s rule evaluation model, tables, and anchors fit together on FreeBSD, with a ruleset you can adapt for a real host.</description><pubDate>Fri, 08 May 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>pf</category><category>firewall</category><category>networking</category><category>freebsd</category></item><item><title>Haiku&apos;s Kit-Based API: Application, Interface, Storage, and Media Kits</title><link>https://danielcosenza.com/posts/hk-kits-api</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-kits-api</guid><description>Haiku&apos;s native C++ API isn&apos;t one monolithic library — it&apos;s a set of separately-scoped &apos;Kits,&apos; each owning one concern, that together define what writing software for Haiku actually looks like.</description><pubDate>Fri, 08 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>api</category><category>kits</category><category>haiku</category><category>architecture</category></item><item><title>How to Build and Use Custom Bezels and Overlays in RetroArch</title><link>https://danielcosenza.com/posts/rg-howto-bezels-overlays</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-howto-bezels-overlays</guid><description>A complete walkthrough adding decorative bezels around the emulated screen — arcade cabinet art, console-themed frames, or your own custom artwork — and building one from scratch.</description><pubDate>Fri, 08 May 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>howto</category><category>bezels</category><category>overlays</category><category>retroarch</category></item><item><title>How to Configure Per-Game Overrides in RetroArch</title><link>https://danielcosenza.com/posts/rg-howto-per-game-overrides</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-howto-per-game-overrides</guid><description>A complete walkthrough setting up configuration that applies only to a specific game, or only to a specific core, without changing your global defaults for everything else.</description><pubDate>Thu, 07 May 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>howto</category><category>retroarch</category><category>configuration</category></item><item><title>The Looper/Handler Pattern: Message-Passing at the Core of Every Haiku App</title><link>https://danielcosenza.com/posts/hk-looper-handler</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-looper-handler</guid><description>Haiku applications don&apos;t poll for events in a manual loop — they define Handlers, and let a Looper thread dispatch messages to the right one automatically.</description><pubDate>Wed, 06 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>looper-handler</category><category>api</category><category>haiku</category><category>architecture</category></item><item><title>How to Set Up a RetroPie Retro Gaming Console on a Raspberry Pi</title><link>https://danielcosenza.com/posts/rg-howto-retropie-setup</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-howto-retropie-setup</guid><description>A complete walkthrough turning a Raspberry Pi into a dedicated retro gaming console — from flashing the image to configuring controllers and adding your first games.</description><pubDate>Wed, 06 May 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>howto</category><category>retropie</category><category>raspberry-pi</category></item><item><title>Code Signing, Notarization, and Gatekeeper on macOS</title><link>https://danielcosenza.com/posts/mac-codesigning</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-codesigning</guid><description>How macOS verifies that an application hasn&apos;t been tampered with and hasn&apos;t been flagged as malware, before it&apos;s ever allowed to launch.</description><pubDate>Tue, 05 May 2026 00:00:00 GMT</pubDate><category>macOS</category><category>code-signing</category><category>notarization</category><category>security</category><category>macos</category></item><item><title>Fixing Stretched or Wrong Aspect Ratio in Emulators</title><link>https://danielcosenza.com/posts/rg-fix-aspect-ratio-stretching</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-fix-aspect-ratio-stretching</guid><description>Characters look too wide, too thin, or the image doesn&apos;t fill the screen correctly. This almost always traces to a pixel-aspect-ratio setting, not the emulator core rendering incorrectly.</description><pubDate>Tue, 05 May 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>fix</category><category>aspect-ratio</category><category>display</category><category>retroarch</category></item><item><title>BFS: How Haiku&apos;s File System Doubles as a Database</title><link>https://danielcosenza.com/posts/hk-bfs</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-bfs</guid><description>BFS treats extended attributes as first-class, indexable data — turning ordinary file queries into something closer to a database lookup, decades before this became a mainstream idea.</description><pubDate>Mon, 04 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>bfs</category><category>filesystem</category><category>haiku</category></item><item><title>Fixing Save States That Won&apos;t Load After a Core Update</title><link>https://danielcosenza.com/posts/rg-fix-savestate-incompatible</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-fix-savestate-incompatible</guid><description>A save state that worked before an update now fails to load, or loads into a corrupted state. This is expected behavior given how save states actually work — here&apos;s what to do about it.</description><pubDate>Mon, 04 May 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>fix</category><category>savestates</category><category>retroarch</category></item><item><title>Fixing a Black Screen or a Game That Won&apos;t Launch in an Emulator</title><link>https://danielcosenza.com/posts/rg-fix-black-screen-wont-launch</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-fix-black-screen-wont-launch</guid><description>The core loads but the game never appears — just a black screen, or an immediate crash back to the menu. Here&apos;s how to isolate whether it&apos;s the ROM, the core, or your video configuration.</description><pubDate>Sun, 03 May 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>fix</category><category>troubleshooting</category><category>retroarch</category></item><item><title>The Haiku Kernel: A Modular, Pervasively Multithreaded Design</title><link>https://danielcosenza.com/posts/hk-kernel</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-kernel</guid><description>Haiku&apos;s kernel wasn&apos;t built as a Unix variant with threading bolted on — it was designed around threads as the fundamental unit of execution from the very beginning.</description><pubDate>Sat, 02 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>kernel</category><category>haiku</category><category>architecture</category></item><item><title>Control Groups (cgroup v2) Explained: Limiting and Accounting for Resources</title><link>https://danielcosenza.com/posts/lx-cgroups</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-cgroups</guid><description>How cgroup v2&apos;s unified hierarchy replaces v1&apos;s tangled controller mounts, and how to read and write limits directly through the filesystem.</description><pubDate>Sat, 02 May 2026 00:00:00 GMT</pubDate><category>Linux</category><category>cgroups</category><category>containers</category><category>kernel</category><category>linux</category></item><item><title>GGPO Rollback Netcode Goes Open Source</title><link>https://danielcosenza.com/posts/rg-news-ggpo-opensource</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-news-ggpo-opensource</guid><description>On October 9, 2019, Tony Cannon released GGPO under the MIT license, removing the licensing friction that had limited its adoption and helping cement rollback as the fighting game industry&apos;s netcode standard.</description><pubDate>Sat, 02 May 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>news</category><category>ggpo</category><category>netcode</category></item><item><title>The History of Haiku: BeOS&apos;s Second Life as an Open-Source OS</title><link>https://danielcosenza.com/posts/hk-history</link><guid isPermaLink="true">https://danielcosenza.com/posts/hk-history</guid><description>How a well-regarded but commercially unsuccessful 1990s operating system, killed off by an acquisition, was rebuilt from scratch as open source by the community that refused to let it disappear.</description><pubDate>Fri, 01 May 2026 00:00:00 GMT</pubDate><category>Haiku OS</category><category>history</category><category>haiku</category><category>beos</category></item><item><title>Nintendo Switch Online Launches with a Built-In NES Emulator</title><link>https://danielcosenza.com/posts/rg-news-switch-online-nes</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-news-switch-online-nes</guid><description>On September 19, 2018, Nintendo&apos;s own subscription service began shipping with 20 emulated NES games included — a striking contrast to the company&apos;s history of aggressively pursuing unauthorized ROM sites.</description><pubDate>Fri, 01 May 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>news</category><category>nintendo</category><category>emulation</category></item><item><title>MAME and MESS Officially Merge into One Unified Emulator</title><link>https://danielcosenza.com/posts/rg-news-mame-mess-merge</link><guid isPermaLink="true">https://danielcosenza.com/posts/rg-news-mame-mess-merge</guid><description>On May 27, 2015, the MESS project — which had emulated computers and consoles separately from MAME&apos;s arcade focus for over a decade — formally merged into MAME, realizing a unification effort that had been prototyped for years.</description><pubDate>Thu, 30 Apr 2026 00:00:00 GMT</pubDate><category>Retrogaming</category><category>news</category><category>mame</category><category>mess</category><category>emulation</category></item><item><title>How to Set Up Kubernetes NetworkPolicies</title><link>https://danielcosenza.com/posts/devops-howto-network-policies</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-howto-network-policies</guid><description>A complete walkthrough restricting which pods can talk to which — Kubernetes allows all pod-to-pod traffic by default, and NetworkPolicies are how you actually change that.</description><pubDate>Wed, 29 Apr 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>howto</category><category>networkpolicy</category><category>kubernetes</category><category>security</category></item><item><title>FreeBSD Jails: Lightweight OS-Level Virtualization Done Right</title><link>https://danielcosenza.com/posts/fb-jails</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-jails</guid><description>How FreeBSD jails partition a single kernel into isolated userlands, and why they predate Linux containers by more than a decade.</description><pubDate>Wed, 29 Apr 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>jails</category><category>virtualization</category><category>security</category><category>freebsd</category></item><item><title>How to Implement GitOps with ArgoCD</title><link>https://danielcosenza.com/posts/devops-howto-gitops-argocd</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-howto-gitops-argocd</guid><description>A complete walkthrough setting up ArgoCD so a Git repository becomes the single source of truth for your cluster state — deploy by merging, not by running kubectl commands manually.</description><pubDate>Tue, 28 Apr 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>howto</category><category>gitops</category><category>argocd</category><category>kubernetes</category></item><item><title>How to Write a Helm Chart from Scratch</title><link>https://danielcosenza.com/posts/devops-howto-write-helm-chart</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-howto-write-helm-chart</guid><description>A complete walkthrough building a Helm chart for a simple application — templates, values, and the conventions that make a chart genuinely reusable rather than a one-off wrapper around raw YAML.</description><pubDate>Mon, 27 Apr 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>howto</category><category>helm</category><category>kubernetes</category><category>packaging</category></item><item><title>How to Set Up Prometheus and Grafana Monitoring for Kubernetes</title><link>https://danielcosenza.com/posts/devops-howto-prometheus-grafana</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-howto-prometheus-grafana</guid><description>A complete walkthrough deploying Prometheus to scrape cluster metrics and Grafana to visualize them — the standard monitoring pairing across the cloud-native ecosystem.</description><pubDate>Sun, 26 Apr 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>howto</category><category>prometheus</category><category>grafana</category><category>monitoring</category></item><item><title>APFS Explained: Snapshots, Clones, and Space Sharing in Apple&apos;s Filesystem</title><link>https://danielcosenza.com/posts/mac-apfs</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-apfs</guid><description>How APFS&apos;s container/volume model, copy-on-write clones, and snapshots replaced HFS+ across every Apple platform.</description><pubDate>Sun, 26 Apr 2026 00:00:00 GMT</pubDate><category>macOS</category><category>apfs</category><category>filesystems</category><category>storage</category><category>macos</category></item><item><title>Fixing a Failed or Stuck Helm Release</title><link>https://danielcosenza.com/posts/devops-fix-helm-release-failed</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-fix-helm-release-failed</guid><description>A helm upgrade fails partway, or a release gets stuck in &apos;pending-upgrade&apos; state, blocking every subsequent operation on it. Here&apos;s how to actually recover instead of getting stuck retrying the same failing command.</description><pubDate>Sat, 25 Apr 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>fix</category><category>helm</category><category>kubernetes</category></item><item><title>Fixing ImagePullBackOff in Kubernetes</title><link>https://danielcosenza.com/posts/devops-fix-imagepullbackoff</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-fix-imagepullbackoff</guid><description>A pod can&apos;t start because Kubernetes can&apos;t pull its container image — the fix depends entirely on which of a handful of specific causes is actually responsible, from a typo to a private registry auth problem.</description><pubDate>Fri, 24 Apr 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>fix</category><category>kubernetes</category><category>containers</category></item><item><title>Fixing Pods Stuck in Pending State in Kubernetes</title><link>https://danielcosenza.com/posts/devops-fix-pending-pods</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-fix-pending-pods</guid><description>A pod stuck Pending means the scheduler couldn&apos;t place it anywhere — here&apos;s how to read the actual reason from pod events instead of guessing at resource, taint, or affinity problems.</description><pubDate>Thu, 23 Apr 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>fix</category><category>kubernetes</category><category>scheduling</category></item><item><title>Linux Namespaces: The Kernel Primitive Behind Every Container</title><link>https://danielcosenza.com/posts/lx-namespaces</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-namespaces</guid><description>How each of the Linux kernel&apos;s namespace types isolates a specific global resource, and why containers are just processes with a curated set of them.</description><pubDate>Thu, 23 Apr 2026 00:00:00 GMT</pubDate><category>Linux</category><category>namespaces</category><category>containers</category><category>kernel</category><category>linux</category></item><item><title>Prometheus Joins the CNCF as Its Second Hosted Project</title><link>https://danielcosenza.com/posts/devops-news-prometheus-cncf</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-news-prometheus-cncf</guid><description>Accepted on May 9, 2016, Prometheus became the CNCF&apos;s second project after Kubernetes itself — an early, deliberate signal that observability, not just orchestration, belonged at the center of the cloud-native stack.</description><pubDate>Wed, 22 Apr 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>news</category><category>prometheus</category><category>cncf</category><category>observability</category></item><item><title>Helm Is Born at the First KubeCon, Modeled on Homebrew and apt</title><link>https://danielcosenza.com/posts/devops-news-helm-created</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-news-helm-created</guid><description>Started as a Deis project on October 15, 2015, Helm brought familiar package-manager concepts to Kubernetes — later merging with Google&apos;s Deployment Manager to become the Helm 2 the ecosystem would standardize on.</description><pubDate>Tue, 21 Apr 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>news</category><category>helm</category><category>kubernetes</category><category>packaging</category></item><item><title>The Open Container Initiative Launches, Standardizing Container Formats</title><link>https://danielcosenza.com/posts/devops-news-oci-founded</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-news-oci-founded</guid><description>Founded June 22, 2015 by Docker, CoreOS, and a broad industry coalition, the OCI set out to make container images and runtimes portable across tools and vendors rather than tied to any one implementation.</description><pubDate>Mon, 20 Apr 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>news</category><category>oci</category><category>containers</category><category>standards</category></item><item><title>ZFS on FreeBSD: Pools, Datasets, and Snapshots Explained</title><link>https://danielcosenza.com/posts/fb-zfs</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-zfs</guid><description>How ZFS&apos;s storage pools, datasets, and copy-on-write snapshots fit together on FreeBSD, with the commands you&apos;ll actually use day to day.</description><pubDate>Mon, 20 Apr 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>zfs</category><category>storage</category><category>filesystems</category><category>freebsd</category></item><item><title>How to Partition a Disk with FDISK on FreeDOS</title><link>https://danielcosenza.com/posts/dos-howto-fdisk-partition</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-howto-fdisk-partition</guid><description>A complete walkthrough creating a primary partition, an extended partition with logical drives, and setting the active boot partition — the way DOS disks have always been organized.</description><pubDate>Sun, 19 Apr 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>howto</category><category>fdisk</category><category>partitioning</category><category>freedos</category></item><item><title>How to Set Up CD-ROM Access on FreeDOS with MSCDEX</title><link>https://danielcosenza.com/posts/dos-howto-cdrom-mscdex</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-howto-cdrom-mscdex</guid><description>A complete walkthrough getting a CD-ROM drive recognized and assigned a drive letter on FreeDOS — the driver-plus-MSCDEX layering that DOS CD-ROM support was always built on.</description><pubDate>Sat, 18 Apr 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>howto</category><category>cdrom</category><category>mscdex</category><category>freedos</category></item><item><title>How to Set Up a Development Environment on FreeDOS</title><link>https://danielcosenza.com/posts/dos-howto-dev-environment</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-howto-dev-environment</guid><description>A complete walkthrough installing a C compiler and assembler on FreeDOS and building your first program — for anyone wanting to write software for DOS rather than just run it.</description><pubDate>Fri, 17 Apr 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>howto</category><category>development</category><category>open-watcom</category><category>freedos</category></item><item><title>Understanding launchd: macOS&apos;s Init System and Service Manager</title><link>https://danielcosenza.com/posts/mac-launchd</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-launchd</guid><description>How launchd unified boot-time initialization, service supervision, and scheduled tasks into a single declarative system on macOS.</description><pubDate>Fri, 17 Apr 2026 00:00:00 GMT</pubDate><category>macOS</category><category>launchd</category><category>init</category><category>macos</category></item><item><title>How to Set Up FreeDOS for Playing Classic DOS Games</title><link>https://danielcosenza.com/posts/dos-howto-play-classic-games</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-howto-play-classic-games</guid><description>A complete walkthrough getting sound, mouse, and memory configured correctly for DOS-era gaming — the three things almost every classic game setup guide assumes you already have working.</description><pubDate>Thu, 16 Apr 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>howto</category><category>gaming</category><category>sound-blaster</category><category>freedos</category></item><item><title>Fixing Sound Blaster Configuration Issues on FreeDOS</title><link>https://danielcosenza.com/posts/dos-fix-soundblaster-config</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-fix-soundblaster-config</guid><description>A DOS game or application reports no sound, or the wrong sound, almost always tracing back to a mismatch between the BLASTER environment variable and the card&apos;s actual jumper or Plug-and-Play settings.</description><pubDate>Wed, 15 Apr 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>fix</category><category>sound-blaster</category><category>audio</category><category>hardware</category></item><item><title>Fixing &apos;Bad Command or File Name&apos; Errors on FreeDOS</title><link>https://danielcosenza.com/posts/dos-fix-bad-command</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-fix-bad-command</guid><description>This message covers several genuinely different underlying causes — a typo, a missing PATH entry, a missing file extension, or a corrupted COMMAND.COM. Here&apos;s how to tell them apart.</description><pubDate>Tue, 14 Apr 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>fix</category><category>command-line</category><category>troubleshooting</category></item><item><title>Understanding systemd: Units, Targets, and the Modern Linux Init System</title><link>https://danielcosenza.com/posts/lx-systemd</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-systemd</guid><description>How systemd&apos;s unit model replaced sequential init scripts with declarative, dependency-driven service management.</description><pubDate>Tue, 14 Apr 2026 00:00:00 GMT</pubDate><category>Linux</category><category>systemd</category><category>init</category><category>linux</category></item><item><title>Fixing Printer (LPT Port) Problems on FreeDOS</title><link>https://danielcosenza.com/posts/dos-fix-printer-lpt</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-fix-printer-lpt</guid><description>A DOS program can&apos;t print, or output is garbled — usually a port configuration, IRQ, or cable-mode mismatch, all diagnosable without any special tools.</description><pubDate>Mon, 13 Apr 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>fix</category><category>printer</category><category>lpt</category><category>hardware</category></item><item><title>FreeDOS 1.4 Ships After Three Years, Refreshing Core Tools</title><link>https://danielcosenza.com/posts/dos-news-14-release</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-news-14-release</guid><description>Released April 5, 2025, FreeDOS 1.4 updated FreeCOM, FDISK, and the mTCP networking suite, while deliberately keeping the same kernel as 1.3 until the next kernel version is fully tested.</description><pubDate>Sun, 12 Apr 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>news</category><category>freedos</category><category>release</category></item><item><title>Microsoft Open-Sources the Original MS-DOS on GitHub</title><link>https://danielcosenza.com/posts/dos-news-msdos-opensource</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-news-msdos-opensource</guid><description>In September 2018, Microsoft re-released MS-DOS 1.25 and 2.11&apos;s source code on GitHub under the MIT license — a genuinely open release, four years after a 2014 version that was source-available but not truly open.</description><pubDate>Sat, 11 Apr 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>news</category><category>ms-dos</category><category>open-source</category></item><item><title>The FreeBSD Ports Collection vs. pkg: Choosing (and Combining) the Right Tool</title><link>https://danielcosenza.com/posts/fb-ports-vs-pkg</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-ports-vs-pkg</guid><description>A practical comparison of the FreeBSD Ports Collection and the pkg binary package manager, and how to use both together without breaking your system.</description><pubDate>Sat, 11 Apr 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>ports</category><category>pkg</category><category>package-management</category><category>freebsd</category></item><item><title>FreeDOS 1.1 Ships, Six Years After 1.0</title><link>https://danielcosenza.com/posts/dos-news-11-release</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-news-11-release</guid><description>Released January 2, 2012, FreeDOS 1.1 filled a long gap since the 1.0 release, refining package management and driver support without changing the project&apos;s core commitment to MS-DOS compatibility.</description><pubDate>Fri, 10 Apr 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>news</category><category>freedos</category><category>release</category></item><item><title>How to Set Up Automatic Backups with File History on Windows</title><link>https://danielcosenza.com/posts/win-howto-file-history-backup</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-howto-file-history-backup</guid><description>A complete walkthrough configuring File History for continuous, versioned backups of your personal files — and how to actually restore a previous version when you need one.</description><pubDate>Thu, 09 Apr 2026 00:00:00 GMT</pubDate><category>Windows</category><category>howto</category><category>file-history</category><category>backup</category></item><item><title>Observability in Cloud-Native Systems: Metrics, Logs, and Traces</title><link>https://danielcosenza.com/posts/devops-observability</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-observability</guid><description>How the three pillars of observability complement each other, and why having all three matters more than maximizing any single one.</description><pubDate>Wed, 08 Apr 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>observability</category><category>monitoring</category><category>cloud-native</category></item><item><title>How to Configure Windows Terminal and PowerShell Profiles</title><link>https://danielcosenza.com/posts/win-howto-terminal-profiles</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-howto-terminal-profiles</guid><description>A complete walkthrough customizing Windows Terminal&apos;s settings.json and your PowerShell profile script — so your preferred shell, prompt, and startup behavior are there every time you open a terminal.</description><pubDate>Wed, 08 Apr 2026 00:00:00 GMT</pubDate><category>Windows</category><category>howto</category><category>windows-terminal</category><category>powershell</category></item><item><title>How to Configure Remote Desktop Securely on Windows</title><link>https://danielcosenza.com/posts/win-howto-remote-desktop</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-howto-remote-desktop</guid><description>A complete walkthrough enabling Remote Desktop the right way — Network Level Authentication, a non-default port, and firewall scoping — rather than exposing RDP openly to the internet.</description><pubDate>Tue, 07 Apr 2026 00:00:00 GMT</pubDate><category>Windows</category><category>howto</category><category>remote-desktop</category><category>rdp</category><category>security</category></item><item><title>How to Set Up and Use Windows Sandbox</title><link>https://danielcosenza.com/posts/win-howto-windows-sandbox</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-howto-windows-sandbox</guid><description>A complete walkthrough enabling Windows Sandbox for running untrusted applications in a clean, disposable, isolated environment — no separate VM image to manage.</description><pubDate>Mon, 06 Apr 2026 00:00:00 GMT</pubDate><category>Windows</category><category>howto</category><category>windows-sandbox</category><category>isolation</category></item><item><title>FreeDOS vs. MS-DOS: Compatibility, Differences, and Why It Matters</title><link>https://danielcosenza.com/posts/dos-vs-msdos</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-vs-msdos</guid><description>Where FreeDOS achieves genuine binary compatibility with MS-DOS, where it deliberately diverges, and what that means for running real DOS software.</description><pubDate>Sun, 05 Apr 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>freedos</category><category>ms-dos</category><category>compatibility</category></item><item><title>Fixing Corrupted System Files on Windows with SFC and DISM</title><link>https://danielcosenza.com/posts/win-fix-sfc-dism-corruption</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-fix-sfc-dism-corruption</guid><description>Windows is misbehaving in ways that don&apos;t point at any specific application — SFC and DISM are the two built-in tools for finding and repairing damaged system files, and they work together, not as alternatives.</description><pubDate>Sun, 05 Apr 2026 00:00:00 GMT</pubDate><category>Windows</category><category>fix</category><category>sfc</category><category>dism</category><category>system-files</category></item><item><title>Fixing &apos;The User Profile Service Failed the Logon&apos; on Windows</title><link>https://danielcosenza.com/posts/win-fix-user-profile-service-failed</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-fix-user-profile-service-failed</guid><description>Windows won&apos;t let you log in and shows this specific error — almost always a corrupted user profile registry entry, with a fix that doesn&apos;t require deleting your files.</description><pubDate>Sat, 04 Apr 2026 00:00:00 GMT</pubDate><category>Windows</category><category>fix</category><category>user-profile</category><category>registry</category></item><item><title>Fixing Slow Windows Startup Times</title><link>https://danielcosenza.com/posts/win-fix-slow-startup</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-fix-slow-startup</guid><description>Boot times creeping up over time usually trace to a specific, identifiable cause — too many startup programs, a failing drive, or a driver delaying boot — not general &apos;Windows rot.&apos;</description><pubDate>Fri, 03 Apr 2026 00:00:00 GMT</pubDate><category>Windows</category><category>fix</category><category>startup</category><category>performance</category></item><item><title>Windows XP Unifies the Consumer and Business Windows Lines</title><link>https://danielcosenza.com/posts/win-news-xp-release</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-news-xp-release</guid><description>Released to retail October 25, 2001, Windows XP was the first consumer edition of Windows built on the NT kernel rather than the MS-DOS-based 9x line — ending the split between Windows 9x/Me and Windows NT/2000 for good.</description><pubDate>Thu, 02 Apr 2026 00:00:00 GMT</pubDate><category>Windows</category><category>news</category><category>windows-xp</category><category>kernel</category></item><item><title>Understanding WSL2: How Windows Runs a Real Linux Kernel</title><link>https://danielcosenza.com/posts/win-wsl2</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-wsl2</guid><description>How WSL2 differs fundamentally from WSL1&apos;s syscall translation, running an actual Linux kernel in a lightweight, tightly-integrated VM.</description><pubDate>Thu, 02 Apr 2026 00:00:00 GMT</pubDate><category>Windows</category><category>wsl2</category><category>linux</category><category>virtualization</category><category>windows</category></item><item><title>Windows PowerShell 1.0 Ships, Ending Its Life as &apos;Monad&apos;</title><link>https://danielcosenza.com/posts/win-news-powershell-10</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-news-powershell-10</guid><description>First previewed under the codename Monad in 2003, renamed Windows PowerShell in April 2006, and finally released to the web that November — replacing decades of cmd.exe-centric scripting with a genuine object-oriented shell.</description><pubDate>Wed, 01 Apr 2026 00:00:00 GMT</pubDate><category>Windows</category><category>news</category><category>powershell</category><category>scripting</category></item><item><title>Windows 95 Launches with a $300 Million Marketing Campaign</title><link>https://danielcosenza.com/posts/win-news-95-launch</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-news-95-launch</guid><description>Released August 24, 1995, Windows 95 brought the Start menu and taskbar to the mainstream — backed by one of the largest software marketing campaigns ever mounted, including a Rolling Stones-licensed ad and Jay Leno at the Redmond launch event.</description><pubDate>Tue, 31 Mar 2026 00:00:00 GMT</pubDate><category>Windows</category><category>news</category><category>windows-95</category><category>launch</category></item><item><title>Infrastructure as Code: Terraform State, Drift, and Idempotency</title><link>https://danielcosenza.com/posts/devops-iac-terraform</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-iac-terraform</guid><description>Why Terraform&apos;s state file is the actual source of truth behind every plan and apply, and how drift, locking, and idempotency all follow from that design.</description><pubDate>Mon, 30 Mar 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>terraform</category><category>iac</category><category>cloud</category></item><item><title>How to Migrate to a New Mac with Migration Assistant</title><link>https://danielcosenza.com/posts/mac-howto-migration-assistant</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-howto-migration-assistant</guid><description>A complete walkthrough moving your entire setup — apps, files, accounts, and settings — to a new Mac, plus what to check afterward when something doesn&apos;t carry over cleanly.</description><pubDate>Mon, 30 Mar 2026 00:00:00 GMT</pubDate><category>macOS</category><category>howto</category><category>migration-assistant</category><category>setup</category></item><item><title>How to Reset NVRAM and SMC on a Mac</title><link>https://danielcosenza.com/posts/mac-howto-nvram-smc</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-howto-nvram-smc</guid><description>A complete walkthrough resetting NVRAM and the System Management Controller — two different low-level resets, solving different categories of problems, on both Apple Silicon and Intel Macs.</description><pubDate>Sun, 29 Mar 2026 00:00:00 GMT</pubDate><category>macOS</category><category>howto</category><category>nvram</category><category>smc</category><category>troubleshooting</category></item><item><title>How to Create and Manage APFS Snapshots Manually with tmutil</title><link>https://danielcosenza.com/posts/mac-howto-apfs-snapshots</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-howto-apfs-snapshots</guid><description>A complete walkthrough creating, listing, mounting, and cleaning up APFS local snapshots directly — the same mechanism Time Machine uses, available for manual, ad-hoc use.</description><pubDate>Sat, 28 Mar 2026 00:00:00 GMT</pubDate><category>macOS</category><category>howto</category><category>apfs</category><category>snapshots</category><category>tmutil</category></item><item><title>Understanding Interrupts on FreeDOS: INT 21h and the DOS API</title><link>https://danielcosenza.com/posts/dos-interrupts</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-interrupts</guid><description>How DOS exposes its entire system call interface through the software interrupt mechanism, with INT 21h as the single most important entry point.</description><pubDate>Fri, 27 Mar 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>interrupts</category><category>dos-api</category><category>freedos</category></item><item><title>How to Set Up FileVault Full-Disk Encryption on macOS</title><link>https://danielcosenza.com/posts/mac-howto-filevault</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-howto-filevault</guid><description>A complete walkthrough enabling FileVault, understanding your recovery key options, and what to do if you&apos;re locked out — before you need it, not after.</description><pubDate>Fri, 27 Mar 2026 00:00:00 GMT</pubDate><category>macOS</category><category>howto</category><category>filevault</category><category>encryption</category><category>security</category></item><item><title>Fixing Slow Time Machine Backups on macOS</title><link>https://danielcosenza.com/posts/mac-fix-slow-time-machine</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-fix-slow-time-machine</guid><description>A Time Machine backup that takes hours, or seems to hang at &apos;Preparing Backup,&apos; usually has an identifiable cause — here&apos;s how to find whether it&apos;s the first backup, local snapshots, or something else.</description><pubDate>Thu, 26 Mar 2026 00:00:00 GMT</pubDate><category>macOS</category><category>fix</category><category>time-machine</category><category>backup</category></item><item><title>Fixing a Mac Stuck on the Apple Logo or Stuck Rebooting</title><link>https://danielcosenza.com/posts/mac-fix-boot-loop</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-fix-boot-loop</guid><description>A Mac that won&apos;t get past the Apple logo, or keeps restarting in a loop, has a specific, ordered set of causes — here&apos;s how to work through them from least to most invasive.</description><pubDate>Wed, 25 Mar 2026 00:00:00 GMT</pubDate><category>macOS</category><category>fix</category><category>boot</category><category>troubleshooting</category></item><item><title>Fixing &apos;App Is Damaged and Can&apos;t Be Opened&apos; on macOS</title><link>https://danielcosenza.com/posts/mac-fix-gatekeeper-damaged</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-fix-gatekeeper-damaged</guid><description>The app isn&apos;t actually damaged in most cases — this is Gatekeeper&apos;s quarantine flag reacting to how the file was downloaded, and there&apos;s a legitimate, safe way to override it for software you trust.</description><pubDate>Tue, 24 Mar 2026 00:00:00 GMT</pubDate><category>macOS</category><category>fix</category><category>gatekeeper</category><category>security</category></item><item><title>The Windows Security Model: ACLs, Integrity Levels, and UAC</title><link>https://danielcosenza.com/posts/win-defender-security</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-defender-security</guid><description>How discretionary ACLs, mandatory integrity levels, and UAC&apos;s token-splitting combine to form Windows&apos; layered access control model.</description><pubDate>Tue, 24 Mar 2026 00:00:00 GMT</pubDate><category>Windows</category><category>security</category><category>uac</category><category>windows</category></item><item><title>Snow Leopard Ships as a Refinement Release, Dropping PowerPC Entirely</title><link>https://danielcosenza.com/posts/mac-news-snow-leopard</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-news-snow-leopard</guid><description>Released August 28, 2009, Mac OS X Snow Leopard was the first version built exclusively for Intel Macs — a deliberate stability and performance release rather than a showcase of new user-facing features.</description><pubDate>Mon, 23 Mar 2026 00:00:00 GMT</pubDate><category>macOS</category><category>news</category><category>macos</category><category>intel</category></item><item><title>Mac OS X Leopard Becomes an Officially Certified UNIX</title><link>https://danielcosenza.com/posts/mac-news-unix-certification</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-news-unix-certification</guid><description>On May 18, 2007, Leopard on Intel Macs became the first BSD-based operating system to earn Open Brand UNIX 03 certification — making &apos;Mac OS X is a real Unix&apos; a certified fact, not just a technical argument.</description><pubDate>Sun, 22 Mar 2026 00:00:00 GMT</pubDate><category>macOS</category><category>news</category><category>unix</category><category>certification</category></item><item><title>Container Runtime Internals: containerd, CRI-O, and the OCI Spec</title><link>https://danielcosenza.com/posts/devops-container-runtime</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-container-runtime</guid><description>How the OCI runtime and image specs standardized what a &apos;container&apos; actually is, and how containerd/CRI-O/runc fit together beneath Docker and Kubernetes.</description><pubDate>Sat, 21 Mar 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>containers</category><category>containerd</category><category>oci</category><category>kubernetes</category></item><item><title>Mac OS X Public Beta Lets Users Try Aqua and Darwin for the First Time</title><link>https://danielcosenza.com/posts/mac-news-public-beta</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-news-public-beta</guid><description>Released September 13, 2000 for $29.95, the &apos;Kodiak&apos; public beta gave Mac users their first hands-on look at preemptive multitasking, protected memory, and the Aqua interface before the final 10.0 release.</description><pubDate>Sat, 21 Mar 2026 00:00:00 GMT</pubDate><category>macOS</category><category>news</category><category>macos</category><category>public-beta</category></item><item><title>How to Tune Kernel Parameters on Linux with sysctl</title><link>https://danielcosenza.com/posts/lx-howto-sysctl-tuning</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-sysctl-tuning</guid><description>A complete walkthrough reading, changing, and persisting kernel runtime parameters — with a few of the most commonly tuned examples explained, not just listed.</description><pubDate>Fri, 20 Mar 2026 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>sysctl</category><category>kernel</category><category>tuning</category></item><item><title>How to Set Up Full-Disk Encryption on Linux with LUKS</title><link>https://danielcosenza.com/posts/lx-howto-luks-encryption</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-luks-encryption</guid><description>A complete walkthrough encrypting a disk or partition with LUKS, from initial setup through mounting it automatically (with a key file) at boot.</description><pubDate>Thu, 19 Mar 2026 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>luks</category><category>encryption</category><category>security</category></item><item><title>Running FreeDOS Today: Virtualization, Real Hardware, and Use Cases</title><link>https://danielcosenza.com/posts/dos-running-today</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-running-today</guid><description>The practical ways people actually run FreeDOS in 2026 — from firmware-flashing USB sticks to full virtual machines — and how to pick the right one.</description><pubDate>Wed, 18 Mar 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>freedos</category><category>virtualization</category><category>sysadmin</category></item><item><title>How to Debug a Program on Linux with strace</title><link>https://danielcosenza.com/posts/lx-howto-strace-debugging</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-strace-debugging</guid><description>A complete walkthrough using strace to see exactly which system calls a misbehaving program is making — often the fastest way to diagnose a problem with no useful log output at all.</description><pubDate>Wed, 18 Mar 2026 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>strace</category><category>debugging</category></item><item><title>How to Set Up LVM (Logical Volume Management) on Linux</title><link>https://danielcosenza.com/posts/lx-howto-lvm</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-lvm</guid><description>A complete walkthrough from raw disks to a mounted, resizable logical volume — physical volumes, volume groups, and logical volumes explained as you build them.</description><pubDate>Tue, 17 Mar 2026 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>lvm</category><category>storage</category></item><item><title>Fixing DNS Resolution Failures on Linux</title><link>https://danielcosenza.com/posts/lx-fix-dns-resolution</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-fix-dns-resolution</guid><description>Ping by IP works but hostnames don&apos;t resolve. Here&apos;s a systematic path through resolv.conf, systemd-resolved, and nsswitch.conf to find where resolution is actually breaking.</description><pubDate>Mon, 16 Mar 2026 00:00:00 GMT</pubDate><category>Linux</category><category>fix</category><category>dns</category><category>networking</category></item><item><title>Fixing &apos;Too Many Open Files&apos; Errors on Linux</title><link>https://danielcosenza.com/posts/lx-fix-too-many-open-files</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-fix-too-many-open-files</guid><description>An application errors out with EMFILE or ENFILE, even though the system clearly isn&apos;t out of resources in any obvious sense. Here&apos;s how to find and raise the actual limit involved.</description><pubDate>Sun, 15 Mar 2026 00:00:00 GMT</pubDate><category>Linux</category><category>fix</category><category>ulimit</category><category>file-descriptors</category></item><item><title>PowerShell Remoting and WinRM: Managing Windows at Scale</title><link>https://danielcosenza.com/posts/win-powershell-remoting</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-powershell-remoting</guid><description>How WinRM and PowerShell Remoting turn scattered single-machine administration into fleet-wide scripted management.</description><pubDate>Sun, 15 Mar 2026 00:00:00 GMT</pubDate><category>Windows</category><category>powershell</category><category>winrm</category><category>windows</category><category>sysadmin</category></item><item><title>Fixing High Load Average on Linux When CPU Usage Looks Normal</title><link>https://danielcosenza.com/posts/lx-fix-high-load-io-wait</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-fix-high-load-io-wait</guid><description>Load average is climbing but top shows plenty of idle CPU. This almost always means processes stuck waiting on I/O, not a CPU problem — here&apos;s how to actually find which one.</description><pubDate>Sat, 14 Mar 2026 00:00:00 GMT</pubDate><category>Linux</category><category>fix</category><category>performance</category><category>io</category></item><item><title>The Linux Foundation Forms from a Merger of Two Rival Consortiums</title><link>https://danielcosenza.com/posts/lx-news-foundation-formed</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-news-foundation-formed</guid><description>On January 22, 2007, the Open Source Development Labs and the Free Standards Group combined into the Linux Foundation, consolidating Linux&apos;s economic and standards-setting efforts under one organization.</description><pubDate>Fri, 13 Mar 2026 00:00:00 GMT</pubDate><category>Linux</category><category>news</category><category>linux-foundation</category><category>governance</category></item><item><title>Kubernetes Admission Controllers and Policy Enforcement</title><link>https://danielcosenza.com/posts/devops-admission-control</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-admission-control</guid><description>How admission controllers intercept API requests before they&apos;re persisted, and how OPA/Gatekeeper turn that hook into cluster-wide policy enforcement.</description><pubDate>Thu, 12 Mar 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>kubernetes</category><category>security</category><category>policy</category></item><item><title>Linus Torvalds Creates Git in 10 Days After a Licensing Dispute</title><link>https://danielcosenza.com/posts/lx-news-git-created</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-news-git-created</guid><description>When kernel developers lost free access to the proprietary BitKeeper in April 2005, Torvalds responded by writing an entirely new version control system himself — Git&apos;s first commit landed within days.</description><pubDate>Thu, 12 Mar 2026 00:00:00 GMT</pubDate><category>Linux</category><category>news</category><category>git</category><category>tooling</category></item><item><title>Linux Kernel 1.0.0 Ships, Marking It Production-Ready</title><link>https://danielcosenza.com/posts/lx-news-kernel-10</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-news-kernel-10</guid><description>Released March 14, 1994 at 176,250 lines of code, version 1.0 was the point Linus Torvalds and the community considered the kernel stable enough for production use.</description><pubDate>Wed, 11 Mar 2026 00:00:00 GMT</pubDate><category>Linux</category><category>news</category><category>kernel</category><category>release</category></item><item><title>How to Build and Host a Custom pkg Repository</title><link>https://danielcosenza.com/posts/fb-howto-pkg-repository</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-howto-pkg-repository</guid><description>A complete walkthrough building your own signed FreeBSD package repository — useful for internal packages, pinned versions, or a local mirror.</description><pubDate>Tue, 10 Mar 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>howto</category><category>pkg</category><category>package-management</category></item><item><title>FreeDOS Package Management: FDIMPLES and the FreeDOS Package Repository</title><link>https://danielcosenza.com/posts/dos-package-mgmt</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-package-mgmt</guid><description>How FreeDOS distributes and installs software as discrete packages, and the tools used to manage them, decades before Linux package managers existed.</description><pubDate>Mon, 09 Mar 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>package-management</category><category>freedos</category></item><item><title>How to Set Up a WireGuard VPN on FreeBSD</title><link>https://danielcosenza.com/posts/fb-howto-wireguard-vpn</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-howto-wireguard-vpn</guid><description>A complete walkthrough configuring a WireGuard tunnel on FreeBSD using the in-kernel wg driver, from key generation to a working peer-to-peer connection.</description><pubDate>Mon, 09 Mar 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>howto</category><category>wireguard</category><category>vpn</category><category>networking</category></item><item><title>How to Use ZFS Boot Environments with bectl for Safe Upgrades</title><link>https://danielcosenza.com/posts/fb-howto-boot-environments</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-howto-boot-environments</guid><description>A complete walkthrough creating a boot environment before a risky change, and rolling back to it instantly from the boot loader if something goes wrong.</description><pubDate>Sun, 08 Mar 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>howto</category><category>zfs</category><category>boot-environments</category></item><item><title>How to Manage FreeBSD Jails with iocage</title><link>https://danielcosenza.com/posts/fb-howto-iocage-jails</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-howto-iocage-jails</guid><description>A complete walkthrough creating, configuring, and managing jails using iocage — a much friendlier layer over raw jail.conf management.</description><pubDate>Sat, 07 Mar 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>howto</category><category>jails</category><category>iocage</category></item><item><title>Fixing an NFS Mount That Hangs Instead of Failing on FreeBSD</title><link>https://danielcosenza.com/posts/fb-fix-nfs-hang</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-fix-nfs-hang</guid><description>A command touching an NFS-mounted path just hangs forever instead of erroring out. This is expected default NFS behavior, not a bug — here&apos;s how to diagnose it and when to change it.</description><pubDate>Fri, 06 Mar 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>fix</category><category>nfs</category><category>networking</category></item><item><title>Windows Process and Thread Internals: Handles, Tokens, and Objects</title><link>https://danielcosenza.com/posts/win-process-internals</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-process-internals</guid><description>How the Windows kernel represents processes as containers of handles and a security token, and the tools to inspect both live.</description><pubDate>Fri, 06 Mar 2026 00:00:00 GMT</pubDate><category>Windows</category><category>process-internals</category><category>kernel</category><category>windows</category></item><item><title>Diagnosing a FreeBSD Kernel Panic from a Crash Dump</title><link>https://danielcosenza.com/posts/fb-fix-kernel-panic</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-fix-kernel-panic</guid><description>FreeBSD panicked and rebooted. Here&apos;s how to get the crash dump kgdb actually needs, and how to read it well enough to find the responsible driver or subsystem.</description><pubDate>Thu, 05 Mar 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>fix</category><category>kernel</category><category>debugging</category></item><item><title>Fixing FreeBSD Jail Networking When VNET Jails Can&apos;t Reach the Network</title><link>https://danielcosenza.com/posts/fb-fix-jail-networking</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-fix-jail-networking</guid><description>A jail starts fine but has no network connectivity, or can&apos;t reach the host — usually a VNET/epair configuration problem, not a jail bug.</description><pubDate>Wed, 04 Mar 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>fix</category><category>jails</category><category>networking</category></item><item><title>SLOs, SLIs, and Error Budgets: The Math Behind SRE Decision-Making</title><link>https://danielcosenza.com/posts/devops-slo-error-budget</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-slo-error-budget</guid><description>How Service Level Indicators, Objectives, and error budgets turn &apos;be reliable&apos; into a concrete, measurable number that actually drives engineering decisions.</description><pubDate>Tue, 03 Mar 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>sre</category><category>slo</category><category>reliability</category></item><item><title>pkgng Ships, Replacing FreeBSD&apos;s Aging pkg_* Tools</title><link>https://danielcosenza.com/posts/fb-news-pkgng</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-news-pkgng</guid><description>First released August 30, 2012 after two years of development, pkgng consolidated FreeBSD&apos;s fragmented package tools into a single command backed by a real database — and became official in FreeBSD 10.</description><pubDate>Tue, 03 Mar 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>news</category><category>pkg</category><category>package-management</category></item><item><title>FreeBSD Completes Its Migration from Subversion to Git</title><link>https://danielcosenza.com/posts/fb-news-git-migration</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-news-git-migration</guid><description>The base system&apos;s source repository moved to Git in December 2020, following the documentation repo by weeks and preceding the ports tree by several months.</description><pubDate>Mon, 02 Mar 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>news</category><category>git</category><category>release-engineering</category></item><item><title>FreeBSD 5.0 Ships with SMPng, the Start of Fine-Grained Kernel Locking</title><link>https://danielcosenza.com/posts/fb-news-smpng-50</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-news-smpng-50</guid><description>Released January 19, 2003, FreeBSD 5.0 began dismantling the single &apos;Giant Lock&apos; that had serialized most of the kernel, after years of SMPng project work.</description><pubDate>Sun, 01 Mar 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>news</category><category>kernel</category><category>smp</category></item><item><title>Device Drivers on FreeDOS: How .SYS Files Extend the Kernel</title><link>https://danielcosenza.com/posts/dos-device-drivers</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-device-drivers</guid><description>How character and block device drivers register with the DOS kernel through a standard request-header protocol, loaded declaratively from CONFIG.SYS.</description><pubDate>Sat, 28 Feb 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>device-drivers</category><category>kernel</category><category>freedos</category></item><item><title>Group Policy Explained: How Enterprise Windows Configuration Actually Works</title><link>https://danielcosenza.com/posts/win-group-policy</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-group-policy</guid><description>How Group Policy Objects, ADMX templates, and the client-side refresh cycle turn Active Directory structure into enforced machine configuration.</description><pubDate>Wed, 25 Feb 2026 00:00:00 GMT</pubDate><category>Windows</category><category>group-policy</category><category>active-directory</category><category>windows</category></item><item><title>Building Minimal, Secure Container Images</title><link>https://danielcosenza.com/posts/devops-minimal-images</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-minimal-images</guid><description>How multi-stage builds, distroless base images, and layer discipline combine to produce smaller, more secure container images without sacrificing developer ergonomics.</description><pubDate>Sun, 22 Feb 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>containers</category><category>docker</category><category>security</category></item><item><title>Writing Batch Files on FreeDOS</title><link>https://danielcosenza.com/posts/dos-batch-files</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-batch-files</guid><description>A practical tour of FreeDOS batch scripting: variables, control flow, argument handling, and the quirks that differ from a modern shell.</description><pubDate>Thu, 19 Feb 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>batch-files</category><category>scripting</category><category>freedos</category></item><item><title>Automating Windows with Task Scheduler</title><link>https://danielcosenza.com/posts/win-task-scheduler</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-task-scheduler</guid><description>How Task Scheduler&apos;s triggers, actions, and conditions work together, and how to build and inspect scheduled tasks from the command line.</description><pubDate>Mon, 16 Feb 2026 00:00:00 GMT</pubDate><category>Windows</category><category>task-scheduler</category><category>automation</category><category>windows</category></item><item><title>Understanding Kubernetes Networking: Services, kube-proxy, and CNI Plugins</title><link>https://danielcosenza.com/posts/devops-k8s-networking</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-k8s-networking</guid><description>How pod-to-pod networking, Services, and kube-proxy&apos;s packet rewriting fit together to make Kubernetes&apos; flat network model actually work.</description><pubDate>Fri, 13 Feb 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>kubernetes</category><category>networking</category><category>containers</category></item><item><title>FAT12 and FAT16 Internals: The Filesystem Behind FreeDOS</title><link>https://danielcosenza.com/posts/dos-fat-filesystem</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-fat-filesystem</guid><description>How the File Allocation Table represents files as linked chains of clusters, and why that simple design has both strengths and hard limits.</description><pubDate>Tue, 10 Feb 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>fat</category><category>filesystems</category><category>freedos</category></item><item><title>Windows Services and the Service Control Manager</title><link>https://danielcosenza.com/posts/win-services</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-services</guid><description>How the Service Control Manager starts, stops, and supervises background processes, and how to configure and debug a service directly.</description><pubDate>Sat, 07 Feb 2026 00:00:00 GMT</pubDate><category>Windows</category><category>services</category><category>windows</category><category>sysadmin</category></item><item><title>Container Image Vulnerabilities: Scanning, CVEs, and Supply Chain Risk</title><link>https://danielcosenza.com/posts/devops-image-vulnerabilities</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-image-vulnerabilities</guid><description>How vulnerability scanners actually inspect container image layers, how to read a scan report, and the practices that reduce real supply-chain risk.</description><pubDate>Wed, 04 Feb 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>security</category><category>containers</category><category>vulnerabilities</category><category>supply-chain</category></item><item><title>TSR Programs: How DOS Ran Background Tasks Without Multitasking</title><link>https://danielcosenza.com/posts/dos-tsr-programs</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-tsr-programs</guid><description>DOS had no scheduler and no processes in the modern sense — so how did pop-up utilities, mouse drivers, and print spoolers run &apos;in the background&apos;? By staying resident and hooking interrupts.</description><pubDate>Tue, 03 Feb 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>tsr</category><category>freedos</category><category>dos</category><category>interrupts</category></item><item><title>FreeDOS Memory Management: Conventional, Upper, and Extended Memory</title><link>https://danielcosenza.com/posts/dos-memory</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-memory</guid><description>Why DOS memory is split into distinct regions with different rules, and how HIMEM.EXE and EMM386.EXE make more of it usable.</description><pubDate>Sun, 01 Feb 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>memory</category><category>freedos</category><category>dos</category></item><item><title>NTFS Internals: the MFT, Journaling, and Alternate Data Streams</title><link>https://danielcosenza.com/posts/win-ntfs</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-ntfs</guid><description>How NTFS&apos;s Master File Table, transaction journal, and lesser-known features like alternate data streams actually work.</description><pubDate>Thu, 29 Jan 2026 00:00:00 GMT</pubDate><category>Windows</category><category>ntfs</category><category>filesystems</category><category>windows</category></item><item><title>How the Kubernetes Scheduler Actually Places Workloads</title><link>https://danielcosenza.com/posts/devops-k8s-scheduling</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-k8s-scheduling</guid><description>The two-phase filter-and-score process the Kubernetes scheduler uses to decide which node a pod lands on, and how to influence it.</description><pubDate>Mon, 26 Jan 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>kubernetes</category><category>scheduling</category><category>containers</category></item><item><title>The FreeDOS Boot Process: CONFIG.SYS and AUTOEXEC.BAT</title><link>https://danielcosenza.com/posts/dos-boot</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-boot</guid><description>How a FreeDOS machine goes from the boot sector to a command prompt, and how CONFIG.SYS and AUTOEXEC.BAT configure everything along the way.</description><pubDate>Fri, 23 Jan 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>boot</category><category>config-sys</category><category>freedos</category></item><item><title>Understanding the Windows Boot Process: UEFI, Boot Manager, and Winload</title><link>https://danielcosenza.com/posts/win-boot</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-boot</guid><description>How a modern Windows machine goes from firmware to a running kernel, and where each stage&apos;s configuration actually lives.</description><pubDate>Tue, 20 Jan 2026 00:00:00 GMT</pubDate><category>Windows</category><category>boot</category><category>uefi</category><category>windows</category></item><item><title>Docker vs. Podman: Rootless Containers and the Daemon-less Architecture</title><link>https://danielcosenza.com/posts/devops-docker-podman</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-docker-podman</guid><description>How Podman&apos;s daemon-less, fork-exec architecture differs from Docker&apos;s client-daemon model, and what that means for rootless containers in production.</description><pubDate>Sat, 17 Jan 2026 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>docker</category><category>podman</category><category>containers</category></item><item><title>What Is FreeDOS, and Why Is an MS-DOS-Compatible OS Still Developed?</title><link>https://danielcosenza.com/posts/dos-what-is</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-what-is</guid><description>The history, goals, and real-world use cases behind FreeDOS, the open-source, actively-maintained continuation of the MS-DOS-compatible operating system line.</description><pubDate>Wed, 14 Jan 2026 00:00:00 GMT</pubDate><category>FreeDOS</category><category>freedos</category><category>history</category><category>dos</category></item><item><title>Windows Registry Internals: Hives, Keys, and How Settings Actually Persist</title><link>https://danielcosenza.com/posts/win-registry</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-registry</guid><description>How the registry&apos;s hive files, keys, and value types work under the hood, and the tools to inspect and edit them safely.</description><pubDate>Sun, 11 Jan 2026 00:00:00 GMT</pubDate><category>Windows</category><category>registry</category><category>windows</category></item><item><title>The History of FreeBSD: From 386BSD to a Modern Unix</title><link>https://danielcosenza.com/posts/fb-history</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-history</guid><description>How FreeBSD began in 1993 as a patchset for a struggling hobbyist Unix, who started it, and why it exists as a separate project from NetBSD and OpenBSD.</description><pubDate>Thu, 08 Jan 2026 00:00:00 GMT</pubDate><category>FreeBSD</category><category>history</category><category>freebsd</category></item><item><title>The History of Linux: A Finnish Student&apos;s &apos;Hobby&apos; Operating System</title><link>https://danielcosenza.com/posts/lx-history</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-history</guid><description>The real story behind Linus Torvalds&apos; 1991 Usenet post, what it actually said, and how a self-described hobby project became the kernel running most of the internet.</description><pubDate>Tue, 06 Jan 2026 00:00:00 GMT</pubDate><category>Linux</category><category>history</category><category>linux</category></item><item><title>The History of macOS: How a Failed Startup&apos;s OS Became Apple&apos;s Foundation</title><link>https://danielcosenza.com/posts/mac-history</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-history</guid><description>How Apple&apos;s 1996 acquisition of NeXT, and Steve Jobs&apos; return, turned NeXTSTEP into the Unix foundation underneath every Mac sold today.</description><pubDate>Sun, 04 Jan 2026 00:00:00 GMT</pubDate><category>macOS</category><category>history</category><category>macos</category></item><item><title>The History of Windows: From a BASIC Interpreter to Windows NT</title><link>https://danielcosenza.com/posts/win-history</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-history</guid><description>How Microsoft&apos;s 1975 founding led, eighteen years later, to hiring a DEC operating-system veteran to build Windows NT from scratch.</description><pubDate>Fri, 02 Jan 2026 00:00:00 GMT</pubDate><category>Windows</category><category>history</category><category>windows</category></item><item><title>The History of DevOps and SRE: Two Separate Movements That Converged</title><link>https://danielcosenza.com/posts/devops-history</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-history</guid><description>How Google&apos;s Site Reliability Engineering team (2003) and the DevOps movement (2009) emerged independently, from different motivations, and became closely linked practices.</description><pubDate>Wed, 31 Dec 2025 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>history</category><category>devops</category><category>sre</category></item><item><title>FreeBSD 14.0-RELEASE Ships</title><link>https://danielcosenza.com/posts/fb-news-14-release</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-news-14-release</guid><description>FreeBSD 14.0 was released on November 20, 2023, as the first release from the stable/14 branch — what it brought and why it mattered.</description><pubDate>Mon, 29 Dec 2025 00:00:00 GMT</pubDate><category>FreeBSD</category><category>news</category><category>release</category><category>freebsd</category></item><item><title>FreeBSD 13.0 Makes ZFS the Installer&apos;s Default Root Filesystem</title><link>https://danielcosenza.com/posts/fb-news-13-zfs</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-news-13-zfs</guid><description>FreeBSD 13.0-RELEASE, published April 13, 2021, made ZFS-on-root the bsdinstall default — a significant shift for how new FreeBSD systems get set up.</description><pubDate>Sat, 27 Dec 2025 00:00:00 GMT</pubDate><category>FreeBSD</category><category>news</category><category>zfs</category><category>release</category><category>freebsd</category></item><item><title>FreeBSD 12.0-RELEASE Announced</title><link>https://danielcosenza.com/posts/fb-news-12-release</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-news-12-release</guid><description>FreeBSD 12.0 arrived on December 11, 2018, bringing UEFI+GELI installer support and a wave of toolchain updates.</description><pubDate>Thu, 25 Dec 2025 00:00:00 GMT</pubDate><category>FreeBSD</category><category>news</category><category>release</category><category>freebsd</category></item><item><title>Linux 6.1 Merges Initial Rust Support</title><link>https://danielcosenza.com/posts/lx-news-rust-support</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-news-rust-support</guid><description>Released December 11, 2022, Linux 6.1 became the first kernel version to officially accept Rust as a second language for kernel development, alongside C.</description><pubDate>Tue, 23 Dec 2025 00:00:00 GMT</pubDate><category>Linux</category><category>news</category><category>rust</category><category>kernel</category><category>linux</category></item><item><title>Linux 5.0 Released — a Version Bump, Not a Milestone</title><link>https://danielcosenza.com/posts/lx-news-50-release</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-news-50-release</guid><description>Linux 5.0 shipped March 3, 2019, and Linus Torvalds was explicit that the jump from 4.x to 5.0 didn&apos;t signal any major architectural change.</description><pubDate>Sun, 21 Dec 2025 00:00:00 GMT</pubDate><category>Linux</category><category>news</category><category>release</category><category>linux</category></item><item><title>Linux Turns 30: The Community Marks Three Decades</title><link>https://danielcosenza.com/posts/lx-news-30th-anniversary</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-news-30th-anniversary</guid><description>August 25, 2021 marked 30 years since Linus Torvalds&apos; original Usenet announcement, prompting a wave of retrospectives on how far the kernel had come.</description><pubDate>Fri, 19 Dec 2025 00:00:00 GMT</pubDate><category>Linux</category><category>news</category><category>anniversary</category><category>linux</category></item><item><title>Mac OS X 10.0 &apos;Cheetah&apos; Ships to the Public</title><link>https://danielcosenza.com/posts/mac-news-osx-release</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-news-osx-release</guid><description>Released March 24, 2001 at $129, Mac OS X 10.0 brought Apple&apos;s NeXT-derived, Unix-based operating system to consumers for the first time.</description><pubDate>Wed, 17 Dec 2025 00:00:00 GMT</pubDate><category>macOS</category><category>news</category><category>release</category><category>macos</category></item><item><title>Apple Announces the Mac&apos;s Transition to Apple Silicon</title><link>https://danielcosenza.com/posts/mac-news-apple-silicon</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-news-apple-silicon</guid><description>At WWDC on June 22, 2020, Tim Cook announced a two-year plan to move every Mac from Intel processors to Apple&apos;s own chips.</description><pubDate>Mon, 15 Dec 2025 00:00:00 GMT</pubDate><category>macOS</category><category>news</category><category>apple-silicon</category><category>macos</category></item><item><title>OS X El Capitan Introduces System Integrity Protection</title><link>https://danielcosenza.com/posts/mac-news-sip-intro</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-news-sip-intro</guid><description>Released September 30, 2015, OS X 10.11 shipped with SIP enabled by default — restricting even the root user from modifying protected system files.</description><pubDate>Sat, 13 Dec 2025 00:00:00 GMT</pubDate><category>macOS</category><category>news</category><category>sip</category><category>security</category><category>macos</category></item><item><title>Windows NT 3.1 Ships</title><link>https://danielcosenza.com/posts/win-news-nt-31</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-news-nt-31</guid><description>Released July 27, 1993, Windows NT 3.1 was the first shipping version of the from-scratch, Dave Cutler-led operating system that underlies every Windows release since.</description><pubDate>Thu, 11 Dec 2025 00:00:00 GMT</pubDate><category>Windows</category><category>news</category><category>release</category><category>windows</category></item><item><title>Windows Subsystem for Linux Announced at Build 2016</title><link>https://danielcosenza.com/posts/win-news-wsl-announced</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-news-wsl-announced</guid><description>First revealed via Windows 10 Insider Preview Build 14316 on April 6, 2016, WSL let Windows run real Linux binaries for the first time.</description><pubDate>Tue, 09 Dec 2025 00:00:00 GMT</pubDate><category>Windows</category><category>news</category><category>wsl2</category><category>linux</category><category>windows</category></item><item><title>Microsoft Announces Windows 11</title><link>https://danielcosenza.com/posts/win-news-windows-11</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-news-windows-11</guid><description>Announced June 24, 2021 by Panos Panay and released October 5, 2021, Windows 11 brought a redesigned interface and stricter hardware requirements.</description><pubDate>Sun, 07 Dec 2025 00:00:00 GMT</pubDate><category>Windows</category><category>news</category><category>release</category><category>windows</category></item><item><title>FreeDOS 1.0 Released, 12 Years After the Project Began</title><link>https://danielcosenza.com/posts/dos-news-10-release</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-news-10-release</guid><description>FreeDOS reached its first stable 1.0 release on September 3, 2006 — twelve years after Jim Hall&apos;s original 1994 call to build a free DOS.</description><pubDate>Fri, 05 Dec 2025 00:00:00 GMT</pubDate><category>FreeDOS</category><category>news</category><category>release</category><category>freedos</category></item><item><title>FreeDOS 1.2 Arrives After Nearly Five Years</title><link>https://danielcosenza.com/posts/dos-news-12-release</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-news-12-release</guid><description>FreeDOS 1.2 shipped in December 2016, refreshing the distribution&apos;s package set and installer nearly five years after 1.1.</description><pubDate>Wed, 03 Dec 2025 00:00:00 GMT</pubDate><category>FreeDOS</category><category>news</category><category>release</category><category>freedos</category></item><item><title>FreeDOS 1.3 Released</title><link>https://danielcosenza.com/posts/dos-news-13-release</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-news-13-release</guid><description>FreeDOS 1.3 shipped February 20, 2022, continuing the project&apos;s roughly five-year major release rhythm with an updated package set.</description><pubDate>Mon, 01 Dec 2025 00:00:00 GMT</pubDate><category>FreeDOS</category><category>news</category><category>release</category><category>freedos</category></item><item><title>Kubernetes 1.0 Ships, and Google Donates It to the New CNCF</title><link>https://danielcosenza.com/posts/devops-news-k8s-10</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-news-k8s-10</guid><description>On July 21, 2015, Kubernetes hit its 1.0 milestone the same day Google donated it as seed technology to the newly formed Cloud Native Computing Foundation.</description><pubDate>Sat, 29 Nov 2025 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>news</category><category>kubernetes</category><category>cncf</category></item><item><title>Solomon Hykes Demos Docker Publicly for the First Time</title><link>https://danielcosenza.com/posts/devops-news-docker-pycon</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-news-docker-pycon</guid><description>At PyCon on March 15, 2013, dotCloud co-founder Solomon Hykes introduced Docker to the world, ahead of the company&apos;s later pivot to focus on it entirely.</description><pubDate>Thu, 27 Nov 2025 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>news</category><category>docker</category><category>containers</category></item><item><title>dotCloud Renames Itself Docker, Inc.</title><link>https://danielcosenza.com/posts/devops-news-docker-rename</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-news-docker-rename</guid><description>On October 29, 2013, dotCloud announced it was scaling back its original PaaS business and renaming the company entirely around its container tooling.</description><pubDate>Tue, 25 Nov 2025 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>news</category><category>docker</category><category>containers</category></item><item><title>Fixing &apos;Mounting from ufs:/dev/... failed&apos; at FreeBSD Boot</title><link>https://danielcosenza.com/posts/fb-fix-mountroot</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-fix-mountroot</guid><description>Your FreeBSD system drops into a mountroot prompt instead of booting. Here&apos;s how to diagnose which layer actually failed and get back to a working system.</description><pubDate>Sun, 23 Nov 2025 00:00:00 GMT</pubDate><category>FreeBSD</category><category>fix</category><category>boot</category><category>freebsd</category></item><item><title>Fixing Broken pkg and Ports Builds on FreeBSD</title><link>https://danielcosenza.com/posts/fb-fix-pkg-build</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-fix-pkg-build</guid><description>pkg install fails, or a port won&apos;t build. Here&apos;s a systematic way to tell whether it&apos;s a stale catalog, a broken dependency, or a genuinely broken port.</description><pubDate>Fri, 21 Nov 2025 00:00:00 GMT</pubDate><category>FreeBSD</category><category>fix</category><category>pkg</category><category>ports</category><category>freebsd</category></item><item><title>Recovering a ZFS Pool That Won&apos;t Import on FreeBSD</title><link>https://danielcosenza.com/posts/fb-fix-zfs-pool-import</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-fix-zfs-pool-import</guid><description>zpool import shows your pool as UNAVAIL or fails outright. A step-by-step approach to recovering it without panicking or reaching for a backup first.</description><pubDate>Wed, 19 Nov 2025 00:00:00 GMT</pubDate><category>FreeBSD</category><category>fix</category><category>zfs</category><category>freebsd</category></item><item><title>Fixing &apos;Disk Full&apos; on Linux When df Shows Space Available</title><link>https://danielcosenza.com/posts/lx-fix-disk-full</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-fix-disk-full</guid><description>df says you have plenty of free space, but every write fails with ENOSPC. Two completely different root causes look identical from the outside — here&apos;s how to tell them apart.</description><pubDate>Mon, 17 Nov 2025 00:00:00 GMT</pubDate><category>Linux</category><category>fix</category><category>filesystems</category><category>linux</category></item><item><title>Fixing a Linux System Stuck at &apos;grub rescue&gt;&apos;</title><link>https://danielcosenza.com/posts/lx-fix-grub-rescue</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-fix-grub-rescue</guid><description>Your machine boots straight into a minimal grub rescue prompt instead of Linux. Here&apos;s how to get back to a working bootloader without reinstalling the OS.</description><pubDate>Sat, 15 Nov 2025 00:00:00 GMT</pubDate><category>Linux</category><category>fix</category><category>boot</category><category>grub</category><category>linux</category></item><item><title>Diagnosing a Linux Service That Fails Silently from a Permission Denial</title><link>https://danielcosenza.com/posts/lx-fix-service-permission-denied</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-fix-service-permission-denied</guid><description>A service won&apos;t start, logs are unhelpful, and the files look correctly owned. SELinux and AppArmor enforce a second, invisible layer of permissions — here&apos;s how to check it.</description><pubDate>Thu, 13 Nov 2025 00:00:00 GMT</pubDate><category>Linux</category><category>fix</category><category>selinux</category><category>apparmor</category><category>security</category><category>linux</category></item><item><title>Diagnosing a macOS Kernel Panic from Its Crash Report</title><link>https://danielcosenza.com/posts/mac-fix-kernel-panic</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-fix-kernel-panic</guid><description>Your Mac restarted with a &apos;your computer restarted because of a problem&apos; message. Here&apos;s how to actually read the panic report instead of just hoping it doesn&apos;t happen again.</description><pubDate>Tue, 11 Nov 2025 00:00:00 GMT</pubDate><category>macOS</category><category>fix</category><category>kernel-panic</category><category>macos</category></item><item><title>Fixing Spotlight When It Stops Finding Files You Know Exist</title><link>https://danielcosenza.com/posts/mac-fix-spotlight-not-indexing</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-fix-spotlight-not-indexing</guid><description>Spotlight search comes up empty for files you can see in Finder. Here&apos;s how to check indexing status and force a clean rebuild without losing any data.</description><pubDate>Sun, 09 Nov 2025 00:00:00 GMT</pubDate><category>macOS</category><category>fix</category><category>spotlight</category><category>macos</category></item><item><title>Fixing &apos;Operation Not Permitted&apos; in Terminal After a macOS Update</title><link>https://danielcosenza.com/posts/mac-fix-permission-denied-update</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-fix-permission-denied-update</guid><description>A script that worked fine yesterday now fails with &apos;Operation not permitted&apos; after a macOS update. It&apos;s almost always Full Disk Access, not a real permissions bug.</description><pubDate>Fri, 07 Nov 2025 00:00:00 GMT</pubDate><category>macOS</category><category>fix</category><category>permissions</category><category>macos</category></item><item><title>Reading a Windows BSOD Minidump to Find the Actual Cause</title><link>https://danielcosenza.com/posts/win-fix-bsod</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-fix-bsod</guid><description>A blue screen flashes by too fast to read. Here&apos;s how to pull the crash dump it left behind and find out which driver actually caused it.</description><pubDate>Wed, 05 Nov 2025 00:00:00 GMT</pubDate><category>Windows</category><category>fix</category><category>bsod</category><category>windows</category></item><item><title>Fixing a Windows Update That&apos;s Stuck or Failing to Install</title><link>https://danielcosenza.com/posts/win-fix-update-stuck</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-fix-update-stuck</guid><description>Windows Update hangs at a percentage forever, or fails and rolls back every time. A systematic order of fixes, from least to most invasive.</description><pubDate>Mon, 03 Nov 2025 00:00:00 GMT</pubDate><category>Windows</category><category>fix</category><category>windows-update</category><category>windows</category></item><item><title>Fixing 100% Disk Usage Caused by Windows Search Indexing</title><link>https://danielcosenza.com/posts/win-fix-high-disk-usage</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-fix-high-disk-usage</guid><description>Task Manager shows disk usage pinned at 100% with no obvious cause. Windows Search&apos;s indexer is a frequent culprit — here&apos;s how to confirm it and fix it properly.</description><pubDate>Sat, 01 Nov 2025 00:00:00 GMT</pubDate><category>Windows</category><category>fix</category><category>performance</category><category>windows</category></item><item><title>Fixing &apos;Out of Environment Space&apos; Errors on FreeDOS</title><link>https://danielcosenza.com/posts/dos-fix-out-of-environment-space</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-fix-out-of-environment-space</guid><description>SET commands or a long PATH suddenly fail with &apos;Out of environment space.&apos; The environment block has a fixed size, and here&apos;s how to actually fix it.</description><pubDate>Thu, 30 Oct 2025 00:00:00 GMT</pubDate><category>FreeDOS</category><category>fix</category><category>config-sys</category><category>freedos</category></item><item><title>Recovering a FreeDOS System That Won&apos;t Boot After a Bad CONFIG.SYS Edit</title><link>https://danielcosenza.com/posts/dos-fix-wont-boot-config-sys</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-fix-wont-boot-config-sys</guid><description>You edited CONFIG.SYS, rebooted, and now the system hangs or won&apos;t load drivers correctly. Here&apos;s how to get back to a bootable state without reinstalling.</description><pubDate>Tue, 28 Oct 2025 00:00:00 GMT</pubDate><category>FreeDOS</category><category>fix</category><category>config-sys</category><category>boot</category><category>freedos</category></item><item><title>Diagnosing IRQ and Driver Conflicts on Real Hardware Running FreeDOS</title><link>https://danielcosenza.com/posts/dos-fix-irq-conflicts</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-fix-irq-conflicts</guid><description>A sound card, network card, or serial device doesn&apos;t work, or the system hangs when two devices are used together. Classic IRQ conflicts, and how to actually resolve them.</description><pubDate>Sun, 26 Oct 2025 00:00:00 GMT</pubDate><category>FreeDOS</category><category>fix</category><category>hardware</category><category>freedos</category></item><item><title>Diagnosing and Fixing CrashLoopBackOff in Kubernetes</title><link>https://danielcosenza.com/posts/devops-fix-crashloopbackoff</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-fix-crashloopbackoff</guid><description>A pod repeatedly crashes and restarts, sitting in CrashLoopBackOff. Here&apos;s a systematic way to find out why instead of just deleting and recreating the pod.</description><pubDate>Fri, 24 Oct 2025 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>fix</category><category>kubernetes</category><category>containers</category></item><item><title>Fixing &apos;No Space Left on Device&apos; from Docker Image and Container Buildup</title><link>https://danielcosenza.com/posts/devops-fix-docker-disk-space</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-fix-docker-disk-space</guid><description>Docker builds and pulls start failing with ENOSPC, even though the host&apos;s regular disk usage doesn&apos;t look that high. Docker&apos;s own storage accumulates in places df alone won&apos;t clearly show you.</description><pubDate>Wed, 22 Oct 2025 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>fix</category><category>docker</category><category>containers</category></item><item><title>Recovering from a Stuck Terraform State Lock</title><link>https://danielcosenza.com/posts/devops-fix-terraform-state-lock</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-fix-terraform-state-lock</guid><description>terraform plan or apply hangs, then fails with &apos;Error acquiring the state lock.&apos; Here&apos;s how to confirm it&apos;s genuinely stale before force-unlocking it.</description><pubDate>Mon, 20 Oct 2025 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>fix</category><category>terraform</category><category>iac</category></item><item><title>How to Set Up a bhyve Virtual Machine Step by Step</title><link>https://danielcosenza.com/posts/fb-howto-bhyve-vm</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-howto-bhyve-vm</guid><description>A complete, start-to-finish walkthrough of creating a Linux guest VM under bhyve on FreeBSD, using vm-bhyve to manage the lifecycle.</description><pubDate>Sat, 18 Oct 2025 00:00:00 GMT</pubDate><category>FreeBSD</category><category>howto</category><category>bhyve</category><category>virtualization</category><category>freebsd</category></item><item><title>How to Configure Static Networking on FreeBSD from Scratch</title><link>https://danielcosenza.com/posts/fb-howto-static-networking</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-howto-static-networking</guid><description>A complete walkthrough for assigning a static IP, default route, and DNS resolution on FreeBSD, persisted correctly across reboots.</description><pubDate>Thu, 16 Oct 2025 00:00:00 GMT</pubDate><category>FreeBSD</category><category>howto</category><category>networking</category><category>freebsd</category></item><item><title>How to Automate ZFS Snapshots with periodic</title><link>https://danielcosenza.com/posts/fb-howto-zfs-snapshots-automated</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-howto-zfs-snapshots-automated</guid><description>Set up hourly, daily, and weekly ZFS snapshots on a schedule, with automatic pruning, using FreeBSD&apos;s built-in periodic framework — no third-party tools required.</description><pubDate>Tue, 14 Oct 2025 00:00:00 GMT</pubDate><category>FreeBSD</category><category>howto</category><category>zfs</category><category>automation</category><category>freebsd</category></item><item><title>How to Safely Upgrade FreeBSD Between Major Versions</title><link>https://danielcosenza.com/posts/fb-howto-upgrade-major-version</link><guid isPermaLink="true">https://danielcosenza.com/posts/fb-howto-upgrade-major-version</guid><description>A careful, step-by-step process for upgrading a production FreeBSD system across major versions using freebsd-update, with a real rollback plan.</description><pubDate>Sun, 12 Oct 2025 00:00:00 GMT</pubDate><category>FreeBSD</category><category>howto</category><category>upgrade</category><category>sysadmin</category><category>freebsd</category></item><item><title>How to Replace a Cron Job with a systemd Timer</title><link>https://danielcosenza.com/posts/lx-howto-systemd-timer</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-systemd-timer</guid><description>A complete, working example converting a nightly backup cron job into a properly supervised systemd timer, with logging and failure visibility cron never gave you.</description><pubDate>Fri, 10 Oct 2025 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>systemd</category><category>automation</category><category>linux</category></item><item><title>How to Configure a Firewall with nftables</title><link>https://danielcosenza.com/posts/lx-howto-nftables-firewall</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-nftables-firewall</guid><description>A complete, working nftables ruleset for a typical server — default-deny inbound, stateful connection tracking, and a handful of explicit allowed services.</description><pubDate>Wed, 08 Oct 2025 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>nftables</category><category>firewall</category><category>linux</category></item><item><title>How to Set Up SSH Key-Based Authentication Properly</title><link>https://danielcosenza.com/posts/lx-howto-ssh-keys</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-ssh-keys</guid><description>A complete walkthrough generating an SSH key pair, deploying it correctly, and disabling password authentication safely — without locking yourself out.</description><pubDate>Mon, 06 Oct 2025 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>ssh</category><category>security</category><category>linux</category></item><item><title>How to Monitor System Resources on Linux in Real Time</title><link>https://danielcosenza.com/posts/lx-howto-monitor-resources</link><guid isPermaLink="true">https://danielcosenza.com/posts/lx-howto-monitor-resources</guid><description>A practical toolkit for watching CPU, memory, disk, and network usage live — going beyond top to actually find what&apos;s causing a resource problem.</description><pubDate>Sat, 04 Oct 2025 00:00:00 GMT</pubDate><category>Linux</category><category>howto</category><category>monitoring</category><category>performance</category><category>linux</category></item><item><title>How to Create a Bootable macOS Installer on a USB Drive</title><link>https://danielcosenza.com/posts/mac-howto-bootable-installer</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-howto-bootable-installer</guid><description>A complete walkthrough using the built-in createinstallmedia tool to build a bootable USB installer for a clean install or major troubleshooting.</description><pubDate>Thu, 02 Oct 2025 00:00:00 GMT</pubDate><category>macOS</category><category>howto</category><category>installer</category><category>macos</category></item><item><title>How to Set Up Time Machine Backups Properly</title><link>https://danielcosenza.com/posts/mac-howto-time-machine</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-howto-time-machine</guid><description>A complete Time Machine setup covering drive selection, encryption, exclusions, and how to actually verify your backups will restore when you need them.</description><pubDate>Tue, 30 Sep 2025 00:00:00 GMT</pubDate><category>macOS</category><category>howto</category><category>backup</category><category>time-machine</category><category>macos</category></item><item><title>How to Customize macOS with Terminal and the defaults Command</title><link>https://danielcosenza.com/posts/mac-howto-defaults-customize</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-howto-defaults-customize</guid><description>A practical set of real, working defaults commands to unlock hidden macOS settings, plus how to find and safely revert any customization yourself.</description><pubDate>Sun, 28 Sep 2025 00:00:00 GMT</pubDate><category>macOS</category><category>howto</category><category>terminal</category><category>macos</category></item><item><title>How to Manage Login Items and Launch Agents Cleanly on macOS</title><link>https://danielcosenza.com/posts/mac-howto-manage-login-items</link><guid isPermaLink="true">https://danielcosenza.com/posts/mac-howto-manage-login-items</guid><description>A complete approach to auditing and controlling what actually starts when you log in — covering both the modern Login Items UI and the launchd agents it doesn&apos;t show.</description><pubDate>Fri, 26 Sep 2025 00:00:00 GMT</pubDate><category>macOS</category><category>howto</category><category>launchd</category><category>macos</category></item><item><title>How to Create a Bootable Windows USB Installer</title><link>https://danielcosenza.com/posts/win-howto-bootable-usb</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-howto-bootable-usb</guid><description>A complete walkthrough using the official Media Creation Tool, plus how to verify the resulting USB actually boots before you need it in an emergency.</description><pubDate>Wed, 24 Sep 2025 00:00:00 GMT</pubDate><category>Windows</category><category>howto</category><category>installer</category><category>windows</category></item><item><title>How to Set Up BitLocker Encryption Properly</title><link>https://danielcosenza.com/posts/win-howto-bitlocker</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-howto-bitlocker</guid><description>A complete BitLocker setup covering TPM requirements, the recovery key you must save externally, and how to verify encryption actually completed.</description><pubDate>Mon, 22 Sep 2025 00:00:00 GMT</pubDate><category>Windows</category><category>howto</category><category>bitlocker</category><category>security</category><category>windows</category></item><item><title>How to Use Windows System Restore Points Properly</title><link>https://danielcosenza.com/posts/win-howto-system-restore</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-howto-system-restore</guid><description>A complete guide to enabling System Restore, creating restore points at the right moments, and actually rolling back correctly when something breaks.</description><pubDate>Sat, 20 Sep 2025 00:00:00 GMT</pubDate><category>Windows</category><category>howto</category><category>system-restore</category><category>windows</category></item><item><title>How to Configure Windows Firewall Rules Properly</title><link>https://danielcosenza.com/posts/win-howto-firewall-rules</link><guid isPermaLink="true">https://danielcosenza.com/posts/win-howto-firewall-rules</guid><description>A complete walkthrough creating specific, scoped inbound and outbound rules with PowerShell, rather than the common mistake of just disabling the firewall entirely.</description><pubDate>Thu, 18 Sep 2025 00:00:00 GMT</pubDate><category>Windows</category><category>howto</category><category>firewall</category><category>windows</category></item><item><title>How to Install FreeDOS From Scratch, Step by Step</title><link>https://danielcosenza.com/posts/dos-howto-install</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-howto-install</guid><description>A complete walkthrough installing FreeDOS onto a virtual machine or real hardware, from booting the installer to a working CONFIG.SYS and AUTOEXEC.BAT.</description><pubDate>Tue, 16 Sep 2025 00:00:00 GMT</pubDate><category>FreeDOS</category><category>howto</category><category>install</category><category>freedos</category></item><item><title>How to Set Up Networking on FreeDOS with mTCP</title><link>https://danielcosenza.com/posts/dos-howto-mtcp-networking</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-howto-mtcp-networking</guid><description>A complete walkthrough getting real TCP/IP networking working on FreeDOS using mTCP and a packet driver, enough for FTP, Telnet, and a basic web browser.</description><pubDate>Sun, 14 Sep 2025 00:00:00 GMT</pubDate><category>FreeDOS</category><category>howto</category><category>networking</category><category>mtcp</category><category>freedos</category></item><item><title>How to Create a Bootable FreeDOS USB for BIOS/Firmware Flashing</title><link>https://danielcosenza.com/posts/dos-howto-bootable-usb-flashing</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-howto-bootable-usb-flashing</guid><description>The single most common real-world reason to boot FreeDOS today: a complete walkthrough building a bootable USB stick to run a vendor&apos;s DOS-based firmware update tool.</description><pubDate>Fri, 12 Sep 2025 00:00:00 GMT</pubDate><category>FreeDOS</category><category>howto</category><category>firmware</category><category>usb</category><category>freedos</category></item><item><title>How to Install and Configure Applications on FreeDOS</title><link>https://danielcosenza.com/posts/dos-howto-edit-applications</link><guid isPermaLink="true">https://danielcosenza.com/posts/dos-howto-edit-applications</guid><description>A complete walkthrough installing a text editor and a couple of common utilities on FreeDOS, and wiring them into your PATH and environment properly.</description><pubDate>Wed, 10 Sep 2025 00:00:00 GMT</pubDate><category>FreeDOS</category><category>howto</category><category>applications</category><category>freedos</category></item><item><title>How to Set Up a CI/CD Pipeline with GitHub Actions</title><link>https://danielcosenza.com/posts/devops-howto-github-actions-cicd</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-howto-github-actions-cicd</guid><description>A complete, working GitHub Actions workflow that tests, builds, and deploys a containerized application on every push to main.</description><pubDate>Mon, 08 Sep 2025 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>howto</category><category>cicd</category><category>github-actions</category></item><item><title>How to Set Up Horizontal Pod Autoscaling in Kubernetes</title><link>https://danielcosenza.com/posts/devops-howto-hpa</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-howto-hpa</guid><description>A complete, working setup for scaling a deployment automatically based on CPU usage, including the metrics-server prerequisite most tutorials skip over.</description><pubDate>Sat, 06 Sep 2025 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>howto</category><category>kubernetes</category><category>autoscaling</category></item><item><title>How to Set Up a Local Kubernetes Cluster with kind</title><link>https://danielcosenza.com/posts/devops-howto-kind-local-cluster</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-howto-kind-local-cluster</guid><description>A complete walkthrough running a real multi-node Kubernetes cluster on your laptop with kind, including loading a locally-built image without pushing to a registry.</description><pubDate>Thu, 04 Sep 2025 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>howto</category><category>kubernetes</category><category>kind</category><category>local-development</category></item><item><title>How to Implement Blue-Green and Canary Deployments in Kubernetes</title><link>https://danielcosenza.com/posts/devops-howto-blue-green-canary</link><guid isPermaLink="true">https://danielcosenza.com/posts/devops-howto-blue-green-canary</guid><description>Two complete, working deployment strategies for shipping a new version with minimal risk — instant-rollback blue-green, and gradual, traffic-controlled canary.</description><pubDate>Tue, 02 Sep 2025 00:00:00 GMT</pubDate><category>SRE &amp; DevOps</category><category>howto</category><category>kubernetes</category><category>deployments</category></item></channel></rss>