<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: BarbaryCoast</title><link>https://news.ycombinator.com/user?id=BarbaryCoast</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Wed, 10 Jun 2026 08:27:17 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=BarbaryCoast" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by BarbaryCoast in "Reviving old scanners with an in-browser Linux VM bridged to WebUSB over USB/IP"]]></title><description><![CDATA[
<p>Uh, what do you mean, you can't use a scanner via USB?  Did they stop putting USB ports on computers?  (I haven't bought a new one in a while.)  Or does your OS not provide the software to connect to it?<p>I guess I just don't understand what problem this solves.</p>
]]></description><pubDate>Sat, 23 May 2026 10:55:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=48246605</link><dc:creator>BarbaryCoast</dc:creator><comments>https://news.ycombinator.com/item?id=48246605</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48246605</guid></item><item><title><![CDATA[New comment by BarbaryCoast in "Museum of Pocket Calculating Devices"]]></title><description><![CDATA[
<p>What a horrible web site. I hit "reload", and I now have two copies of the LH Menu.  In IFRAMEs.  I was able to see a couple of the items, then that broke.  I click and nothing happens.<p>Some people just can't be trusted with HTML.</p>
]]></description><pubDate>Sat, 23 May 2026 10:49:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=48246572</link><dc:creator>BarbaryCoast</dc:creator><comments>https://news.ycombinator.com/item?id=48246572</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48246572</guid></item><item><title><![CDATA[New comment by BarbaryCoast in "A new California law says all operating systems need to have age verification"]]></title><description><![CDATA[
<p>OK, so way at the bottom it says this:<p>"This title does not impose liability on an operating system provider, a covered application store, or a developer that arises from the use of a device or application by a person who is not the user to whom a signal pertains."<p>This is obviously a law so poorly written that it'll never pass a court challenge.  Assuming anyone brings one.</p>
]]></description><pubDate>Sat, 28 Feb 2026 13:33:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=47195172</link><dc:creator>BarbaryCoast</dc:creator><comments>https://news.ycombinator.com/item?id=47195172</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47195172</guid></item><item><title><![CDATA[New comment by BarbaryCoast in "A new California law says all operating systems need to have age verification"]]></title><description><![CDATA[
<p>"For the purpose of....covered application stores."<p>I'd like to see that definition.  My OS doesn't have an "application store", so I doubt it's impacted by this law.</p>
]]></description><pubDate>Sat, 28 Feb 2026 13:22:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=47195049</link><dc:creator>BarbaryCoast</dc:creator><comments>https://news.ycombinator.com/item?id=47195049</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47195049</guid></item><item><title><![CDATA[New comment by BarbaryCoast in "Why does Debian change software?"]]></title><description><![CDATA[
<p>This is no longer true.<p>Most obvious example is Firefox. The Debian Project allows Firefox to update outside the packaging system, automatically, at the whim of Firefox.<p>And there's the inclusion of non-Free software in the base install, which is completely against the Debian Social Contract.<p>The Debian Project drastically changed when they decided to allow Ubuntu to dictate their release schedule.<p>What used to be a distro by sysadmins for sysadmins, and which prized stability over timeliness has been overtaken by Ubuntu and the Freedesktop.Org people.  I've been running Debian since version 3, and I used to go _years_ between crashes.  These days, the only way to avoid that is to 1) rip out all the Freedesktop.Org code (pulseaudio, udisks2, etc.), and 2) stick with Debian 9 or lower.</p>
]]></description><pubDate>Thu, 22 May 2025 13:25:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=44061839</link><dc:creator>BarbaryCoast</dc:creator><comments>https://news.ycombinator.com/item?id=44061839</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44061839</guid></item><item><title><![CDATA[New comment by BarbaryCoast in "Douglas McIlroy responds to Unix spell article with new implementation details"]]></title><description><![CDATA[
<p>I've done something similar at my job. I don't think it implicates privacy because 1) it's a list of misses from the (public) dictionary, and 2) the email is sent as the program, not as the user.  So if the user misspells melinoma, you have no information on which user that was.</p>
]]></description><pubDate>Mon, 10 Feb 2025 05:17:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=42997173</link><dc:creator>BarbaryCoast</dc:creator><comments>https://news.ycombinator.com/item?id=42997173</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42997173</guid></item><item><title><![CDATA[New comment by BarbaryCoast in "Window Maker: X11 window manager with the look and feel of the NeXTSTEP UI"]]></title><description><![CDATA[
<p>I'm using it now.  It's my primary wm for all my machines.  I don't need a "desktop"; I just want something to manage windows.  I don't "drag-n-drop".  And I don't systemd, plus I kill as much of the rest of their FreeDesktop.Org code as I possibly can.<p>I've tried to switch to other wms, but I just can't get the same usefulness out of them, and end up switching back.</p>
]]></description><pubDate>Thu, 29 Aug 2024 13:53:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=41390836</link><dc:creator>BarbaryCoast</dc:creator><comments>https://news.ycombinator.com/item?id=41390836</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41390836</guid></item><item><title><![CDATA[New comment by BarbaryCoast in "Ask HN: What books should I read to improve as a software engineer?"]]></title><description><![CDATA[
<p>A lot will depend on where you are in your maturity as a programmer.  And what sort of work you want to do.<p>I've always done well following Don Lancaster's advice: Hit the basics, HARD.<p>Most modern software "innovations" are really just a restatement of David Parnas' paper from 1971. He suggested programs should be split up so that the data used by modules can't be affected by the other modules.  "Data hiding."<p>Once you get a grounding in the history and literature of programming (which all other professions do without thinking), you'll start to see the "sameness" among all the supposed difference.  Once you see the "sameness", you'll know what is truly important to know/master, and what is not.<p>As a recent grad, I'll tell you that the first thing I learned was to ignore all the "software engineering" stuff that schools teach.  The reality is that I would be asked, "Build a tool to do X".  So I'd start through the process, building a design and the data flows, starting to build the code.  Then I'd get "It also has to do Y."  And I'd have to throw away most of what was written.<p>Eventually, I learned the two rules Ken Thompson taught:<p>1) give users something useful in two week, not the whole problem solved.
2) when in doubt, use brute force.<p>That's it.  With attention to fundamentals, you can clearly see that "Agile" is just a bunch of fancy words (and vendors selling tools) telling you to do that same thing.  Only Ken talked about that in the 70's.<p>What you'll find is that getting a tool into the hands of users will generate new features <i>based on what it already does</i>.  No more blue-sky wishes.  And it will allow the tool to evolve into what they really want it to do.  Which no one ever knows when they start.  All the best software followed that path to greatness.  (Which you'll see when you read the history of your chosen profession.)<p>So learn the history.  Learn how computers work (not the "Von Neumann" stuff).  Get a computer engineering book and learn about bit-slicing and clocks and microcode.  It doesn't matter that you're not a hardware guy; you need to know what your code is actually doing, down on the metal.<p>Never <i>stop</i> learning.  Read constantly.  Read books you'll never find a job with, like SICP.  (I once had to write a loop in a language without a loop construct.  But I had read SICP, so I knew if it supported recursion, I could make a loop.  And I did.)  Don't read trash.  Don't bother with the "current hotness"; if it's good, it's probably just a restatement of the old and if it's bad, it'll go away.<p>I'll just leave with an ancient aphorism: 40 can't tell 20.  There's just a gap between what an older person has learned about the world, and what a younger person imagines the world to be.  That different can be called "experience", but the fact is I remember <i>perfectly</i> the pearls of wisdom dropped on my by the "old men"...and 20 years later, I <i>was</i> them.  So I offer this small essay, knowing it'll probably be rejected, but hoping that just this once it does some good for someone.</p>
]]></description><pubDate>Thu, 29 Aug 2024 07:16:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=41388186</link><dc:creator>BarbaryCoast</dc:creator><comments>https://news.ycombinator.com/item?id=41388186</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41388186</guid></item><item><title><![CDATA[New comment by BarbaryCoast in "Early Bookcases, Cupboards and Carousels"]]></title><description><![CDATA[
<p>If you liked this article, Henry Petroski's "The Book on the Bookshelf" is worth reading.  He goes into great detail about the history, explaining why books were usually chained to their shelves, etc.<p>If you don't know the author, his most famous is probably "To Engineer is Human: the Role of Failure in Successful Design".  I liked "The Evolution of Useful Things", because now I realize Americans use their forks wrong.  The design of the fork follows function, and that curve is there for a reason.</p>
]]></description><pubDate>Sat, 03 Aug 2024 15:33:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=41147169</link><dc:creator>BarbaryCoast</dc:creator><comments>https://news.ycombinator.com/item?id=41147169</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41147169</guid></item><item><title><![CDATA[New comment by BarbaryCoast in "Ask HN: Weirdest Computer Architecture?"]]></title><description><![CDATA[
<p>Look at the earliest computers, that is, those around the time of ENIAC.  Most were electro-mechanical, some were entirely relay machines.  I believe EDSAC was the first _electronic_ digital computer.<p>As for weird, try this: ENIAC instructions modified themselves.  Back then, an "instruction" (they called them "orders") included the addresses of the operands and destination (which was usually the accumulator). So if you wanted to sum the numbers in an array, you'd put the address of the first element in the instructions, and as ENIAC repeated that instruction (a specified number of times), the address in the instruction would be auto-incremented.<p>Or how about this: a computer with NO 'jump' or 'branch' instruction?  The ATLAS-1 was a landmark of computing, having invented most of the things we take for granted now, like virtual memory, paging, and multi-programming.  But it had NO instruction for altering the control flow.  Instead, the programmer would simply _write_ to the program counter (PC).  Then the next instruction would be fetched from the address in the PC.  If the programmer wanted to return to the previous location (a "subroutine call"), they'd be obligated to save what was in the PC before overwriting it.  There was no stack, unless you count a programmer writing the code to save a specific number of PC values, and adding code to all subroutines to fetch the old value and restore it to the PC.  I do admire the simplicity -- want to run code at a different address?  Tell me what it is and I'll just go there, no questions asked.<p>Or maybe these shouldn't count as "weird", because no one had yet figured out what a computer should be.  There was no "standard" model (despite Von Neumann) for the design of a machine, and cost considerations plus new developments (spurred by wanting better computers) meant that the "best" design was constantly changing.<p>Consider that post-WWII, some materials were hard to come by.  So much so that one researcher used a Slinky (yes, the toy) as a memory storage device.  And had it working.  They wanted acoustic delay lines (the standard of the time), but the Slinky was more available.  So it did the same job, just with a different medium.<p>I've spent a lot of time researching these early machines, wanting to find the path each item in a now-standard model of an idealized computer.  It's full of twists and turns, dead ends and unintentional invention.</p>
]]></description><pubDate>Wed, 31 Jul 2024 00:55:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=41115575</link><dc:creator>BarbaryCoast</dc:creator><comments>https://news.ycombinator.com/item?id=41115575</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41115575</guid></item><item><title><![CDATA[New comment by BarbaryCoast in "How to choose a textbook that is optimal for oneself?"]]></title><description><![CDATA[
<p>Use the darknet.  Get a list of possible texts, then download them.  Figure out which one teaches the way you need to learn, then go buy that one.  Used.</p>
]]></description><pubDate>Sun, 21 Jul 2024 04:11:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=41022315</link><dc:creator>BarbaryCoast</dc:creator><comments>https://news.ycombinator.com/item?id=41022315</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41022315</guid></item><item><title><![CDATA[New comment by BarbaryCoast in "He secretly changed this freeway sign, helped millions of drivers [video]"]]></title><description><![CDATA[
<p>I think it's important to note that his work used the proper materials and workmanship.  It was essentially an "official" sign, just done by a volunteer.<p>I remember driving through there before and after.  I was happy they'd put up a sign, and didn't know until years later about the true story.<p>I've since seen a couple of other places which tempt me to grab a high-viz vest and fix some things.</p>
]]></description><pubDate>Thu, 18 Jul 2024 13:21:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=40995314</link><dc:creator>BarbaryCoast</dc:creator><comments>https://news.ycombinator.com/item?id=40995314</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40995314</guid></item><item><title><![CDATA[New comment by BarbaryCoast in "Apple II graphics: More than you wanted to know"]]></title><description><![CDATA[
<p>Don Lancaster had a software-only method for syncing to the video scan, called the Vaporlock.  Which is a play on "genlock", which TV production systems called their hardware to sync to the scan for doing overlays.<p>Don's technique relied on the fact that the video hardware in the II line scanned memory that was outside the video frame.  He put magic values in those extra bytes for each scan line, and his software could detect where the beam was on each line.  (I've probably messed up the explanation; it's from memory of 40 years ago...)<p>The great thing is that you could mix video modes within a single scan line, allowing you to put text on the left edge of a HIRES graph.  The downside is that the Apple can't do anything else, because his code is running in an exact timing loop to stay synced.<p>There were other solutions, but those were all hardware-based.</p>
]]></description><pubDate>Sat, 29 Jun 2024 15:45:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=40831394</link><dc:creator>BarbaryCoast</dc:creator><comments>https://news.ycombinator.com/item?id=40831394</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40831394</guid></item><item><title><![CDATA[New comment by BarbaryCoast in "Run Your Own Mail Server – By Michael W Lucas"]]></title><description><![CDATA[
<p>Even if you never RYOMS, this book shows you how email actually works, down to the bare metal.  That's knowledge worth having.</p>
]]></description><pubDate>Wed, 22 May 2024 02:42:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=40436833</link><dc:creator>BarbaryCoast</dc:creator><comments>https://news.ycombinator.com/item?id=40436833</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40436833</guid></item><item><title><![CDATA[New comment by BarbaryCoast in "Pen Plotter Programming: The Basics (2017)"]]></title><description><![CDATA[
<p>That's interesting as a programming exercise, but HP's plotters all had a built-in language called HP-GL.  And there's a GPL'ed tool that will emit HP-GL.  I just can't recall what it's called.  Seems like it was built in to some normal printing tool.  HP Laserjet printers also supported HP-GL, so that was a nice way to get your plots without having to buy a more expensive dedicated plotter.</p>
]]></description><pubDate>Tue, 14 May 2024 16:11:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=40356755</link><dc:creator>BarbaryCoast</dc:creator><comments>https://news.ycombinator.com/item?id=40356755</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40356755</guid></item><item><title><![CDATA[New comment by BarbaryCoast in "Backdoor in upstream xz/liblzma leading to SSH server compromise"]]></title><description><![CDATA[
<p>There's a bug in the detection script.  The line:<p>if [ "$path" == "" ]<p>should be<p>if [ "$path" = "" ]</p>
]]></description><pubDate>Sat, 30 Mar 2024 05:36:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=39872129</link><dc:creator>BarbaryCoast</dc:creator><comments>https://news.ycombinator.com/item?id=39872129</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39872129</guid></item><item><title><![CDATA[New comment by BarbaryCoast in "An Air Force officer who spent $11M searching Earhart's plane may have found it"]]></title><description><![CDATA[
<p>If he's "searching Earhart's plane", doesn't that imply that he's found it?  Or is he searching a plane he _thinks_ was Earhart's, trying to find confirmation from the contents of it?<p>On the other hand, if he's "searching FOR Earhart's plane", this contradiction resolves itself.</p>
]]></description><pubDate>Tue, 30 Jan 2024 06:41:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=39187062</link><dc:creator>BarbaryCoast</dc:creator><comments>https://news.ycombinator.com/item?id=39187062</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39187062</guid></item><item><title><![CDATA[New comment by BarbaryCoast in "Portable EPUBs"]]></title><description><![CDATA[
<p>Thanks for that.  I can't read the article, probably because I block WASM (and Javascript) for security.  None of my ebook readers have Internet access (for security and for privacy), so none of those internet-only epub files would work for me.<p>This might be "legal", since XHTML was intended for the web, but I assume Google's using it to collect more user interaction data that they can sell to data brokers.<p>FWIW, PDF is simply Postscript that's been compressed.  As far as I can tell, almost all documents these days are created with Microsoft Word, TeX, or Postscript.  I'm lumping things like PageMaker and LaTeX in with the base they were derived from.</p>
]]></description><pubDate>Fri, 26 Jan 2024 07:33:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=39139796</link><dc:creator>BarbaryCoast</dc:creator><comments>https://news.ycombinator.com/item?id=39139796</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39139796</guid></item><item><title><![CDATA[New comment by BarbaryCoast in "Systemd: Enable indefinite service restarts"]]></title><description><![CDATA[
<p>...and now you know why I don't run systemd.  I believe their thought process is: what would Windows do?  This is an example.  For instance, the desktop shell still crashes often.  In the old days, this would lock up the keyboard and mouse, and you'd have to power cycle.  But MS "fixed" it by simply adding infinite restarts to the system.  Now we have systemd.  When something crashes, there's no need to fix the bug, just restart it.<p>My favorite new misfeature is PulseAudio.  These geniuses actually built code for a multi-user, multi-tasking OS...which will <i>only</i> run for ONE user, and then <i>only</i> if that user is logged in.  So forget running cron jobs, and sounding an alert if something needs attention.<p>This is all code produced by FreeDesktop[.]org.  Thanks to them, your industrial strength, mission-critical server OS is now only suitable for single-user desktop systems.</p>
]]></description><pubDate>Fri, 19 Jan 2024 02:59:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=39051088</link><dc:creator>BarbaryCoast</dc:creator><comments>https://news.ycombinator.com/item?id=39051088</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39051088</guid></item><item><title><![CDATA[New comment by BarbaryCoast in "Mad Scientists' Club: The Books"]]></title><description><![CDATA[
<p>Glad to be of help.  I think the only one I have (yes, I kept all my SBS books) is Miss Pickerell Goes To Mars.</p>
]]></description><pubDate>Wed, 17 Jan 2024 05:09:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=39023543</link><dc:creator>BarbaryCoast</dc:creator><comments>https://news.ycombinator.com/item?id=39023543</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39023543</guid></item></channel></rss>