MurphyA/hacker-news huggingface dataset:
by hardwaregeek | 2025-08-10 16:21:39+00:00
Everyone agrees that "syntax doesn't matter", but implicit in that is "syntax doesn't matter, so let's do what I prefer". So really, syntax does matter. Personally I prefer the Rust/Zig/Go syntax of vaguely C inspired with some nice fixes, as detailed in the post. Judging by the general success of that style, I do wonder if more functional languages should consider an alternative syntax in that style. The Haskell/OCaml concatenative currying style with whitespace is elegant, but sufficiently unfamiliar that I do think it hurts adoption.

After all, Rust's big success is hiding the spinach of functional programming in the brownie of a systems programming language. Why not imitate that?
by max_ | 2025-08-10 16:21:42+00:00
If really depends on what you want the language todo and gow much time you want to spend on it.

A smart contract language (for Blockchains)

- Rust

A desktop executable with browser support

- Nim

A cross platform language (iOS, Android, Linix, Mac, Windows)

- Dart

Talk to GPUs

- C++ or C on top of Tensorflow

A toy language for learning compilers/interpreters

- Python
by maccard | 2025-08-10 16:21:58+00:00
I don’t necessarily disagree but anyone who is a c++ programmer and sees

class foo { public: foo() { ptr = new other(); } ~foo() { } };

And doesn’t immediately question it doesn’t instil confidence.

Interviews are inherently high pressure situations for the candidate, the only way to avoid that is to just let people try out on the job and fire them if it isn’t working out. That’s unfair to everyone.
by cmiller1 | 2025-08-10 16:22:08+00:00
> I wrote Forth/2 out of pure spite, because somehow I heard that it just wasn't possible to write OS/2 applications in assembler

I was thinking about this recently and considering writing a blog post about it, nothing feels more motivational than being told "that's impossible." I implemented a pure CSS draggable a while back when I was told it's impossible.
by kketch | 2025-08-10 16:22:24+00:00
This article makes me wanna try building a token field in Flutter using a LLM chat or agent. Chat should be enough. A few iterations to get the behaviour and the tests right. A bit of style to make it look Apple-nice. As if a regular dev would do much better/quicker for this use case, such a bad example imo I don't buy it
by ultmaster | 2025-08-10 16:22:58+00:00
I'm the sole code contributor of POML, maybe except for Codex and cc. I think I've found where all that GitHub stars suddenly came from. :)

I'm from a small group under Microsoft Research. POML originally came from a research idea that Prompt should have a view layer like the traditional MVC architecture in the frontend system. The view layer should take care of the data, the styles and rendering logic, so that the user no longer needs to care how some table needs to be rendered, how to present few-shot examples, how to reformat the whole prompt with another syntax (e.g., from markdown to XML).

I have to admit that I spent so much time on making POML work well with VSCode, building all the auto completion, preview, hover stuff. The time is long enough that the codebase is almost becoming a monster for an individual developer to handle. The outside environment is also changing drastically. The rise of Agentic AI, tool calls, response format. The models today are no longer sensitive to small changes in prompt format as they used to. AI-aided programming can simply give you code to read in PDFs, Excels and render them in any style you want. With all that in mind, I used to feel hopeless about POML.

Nevertheless, after several months of working on another projects, I recently noticed that the view layer can be more of just a view layer. With proper user interface (e.g., a VSCode live preview), it can deliver a very smooth experience in prompt debugging, especially in a multi-prompt agent workflow. I also noticed that the "orchestration" idea can go beyond a XML-like code. I'll share more details when I had a tutorial / screenshot to share.

Going through this thread, I saw a lot of thoughts that once went through my mind. We love markdowns. We love template engines like jinja. We need those response formats. I'm thinking what is the missing piece here. I've spend so much time writing prompts and building agents in the past few months. What's my biggest pain points?

I'm quite surprised that the news hit me first before I'm ready to hit the news. If you have tried POML, please send me feedbacks. I'll see what I can do; or maybe we end up not needing a prompt language at all.
by BobaFloutist | 2025-08-10 16:23:13+00:00
It's also almost on the level of self-parody:

"In Soviet Russia we have eliminated all capitalist social ills. Unemployment is demoralizing and unproductive, so it is now illegal. Homelessness is unsafe and ruinous to the health of the mind, so it is against the law. Cancer is a terrible, deadly disease and also very expensive, so we have also banned it. And just like that, our surveys show 0% unemployment, 0% homelessness, and 0% cancer! Can your vaunted capitalistic West say the same?"
by cess11 | 2025-08-10 16:23:31+00:00
I've used script blocker modules for many years and consistently only white list a few widely used package repos. This means I notice when a web site I frequent adds a new script source.

This ought to be the default in every common web browser, just as you should have to look at the data sharing "partners" and decide whether they're benign enough for your taste.
by lutusp | 2025-08-10 16:24:42+00:00
> Are there examples of non-life formations like this on Earth? What are they called (how can I see some)?

The technical term is "dendritic." No suggestion of life. The next time you see a lithium-ion battery fire, you can impress your friends by saying, "Another dendritic disaster!"

This link: https://www.electronicproducts.com/what-are-dendrites-and-wh... includes a picture of dendrites in a lithium-ion battery. Not at all biological.
by bscphil | 2025-08-10 16:24:53+00:00
> Like Rust, Zig uses 'name' (':' Type)? syntax for ascribing types, which is better than Type 'name'

I'm definitely an outlier on this given the direction all syntactically C-like new languages have taken, but I have the opposite preference. I find that the most common reason I go back to check a variable declaration is to determine the type of the variable, and the harder it is to visually find that, the more annoyed I'm going to be. In particular, with statically typed languages, my mental model tends to be "this is an int" rather than "this is a variable that happens to have the type 'int'".

In Rust, in particular, this leads to some awkward syntactic verbosity, because mutable variables are declared with `let mut`, meaning that `let` is used in every declaration. In C or C++ the type would take the place of that unnecessary `let`. And even C (as of C23) will do type inference with the `auto` keyword. My tendency is to use optional type inference in places where needing to know the type isn't important to understand the code, and to specify the type when it would serve as helpful commentary when reading it back.
by toasterlovin | 2025-08-10 16:25:24+00:00
> Apple Silicon is simply not that special in the grand scheme of things

Apple Silicon might not be that special from an architecture perspective (although treating integrated GPUs as appropriate for workloads other than low end laptops was a break with industry trends), but it’s very special from an economic perspective. The Apple Silicon unit volumes from iPhones have financed TSMC’s rise to semiconductor process dominance and, it would appear, permanently dethroned Intel.
by steve_adams_86 | 2025-08-10 16:26:38+00:00
One of the most gratifying things I've done in the garden was grow a potato tower. The first time I used a variety which doesn't root out very well from stems, so the results were really disappointing. A few years later I figured out my mistake and tried with a more suitable variety, and it was like a vertical potato farm in a 1.5m radius. We were so excited with how many potatoes came out, haha. I never expected knocking down a pile of soil and discovering potatoes to be so exhilarating. Especially after the first run was such a disappointment
by CuriouslyC | 2025-08-10 16:26:38+00:00
The strategy of Phi isn't bad, it's just not general. It's really a model that's meant to be fine tuned, but unfortunately fine tuning tends to shit on RL'd behavior, so it ended up not being that useful. If someone made a Phi style model with an architecture that was designed to take knowledge adapters/experts (i.e. small MoE model designed to get separately trained networks plugged into them with routing updates via special LoRA) it'd actually be super useful.
by lucb1e | 2025-08-10 16:26:50+00:00
> The Framework Desktop with 64GB RAM + 2TB NVMe is $1,876. To get a Mac Studio with similar specs [...] you'll literally spend nearly twice as much [...] The Framework Desktop is simply a great deal.

Wow, someone managed to beat Apple on price??

I don't know that it logically follows that anything is a great deal when it undercuts Apple. Half sounds about right -- I thought Apple was a bit more competitive these days than ×2 actually, but apparently not, also considering that Framework comes with a (totally fair) niche-vendor premium
by alessiodm | 2025-08-10 16:27:26+00:00
I’ve released a major expansion of my open-source deep reinforcement learning course. Last year's initial release got positive feedback, so I've added a new module with advanced topics and practical productionization techniques by curating and refining materials I collected over the years. This final update includes hands-on implementations of RND, AlphaZero, RLHF, MBPO, and more. I hope it's a valuable resource for the community.
by scarface_74 | 2025-08-10 16:27:28+00:00
That’s fair.

First I’m going to make an argument and then immediately refute it before someone else makes the argument. That $235K is still lower than what mid level developers make at any of the BigTech companies.

Yes, that’s true. But they are all toxic hellholes where everyone is jockeying for position, making sure they show “impact” that looks good on promo docs and they all have RTO mandates even for positions that were formally “field by design”.

$235K and the ability to work remotely is something I would definitely think is fair (and a little more than I make now that I’m outside of Bigtech working remotely) as long as you give cost of living increases and is more than most developers will ever make inflation adjusted.

The other point you make is that performance is just a form of stack ranking and even hard work is usually just awarded with a 1-2% raise more than someone else gets. Why not separate it from comp?

I also like sales having variable compensation that is based on performance. I work somewhat as a post sales architect and I have an appreciation for the sales side more than most engineers.
by alexose | 2025-08-10 16:28:32+00:00
Portland, too. The neighborhoods are doing OK, but downtown still feels empty.

It’s interesting to me that it hasn’t depressed commercial real estate prices all that much. Rents are still crazy expensive, with many vacant storefronts and even entire buildings along the light rail lines. The market forces around commercial real estate seem disconnected from reality in a surprising and unintuitive way.

Still, downtowns can be cyclical. NYC in the 70s is a prime example. The days of Taxi Driver are long gone. I guess the question is what stimulus needs to be applied to kickstart the turnaround process.
by bogwog | 2025-08-10 16:29:12+00:00
I don't block javascript for security reasons, I block it for performance, privacy, and UX reasons. If there's a 0day that can be exploited by random javascript in the browser, UBlock won't save us.

> if you value your time at all I suspect any benefits is going to be eaten by you having to constantly whitelist sites.

I don't constantly whitelist sites, only the ones I use regularly (like my email provider). Temporarily enabling JS on a broken site doesn't add it to my whitelist and only takes three clicks (which is muscle memory at this point):

1. Click to open UBlock window 2. Click to allow javascript temporarily 3. Click to refresh the page
by cellis | 2025-08-10 16:29:41+00:00
Claude Code certainly not as easy to engineer with, though it is less expensive. For instance the @feature isn’t as robust as cursors ime. Also no shift+enter is quite a pain. Linting doesn’t “just work”, cursor with Claude 4.0 max is really thorough, I think even better than GPT-5. Not that Sonnet is better but that whatever “ensemble” of models cursor uses with sonnet seems to both adhere and tool call better than with GPT-5. GPT-5 often says what it will do and then says “say go and I’ll go” or says “you should run command x”, but doesn’t just DO it. Also for bug fixes in difficult codebases nothing beats Gemini 2.5 pro
by mjevans | 2025-08-10 16:30:19+00:00
In that context, 'literally' as figuratively makes the same sense as inflammable and flammable.

It's just one more errata in a language that's filled with horrible hacks from centuries of iterative development.

My hill to die on would be exactly one way (NOT the funky dictionary way!) of spelling words exactly as they should be pronounced and writing them back similarly.

The hill to die on part of that is they need to start with children, teach them ONLY the correct way of spelling words as use in school and stick to it. While we're at it, FFS, do metric measures conversion the same way. Cold turkey force it, and bleed in dual measures and spelling with a cutover plan that starts to make the new correct way required to be larger text by the time the grade -2 kids graduate. (So about a 14-15 year plan.) That's to give all us adults time to bash into our heads the new spellings for old words too.

Why can't it be dictionary spelling? Offhand, 1) those phonetics aren't used quite like that anywhere else. 2) those phonetics are more strongly based on the other languages in Europe so the structure isn't as expected. I'd sooner force everyone to learn how to write TUNIC's shapes... though there's some coverage issues for that.

Effectively I want different shapes for the chart ( https://en.wikipedia.org/wiki/International_Phonetic_Alphabe... ) that DO NOT MATCH EXISTING ENGLISH LETTERS so that when I look at a 'new spelling' my old pronunciation programmed brain doesn't index the wrong lookup table.
by Y_Y | 2025-08-10 16:30:33+00:00
> C uses a needlessly confusing spiral rule

Libellous! The "spiral rule" for C is an abomination and not part of the language. I happen to find C's type syntax a bit too clever for beginners, but it's marvellously consistent and straightforward. I can read types fine without that spiral nonsense, even if a couple of judicious typedefs are generally a good idea for any fancy function types.
by quietbritishjim | 2025-08-10 16:30:48+00:00
Maybe in the early days of the internet, or in closed systems, but in the open internet it's naive and actually leads to more brittle systems.

Sorry to repeat myself, but case in point is the article we're discussing! If something is accepted that is not in the specification then obviously its behaviour is unspecified. That means different implementations can easily have different behaviours, which can lead to security issues exactly like this one.

Even when there's no malice involved, it can often lead to de facto extensions to the specification. If several implementations accept something outside the standard (with roughly the same behaviour), and one accidentally produces it, then soon it becomes relied upon and all implementations need to handle it. Then the standard is no longer authoritative, or has to be retrospectively updated (see for example the huge part of the HTML spec that deals with otherwise invalid HTML).
by tannhaeuser | 2025-08-10 16:31:00+00:00
That link you're citing is old news and also contained/discussed in the Quantum Prolog article. Those observations were made with respect to translating problem descriptions into PDDL, a frame-based, LISPish specification language for AI competitions encoding planning "domains" in a tight a priori taxonomical framework rather than logic or any other Turing-complete language. As such, contrary to what's speculated in that link, the expectation is that results do not carry over to the case of Prolog, which is much more expressive. I actually considered customizing an LLM using an English/Prolog corpus, which should be relatively straightforward given Prolog's NLP roots, but the in-context techniques turned out so impressive already (using 2025 SoTA open weight models) that indeed the bottleneck was the lack of text descriptions for really challenging real-world problems, as mentioned in the article. The reason may lie in the fact that English-to-Prolog mapping examples and/or English Prolog code documentation examples are sufficiently common in the latent space/in foundation training data.

I can ensure you Prolog prompting for at least the class of robotic planning problems (and similar discrete problems, plus potentially more advanced classes such as scheduling and financial/investment allocation planning requiring objective function optimization) works well, and you can easily check it out yourself with the prompting guide or even online if you have a capable endpoint you're willing to enter [1].

[1]: https://quantumprolog.sgml.net/llm-demo/part2.html
by microtonal | 2025-08-10 16:31:20+00:00
My main worry about all the Minisforum, Beelink, etc. PCs is: potential lack of UEFI firmware updates (does anyone have experience with how good they are with updates?) and potential backdoors in the UEFI firmware (either intentionally or unintentionally). A China-aligned/sponsored group has made an UEFI rootkit targetting ASUS/Gigabyte mainboards: https://www.spiceworks.com/it-security/vulnerability-managem... Why not require/compel certain companies to implement them directly?
by flohofwoe | 2025-08-10 16:31:25+00:00
Ah, I wasn't aware of that proposal. But yeah in that case I would also heavily prefer to "drop the dot" :)

IMHO Odin got it exactly right. For a variable with explicit type:

a_variable : type = val;

...or for inferred type:

a_variable := val;

...and the same for constants:

a_const : type : val; a_const :: val;

...but I think that doesn't fit into Zig's parser design philosophy (e.g. requiring some sort of keyword upfront so that the parser knows the context it's in right from the start instead of delaying that decision to a later time).
by notjoemama | 2025-08-10 16:35:20+00:00
> live coding does not select for generalists

I have a rage memory now of a "live coding" event that makes me want to leave this profession and never come back.

Here's my suggestion for the technical interview:

1. Applicant signs NDA and agrees to not use AI 2. A small bug or feature request is chosen from the backlog 3. The staff engineer pair programs with the applicant until it is fixed/implemented

This does a few things:

a) The interview is suddenly "productive" for the employer rather than a cost sink b) No one will apply that doesn't actually know the stack/framework/language c) The interviewer gets a real world example of what its like to work with the applicant d) Leet coding and puzzle solving is eliminated in favor of real world coding e) A secondary skill set that doesn't actually contribute to the work is eliminated (go pound sand autists)
by bartread | 2025-08-10 16:35:40+00:00
I was talking about what was on the card itself rather than the interface, because the poster I was responding to mentioned the card, but your point about interfaces is well made.

Back in the day - late 80s, very early 90s - I’d see Amstrad (ugh!) 286-based desktop systems on sale in our local branch of Dixon that included graphics cards fitted with VGA chipsets, but cards compatible with the AGP interface on then newer motherboards didn’t cross my radar until the second half of the 90s.
by brianpan | 2025-08-10 16:36:12+00:00
The emphasis is a really interesting point and overlooked by the article. Your "went and" examples do seem very analogous to "try and". "He went and got himself arrested again," is less about the going and almost exclusively emphasizing the other half of the conjunction.

"Try and" can operate the same way by de-emphasizing the trying. If Dr. Dre said "I'm gonna try to change the course of hip hop again," the sentence is about attempting to do something. On the other hand, "try and" makes the sentence more assured- Dr Dre is going try it and then do it.

I wonder if this half about ordering, half about emphasizing is the reason for the special rules of usage.
by bane | 2025-08-10 16:36:28+00:00
We used to eat out a lot. COVID changed it. What changed? We were forced to really learn how to cook properly, then we saw how much money we were spending eating out, and how much healthier and to-our-taste we could make our own cooking.

When things went back to normal, the prices to eat out had jumped so high, it simply wasn't worth it. $15 of fast food to feed both of us turned into $35-40. A $45 dinner out at a restaurant (taxes and tip included) turned into $60-75 meal. Tip expectations had gone from 15%-18% to 20-25%. Add beer or wine or a cocktail and we're instantly at a $100+ night out.

At home $10 of protein, $5 of vegetables and other ingredients and a good youtube video with a recipe, $15 bottle of wine and we were all set.
by bryanrasmussen | 2025-08-10 16:36:31+00:00
>Try always and tell the truth

I think the article is incorrect on this though, try always and tell the truth is a perfectly fine albeit slightly anachronistic usage that would mean

Whatever you do you must always try (that is to say not give up), and tell the truth.

One might also assume that you should tell the truth about trying always is the meaning, but at any rate it is not a phrasing that would be out of order a few hundred years ago.
Show HN: I collected 70k online communities – semantic search to find your niche
by giulioco | 2025-08-10 16:36:51+00:00
I built a social listening agent (yes, like everyone and their grandma). along the way though I realized one of the most useful parts was just finding the right communities. so I started saving them and now i have ~70k.

then I added semantic search so you can find communities by meaning. the dataset grows as people use the platform.

how it works

- free accounts: semantic search the already saved 70k communities - paid accounts: search realtime first (keyword searches from the sources) and then run semantic search over the updated communities dataset

I also put together an agent that given a website finds relevant communities for it. example: https://www.pluggo.ai/sites/bloodtrack_au

right now it covers:

- subreddits - x communities - linkedin groups - facebook groups - discord servers - mastodon servers

next, I'd love to figure out a way to add slack workspaces but I haven't figured out a good way besides a crawler that goes around to find slack invite links? if you know a reliable source, I’m all ears

any suggestions for what other sources I should add?