MurphyA/hacker-news huggingface dataset:
by stephen_g | 2025-04-29 03:18:46+00:00
False equivalence - railways are things we know how to build pretty well by now. The hard bit is building a corridor straight and level enough to lay the rails. Once you have that, the sleepers are literally just dropped on, rails fed out and then it's all clipped in and welded, and ballast dropped on and tamped with machines.

This is a normal thing done every day around the world, since track has to be periodically re-ballasted and sleepers eventually upgraded and rails renewed as normal maintenance. It truly is the easy bit.

Rail overhead line equipment and signalling systems are much more tricky work, but the rail laying itself is easy. The vast majority of the work though is building cuttings, embankments, bridges, viaducts and stations.
by skydhash | 2025-04-29 03:19:25+00:00
I only depends on an handful of tools (emacs, vim, lf, mpv, fish, foot,…) so I took the time to configure them and then just store the config in a git repo I sync everywhere. For personal computers I use stow. For remote machines, I just copy-paste. The nice thing is that those tools are so stable I could move to Debian stable and be OK.
by nvlled | 2025-04-29 03:19:31+00:00
I agree that the game is amazing from a technical point of view, but look at the reviews and the pace of development. The updates are sparse and slow, and if there's an update, it's barely an improvement. This is one the of disadvantages of creating a game engine from scratch: more time is spent on the engine than the game itself, which may or may not be bad depending on which perspective you look at it from.
by optymizer | 2025-04-29 03:19:45+00:00
It is. I used to customize everything. On Windows 95/98/2000/XP - custom cursors, themes, icon packs, custom Windows loading screen, the works. When I used KDE (and Gnome for a while) and compiz came out, I enjoyed flaming windows. Same story - custom icon packs, make grub menu look nice, hell, custom kernels compiled for my CPU, etc.

Somewhere along the way I lost interest in customizing the OS. These days I routinely switch between MacOS, Windows and various Linux flavors on lots of computers. The only thing I may customize is I write my .vimrc from memory.

On my Android phones, I change the wallpaper and I disable animations. Otherwise, stock everything.

Now that I think about it, it can't be the time saved, surely I waste more time on HN. It likely correlates more with using computers for work as opposed to for fun and learning. Even the learning I do these days is rather stressful - if I can steal an hour or two on the weekend, I feel lucky, so spending time to customize the environment seems like a waste.

Maybe if life slows down, I'll find joy in customizing my OSes again.
by coppsilgold | 2025-04-29 03:20:00+00:00
An AEAD can be constructed from pieces made and studied for other purposes (eg. block ciphers and hash functions). There is also a cryptographic primitive which can be used for AEAD almost without modification: the cryptographic sponge. But even so this particular primitive is often tailored for the security requirements of AEAD to be more performant: https://ascon.isec.tugraz.at/specification.html

An AEAD can also be made de novo. Such as AEGIS[1], which performs encryption and authentication in one pass (much like the sponges, but much more performant).

[1] <https://competitions.cr.yp.to/round3/aegisv11.pdf>
by hamandcheese | 2025-04-29 03:20:04+00:00
> You give up a bit of snappiness, sure, but you can also keep the very small non container based tooling like linting outside of the container.

You give up way more than snappiness. Doing real development work, i.e. compiling, testing, debugging, is very cumbersome in a remote environment.

So where do you want to spend your time? Bandaids to make remote development suck less, or effort to develop locally, natively? There is no free lunch. If you choose "neither", your developer experience is gonna suck. (Most companies choose "neither" by the way, either consciously or unconsciously).
by Rooki | 2025-04-29 03:21:09+00:00
Manus just answered this correctly for me in one crack:

Me: I put a coin in a cup and slam it upside-down on a glass table. I can't see the coin because the cup is over it. I slide a mirror under the table and see heads. What will I see if I take the cup (and the mirror) away?

Manus: This is a classic riddle! Let's think it through. You placed a coin in a cup, turned it upside down on a glass table, and then slid a mirror underneath the table. Looking into the mirror from below, you saw 'heads'. Since the mirror reflects the side of the coin facing downwards through the glass table, the 'heads' side must be facing down. Therefore, the side facing up, hidden inside the cup, must be 'tails'. When you remove the cup, you will see the side facing up, which is tails.
by Larrikin | 2025-04-29 03:21:25+00:00
As someone who waffles back and forth between how conversational I am based on the topic and how much I've studied recently, this comes as no surprise.

Nothing about Duolingo gives the impression they actually want you to learn the language. It presents itself as an easy way to start, but if you are more than a single undergrad class into the language and have used any outside resources, it's an obvious waste of time.

Everything on the platform is just a slower form of the most basic note cards. Anki does everything the platform does faster. Anki isn't suitable for all task but Duolingo takes the basic note card and makes you learn at a slower pace.
by ryanlime | 2025-04-29 03:23:56+00:00
Recently I’ve pretty much replaced searching Yelp or TripAdvisor with a combination of Instagram Reels/TikToks and Google maps for travel and food recommendations. I usually just save a lot of places that I have to dig through and watch again to dig through and add to my saved Google maps lists. Because this takes me a fair bit of time when preparing for a trip, I decided to automate part of it by building a pipeline to “watch” the video for me by getting the audio and video frame data and taking into account key POIs that I then export out to a note. Later I plan to also integrate this with other travel or food tracking software like Wanderlog, Google maps list, or Beli eats. So far it’s been working well, but def expensive (so thank god for free GCP credits haha)
by wofo | 2025-04-29 03:24:43+00:00
Thanks for the example! It has helped me understand better the use case of AEAD for at-rest-encrypted-data.

I finally updated the example to a new one, though it's still message-based (it fits the rest of the article better). If I had come across your example earlier, I might have stayed away from a message-based formulation of the problem at all... Better luck next time I guess :)
by tcdent | 2025-04-29 03:24:50+00:00
The ORM is so so so much better designed that SQLAlchemy v2. Performing queries, joins, executing in transactions all feels clean and concise. The latter feels dated and I find it hard to believe there's not a widely accepted replacement yet.

In terms of views, route configuration and Django's class-based views are sorely missed when using FastAPI. The dependency pattern is janky and if you follow the recommended pattern of defining your routes in decorators it's not obvious where your URL structure is even coming from.
by perilunar | 2025-04-29 03:24:59+00:00
The main problem with table layouts was that a site re-design meant rebuilding all the pages/templates from scratch, where as in theory CSS-based layouts meant changing just a single CSS file.

In practice though we always had to clean up and modify the HTML anyway. Sometimes just to remove all the old table cruft, but often adding and removing page elements. But pages did become cleaner and easier to maintain without table layouts, so it was a net improvement.
by 0xWTF | 2025-04-29 03:25:49+00:00
The article may not be consistent with what I'm hearing from doctors using ambient dictation, which admittedly fits a slightly different niche than the author's use case, but points to their final prediction that the paths to adoption will be complicated.

A number of the docs I'm working with describe using ambient dictation as a game changer. Using the OODA loop analogy of the author: they are tightening the full OODA loop by deferring documentation to the end of the day. Historically this was a disaster because they'd forget the first patient by the end of the day. Now, the first patient's automatically dictated note is perhaps wrong but rich with details the spark sufficient remembrance.

Of course MBAs will use this to further crush physicians with additional workload, but for a time, it may help.
by aabiji | 2025-04-29 03:26:19+00:00
I'm working on a motion capture app. The idea is that I can map my movement that's recorded through webcam footage into the movement of a 3d model. This project has involved 3d graphics and AI through 2d pose estimation and 2d to 3d pose lifitng. This project's been pretty fun so far. Here's the github link:

https://github.com/aabiji/mocha
by rahimnathwani | 2025-04-29 03:28:41+00:00
I modified the docker-compose.yml thus:

... services: simstudio: build: context: . dockerfile: Dockerfile ports: - "3000:3000" volumes: - ./sim:/app - /app/node_modules - /app/.next extra_hosts: - "host.docker.internal:host-gateway" environment: - OLLAMA_HOST=http://host.docker.internal:11434 - NODE_ENV=development - DATABASE_URL=postgresql://postgres:postgres@db:5432/simstudio ...

Then I ran `docker compose up -d --build`

Then I went to localhost:3000/w/

Then I added an Agent block. I expected ollama (or my ollama models) to show up in the drop-down, but I only see the hosted models.

I even tried editing `sim/providers/ollama/index.ts`:

const OLLAMA_HOST = 'http://host.docker.internal:11434'

Any ideas?

(BTW I did NOT run `--profile local-cpu` because I didn't want to run ollama in a docker container, as it's already running on the host.)
by theamk | 2025-04-29 03:32:50+00:00
That's pretty bad... When calculating the efficiency, transitional effects and non-ideality of parts are critical. And what does the author choose? A generic mosfet, unnamed diode, constant duty cycle.. this is not realistic at all.

And the selection of parts seems just random, especially given low output power (0.1W), no design will use it. A MOSFET for 5V circuit. 1KHz switching frequency (!). Fixed duty cycle and voltage regulation via inductance changes (!!). Huge inductors (0.3H!), because of very low frequency.

All this blog post shows is that author can put parts into simulator. Very little relation to real world.
by poisonarena | 2025-04-29 03:33:06+00:00
I am fluent in spanish, and duolingo was really helpful at the beginner stage. When I was beginning to learn. I think between living in mexico (total immersion), consuming spanish media only, and about an hour of duolingo every night it was a tremendous boon. Mostly for learning to spell/remember gender nouns, and learning vocabulary.. I have tried other apps but the gamification also helps.

I have now been speaking spanish for 9 years and have no use for duolingo when it comes to spanish, but I always recommend it as a resource to level up when you are a beginner.
by m1m1ck | 2025-04-29 03:34:06+00:00
It was called 'Daisywheel' {{video https://m.youtube.com/watch?v=xSEEjLZtnLg&pp=ygUWRGFpc3l3aGV...}}

Also...

Master Forge needs to be mentioned. https://m.youtube.com/watch?v=iYjy6l6cdCw&pp=ygUORm9yZ2Uga2V...
by waleedlatif1 | 2025-04-29 03:35:44+00:00
i think it could be one of a few things: - first, even though your ollama is running on the host, you still need to use the local profile flag to enable ollama models in the UI. you can do this by running the docker compose command with `local-cpu` - also, make sure your host ollama is actually running and responding (curl http://localhost:11434/api/tags should show your models) - if neither of the above work, you may need to restart the app container after changing the OLLAMA_HOST value
by scythe | 2025-04-29 03:35:52+00:00
Ten miles from Fresno might be too far. I just picked a distance out of thin air.

But when you have a minor stop, it's less important to build the perfect configuration. Even if you have to go outside of Fresno to get on the train, you're still in downtown SF or LA when you get off. And the traffic in Fresno is not as bad as the traffic in SF. And the flights from Fresno airport are probably not as cheap, since it's a lower-volume airport (capex per flight is larger), so you have more of a cost advantage.

So I'm pointing out a false dilemma. You don't have to choose between downtown Fresno and no Fresno. You can have a worse-is-better Fresno without sacrificing the goals of HSR for the really big cities.
by Mr_Minderbinder | 2025-04-29 03:36:15+00:00
Why would an employee tracking device be necessary to make transactions? It is just people without a cash position performing mental gymnastics in an attempt to justify it, by trying to bring it down to the level of electronic payment methods they convince themselves that, in a similar event, they would be no better off with cash, when in fact they almost certainly would. A merchant who refuses cash on account of a disabled cash register, under these circumstances, is not a serious one, since to do so would be to refuse all business. Those merchants who are so encumbered by scale and bureaucracy that they would be completely incapacitated should be circumvented.
by jhancock | 2025-04-29 03:36:25+00:00
Excellent write up.

I worked with Rails and Phoenix in their early days and got plenty of value from each. If you're building a traditional web 2 app, look no further...similar to choosing Postgres, start there until you have really good reason to venture off.

Without taking away anything from these frameworks and as someone that spent over 10 years building app frameworks, sometimes it's not what I want.

I'm using Clojure for my current problem space which would stymy me if I tried to use Rails or Phoenix. I spent the past 4 months doing product/domain "shaping". There are no web pages yet..mostly pure server side domain and API calls for data gathering. After this exploration I now have several working subsystems and have figured out the pathway to the mvp which will come together quickly. As a bonus I have a working domain core to leverage for steps after the mvp.
by TheDong | 2025-04-29 03:39:44+00:00
Reproducible self-contained configurations give most of the same benefit for bug filing.

Just your regular reminder that nix is good actually.

"I have a bug, you can get a full VM that reproduces it with 'nixos-rebuild build-vm --flake "github:user/repo#test-vm" && ./result/bin/run-*-vm'"

And the code producing that VM isn't just a binary blob that's a security nightmare, it's plain nix expressions anyone can read (basically json with functions).

And of course applying it to a new machine is a single command too.
by Ygg2 | 2025-04-29 03:42:03+00:00
> Godot launched 0.1 in February 2014 and got to 1.0 in December 2014.

Yeah because that's when it was open sourced, NOT DEVELOPED.

See https://godotengine.org/article/first-public-release/

> Godot has been an in-house engine for a long time and the priority of new features were always linked to what was needed for each game and the priorities of our clients.

I checked the history and it was known by another name Larvita.

> If you want people to use your OSS project

Seeing how currently I have about 0.1 parts of me working on it, no I don't want to give people false sense of security.

> At this point, regulators and legislators are trying to force people to use the Rust ecosystem

Not ecosystem. Language. Ecosystem is a plus.

Further more the issue Bevy has is more of there aren't any good mature GUI libraries for Rust. Because cross OS GUIs were, are and will be a shit show.

Granted it's a shit show that can be directed with enough money.
by frutiger | 2025-04-29 03:42:17+00:00
Wow. Both of these things happen to me all the time, and somehow exactly as you’ve described.

It won’t be just one space that’s been replaced with “.”s but several in a row.

The trailing “m” is something I often hit as I do the double “ “ to get the “.” and then backspace over the final space but often hit the “m” and tap “send”/“submit” without reviewing.

Speaking of which, it would be nice if it could trim the last trailing “ “ when leaving focus of the text entry if it had been entered due to a doubled “ “ to obtain a “.”.
by analog31 | 2025-04-29 03:43:29+00:00
When my mom was an art student in the 1950s, duplicating a famous painting was a training exercise. In fact, the museum would let you bring in your easel and set it up in the exhibit hall. I remember seeing this done when I was a kid. Maybe they've gotten too prickly about security, or copyrights, because I don't see this being done any more.
by noahbp | 2025-04-29 03:44:26+00:00
This is so good I disabled my ad blocker.

Thank you. Seriously.

Note: I searched "Protein bars", and it treated all protein bars equally. The 1st-20th cheapest had <15g of protein per bar. I had to scroll down to the 50th-60th to find protein bars with 20g of protein, which surprised me for being cheaper than Kirkland Signature's protein bars.
by rahimnathwani | 2025-04-29 03:44:30+00:00
I see this in the docker compose logs, but those models don't show up in the model drop-down on the Agent block:

simstudio-1 | [2025-04-29T03:41:12.195Z] [INFO] [OllamaStore] Updating Ollama models { simstudio-1 | "models": [ simstudio-1 | "hf.co/bartowski/Qwen_Qwen3-32B-GGUF:latest", simstudio-1 | "qwen3:30b-a3b-q4_K_M", simstudio-1 | "gemma3:12b-it-qat", simstudio-1 | "gemma3:4b-it-q4_K_M", simstudio-1 | "nomic-embed-text:latest" simstudio-1 | ] simstudio-1 | } simstudio-1 | [2025-04-29T03:41:12.195Z] [INFO] [ProviderUtils] Updated Ollama provider models { simstudio-1 | "models": [ simstudio-1 | "hf.co/bartowski/Qwen_Qwen3-32B-GGUF:latest", simstudio-1 | "qwen3:30b-a3b-q4_K_M", simstudio-1 | "gemma3:12b-it-qat", simstudio-1 | "gemma3:4b-it-q4_K_M", simstudio-1 | "nomic-embed-text:latest" simstudio-1 | ] simstudio-1 | }

Whether or not I include `--profile local-cpu` in the docker compose command:

- the models from my local ollama show up in the logs, and

- the models don't show up in the model drop-down in the Agent block.

AFAICT the only impact of `--profile local-cpu` is starting a docker container with ollama running.
by Ygg2 | 2025-04-29 03:45:04+00:00
> fight the borrow checker

I see this and I am reminded when I had to fight the 0 indexing, when I was cutting my teeth in C, for class.

I wonder why no one complains about 0 indexing anymore. Isn't it weird how you have to go 0 to length - 1, and implement algorithm differently than in a math book?
by queuebert | 2025-04-29 03:45:32+00:00
> ... big bag of mutable data that lives for relatively unknown amounts of time. This is the antithesis of Rust.

I'm sorry, but I still don't understand. There are myriad heap collections and even fancy stuff like Rc<Box<T>> or RefCell<T>. What am I missing here?

Is it as simple as global void pointers in C? No, but it's way safer.
by skissane | 2025-04-29 03:45:39+00:00
The mental health evidence is introduced by the defence, not the prosecution. In most cases, the prosecution has no interest in raising defendant’s alleged mental heath issues (since it may well result in a lighter sentence, in more extreme cases even be grounds for an acquittal), while the interests of the defence is obvious.

And if the defence introduces mental health evidence into the sentencing, the judge is legally obliged to rule on it - explaining whether it was accepted or not, and if it was, how big an impact it had on the sentencing decision-if the judge didn’t do that, they risk either party successfully appealing the sentence, in extreme cases even being disciplined.

And even if it is a “plea deal” - the sentencing procedure is fundamentally the same as if there isn’t one, it is just the prosecution commits not to ask for a harsher sentence than agreed, the defence still has to introduce mitigating evidence and the judge has to rule on it; if the defence doesn’t, there’s a risk the judge may decide the agreed sentence is too lenient and overrule the agreement.
by nearbuy | 2025-04-29 03:46:32+00:00
I think that's convoluted logic trying to show that a business lowering its costs is actually bad for the business. You can make this assumptions about any business. It's not a good assumption. If a car company discovered a way to lower its production costs and started selling their cars cheaper, would you argue that maybe this is actually bad for the car company because maybe they lowered their price so much that it cancelled out all the benefit? You're just hoping they're really bad at pricing their cars.

The different GPT models are for different use cases. The existence of the nano model does not imply everyone who used the formerly cutting-edge GPT-4 will switch over to the cheaper nano model. Most of them will switch to the smarter models like 4o, 4.1, or o3. Nano allows the creation of new tools where the other models are either too pricey or too slow to respond to be viable.
by zielsen | 2025-04-29 03:47:16+00:00
For a more data science-y project, I'm having a blast building https://nhlforecasts.com. I live in a town with a hockey team, and figured the best way to become a fan would be to understand the sport from a data driven approach.

I did a ton of work on building an Elo model first, but was getting very compressed results in terms of postseason predictions. I swapped to a Bayesian approach which has really taken off. Not sure how it's going to handle the second round of games approaching, but that's a problem for the future!
by babyent | 2025-04-29 03:47:51+00:00
I live in America.

I’m sure Europe has nice trains. I’ve rode the best trains in the world in Japan.

America is a completely different dynamic and is not at all comparable to Europe nor Japan.

The culture here has always revolved around cars (objectively better IMO for ME, I don’t like tiny cramped cities like in EU or Japan), and our roads are big and our buildings are large and really nice. New builds especially in cities like SF or LA.

SF to LA is about 400 miles. Going from LA to SD is another 120 miles. Spain by itself is like 150 miles wide and 500 miles long. It’s about the same distance, sure, but totally different dynamics. It’s hard to explain unless you’ve been here.

Besides, nobody really has a need to travel between LA and SF that regularly unless it’s for business. People might visit their families every month or two. But most of the travel is for business.

Comparing Europe and America is apples to oranges.