MurphyA/hacker-news huggingface dataset:
by nunez | 2026-01-04 15:14:39+00:00
Welcome to the dark side, Jeff! I migrated to Hugo from WordPress in 2019: https://blog.carlosnunez.me/post/neurons-are-firing-again/

I built some automation that helps me test and deploy changes to S3 as well: https://github.com/carlosonunez/https-hugo-bloggen. It's clunky but works for me! Feel free to fork/PR if you're interested, of course.

It was a great move; I couldn't be happier. Running my blog is basically free (because nobody reads it, lol, but also because it's served by S3 and CloudFront and the # of monthly requests is still within Free Tier).

At the time, some folks were questioning why I built this instead of moving to Netlify. I wanted control over how my sites were deployed and didn't want to pay some provider for convenience I knew I could build myself. Netlify got AI-pilled some time ago, which makes me feel vindicated in my position.
by mft_ | 2026-01-04 15:14:48+00:00
You’re right, but it’s like that kid at school who’s a bully and a d*ck but everyone tolerates and stays kinda friendly with because they’re a bit scared of him, and his parents have the best house for parties.

The US can probably go a lot further than they currently have, before a meaningful coalition of meaningful countries will do anything significant —even just economically or diplomatically— against them in return.
by andsoitis | 2026-01-04 15:15:02+00:00
> In the latest national security strategy the US defined the EU as an enemy.

I would love for you to quote out of the document how you come to that conclusion? https://www.whitehouse.gov/wp-content/uploads/2025/12/2025-N...

The section is "C. Promoting European Greatness", starting on p25.
by Xmd5a | 2026-01-04 15:15:22+00:00
Very nice work. I’m curious: what kinds of projects are you guys currently working on that genuinely push you out of your comfort zone?

I had a small epiphany a couple of weeks ago while thinking about robot skin design: using conductive 3D-printed structures whose electrical properties change under strain, combined with electrical impulses, a handful of electrodes, a machine-learning model to interpret the measurements, and computational design to optimize the printed geometry.

While digging into the literature, I realized that what I was trying to do already has a name: proprioception via electrical impedance tomography. It turns out the field is very active right now.

https://www.cam.ac.uk/stories/robotic-skin

That realization led me to build a Bergström–Boyce nonlinear viscoelastic parallel rheological simulator using Taichi. This is far outside my comfort zone. I’m just a regular programmer with no formal background in physics (apart from some past exposure to Newton-Raphson).

Interestingly, my main contribution hasn’t been the math. It’s been providing basic, common-sense guidance to my LLM. For example, I had to explicitly tell it which parameters were fixed by experimental data and which ones were meant to be inferred. In another case, the agent assumed that all the red curves in the paper I'm working with referred to the same sample, when they actually correspond to different conducting NinjaFlex specimens under strain.

Correcting those kinds of assumptions, rather than fixing equations, was what allowed me to reproduce the results I was seeking. I now have an analytical, physics-grounded model that fits the published data. Mullins effect: modeled. Next up: creep.

We’ll see how far this goes. I’ll probably never produce anything publishable, patentable, or industrial-grade. But I might end up building a very cheap (and hopefully not that inaccurate), printable proprioceptive sensor, with a structure optimized so it can be interpreted by much smaller neural networks than those used in the Cambridge paper.

If that works, the gesture will have been worth it.
by PaulHoule | 2026-01-04 15:15:52+00:00
... or maybe in the definition of type A you can specify what

((A) null).someValue

or

((A) null).doSomething()

does at the field or method level. I guess there is the issue of how you figure out what the type is which depends of course on the language. Could be a better fit for C++ than all-virtual Java but I don't want to give the C++ any ideas to make that language more complex!
by ekjhgkejhgk | 2026-01-04 15:15:53+00:00
Great, that's exactly how I feel with any style that demands "each class in its own file" or "each function in its own file" or whatever. I'd rather have everything I need in front of my eyes as much as possible, rather than have it all over the place just to conform with an arbitrary requirement.

I said this at a company I worked and got made fun of because "it's so much more organized". My take away is that the average person has zero ability to think critically.
by MomsAVoxell | 2026-01-04 15:16:20+00:00
Zynthian:

https://zynthian.org/

Monome:

https://monome.org/

Two simply AMAZING synth platforms of the 21st century which push things even further than the mainstream hardware vendors are willing to allow. Note that the third-party clone market for these machines is simply exploding. You can do your own Zynthian easily enough, or Monome too .. or you can find a maker who will build you one for a very nice price very easily too. Both offer 100% open and extremely powerful architectures for synth hacking and the offerings for both platforms are simply astonishing. Worth doing some homework if you’re into it.

DIY more your thing? The FundamentalFrequency LMN-3 might be up your alley:

https://github.com/fundamentalfrequency

Runs JUCE plugins, is kind of a cyberpunks’ Teenage Engineering OP1, without the fuss and nonsense ..

Just off the top of my head. ;) Of course, the impulse to recommend VCVRack is pretty high (https://vcvrack.com/) as is the endlessly amazing vista and extraordinary capabilities of the Eurorack scene, if that’s your thing ..
by dzonga | 2026-01-04 15:16:32+00:00
seems Steve Jobs is vindicated again - when the Consulting types take over the result is predictable.

cz these guys were never there when the sauce was made, they think the ingredients matter - not how the ingredients compose together.

nike was an early innovator in athleisure - now leggings / tracksuits etc other brands took over - kids hardly care about sneakers - the shoes quality is down - personally I prefer new balance
by bgbntty2 | 2026-01-04 15:16:37+00:00
An easy solution - open the package when the delivery person comes or when you pick it up from the delivery office. The delivery person can take a photo and act as a witness. If you take the package from the local delivery office, there are cameras and staff, so I can't just swap a ripe apple for a rotten one.

Where I live we don't have the habit of just putting the delivery on the porch for a few reasons. First, it's ridiculous if you think about it - no one signed for it, so how could you mark it as delivered? I don't get the US in that regard. Secondly, most of the houses have fences, so the delivery person can't come to the house even if they wanted to. You're basically required to meet the delivery person.
by microtonal | 2026-01-04 15:17:07+00:00
The marketing is not just for Nike, the marketing is also for people wearing Nike, to show their purchasing power.

Where I live, Nike have mid-range prices at most and are known for not-so-great quality. They were primarily popular among teenagers due to marketing through athletes (so I agree about the more about image than the quality), though they wear them as everyday shoes.

I do not know about the US market, but here most adults will either not care and are not brand sensitive (and will buy Nike, Puma, Adidas, NB, or any other low to mid-price/quality brands) or buy European brands that are generally 2x or 3x the price of Nike but last for years (e.g. I have some pairs of Ecco that still look like new three years later).
by ivanjermakov | 2026-01-04 15:17:15+00:00
I noticed that when I write code that is not trivial to understand I tend to extract intermediate values into variables with meaningful names.

applyDrag(): void {
const { quad: quadConfig } = settings
const quad = this.getRigidBody()
const quadVel = vec3ToTwgl(quad.linvel())
const dragMag = aerodynamicDrag(quadConfig.dragCoefficient, v3.length(quadVel), quadConfig.frontalArea)
const dragDir = v3.negate(v3.normalize(quadVel))
const dragForce = v3.mulScalar(dragDir, dragMag)
const dragImpulse = v3.mulScalar(dragForce, dt)
quad.applyImpulse(vec3TwglToRapier(dragImpulse), true)
}

This way code gets more natural language anchors which helps understanding what it does.
by mananaysiempre | 2026-01-04 15:17:31+00:00
The races I recall being described were substantially worse, but that’s largely beside my point.

My point is that, now that bare fillrate and framebuffer memory haven’t been a bottleneck for 15 to 20 years, it is a reasonable choice to build a desktop graphics system with the invariant of every frame being perfect—not even because of the user experience, but because that allows the developer to unequivocally classify every imperfect frame as a bug. Invariants are nice like that. And once that decision has been made, you cannot have asynchronous out-of-process window management. (I’m not convinced that out-of-process but synchronous is useful.) A reasonable choice is not necessarily the right choice, but neither is it moronic, and I’ve yet to see a discussion of that choice that doesn’t start with calling (formerly-X11) Wayland designers morons for not doing the thing that X11 did (if in not so many words).

To be clear, I’m still low-key pissed that a crash in my desktop shell, which was deliberately designed as a dynamic-language extensibility free-for-all in the vein of Emacs or TeX, crashes my entire graphical session, also as a result of deliberate design. The combination of those two reasonable decisions is, in fact, moronic. But it didn’t need to be done that way even on Wayland.
by chrismorgan | 2026-01-04 15:17:39+00:00
At least it’s practical to identify a specific version to use, and you can be reasonably confident it will work indefinitely. I remember that with the Hyde iteration of my site, somewhere along the way Hyde became impossible to install, and I was stuck with an existing installation, or a lot of effort to put it back together manually. Python packaging has improved a lot since then, so that I doubt that problem would apply on any new project, but it’s still far more plausible than in a language like Go or Rust.

I maintained a personal fork of Zola for my site (and a couple of others), and am content to just identify the Git repository and revision that’s used.

Zola updates broke my site a few times, quite apart from my patches not cleanly rebasing. I kept on the treadmill for a while, initially because of a couple of new features I did want, but then decided it wasn’t necessary. You don’t need to run the latest version; old is fine.

—⁂—

One piece of advice I would give for people updating their SSG: build your site with the old and new versions of the SSG, and diff the directories, to avoid regressions.

If there are dynamic values, normalise both builds before diffing: for example, if you have timestamp-based cachebusting, zero all such timestamps with something like `sed -i 's/\?t=[0-9]+/?t=0/' **/*`. Otherwise regressions may be masked.

I caught breakages a couple of times this way. Once was due to Zola changing how shortcodes or Markdown worked, which I otherwise might not have noticed. (Frankly, Markdown is horrible for things like this, and Zola’s shortcodes badly-designed; but really it’s mostly Markdown’s fault.)
by shantara | 2026-01-04 15:18:58+00:00
I’m not a professional athlete, but I run and walk recreationally daily for at least a couple of hours. A pair of shoes lasts me about 9-12 months on average. I used to be very picky about my shoes trying dozens of models in store before finding the one that fit me perfectly. But once I found the match, I’ve started buying the exact same model again online at the discount websites, currently on my 4th pair.
by Dagger2 | 2026-01-04 15:19:04+00:00
Dual stack is a natural part of migrating between two protocols, because it's the most compatible way of handling both of them. You don't need to use dual stack to use both v4 and v6, but you'll probably choose to the instant you hit even the most minor incompatibility.

Your L6 code should work perfectly fine if you wrote it properly in the first place. If you pass "localhost" to getaddrinfo() with flags=AI_PASSIVE, it returns a list of socket addresses to listen on, and all you need to do is pass those to socket(). You don't need to look inside the sockaddrs and they might as well be opaque data to you, so it doesn't matter what L3 protocol they represent.
by necrotic_comp | 2026-01-04 15:20:16+00:00
I appreciate this way of programming - also, if I may, in the age of auto-complete I think it's okay to have verbose variable naming. Imho, it's perfectly fine to have quad, quadVelocity, dragMagnitude, etc.

I see this a lot in the wild, though - as an honest question (not trolling!) why do people still shorten their variable names in place of having a terse descriptor ?
by andsoitis | 2026-01-04 15:20:33+00:00
> America did that whole “leader is bad let’s get him”, in Afghanistan and Iraq. We saw how that turned out.

Don't forget that the main countries who fought in the Iraq war were the US, UK, Australia, and Poland, with significant contributions from Spain, Denmark, The Netherlands, and Italy.

In Afganistan, countries fighting were the US, UK, Canada, Australia, Germany, Italy, France, Poland, The Netherlands, Turkey, Georgia, Romania, Denmark, Norway, Spain, New Zealand, South Korea.
by andrepd | 2026-01-04 15:20:40+00:00
> Strongly disagree, it's why I'm not dying in a ditch of famine at the ripe age of 30.

I'm obviously talking about the future of technology and not about technology in general. I agree that vaccines and antibiotics and fertilisers and the three field system and writing and the automatic bread slicer are all good technologies that improved our lives. The """innovations""" peddled by big tech, AI among them, are nothing like this! Again: mass surveillance, predatory pricing, mass manipulation, fake videos, line-rate slop: this is what big tech proposes, not the cure for cancer or the 15-hour workweek.

Also a nit: infant mortality was dreadful and pushed avg life expectancy way down. But if you lived to 15 you had a good chance of living to 70 even in pre-modern times.
by Balgair | 2026-01-04 15:20:42+00:00
I'd add in a 4th category: Slavery.

Though no longer pertinent explicitly, the original sin of America is a potent literary force. We still feel it's sting in our African American literature nearly axiomatically. Almost by definition, any southern gothic literature will revolve around the effects of slavery, which includes some of our greatest novels.

Per the Great Gatsby, the story itself is one of the most powerful arcs out there: The Hero arc with a disillusionment ending. It's not exactly a negative change arc for the protagonist (Nick), but it's meant to feel like one. Nick is physically better off than he starts out, but his opinions and feelings about the world at large are negative. He has grown up, fought the dragon, healed the sick king, beaten the bully, encouraged the coward, and gotten the damsel. But Fitzgerald adeptly makes them all hollow. It's a great and quick read. A really tight plot and good prose.
by shevvek | 2026-01-04 15:20:48+00:00
I think part of it is that most users at some point encounter an error message that is just straight up wrong. For example, a login page that says "wrong password" when in reality the user is typing EXACTLY what they typed on account creation, but the site silently truncated the password. Even one such frustrating experience is enough to teach many users that as soon as they see any error message, they should stop trusting anything the system tells them, including the error message. It's extremely difficult to rebuild user trust after this sort of UX contract violation, particularly because less technical users don't mentally differentiate separate computer systems. All the systems are just "the computer."

Also arguably the users are kind of right. An error indicates that a program has violated its invariants, which may lead to undefined behavior. Any output from a program after entering the realm of undefined behavior SHOULD be mistrusted, including error messages.
by jlarocco | 2026-01-04 15:22:21+00:00
> - I know I'm beating a dead horse here, but what happens now? Despite stratification I mentioned above, SO was by far the leading source of high quality answers to technical questions. What do LLMs train off of now? I wonder if, 10 years from now, LLMs will still be answering questions that were answered in the halcyon 2014-2020 days of SO better than anything that came after? Or will we find new, better ways to find answers to technical questions?

To me this shows just how limited LLMs are. Hopefully more people realize that LLMs aren't as useful as they seem, and in 10 years they're relegated to sending spam and generating marketting websites.
by nz | 2026-01-04 15:22:23+00:00
A little hungover, but some foggy thoughts: If a company can differentiate itself by loving its customers, then that is an indictment of the rest of the entire industry. Loving one's customers should be the standard. But alas, the people with their hands on the money-faucet tend reward profitable (zero-sum) behavior over virtuous (positive-sum) behavior. One can only hope that after they alienate enough of the population, they will run into problems that they cannot buy their way out of (so that they can learn what it feels like when those-who-cannot are at the mercy of those-who-can).
by ZeroSolstice | 2026-01-04 15:22:56+00:00
I think the saying is "missing the forest for the trees.[1]"

Referring someone to another food bank or resource is not addressing or owning the immediate problem, which is what the experiment showed. Those organizations failed at their primary objective and instead of re-evaluating why they failed they hid behind process and procedure and how they were being tricked since it wasn't a "real" problem.

There was a proper way to handle this situation as anyone who has worked or called into customer service or tech support where their issue was addressed no matter what the internal structure of the organization was.

[1] https://www.merriam-webster.com/dictionary/miss%20the%20fore...
by ndr42 | 2026-01-04 15:22:58+00:00
It's a question of mindset. I read it as I was in university (studying german literature) and thought that I should read some of the canonical works.
Well it was at that time no pleasure and boring. After finishing I read on the back cover that it was supposed to be humorous.

Today I'm able to enjoy it, but because of my mindset ("read something important!") it was not possible.

Now (as a teacher for german) I feel even some of the real serious stuff (dramatic works like Emilia Galotti, Nathan der Weise) has some funny elements, you can see it even as a soap opera (e.g. Nathan der Weise: In the end everybody is related).
by dangus | 2026-01-04 15:23:07+00:00
It’s cool that you are a non-conformist badass but their wild popularity proves that a native app experience doesn’t matter.

What does “bad iOS citizen” even mean?

It’s not even about saving money for developers, it’s about the fact that your users expect a consistent experience.

Imagine if you watched an NFL game on NBC and the on-screen graphics were different if you were watching on a Samsung TV versus an LG TV. That’s the issue with native app UI elements (and it would quite literally be an issue with content apps on smart TV app platforms which are way more fragmented than iOS versus Android).
by noduerme | 2026-01-04 15:23:08+00:00
I would say that going onto Stack Overflow to answer questions made me a better coder - yeah, even with the cacophony of bullshit and repeats. It's almost more offensive for that job to be taken by "AI" than the job of writing the stupid code I was trying to help people fix.

[edit] because I kind of get what you're saying... I truly don't care what marginal benefits people are trying to get out of popularity in the high school locker room that is the Social Media internet. I still have a weird habit of giving everyone a full answer to their questions, and trying to teach people what I know when I can. Not for kudos or points, but because the best way to learn is by teaching.
by csa | 2026-01-04 15:23:14+00:00
> Isn't it If he leaves office at this point, or does it only sound like it from Europe?

While I appreciate your sentiment, we really need to stop with this specific type of pearl clutching.

The current president’s mental and physical condition is deteriorating rapidly. He will be lucky to make it through the current term in a functional state.

Adding another number of years to his time in office would mean that he almost literally would need to be propped up by his caretakers.

Is it possible? Sure. Is it probable? No, and it’s not even close, imho.

There is plenty of commentary that can be made about the political machine behind him, but let’s not project that to the dotard currently in office.
by watwut | 2026-01-04 15:23:27+00:00
> I think that Trump just did something to take focus away from the whole Epstein deal for a bit.

Trump is a highly emotional man driven by his feelings. Pete Hegseth is also a highly emotional man, openly driven by his feelings and notion of bully kind of masculinity. Vance is the most rational from the three, but still fairly on the emotional side.

And yet, people still insist on looking for rationalizations for what these do. Both with Trump and Hegseth, the feeling comes first. Something made them feel certain way or they want to feel certain way. Yes there are rational parts of motivation that combine with these.

But imo, the real truth is that ordering an attack and watching that attack happen makes them feel strong, powerful and like a manly man. These are intoxicating feelings. And all of that being real, real people dying, makes them much stronger then what one feels when playing computer game. They like this, on emotional level. And it is fair to guess they will continue doing this, because that is how guys addicted to own masculinity operate. They always need more.
by age123456gpg | 2026-01-04 15:24:28+00:00
You can get yourself a vanity key using https://github.com/AlexanderYastrebov/wireguard-vanity-key tool:

% wireguard-vanity-key -prefix=NAS/
private public attempts duration attempts/s
EiBsDB8zt/G4+VWGvxW2ZznNXYmcslcIyJimNR2PpF4= NAS/aex8+IFzLePBYVNGMsSo/1/XeUZcam+Hn8wbNB4= 22619537 0s 112587360
by weinzierl | 2026-01-04 15:24:34+00:00
I think, nowadays, when you order something you get the most cheaply sourced near equivalent the seller thinks they can get away with.

I wore a certain model of Adidas for decades. When I order it online, what I get is hit or miss. Sometimes they are too big, sometimes they are too small. Comparing the old and new ones, they are always similar but also noticeably different.

Where does the diversion happen? Amazon? Adidas? Manufacturer? Probably all of them? Who knows?

On the flip side, Chinese manufacturers seem not care about branding at all. It looks as if they apathetically slap on some carelessly designed logo and brand name just because the west apparently expects it. Otherwise you can get the "same" item under ten different ephemeral brands and every brand ships the aforementioned "near equivalent" as they see fit.

Brands have no meaning in this world anymore.