skysight-inc/HackerNews huggingface dataset:
> Can you give an example of something that's easier to reason about (e.g., an error that's easier to spot) with Zig's comptime than with macros?

Rust proc_macros takes a stream of tokens and return a stream of tokens. If your macro meant to return an instance of a specific type, it must output the correct tokens which create that instance via existing interfaces. There's some really ugly indirection in trying to understand what's going on.

This is always harder to reason about than Zig's equivalent, because in Zig you just return the thing that you want to return.
Well, hostile state actors can ( and do!) already wiretap lots of things in the physical world, in theory wiretapping / surveillance is only possible for governments etc. And the NSA semi-successfully inserted a backdoor through carefully chosen elliptic curves a few years ago ( DUAL_EC_DRBG ) by convincing folks to use a weak PRNG.

I’d say that the problem isn’t so much related to encryption, but to the fact that anything digital can be industrialized very quickly, and that the ‘if it goes wrong’ scenario can go really wrong if ( and when) your backdoor falls into the wrong hands.

From a lawmaker’s perspective, it’s just a different kind of risk, which they may or may not be assessing properly. In some ways I see it as closer to people misunderstanding how easy and how bad it is to lose large amounts of data : it’s not related to the inner workings of computers , but rather to the leverage that computers provide. The same is true with weak crypto : everything is great until suddenly everything is in the clear all at the same time, and read by people you don’t want.
Reminds me of our code having llm generated regular expressions which are impossible to understand and the only way you can tweak it is giving it to llm to change.
"In the beginning (that is, the 90’s), developers created the three-tier application. Per Martin Fowler, these tiers were the data source tier, managing persistent data, the domain tier, implementing the application’s primary business logic, and the presentation tier, handling the interaction between the user and the software. The motivation for this separation is as relevant today as it was then: to improve modularity and allow different components of the system to be developed relatively independently."

Immediately, I see problems. Martin Fowler's "Patterns of Enterprise Application Architecture" was first published in 2002, a year that I think most people will agree was not in "the 90's." Also, was that the motivation? Are we sure? Who had that motivation? Were there any other motivations at play?
People don't operate rationally when it comes to Apple. They have been so good at manipulating people that even when they get criticism it's always in a very tone down way.

Apple privacy stance is bullshit and disgusting. I know for a fact that they collect as much information as Google (in fact in my case, looking at the takeout of data they know much more about me than Google) but the pretense is that they don't use it or sell it. Yet the average user has zero way to make sure of that and the incentive are so bad that's it just a question of when Apple stance will change (anything is possible for profits, Tim Cook has very much proved that).

If Apple was truly serious about privacy, they would refuse any type of cloud offering and completely disowned their App Store model. But the only thing Apple cares about is money, privacy is just a very easy marketing target without having to prove anything.

Microsoft is shady, Google is borderline, Facebook is careless but by far, the evilest of the bunch is Apple.
If Tesla receives state support like Volkswagen had, it may overperform above its peers.
not using either is also an option.
Less than eighty years ago Germany was at least on par with, or arguably ahead of, the USA in “warfighting technology”. (Werner von Braun ring a bell?) So “230 years” is mathematically impossible; even if the rest of the world had stood still since then, it couldn't be more than eighty years behind. (Which it didn't, so it's far less.)
The scientific method is based around theories and building consensus. Not sure why you or anyone else would refer to it as "tenuous" unless you haven't been following the research.
You're a survivor. I hope things are easier and more stable for you these days.
> I missed some money but I think the history somehow proved me right.

Maybe, but I will say that having the norm be "unless you hang out in person your team can't bond" is an out for some people to excuse not being friendly or empathetic. Friendly people are friendly no matter the medium.

I've had managers hand-wring over getting people to hang out, and it's like: okay, I've drank beer with this difficult person that you hired, can they stop being an asshole in chat now?
The fact that it is still as much of an art as it is a science means there is no “correct” values for these things. Only heuristics and guess-and-checks.
You can combine this with direnv and auto-activate the nix environment when you `cd` into directories as well. We do this, and just activate the shell in ci environments with a cache. Works great.
Nothing Western about this type of naivety. You'll find this all across the world at present.
Oleg Gordievsky Obituary
Does anyone else find macros make it hard to grep a code base? This does seem like something semantic grep could solve, but I'm unaware of any semantic grep macros use cases.
Wow, exactly what I need.

I would suggest adding also configurable time breaks, like every xx minutes for yy seconds.
There's no confusion between what a borrow checker and a GC do. The borrow checker enforces safety by adding constraints to the set of valid programs so that it can statically know where to alloc/dealloc, among other benefits. A GC dynamically figures out what memory to drop. My claim is that those Rust constraints force you to write your code differently than you otherwise would (since unsafe is frowned upon, this looks like hand-rolled pointers using vecs as one option fairly frequently), which is sometimes good, but for more interesting data structures it encourages people to write leaks which wouldn't exist if you were to write that same program without those constraints and thus wouldn't exist in a GC language.
It was more than just Gawker, it was a whole collection of blogs that I’d say were indeed ‘valuable’. The whole story is too much to convey in a post here, but Wikipedia has good (or, at least, comprehensive) articles about it.*

I’m what TwoPhonesOneKid calls a ‘centrist idiot’ in their peer comment (hey, look, I’m treating them with decorum!), and I don’t think it was more valuable than the NYT, but Gawker Media was a blog staple with a wide reach, and those blogs did real journalism in a wide range of fields in addition to click bait. Some of them arguably recovered under new ownership, but many did not.

* https://en.wikipedia.org/wiki/Gawker_Media, https://en.wikipedia.org/wiki/Bollea_v._Gawker
What Rust is missing is reflection and the ability to define types and functions via code. Zig's comptime is often used for this: to generate code (for example, a serialiser for a type) or to generate types (generics being a typical thing, but lots of other usages are viable).
> Bulk downloading is often done with BitTorrent, the file-sharing protocol popular with pirates for its anonymity, and downloading with BitTorrent typically involves uploading to other users simultaneously.

Isn't this a twofold misunderstanding of BitTorrent? I haven't used it much, but I've never believed BitTorrent to be popular for anonymity (is it even truly anonymous?), I thought it was popular because it makes downloading go faster by reducing bottlenecks. Also, choosing not to seed a file is extremely simple in every torrent client I've seen, so it seems a bit of a leap to conclude that Meta seeded the pirated books just because the protocol supports it.

I'm far more concerned about the simple fact that they downloaded pirated books at all than I am about the protocol they used to do it.
to recurse, devilish.
> I think that some languages lead developers to think of types as architecture components

It's not any languages doing that; it's their company culture doing that.

Java-style languages (esp. those using nominative typing, so: Java, C#, Kotlin, Swift, but not Go, Rust, etc) have never elevated their `class` types as illuminated representations of some grandiose system architecture (...with the exception of Java's not-uncontroversial one-class-one-file requirement); consider that none of those languages make it difficult to define a simple product-type class - i.e. a "POCO/POJO DTO". (I'll pre-empt anyone thinking of invoking Java's `java.beans.Bean` as evidence of the language leading to over-thinking architecture: the Bean class is not part of the Java language any more than the MS Office COM lib is part of VB).

The counter-argument is straightforward: reach for your GoF Design Patterns book, leaf through to any example and see how new types, used for a single thing, are declared left, right and centre. There's certainly nothing "architectural" about defining an adapter-class or writing a 10-line factory.

...so if anyone does actually think like that I assume they're misremembering some throwaway advice that maybe applied to a single project they did 20 years ago - and maybe perhaps the company doesn't have a meritocratic vertical-promotion policy and doesn't tolerate subordinates challenging any dictats from the top.

> Think about it for a second: one of the main uses of types is to prevent developers from misusing specific objects if they don't meet specific requirements.

...what you're saying here only applies to languages like TypeScript or Python-with-hints - where "objects" are not instances-of-classes, but even then the term "type" means a lot more than just a kind-of static precondition constraint on a function parameter.
Hi chrisjc, these are interesting thoughts. I was mainly interested in providing a server interface for DuckDB b/c of the performance I observed when running large OLAP workloads, and especially the cost savings vs cloud SaaS offerings. I think the big benefit here is that you can run the same workload at roughly equivalent performance - but for 80% less - from my tests...

I like your ideas, though. The server is written in C++.

I hope this helps...

Thanks!
Because it’s not a good platform for this at all.
> You can't add a number to a string

Haven't written JavaScript?
At first I was like wait this looks just like eval_macro, which I discovered a couple of weeks ago. Looks like it is just renamed! The new name is great, congrats on the improved branding :)
Whenever new layers of abstraction enter the industry, it has allowed coders to distance themselves from various pieces of the puzzle. Back in ye olde days, every coder also knew how to set up the infrastructure to run it, often to the point of also maintaining the hardware. Then along came the cloud. Nowadays, some people still know the whole infrastructure, but just as many only know how to run their local dev and git push. Actually making it run somewhere is a black box to them, and very few people handle everything from the UI all the way down the stack to the bare metal.

AI is going to be the same. We will end up with people who can deliver code using AI, but that is the end of their capabilities. While there will be others who can do that but also put AI aside, dig in, and do much more.

That is not necessarily a problem. As long as teams know your capabilities and limitations, and give you the correct role, you can build a working team.

At the same time... someone on the team has to be able to dig in deep and make things work. Those roles will always exist, as will those people. Everyone will have to decide for themselves exactly what skill set they desire.
Because their "product" isn't one born of actual needs and has to do with inherent weakness to the way internet and some protocol works.

Using Cloudflare is not a permanent fix, just a bandage, and it's particularly bad that they'll use their quasi monopoly into strongarming business to pay large fees. It's basically racketeering, legal.

If we are talking about the CDN and associated "software", last time I checked (a long time ago admittedly) it was nothing special.
+1 matches my experience, https://en.m.wikipedia.org/wiki/Conway%27s_law
It is the golden rule. Whoever has the gold rules. Laws are for mortals, while big-tech can do whatever they please while channeling their masculine energy. Basically, behave in a self-serving manner violating basic norms such as dont do unto others what you dont want done to you.

As content gets polluted with ai-garbage, human-generated content will regain value.

Here is a startup idea: A startup that protects creator's content from violations. For a nominal subscription fee, ensure content is not ripped off on major social platforms and AI. Track regulations in different jurisdictions, and keep a legal team on the beat. Sue big-tech for damages when found. ie, police for the creators.

HN - take it and run.
RAM size seemed to have been a problem, lowest end Phi only had 6GB GDDR5 for its 57 cores(228 threads).
Scoop's AI Data Tool
Amen. Having dabbled in martial arts and had the good pleasure of hitting my mid thirties, his ability to win at 48 is nothing short of jaw dropping. Shouldn’t be possible.
this is similar to situation of War - obviously "wrong" actions bring an advantage that cannot be undone, the winners press onwards without pause.. crowds and commentators are left red in the face and helpless. Extra bonus credit -- the economic empires being built with the wins will have this approach to society built-in .. ordinary becomes normal.
Well, Martin's book came out after we were doing these patterns in the 90s. My teams had that motivation - data worked with logic; logic worked with UI teams. Separation of concerns and division of labour are, generally, good ideas.

ETA: one of the groups that was motivated was MS: use SQL Server + SP ; then COM in the Logic layer and then ASP in the UI.
> I think if that stuff happened in the UK there would be a lot of protests.

A lot worse happened in UK prisons in Northern Ireland and people in Great Britain widely cheered it on. Target the right minorities and there'd be no shortage of supporters in Westminster.
You can say anything you want, yet you say nothing of importance
Interesting, at one time ages ago I thought Linux came with a static linked bash in /bin or maybe /sbin for this type of problem.

Just checked Slackware and no more, I wonder if that is a casualty of the /bin /usr/bin merge ?
Elon can’t “gut” local libraries—local libraries are run by municipal governments and receive almost all their funding from there.

Total U.S. public library and museum spending is almost $14 billion: https://wordsrated.com/library-funding-statistics. This agency distributes about $250 million in federal support, which also supports museums.
Ok, that explains it. :) Sorry for waisting everyone’s time.
I can't prove you wrong and I don't think there is any benefit to society when a company with a black box doesn't give back to the community (aka humanity as a whole) and doesn't pay anyone. Copyright may be broken, but the only realistic way to encourage creators is to give them money. We don't live in a utopia, and people need money to eat.

Also, in France and as an individual, if I were to openly torrent all the content of Libgen or Anna's Archive, I would have to spend the rest of my life in jail whereas Zuck can enjoy having more billions with the same behavior.

Some kind of rant: The world is truly fucked right now if such behaviors are rewarded, but at my grand old age of almost 50, I'm starting to move away from all this and it's relaxing: I live a simpler life, I buy from small creators, and I learn whatever I want. I have also gained a lot of time that I can now spend by helping people around me. Life can be fun if you ignore that you'll never be in control of all the bad behaviors around you.
Ask HN: No code iOS app generators
Looking for some no code app generators that are similar to lovable's standards.

What i want:
A left pane to input and right pane that shows the output of how that app looks like
it should auto fix errors
it should look for open apis to pull relevent data or images
> *citation needed

You are already citing the person, do you really need that person to cite another person in order to form an opinion?
I tried it with Siri and it worked the same, giving me the full date.
I genuinely laughed out loud from “why not Rust?”. Thank you. That cult give Haskell snobs a run for their money.
Really dude?

I think a solid argument can be made that facebook downloaded and shared pirated material with literally every ML employee they had at the time…

EDIT: to those who downvoted, why?
Do you disagree with what I said?
Show HN: AI Runner is now Apache 2.0
Hi all - I created AI Runner a couple of years ago because I wanted my own interface for running local AI models. It is built in pure python using pyside6.

With v3.3.0 I have decided to move to a less restrictive license (from GPL 3 to Apache 2.0).

AI Runner allows you to easily get up and running with AI art models, LLMs text-to-speech and speech-to-text. You can have real-time conversations with customizable chatbots that have moods and emotions. The chatbots learn about you over time and respond appropriately. You can also provide your zipcode and weather data will be inserted into the system prompt. They also know about the date and time.

Its possible to use AI Runner as a Python library as well. I'm currently working to expand the library to allow API support for services like OpenAI, OpenRouter (already have partial support) and Grok so that you can run your LLM in the cloud if you'd prefer that.

The project is actively maintained. I have been working to update the wiki and to clean up some of the more painful decisions I made with the code.

Let me know what you think, and be sure to join our Discord server if you want to hang out and talk or have some bugs to report https://discord.gg/PUVDDCJ7gz
This is really cool - something I've been looking for with Flask. Cleanest implementation with just the decorator that I've seen.

(As an aside, is there an open-source UI for docs that actually looks good - professional quality, or even lets you try out endpoints? All of the decent ones are proprietary nowadays.)
I "pirated" (read) books to train myself. I guess I owe authors a percentage of my income now.
I've seen the opposite: single monolithic codebase, where the different bits of functionality eventually end up tightly coupled, so it's actually pretty difficult to extract bits into a separate service later, so a different type of architecture isn't possible even if you wanted to split it up.

Why do that? Well, when a big Excel file is uploaded to import a bunch of data, or when some reports are generated, or when a crapton of emails is being sent, or when batch processes are sending data over to another system, both the API and the UI become slow for everyone. Scale it vertically, would be the first thought - for a plethora of reasons, that doesn't work. There are bottlenecks in the DB thread pool solution, there are bottlenecks in the HTTP request processing, there are bottlenecks all over the place that can be resolved (for example, replacing HikariCP with DBCP2, oddly enough) but each fix takes a bunch of time and it's anyone's guess whether something will break. Suddenly updating the dependencies of the monolith is also a mess, something like bumping the runtime version also leads to all sorts of things breaking, sometimes at compile time, other times at runtime (which leads to out of date packages needing to be used). Definitionally, a big ball of mud.

Can you just "build better software" or "write code without bugs"? Well, yes, but no.

I've seen plenty of cases of microservices also becoming a chatty mess, but what strikes me as odd is that people don't attempt to go for something like the following:

* keep the business functionality, whatever that may be, in one central service as much as possible
* instead of chopping up the domain model, extract functionality that pertains to specific types of mechanisms or workloads (e.g. batch processing, file uploads or processing, data import etc.) into separate services, even if some of it might still use the main DB

Yet, usually it's either a mess due to shoving too many things into one codebase, or a mess due to creating too much complexity by attempting to have a service for every small set of entities in your project ("user service", "order service", ...).
You could also just run Audacious or QMMP natively on Linux, they support Winamp skins and it looks just like the real thing. Minus the Wine quirks.

https://lunduke.substack.com/p/miss-winamp-try-audacious-the...
Understanding R1-Zero-Like Training: A Critical Perspective
...even in a strictly-statically-typed language with a perfectly expressive type-system, it would be unwise to rely _only_ on a "Build succeeded!" message for having confidence in any changes to the system: there's no substitute for well-trodden unit and integration tests for any codebase of nontrivial importance or complexity.
You can tell a C compiler to trap or wrap around on overflow, or you use checked arithmetic to test explicitly for overflow.
> This text is satirical in nature.

I usually reject this prefix/postfix as damaging to the spirit of the post. Ruining the art as it were.

Unfortunately, I think in this case, it's required. I run a novel git host and I've seen bots who lie about their UA crawl exclusively code. Ignoring the git history only following links with an extension. It's a git host, if you choose to crawl the web interface instead of cloning the repo, you're too stupid to also pick up this is satire, and would likely follow the other suggestions intentionally. Same goes for those bots that crawl wikipedia instead of downloading one of the prepackaged archives. Bot authors: "Why are you the way you are?"

It's refreshing to read some humor about the state of things. There's too much frustration, vitriol and anger. Justified as it may be, this is a nice change of pace. So my heartfelt thanks to the author, I laughed. :)
Would if I could. I’m sure there are cool free car plans to be downloaded out there. Coming across one that’s being sold and shaking one’s fist decrying the price as evil and arbitrary is silly.
It's modern racketeering.

If you don't need them, they'll make you think you need them (so they can monitor your needs) and when you do need them, they will extort you any way they can.

The vast majority of websites don't need Cloudflare, very often people do because they run things in a very terrible way. Instead of paying Cloudflare extortion feed, pay competent people for proper infrastructure development.
The signed act: https://www.govinfo.gov/content/pkg/FR-2025-03-20/pdf/2025-0...
Exactly.

This person seems to have some serious issues :-)
But it's not the PC(the IBM 5150) or one of it's inheritor machines.

To be honest I agree with you, If it is intended as a personal computer it's a PC. Yes tablets and phones(Pocket Computer???) included. But I understand the argument that a PC is a specific architecture. it's a wrong argument, but I get it.
That is like the most polite legal letter I’ve seen!
New Linux Terminal feature isn't a replacement for Android's desktop mode