MurphyA/hacker-news huggingface dataset:
by baliex | 2025-10-04 10:50:16+00:00
I'm pretty new to the at:// protocol, and I like what I'm reading, thanks for the write-up.

To your "This is not done by hitting an API" point; if I understand correctly, I'd argue that the _endpoints_ that you detail in your post _are_ the API. The whole point is that there's no single _central_ API, but each server that wants to be part of the network participates by hosting an API that meets the standard outlined in the protocol.

In a way it's semantics, but I'd be interested in yours thoughts on that. To either correct or confirm my understanding.
by m000 | 2025-10-04 10:51:12+00:00
"During bubbles, every experiment or idea gets funded, the good ideas and the bad ideas. And investors have a hard time in the middle of this excitement, distinguishing between the good ideas and the bad ideas. ... But that doesn't mean anything that is happening isn't real."

Remind me again why we need investors to fund bad ideas? The whole premise of western capitalism is that investors can better align with the needs of the society and the current technological reality.

If the investors aren't the gurus we make them to be, we might as well do with a planning committee. We could actually end up with more diversified research.

"Under socialism, a lot of experimental ideas get funded, the good ideas and the bad ideas. And the planning committee have a hard time in the middle of this excitement, distinguishing between the good ideas and the bad ideas. ... But that doesn't mean anything that is happening isn't real."
by athrowaway3z | 2025-10-04 10:52:06+00:00
My gut says the following, so take with a grain of salt:

If your goal is to not do refcounting, You can tie compile time guaranteed access on a 'parent getter' (but only ever as a non-mut reference) by saying:

- parent element MUST be present at time of construction

- When doing a 'parent get' call, you MUST still prove you're in the parent's lifetime.

This can be done at compile time at 0 runtime cost. The problem is, that these constraints drastically reduce the usability of those back-links.

There is no compiler solution in Rust. Rust lifetimes form a DAG of (overlapping) ranges. (in terms that some leaf nodes are inductive proofs)

To relax those 2 constraints require a bi-directional graph, and I'm not sure if that can ever be computed in a reasonable time.
by decimalenough | 2025-10-04 10:52:42+00:00
Exactly. Look no further than Thailand, long a bastion of both Japanese car manufacturing and Japanese cars locally:

https://www.ft.com/content/e33a2cbf-9a7e-4964-8914-c129d2947...

The absolute numbers are still small, but as momentum shifts to EVs, Japan's market share will collapse.
by thinkharderdev | 2025-10-04 10:53:00+00:00
> doesn't mean you're not stomping on in-bounds neighboring data

I don't see how you would do that in safe rust though. The point of the arena would just be to solve the lifetime issue. It just moves the ownership problem one level higher. Instead of having circular ownership in a linked list, all linked list nodes are owned by the arena and hence have the same lifetime as the arena.
by Razengan | 2025-10-04 10:53:18+00:00
You sort of have a point, but users shouldn't have to pay the price for better UX for devs, the companies making operating systems should.

Even non-power users pay the cost, they just don't realize it yet.

But as long as users still need Apple/Microsoft/Google's platforms to be able to run Electron apps, those corps won't care, specially if it takes devs away from the toolchains controlled by them.

Maybe if someone can come up with a pure Electron OS that can run on any device, it might force Windows/Apple/Android to agree on a universal native UI API?
by mort96 | 2025-10-04 10:53:51+00:00
Eh not really. Maybe retro cloud gaming services. But games haven't stopped getting more demanding every year. Not only are the AI GPUs focused on achieving clusters with great compute performance per watt and dollar rather than making singular GPUs with great raster performance; even the GPUs which are powerful enough for current games won't be powerful enough for games in 5 years.

Not to mean that we're still nowhere near close to solving the broadband coverage problem, especially in less developed countries like the US and most of the third world. If anything, it seems like we're moving towards satellite internet and cellular for areas outside of the urban centers, and those are terrible for latency-sensitive applications like game streaming.
by em-bee | 2025-10-04 10:54:15+00:00
well it depends, if you buy a car stolen from me, then i should get the car back, no matter what. if you didn't know that it was stolen, you have a claim against the person who sold you the car, but not me. but if that person can't return the money, then you are out of luck, just as when you are falling for a scam. not your fault, but your damage nontheless.
by llm-cool-j | 2025-10-04 10:55:24+00:00
I find you can give it a task and the full context in your 1st message, and also include (a) asking what files are needed to understand and complete task, and (b) ask if there’s anything ambiguous about the task/question. Then, when you get the response, create a new chat with just the files it recommends, and the ambiguities explained in the 1st comment. Sometimes you need a couple of rounds of this.

The you will have a good starting point, with less chance of running out of space before solving the task.

If you can’t give it full context at the beginning, you can give it a tree listing of the files involved, and maybe a couple of READMEs (if there are any) and ask it see if it can work out what files are needed, giving it a couple of files at a time, at its suggestion.
by michaelt | 2025-10-04 10:57:36+00:00
Well, the big money is in becoming a leader in a field before it's hot - making the big payoffs very speculative.

In the mid 2000s, natural language modelling was a joke and the best performing ML systems for sentiment analysis would lose in benchmarks to emoji counters. Today, people with a PhD in ML language modelling and years of experience delivering projects in industry are finding the PhD in ML really pays off.

But what about someone who spent the mid 2000s working on formal methods for static analysis? Or a compiler responding to the challenges created by Intel's Itanium architecture? Or trying to fit FPGA accelerator boards into the niche CUDA fills today?

Well, honestly their career's probably still going fine, they're a smart person and there's been many years of high demand for competent programmers. But industry isn't beating their door down; the beneficial effects of the PhD will be a lot less obvious.

Honestly a lot of PhDs go to people from cultures that prize education; and to people from upper-middle-class backgrounds who've been brought up to do well in school, follow their passions, no need to worry too much about money.
by mathisd | 2025-10-04 10:58:43+00:00
I believe the author missed another approach of the semantic layer. That is the one used by Power BI Semantic model or, and perhaps, the most interesting one Malloy. In these tools, the semantic layer is a thin layer that only define the following: - metric definition (mostly as aggregation function) - dimensions of analysis (product category, country, etc.)

This blog makes a much better argument than I would at presenting why Malloy is a really interesting and welcome innovation in Data Analytics space : https://carlineng.com/?postid=malloy-intro#blog
by jobigoud | 2025-10-04 10:59:58+00:00
Interesting framing. Although I assume all the observations had been done already. It was more about being bold enough to investigate a line of thought that wasn't obvious or popular at the time and proving it convincingly.

They already had many "explanations" and models for why the planets were seemingly moving back and forth in the sky during the year. Their models were more complicated than necessary simply because they didn't want to consider the different premise.
by garbthetill | 2025-10-04 11:02:05+00:00
I agree on the current admin being pro grift and just extracting as much as they can, but crypto works because it overwhelms the system, if a million people rushed a military base at the same time no matter how great the defense is, the base will be breached.

I dont have financial/economic knowledge to argue my point to a full extent, but ive been under the assumption that p2p payments was only hard because various countries could not find a common ground, not only because of keeping control , but also getting laws changed/passed in most democratic nations is hard and might not be worth the scrutiny, entities in charge of their country banking system and regulations also find it difficult to bring radical ideas

There has been a handful of items that have bypassed all of this way before crypto and that is precious metals & gem stones like gold, silver, ruby, emerald etc you could be in the middle of africa and you will find someone who will easily buy your gold. Crypto is just like this and instead of mother nature dictating for us what material is rare , we as the consumers decide which crypto protocol, dapp, token ,blockchain etc to use and with competiton a better or improved system will always arise and trading gold hasnt eroded control for most nations, people still want hard cash for their day to day.
by hvb2 | 2025-10-04 11:02:36+00:00
Isn't that exactly how the criminal justice system works? Because you know you're not going to catch all the criminals you want the punishment to serve as a deterrent?

Punishing more of them is easily said, when the crime is much harder to prove than shoplifting for example. And I'm skipping the fact that the shoplifter will be represented by an overworked public defender while the exec has a team of lawyers lined up that probably are payed by the company that got richer off illegal behavior
by tialaramex | 2025-10-04 11:04:00+00:00
Right, the work I get paid to do is often C# and literally yesterday I was cursing a slow C# build. Why is it slow? Did one of the other engineers screw up something about the build, maybe use a feature that's known to take longer to compile, or whatever? I don't know or care.

This idea that it's all sunshine and lollipops for other languages is wrong.
by goabiaryan | 2025-10-04 11:05:10+00:00
In my recent post on GPU engineering for LLMs, I argue that obsessing over CUDA kernel engineering isn’t the best starting point—understanding the full system stack, from model definition to hardware limits, is far more critical.

System level thinking helps you spot whether you’re compute-bound, memory-bound, or communication-bound before diving into low-level optimizations.

But I’m curious: for engineers breaking into inference engineering, where do you recommend starting? Should newcomers focus on mastering profiling tools and frameworks like PyTorch or JAX first or jump headfirst into distributed systems right away?

Also, I downplay kernel engineering in the post but are any specific scenarios where hand-tuned kernels have been a game-changer for you?
by adamors | 2025-10-04 11:07:16+00:00
Well the MEAP just started, 3 chapters are complete and the rest will follow probably next year.

IMO it’s a bet: Zig stays stable enough and this will be _the_ Zig book for a while. Should the bet not pay off it still cements the author as an authority on the language and gets them a foot in the door.
by alabujadaniel | 2025-10-04 11:08:12+00:00
Location: Nigeria (but I can work with any time zone)

Remote: Yes

Willing to relocate: Yes

Technologies: C#, .NET (Core, 6/8, Web Forms, MVC), JavaScript, PHP, Laravel, abp.io, MSSQL, PostgreSQL, Entity Framework, Stored Procedures, RabbitMQ, Docker, Redis, Prometheus, Hangfire, Azure, Git, OAuth2, JWT, Mediator, xUnit, OWASP Top 10, Microservices.

Résumé/CV: http://linkedin.com/in/danielalabuja/ https://drive.google.com/file/d/1BCHd27ybTadQYH52KXY03ixIHfb...

Email: alabujadaniel@gmail.com

Summary: I'm a software developer with over 6 years of experience building products. Over the years, I've had the experience of working with different teams and industries to build products.
by vasco | 2025-10-04 11:10:55+00:00
I just thought you could make your point without calling other people cringe for disagreeing. I agree the average now is better than any century before, while also agreeing there's many interests of the type the comment you replied to illustrates, trying to either reduce personal freedoms or perpetuating a certain order of things. Both things can be true and they are both realistic view points, specially because there's multitudes of people all with their own priorities fighting for their own ideal futures and a few of those have a crazy amount of power.
by cladopa | 2025-10-04 11:12:47+00:00
There is a very important difference: real investors risk their own money, the money they saved over their entire life making decisions.

Under socialism bureaucrats risk someone else's money.

We are not in a pure capitalistic society, we also have States, central Banks with central planning expending over half the money in Europe and USA and more than half in Asia.

As a European myself that see the public money being wasted by incompetent people and filling the pockets of politicians, specially marxist ones. For example, the money Spain received after COVID filled so many socialist pockets and has not given information back to Europe as of how it was spent(it was spent on their own companies of friend and family).
by daveoc64 | 2025-10-04 11:13:06+00:00
There's no technical breakthrough, but it might seem novel to people in countries like the USA where offline authorisation hasn't been widely allowed on credit and debit cards for some time.

https://en.wikipedia.org/wiki/Online_authorisation

In many countries in Europe, offline authorisation is more common. Cards have had a chip as standard for over two decades in European countries, and a PIN is often used for cardholder verification.

Combined, these make the risks of accepting a transaction for a small amount of money offline very low.

The limit of what can be accepted offline is known as a "floor limit" in the UK.
by necovek | 2025-10-04 11:14:44+00:00
In the 90s through political turmoil in the Balkans (former Yugoslavia, so perhaps Hungary which borders it to the North was similar), it was impossible for young adults to acquire a payment instrument that worked online (even my dad had a tough job getting a Visa card: you had to deposit something like 500 Deutsche Marks for a limit of 200 DMs, which was like 50x monthly salary, and only one or two banks issued them). Thus, lists of stolen credit cards were circulating online after 1995 when we got dial-up internet into homes (it was only in Unis before that).

If you had any interest in any topic you read about on the web or in a book, that was the only way to get things even if you had the money otherwise.

Btw, what typography magazine was it?
by avianlyric | 2025-10-04 11:14:45+00:00
> There are a few differences for sure. All entirely technical in how the money moves or clears. The most obvious point here is debit card moves your money from your account, credit moves the issuers money from their account.

From the perspective of the card network and the merchant, there is no difference here. The card network has a contract with the issuer, so all transactions, in all scenarios, are always first paid by the issuer. It’s then the issuers problem to figure out where they get the money from.

It’s entirely possible to perform transactions on debit card that will place the account attached to it in a negative balance, and for the person owning that account to vanish. The card issuer is still on the hook for the money, neither the card network, nor the merchant, care if the issuer recovers the funds or not, they always get paid.
by brudgers | 2025-10-04 11:17:28+00:00
Like I said for many people, it is a benefit not a detriment.

Add in all the people who just don’t care and there is only a relative handful of people who are bothered.

Now filter out the people who don’t use the software from that relative handful and there’s an actual handful of users who might have to find something else because everything isn’t for everyone.
by michaelt | 2025-10-04 11:18:12+00:00
I can't speak for the OP, but I have customers I still support, because they supported me many years ago when I was a teenager taking my first steps into industry.

Does it make me money? Barely a cent. But I can spare a hour or two a year for the guy who gave me a leg up and trusted a teenager who probably shouldn't have been trusted. And I like the feeling of having something I worked on still going strong 20+ years later, when so much of my later work has been thrown away by the endless corporate rewrite treadmill.
by jeroenhd | 2025-10-04 11:18:41+00:00
I don't think it can parse IPv6 traceroutes.

For IPv4, the geolocation information is quite limited (city-level) so if you live close to a major data center, you'll have a distance of 0 on the map.

Still, seeing the routes on the map is kind of fun. I don't think it provides anything useful in terms of troubleshooting that mtr doesn't provide already, but there's a fun novelty to see your traces on a map like in a 90s hacker movie.
by daveoc64 | 2025-10-04 11:20:14+00:00
Some debit cards don't allow offline transactions, usually when the cardholder isn't allowed to be in debt.

In the olden days, you'd get a Visa Electron or Solo debit card in the UK if you were under 18 or had a poor credit history.

Visa Electron and Solo were online authorisation-only card brands (also known as "immediate authorisation").

If you didn't have enough money in your account, the transaction would be declined. Visa Electron cards didn't have embossed numbers on the front, so couldn't be used with the old-fashioned card imprinters.

Visa Electron and Solo have been discontinued now, so people with poor credit can get a Visa Debit or MasterCard debit card, but with offline authorisation disabled.

That does mean those cards can't work in some places (e.g. on aeroplanes or trains).

Credit Cards generally always support offline authorisation.
by heisenbit | 2025-10-04 11:20:57+00:00
This is exactly how I use AI now daily: Provide it with relevant context and help me to troubleshoot some software issue. I found often it casts a wider net and provides good leads to follow up. It balances out my own bias and overall speeds up discovery of the root cause. Admittedly some benefit comes from having to explain the AI the context - half the problems are gone once one can explain them clearly.
by pron | 2025-10-04 11:21:48+00:00
1. Lack of memory safety is a big problem particularly because it's a common cause of dangerous vulnerabilities, but spatial safety is more important than temporal safety for that reason, and Zig does offer spatial safety.

2. Other important issues of concern when it comes to security/correctness are language complexity and compilation speed. A complicated language with lots of implicitness can obscure bugs and make reviews slower. Slow compilation reduces the iteration speed and harms testing. Zig focuses on these two. The language is simple, with no implicitness - overloading of any kind is not allowed and neither are any kind of hidden calls. Even if security were the only concern, it's not clear at all how much complexity and compilation speed should be sacrificed for temporal safety. Remember that it's easy to classify bugs by technical causes, but more diffuse aspects, like testing and review, are also very important, and Zig tries to find a good balance.

3. Nevertheless, the language is still very expressive [1]. In any language, you want the algorithm to be clear and with neither extraneous nor important hidden details for that domain. I think Zig gets that about right for low-level programming (and C++ doesn't).

For me, the #1 problem with C is lack of safety and the #2 problem is lack of expressivity. With C++, the main problem for me is language complexity and implicitness, with slow compilation and lack of safety tied for number 2. So Zig is as expressive as C++. but not only safer, but also much simpler, and compiles faster (and improving compilation speed further is an important goal).

[1]: I say that two languages are equally expressive if, over all algorithms, idiomatic implementations in both languages (that are roughly equally clear) differ in length by no more than a linear relation with a small constant.
by rozumem | 2025-10-04 11:23:37+00:00
I agree it's a bullshit category. Even my lawyer said so. But it allowed me to live in Poland legally past three months while my application was being processed. The "hack" was worth it for me. Just wished I could've left Poland and re-entered without issues. AFAIK that limitation and the long wait applied even for those applying for TRC for other more legit reasons. Refugees from Ukraine war had put a lot of stress on the system overall.

Regarding lawyer, noted. The language doesn't scare me as much as the long wait times and inefficient bureaucracy I've heard about Spain. Maybe that's improving.
by Phui3ferubus | 2025-10-04 11:23:46+00:00
This is just reenabling existing technology. Card chip already has everything required to verify the card and PIN[0], the only thing internet access is required is checking if account is not empty/over limit.

[0] That also means that after changing PIN on bank site, you have to visit ATM, so new PIN is actually stored on card - but that it only required for that offline mode.
by atombender | 2025-10-04 11:23:54+00:00
One thing I would mention is that COM and CORBA have explicit support for object references, which is a concept that disappeared from later protocols.

With these technologies, a server can return a reference to, say, a Person. The client can then do "person.GetName()" or similar. The method calls are implemented as "stubs" that act as proxies that simply send the RPC along with the references to the objects they operate on. The server-side RPC implementation keeps a mapping between references and actual in-memory objects, so that calls to references call the right thing in the server process.

The benefit is that you can work with APIs in ways that feel natural. You can do "persons.GetPerson("123").GetEmployer().GetEmployees()" or whatever — everything feels like you're working with in-memory objects.

This has drawbacks. One is that the cost of method calls is obscured by this "referential transparency", as it's never obvious what is remote or local. Another problem is that the server is required to keep an object around until a client releases it or dies. If the client dies without first releasing, the objects will live until a keepalive timer triggers. But because a malformed client can keep objects around, the system is vulnerable to high memory use (and abuse). In the end you'd often end up holding a whole graph of objects, and nothing would be released until all references were released. Leak can be difficult to find.

My knowledge of COM/CORBA may be incomplete, but never understood why the server couldn't implement these in terms of "locators". For example, if a server has a "GetPerson(string id) -> Person" type method, rather than sending an object reference that points to an in-memory person object, it could return a lightweight, opaque string like "person:123". Any time the client's internal proxy passed this back to the server, the server could look it up; the glue needed to resolve these identifiers back into real objects would be a little more work on the part of the developer, but it would sidestep the whole need to keep objects around. And they could cached quite easily.

Cap'n Web [1] is the first RPC system in a long time (as far as I know) that implements object references. However, it does this in a pretty different way with different pros and cons.

[1] https://blog.cloudflare.com/capnweb-javascript-rpc-library/