HNHacker News
TopNewBestAskShowJobs

beagle3

16,715 karma · joined June 20, 2009

submissionscomments
beagle3··on Never Bet Against x86
Are you familiar with anyone who uses a 20 year old DAW?

Retro Amiga trackers don’t count.

beagle3··on Never Bet Against x86
I did write “embedded/hardware”. Yes, you need special drivers for your X-ray/drill/whatever so you earned an another decade of windows.

But in the places I frequent (backoffice, municipal, finance) it’s all gone web and rdp-through-web (which is web, in the sense that it doesn’t require windows on the client) with centralized administration with minimal (not quite self-serve but reasonably close) thin client users.

beagle3··on Never Bet Against x86
The x86 emulation for fallback is (I’ve heard - not tried) usable for the first time.

Microsoft tried in the past without a Rosetta equivalent; Apple succeeded twice with Rosetta. They did not try to switch cold turkey the way Microsoft did.

beagle3··on Never Bet Against x86
No, but Microsoft are also going arm. Where the us goes, the world goes eventually.
beagle3··on Never Bet Against x86
No I did not miss it. That has moved to web, either directly Or through an RDP/VNC interface where the actual windows virtual machine is hidden.

Embedded/hardware is the last segment still not replaced by web.

beagle3··on Never Bet Against x86
Hardcore gamers are not a big enough market segment to sustain x86. If everyone else switches to ARM/RISC-V, games will too, eventually.
beagle3··on Never Bet Against x86
What they did not win was the popularity contest, mostly thanks to Windows - the Wintel market was just too massive to compete with.

But that’s changed somewhat - Apple has managed a larger mind and market share (while switching into ARM). The vast majority of uses are now available on the web, which is CPU agnostic, and there is a huge amount of open source software available.

The only things for which x86 still shines a little brighter are games, and native office. But office is mostly available on web, on Mac, and on Winarm. So games. Which aren’t big enough market mass to sustain the x86’s popularity — and is a segment (soon) under attack by Valve.

beagle3··on Never Bet Against x86
Worked very well for Apple in their transition to Apple Silicon.
beagle3··on Setting up phones is a nightmare
I am typing this on a 9 year old iPhone 8 Plus. Battery was replaced once after 6 years, replacement battery is still lasting more than a day. Apps are slowly losing support for it, but other than that it mostly does what I want, and still gets security updates for really bad stuff.

Is there a comparably usable 9 year old android?

beagle3··on Writing code is cheap now
Because it has been trained on Java class spaghetti.

When it’s trained on enough APL/K code, you’ll get minimal abstraction.

beagle3··on Writing code is cheap now
But the amount of pleasing useful art has gone up x1000; If I had a blog, I would now have access to art that would be a perfect fit for my words, whereas 5 years ago, I would have to do with a my own (talent-lacking) doodles.

Would some people prefer no art/illustration to AI generated art? Sure. But even more would prefer no art to my doodles.

beagle3··on Writing code is cheap now
Code you can’t just throw away is a liability because you have to keep supporting it / servicing it. Claude Code and friends also change that part of the cost equation:

You might not get gcc/llvm level optimization from a newly built compiler - but if you had a home-built one, which took $15,000/month engineer to support (for years!) you can now get a new one for $20,000 every 3 months, for a 50% cost saving, each time changing your requirements (which you couldn’t do before).

Code used to be a liability, like a car or an apartment for the average person. Now it’s a liability, like a car or apartment for Bill Gates.

beagle3··on Writing code is cheap now
This is how successful things are created. By iterating on less successful things until they become successful.

The cost of iterating (with software) dropped by a few orders of magnitude in the last few months.

beagle3··on Writing code is cheap now
For most non-hobby project, the cost of code was in breaking a working system (whether by a bona fide bug, or a change in some unspecified implicit assumption). That made changes to code incredibly expensive - often much more than the original implementation.

It sounds harsh, but over the lifetime of a project, 10-lines/person/day is often a high estimate of the number of lines produced. It’s not because humans type so slow - it is because after a while, it’s all about changing previously written lines in ways that don’t break things.

LLMs are much better at that than humans, if the constraints and tests are reasonably well specified.

beagle3··on Native FreeBSD Kerberos/LDAP with FreeIPA/IDM
Is there a simpler system for a small local network? For my home lab use case, it is almost sufficient to rsync /etc/{passwd,group,hosts,…..} - I manually sync them because changes are few and far between.

I wanted to set up a central authority - i don’t care about multi master or even resilience to failure in that central authority.

But even a small setup is relatively complicated. I remember yp setup in the early ‘90s looked complicated but it is a piece of cake compared to modern systems. They provide a lot, but they don’t scale down - and it feels to me that they are complicated much more than is required for their feature list.

Take LDAP, for example - it is only “lightweight” compared to the thing it replaced. But it is ridiculously complicated for what it is. It is designed for a bandwidth-scarce, intermittent connection world; for a modern world, I’d just put it all in an SQLite database and rsync it all over the place (and use remote queries, the replicas only used for offline validation).

beagle3··on US has investigated claims WhatsApp chats aren't private
This was happening en masse, perhaps still does - the cloud backup was unencrypted. Originally it was encrypted. Then, one day, Google stopped counting it towards your storage quota, but it became unencrypted. But even before that, Meta had the encryption keys (and probably still does).

When you get a new phone, all you need is your phone number to retrieve the past chats from backup; nothing else. That proves, regardless of specifics, that Meta can read your chats - they can send it to any new phone.

So it doesn’t really matter that it is E2EE in transit - they just have to wait for the daily backup, and they can read it then.

beagle3··on Many Small Queries Are Efficient in SQLite
scp works as long as the app is not making changes at the same time.

If there's a chance someone is writing to the database during the copy, you should "sqlite3 database.sqlite .backup" (or ".dump") first; Or, alternatively, on a new enough sqlite3, you have a builtin sqlite3_rsync that is like rsync except it interacts with the sqlite3 updates to guarantee a good copy at the other end.

beagle3··on Why does SSH send 100 packets per keystroke?
The real analog copper lines were kind of limited to approx 28K - more or less the nyquist limit. However, the lines at the time were increasingly replaced with digital 64Kbit lines that sampled the analog tone. So, the 56k standard aligned itself to the actual sample times, and that allowed it to reach a 56k bps rate (some time/error tolerance still eats away at your bandwidth)

If you never got more than 24-28k, you likely still had an analog line.

beagle3··on OLED, Not for Me
It’s not necessarily picky - it’s sometimes about physically different perception.

When DLP projectors first came out, I couldn’t watch them. I would see colors breaking in fast motion scenes and whenever I would move my head even slightly (and … we all move our head slightly often when watching a movie).

When I told other people, some of them nodded in understanding, but the vast majority thought I was making things up - for them, it was a rock solid picture.

One of my friends replied: “I can see about 300hz. Not all the time - only when I have secadic movements; but that means many fluorescents, DLPs and other light sources drive me crazy. I guess you’re also a member of crazy club”

Some people can hear 26khz. Some people can see DLPs. Some people can see the alternating pattern….

beagle3··on On privacy and control
Somewhat related - I want control over devices in my home. Too many things these days need an internet connection to be useful. I run my own OpenWRT router and set up firewall policies for them so they only get the access they need to provide their function. But I'm getting tired of it.

I'm looking for a nice tool that would give me that "control" over my home network -- at the very least, proper observability. Like "little snitch / open snitch" but running on my home router... and I haven't found anything like that yet.

beagle3··on Show HN: Z80-μLM, a 'Conversational AI' That Fits in 40KB
But also, there is more traffic on the bridge.

The word processors of 30 years ago often had limits like “50k chapters” and required “master documents” for anything larger. Lotus 123 had much fewer columns or rows than modern excel.

Not an excuse, of course, but the older tools are not usable anymore if you have modern expectations.

beagle3··on Fabrice Bellard Releases MicroQuickJS
Python’s dicts for many years did not return keys in insertion order (since Tim Peters improved the hash in iirc 1.5 until Raymond Hettinger improved it further in iirc 3.6).

After the 3.6 changed, they were returned in order. And people started relying on that - so at a later stage, this became part of the spec.

beagle3··on Surface Tension of Software
OOP is different things to different people, see e.g. [0]. Many types of OOP that were popular in the past, are, indeed, dead. Many are still alive.

[0] https://paulgraham.com/reesoo.html

beagle3··on Surface Tension of Software
Indeed. But ... do not confuse your model with reality.

There's a folk story - I don't remember where I read it - about a genealogy database that made it impossible to e.g. have someone be both the father and the grandfather of the same person. Which worked well until they had to put in details about a person who had fathered a child with his own daughter - and was thus both the father and the grandfather of that child. (Sad as it might be, it is something that can, in fact, happen in reality, and unfortunately does).

While that was probably just database constraints of some sort which could easily be relaxed, and not strictly "unrepresentable" like in the example in the article - it is easy to paint yourself into a corner by making a possible state of the world, which your mental model dims impossible, unrepresentable.

beagle3··on Tiny Core Linux: a 23 MB Linux distro with graphical desktop
The Amiga 500 had high res graphics (or high color graphics … but not on the same scanline), multitasking, 15 bit sound (with a lot of work - the hardware had 4 channels of 8 bit DACs but a 6-bit volume, so …)

In 1985, and with 512K of RAM. It was very usable for work.

beagle3··on Nimony (Nim 3.0) Design Principles
And yet, Nim does overflow checking by default.
beagle3··on Nimony (Nim 3.0) Design Principles
Do note that unlike Python’s “import * from a; import * from b” where you have no idea where a name cam from later in the code (and e.g. changes to a and b, such as new versions, will change where a name comes from), Nim requires a name to be unambiguous, so that if “b” added a function that previously only “a” had, you’ll get a compile time error.
beagle3··on Nimony (Nim 3.0) Design Principles
The alternative is checking the result of every operation; or use “signaling NaNs” that raise an exception on a (properly configured) scalar operation on a CPU. As soon as non scalar code is involved - SIMD or GPU, quiet NaNs with strategically placed explicit tests along the computation becomes the only reasonable/efficient option.
beagle3··on SVG.js v3.2
Not what you asked for, but something you might find useful: https://github.com/andy31lewis/brySVG

A great SVG kit for Brython (browser Python)

beagle3··on Windows Subsystem for FreeBSD
Your serial might have worked, but your docker didn’t. (And someone else’s other drivers didn’t, and mmapping had ever-so-slightly different semantics causing rare and hard to reproduce issues).

WSL2, on the whole, is much more compatible. If you want 100% Linux compatibility, just run Linux.

← PreviousPage 2 of 34Next →