MurphyA/hacker-news huggingface dataset:
by HarHarVeryFunny | 2026-01-20 15:18:07+00:00
It's an interesting policy decision for a language - whether to guarantee (or at least practice) ongoing backwards compatibility or not.

The benefit of NOT maintaining backwards compatibility is that hopefully you end up with a cleaner language without all the baggage of the past, and "impedence mismatches" of new features that don't play well with old ones, etc, etc.

However, as a developer, I think I prefer the backwards compatible approach, knowing that:

1) Upgrading to latest version of the compiler hopefully isn't a big deal, and I can take advantage of any benefits that brings, including new language features, without having to sign up for rewriting existing tested code to remove deprecated features. In a large code base any such forced rewrites could be pretty onerous, and may involve a lot of retesting and potential for introducing bugs into code that was previously working.

2) It's nice to be able to take older projects, that you haven't worked on in a while (whether hobby projects, or legacy corporate code) and have the code still compile with the latest installed tool set, rather than to have developed "bit rot" due to using language features that have since been deprecated. Of course bit rot may also occur due to library changes, so language backwards compatibility is no guarantee of smooth sailing.

Maybe going forwards, with AI coding tools, this will become less of an issue, if they become capable of this sort of codebase updates without introducing errors. In fact, going forwards it may well be that choice of programming languages itself becomes seen as more something the tooling takes care of. Nowadays we write in high level languages and don't really think or care about what the generated machine code looks like. Maybe in the future we can write in high level instructions to the AI, without even having to care what the implementation language is?
by netcoyote | 2026-01-20 15:18:09+00:00
This is the solution I chose for sandvault [0], which works well on my Mac since agents can run OSX-specific tools.

It just got added to Homebrew:

brew install sandvault

Or clodpod [1] for a VM-based solution

0: https://github.com/webcoyote/sandvault

1: https://github.com/webcoyote/clodpod
by nulone | 2026-01-20 15:18:18+00:00
I can never remember jq syntax.

Whenever I need to transform JSON, I spend 20 minutes guessing filters until something works.

So I built a CLI tool: give it input JSON and desired output, it generates the jq filter.

Example:

Input:
[{"name": "Alice", "email": "alice@example.com"},
{"name": "Bob"},
{"name": "Charlie", "email": "charlie@example.com"}]

Wanted:
["alice@example.com", "charlie@example.com"]

Generated:
[.[] | select(.email != null) | .email]

How it works:

1. Takes your input/output examples

2. Generates a filter, runs jq, verifies the output matches

3. If wrong, retries automatically

Works with local models (Ollama) or cloud (OpenAI/Anthropic).

~450 tests, MIT licensed.

Curious what edge cases break it.
by nikole9696 | 2026-01-20 15:18:27+00:00
Was going to reply this - I have Walmart Pay and it's my credit card.

I'm supremely annoyed because Walmart Pay still rather sucks. I have to scan a QR code which opens the app, then approve it from there. It's not simple like Apple Pay where I just tap my phone. But after hearing tons of stories of issues with people getting compromised by the terminals, I sucked it up and just did it, since their terminals don't support tap CCs.
by ramraj07 | 2026-01-20 15:19:01+00:00
Its not clear to me that LLMs hallucinating is because of they are extrapolating beyond their training data. Is that proven? Or are you extrapolating?

Even acknowledging it is interpolation, models can extrapolate slightly without making things up, within the range where the model still applies. Whos to say what this range is for an LLM operating in thousand dimensional space? As far as I can tell the main limiters to LLM creativity are guardrails we put in place for safety and usefulness.

And what exactly is your proof that human ingenuity is not just pattern matching. Im sure a hypothesis can be put that fire was discovered by just adding up all known facts the people of those times knew and stumbling on something that put it all together. Sounds like knowledge remix + slight extrapolating to me.
by drob518 | 2026-01-20 15:19:22+00:00
I’ve looked at a few of the LoRa-based mesh network systems over the last couple months. They all seem to have a philosophical document of some sort, like this one, sometimes buried as part of the user docs, but none of them have clear protocol specification docs. When I look at their node maps, the node counts are absurdly small (like 20 nodes in a city of 1 million people). I suspect each of them has major scaling issues. Sure, mesh networks are great because they are more resilient, but if you trust nobody and you have no sense of a route to a destination, you’re left with flooding as your primary next-hop selection method, which means you’re going to be about as scalable as an old Microsoft LAN Manager network was in 1995 (which is to say not very). Short of reading the code, does any sort of protocol documentation (or better yet, analysis) exist for Reticulum?

Edit: looks like the Reticulum Manual might have some more technical details. https://github.com/markqvist/Reticulum/blob/master/docs/Reti...
by bonzini | 2026-01-20 15:19:33+00:00
Yes, I wish this was this simple. :) There are many other complications:

* Some instructions require VEX.L or VEX.W to be 0 or 1, and some encodings result in completely different instructions if you change VEX.L.

* Different bits of the EVEX prefix are valid depending on the opcode byte.

* Some encodings (called groups) produce different instructions depending on bits 3-5 of the modrm byte (the second byte after all prefixes). Some encodings further produce different groups depending on whether bits 6-7 (mod) of the modrm byte identifies a register or not.

* Some instructions read a whole vector register but only a scalar if the same instruction has a memory operand. Sometimes this is clear in the manual, sometimes it is not, sometimes the manual is downright wrong.

* Some instructions do not allow using the legacy high-8-bits registers even though they don't do anything with bits 8 and above of the operand: they only want a 32- or 64-bit register as their operand.

* APX (EVEX map 4) looks a lot like legacy map 0, but actually a few instructions were moved there from other maps for good reasons, a few more were moved there for no apparent reason (SHLD/SHRD iirc), and a few more are new.

* REX2 does not extend SSE and AVX instructions to 32 registers even though REX does extend them to 16.

* Intel defines a thing called VEX instruction classes, which makes sense except for a dozen or two instructions where it doesn't. For these, sometimes AMD uses a different class, sometimes doesn't; sometimes AMD's choice makes sense, sometimes it doesn't.

And many more that I found out while writing QEMU's current x86 decoder (which tries to be table based but sometimes that's just impossible).
by PaulHoule | 2026-01-20 15:19:46+00:00
Treat it as a pair programmer. Ask it questions like "How do I?", "When I do X, Y happens, why is that?", "I think Z, prove me wrong" or "I want to do P, how do you think we should do it?"

Feed it little tasks (30 s-5 min) and if you don't like this or that about the code it gives you either tell it something like

Rewrite the selection so it uses const, ? and :

or edit something yourself and say

I edited what you wrote to make it my own, what do you think about my changes?

If you want to use it as a junior dev who gets sent off to do tickets and comes back with a patch three days later that will fail code review be my guest, but I greatly enjoy working with a tight feedback loop.
by jrochkind1 | 2026-01-20 15:19:56+00:00
Oh, they explain, if I understand right, they did the output change intentionally, for performance reasons. Based on the inaccurate assumption that order did not matter in DNS responses -- becuase there are OTHER aspects of DNS responses in which, by spec, order does not matter, and because there were no tests saying order mattered for this component.

> "The order of RRs in a set is not significant, and need not be preserved by name servers, resolvers, or other parts of the DNS." [from RFC]

> However, RFC 1034 doesn’t clearly specify how message sections relate to RRsets.

The developer(s) was assuming order didn't matter in general, cause the RFC said it didn't for one aspect, and intentionally made a change to order for performance reasons. But it turned out that change did matter.

Mistakes of this kind seem unavoidable, this one doesn't necessary say to me the developers made a mistake i never could or something.

I think the real conclusion is they probably need tests using actual live network stacks with common components, and why didn't they have those? Not just unit tests or with mocks, but tests that would have actually used real getaddrinfo function in glibc and shown it failing?
by elzbardico | 2026-01-20 15:20:16+00:00
If anything, coding agents gave me more autonomy to experiment and implement stuff. Management used to pretty much risk-adverse, and between building something in-house or paying for another crappy SaaS offering, they would perceive the second one as the least dangerous path in terms of schedule and cost. And then we would be fucked integrating with some shitty API and somehow shoehorning their nonsense abstractions and metaphors into our domain models.

Sometimes I feel that if I said tomorrow that we need to have our own operating system, they would say "sure! go ahead! just make sure to send the expense reports if you need to pay for more tokens with the company's credit card".
by highspeedbus | 2026-01-20 15:20:38+00:00
Honestly, I only use coding agents when I feel too lazy to type lots of boilerplate code.

As in "Please write just this one for me". Even still, I take care to review each line produced. The key is making small changes at a time.

Otherwise, I type out and think about everything being done when in ‘Flow State’. I don't like the feeling of vibe coding for long periods. It completely changes the way work is done, it takes away agency.

On a bit of a tangent, I can't get in Flow State when using agents. At least not as we usually define it.
by SkyliteDesign | 2026-01-20 15:21:18+00:00
Ich arbeite seit mehreren Jahren an VelinScript, einer AI‑Native System Definition Language.
Version 3.0.0 ist fast fertig und enthält eine KI‑Compiler‑Pipeline (Semantic → Bug Detection → Codegen → Optimization), einen SystemGenerator für komplette APIs/Deployments und Multi‑Target Backend Codegen (Rust, Go, TS, Java, C#, PHP, Python).
Bevor ich das Release veröffentliche, würde ich gerne Feedback von der Community bekommen:
Was haltet ihr von AI‑basierten Compiler‑Pipelines?
Welche Features wären für euch wichtig?
Welche Risiken seht ihr?
Ich freue mich über jede Rückmeldung.
by assimpleaspossi | 2026-01-20 15:21:42+00:00
Just yesterday--and I don't know how I wound up there--I looked at RFC1166 (from 1990) which is "a status report on the network numbers and autonomous system numbers used in the Internet community." There's a long list of companies and individuals who were assigned "internet numbers". To my surprise, my real name is listed there! I have no clue why.
by terabytest | 2026-01-20 15:22:00+00:00
Your point is fair, but it rests on a major assumption I'd question: that the only limit lies with the user, and the tooling itself has none. What if it’s more like “you can’t squeeze blood from a stone”? That is, agentic coding may simply have no greater potential than what I've already tried. To be fair I haven't gone all the way in trying to make it work but, even if some minor workarounds exist, the full promise being hyped might not be realistically attainable.
by CjHuber | 2026-01-20 15:22:20+00:00
I still don't get what beads needs a daemon for, or a db. After a while of using 'bd --no-daemon --no-db' I was sick of it and switched to beans and my agents seem to be able to make use of it much better, on the one hand its directly editable by them as its just markdown, on the other hand the CLI still gives them structure and makes the thing queryable
by fotcorn | 2026-01-20 15:22:41+00:00
I used Claude Opus 4.5 inside Cursor to write RISC-V Vector/SIMD code. Specifically Depthwise Convolution and normal Convolution layers for a CNN.

I started out by letting it write a naive C version without intrinsic, and validated it against the PyTorch version.

Then I asked it (and two other models, Gemini 3.0 and GPT 5.1) to come up with some ideas on how to make it faster using SIMD vector instructions and write those down as markdown files.

Finally, I started the agent loop by giving Cursor those three markdown files, the naive C code and some more information on how to compile the code, and also an SSH command where it can upload the program and test it.

It then tested a few different variants, ran it on the target (RISC-V SBC, OrangePI RV2) to check if it improves runtime, and then continue from there. It did this 10 times, until it arrived at the final version.

The final code is very readable, and faster than any other library or compiler that I have found so far. I think the clear guardrails (output has to match exactly the reference output from PyTorch, performance must be better than before) makes this work very well.
by zhisme | 2026-01-20 15:23:14+00:00
yep, that's right. The idea of his nickname that he is really silly. Small man and no good at anything. If you want to go deeper and harsh synonyms he is like "shitty" man, doing shit and receiving shit. His nickname fully describes him like useless, small, no influence, clueless, talentless man. One from the great unwashed
by tim333 | 2026-01-20 15:23:29+00:00
What if China builds a port in Canada? Does that mean the US has to invade?

In practice Greenland and Denmark have been quite sensitive to these things are unlikely to open a Chinese naval base. Which is one of the things that's sad about this - why attack one of your most faithful allies and wreck NATO in a way that horries most of the democratic world and delights Moscow? Not really the US's finest hour.
by Beijinger | 2026-01-20 15:23:41+00:00
"Soft skills are the most important. Calling a group of people you work with idiots because their role has a low barrier to entry reflects badly on you"

Simple mathematics. There are close to zero entrance requirements to HR or Real Estate. Now compare this to a professor at a decent University. Has to get a HS Diploma, Bachelors degree, PhD, Post Doc, publications. While there may be idiots, it is much harder to become a professor at a decent university if you are an idiot.

Back to HR. I did not say that all people working in HR are idiots. There are brilliant people. But on average, their level is not very flattering. And "soft skills" alone is not enough. Many, if not most, just follow check lists and have no idea what they are talking about.

Recruiter are worse. They add another layer of unnecessary complexity to the process. I avoid them like the plague.
by heresie-dabord | 2026-01-20 15:23:43+00:00
Getting computer work done inside a vehicle is not easy if comfort is a requirement. Driving posture is not generalisable.

The ergonomy of most laptops (and keyboards in general) is poor. The modern laptop that is most ergonomic is the "2 in 1" design, which can be folded and used as a tablet.

For a programmer, an ergonomic keyboard with a trackball, connected to a 2-in-1 portable in tablet mode, might be easiest to assemble from common components for working during travel.
by bluedino | 2026-01-20 15:23:52+00:00
> UAW pays better

In some cases:

Target - in 2022 we enhanced our starting pay again, offering a range of $15 to $24 per hour

UAW wages at the big three automakers start at $18 and top out in the $30's. Meanwhile, UAW jobs at suppliers can start as low as $14/hr. You're probably not going to get 20-30 hours of overtime a week at Target, though.

Only 150,000 of the 380,000 UAW members are employed by the big three.

You also have union skilled trades jobs (electricians, millwrights, etc) that make more than production workers but Target pays their electricians etc more than the retail workers as well.
by SamuelAdams | 2026-01-20 15:24:13+00:00
Something often left out is the dependence on LLM’s. Students today assume LLM’s will always be available, at a price they (or their companies) can afford.

What happens if LLM’s suddenly change their cost to be 1000 USD per user per month? What if it is 1000 USD per request? Will new students and new professionals still be able to complete their jobs?
by inanutshellus | 2026-01-20 15:24:20+00:00
Helping people is 100% my love language.

My SIL queues up household tasks when I come over. "Hey I got this new thermostat, can you help me put it on?" kinda stuff that she could do herself but she knows that's what makes me feel fulfilled.

Point being: GP - calm down bud. ;-)
by gnatman | 2026-01-20 15:24:31+00:00
Why should they if they’re buying some commoditized item on amazon, for example? I bought an ergonomic ice pack for my knee this morning, something I couldn’t find in the store near
my house. Why should I scroll past the first, cheapest, decent looking item that meets my
needs? As a moral duty, perhaps. At any rate, advertisement doesn’t necessarily mean scam.
by TeMPOraL | 2026-01-20 15:25:00+00:00
> What if someone (could be an individual or even an uncoordinated group) bets millions of dollars on you not doing X, in the hopes of you taking the opposite bet and doing X?

From their POV, that's the purest form of voting with money. If you do X, they're presumably happy with the outcome they just paid for; if you do the opposite of X, they at least have their payouts as consolation prize.
Show HN: Ytics.io – Capture 100% of traffic without cookies (GA4 alternative)
by mifiko | 2026-01-20 15:25:18+00:00
Hello HN!

I’m the maker of ytics.io.

I built this because I was frustrated with the current state of web analytics. To use GA4 legally in Europe, you need a massive cookie banner, which ruins UX and causes you to lose ~30-50% of your data (users who reject or use ad-blockers).

ytics is my attempt to fix this. It’s a privacy-first analytics platform that works without cookies, so you don’t need a consent banner (GDPR/PECR compliant).

How it works technically: Instead of cookies/localStorage, we generate a daily-rotating hash based on the user’s request (IP + User Agent + Daily Salt). This allows us to track unique visitors for a day without storing any PII (Personally Identifiable Information) or creating persistent profiles. The data is anonymized at the source.

Key features:

Lightweight: The script is < 1KB (vs Google’s 45KB+ bloat).

100% Data: Since no opt-in is required for strictly necessary/anonymous stats, you see all your traffic.

AI Assistant: Built-in "Chat with your data" to ask questions instead of building reports.

We are currently in beta/launch mode. It is a paid SaaS (because we don't sell your data), but there is a trial.

I’d love to hear your feedback on the implementation or answer any questions about the privacy compliance!
by simiones | 2026-01-20 15:25:21+00:00
The difference is this: in regular 4D space, the distance between two points, (X1 Y1 Z1 T1) and (X2 Y2 Z2 T2) is (X1-X2)^2 + (Y1-Y2)^2 + (Z1-Z2)^2 + (T1-T2)^2), similar to 3D distances you may be more familiar with.

However, this is NOT the case in Special Relativity (or in QM or QFT). Instead, the distance between two points ("events") is (cT1-cT2)^2 - (X1-X2)^2 - (Y1-Y2)^2 - (Z1-Z2)^2. Note that this means that the distance between two different events can be positive, negative, or 0. These are typically called "time-like separated" (for example, two events with the same X,Y,Z coordinates but different T coordinates, such as events happening in the same place on different days); "space-like separated" (for example, two events with the same T coordinate but different X,Y,Z coordinates, such as events happening at the same time in two different places on Earth); or light-like separated (for example, if (cT1-cT2) = (X1 - X2), and Y, Z are the same; these are events that could be connected by a light beam). Here c is the maximum speed limit, what we typically call the speed of light.

This difference in metric has many mathematical consequences in how different points can interact, compared to a regular 4D space. But even beyond those, it makes it very clear that walking to the left or right is not the same as walking forwards or backwards in time.

Edit to add a small note: what I called "the distance" is not exactly that - it's a measure of the vector that connects the two points (specifically, it is the result of its scalar product with itself, v . v). Distance would be the square root of that, with special handling for the negative cases in 3+1D space, but I didn't want to go into these complications.
by circuit10 | 2026-01-20 15:25:24+00:00
This is like saying "HTML, CSS and JavaScript are all widely used, but the webcam capture API is used way less, so obviously it's a failure"

In its current scope, WASM is a way to port existing code or accelerate certain computations, which only some applications need. Most websites don't need it, like how most sites don't need to use webcam capture; that doesn't mean it's not useful for those that do
Show HN: An iOS app for data-driven football analysis focused on a single club
by 0xplainjane | 2026-01-20 15:25:33+00:00
I’ve been working on SportingCP.ai as a passion project. It’s an iOS app focused on data-driven analysis for matches involving Sporting Clube de Portugal, and it’s been live on the App Store for about a month while I continue to iterate and add features.

The app combines statistical and ML models (Elo-style ratings, expected goals, scoreline probability distributions) with historical match data to generate pre-match context and analytical predictions. A core goal was to keep the output explainable and readable for fans, rather than overwhelming them with raw numbers.

Some features:
- Pre-match win/draw/loss probabilities and xG estimates
- Scoreline probability distributions
- Live match events, lineups, and stats during games
- User predictions vs model output
- Match threads and discussion tied directly to fixtures

One motivation behind this was that many large sports apps try to cover everything and everyone, which can make them noisy and hard to digest. Scoping both the model and the UI to a single team allows for a tighter fan experience and, in theory, better-calibrated models for that specific context.

I’d really appreciate feedback on:
- What information feels unclear or confusing
- What feels missing or underdeveloped
- Whether the single-team focus makes sense from a product standpoint

Happy to answer technical or product questions - thank you!
by keystorke3 | 2026-01-20 15:25:53+00:00
You can use github topics for technologies you are interested in which act like hashtags on other social media sites. If you are looking for curated lists, start here:

https://github.com/topics/awesome-list

If you are looking for a single page option, check this out:

https://project-awesome.org/

I typically discover repos through p2p sharing, looking up a solution to a specific problem, and hanging out in my favourite programming languages' communities on socials. People also share things they have built in hobby communities, blogs and youtube.
by elzbardico | 2026-01-20 15:25:55+00:00
Bullshit. There are some dysfunctional exceptions, but higher pay usually correlates with more freedom, more responsibility and access to more resources. You may get frustrated in Big Tech, because nowadays, people like to have no bounds in their expectations, but try changing your big tech job for a job in the oil or insurance industry with half the pay, and you'll see that most of the time, you not getting a blast out of your 600k job is mostly your fault.