When learning kayaking you have to practice a water escape, I wish there was something similar for driver's ed in the Netherlands. Thinking about it is terrifying.
HN user
jessekv
That device's legacy lives on and is still in active use, though the main customers are now cows:
https://www.dutchnews.nl/2021/05/rotterdam-floating-farm-cri...
Most likely the latter. Thousands of bikes, a hundred people, and more than thirty cars fall in to Amsterdam canals each year. "What to do if your car falls in the water" is part of driver's ed.
Very cool! Have you considered rendering clouds?
p.s. thanks to all those working this week :)
A tiny bit more context here:
https://github.com/nats-io/nats-server/discussions/3312#disc...
(I opened this discussion 2.5 years ago and get an email from github every once in a while ever since. I had given up hope TBH)
I hate to admit it, but flaky tests almost always highlight weaknesses in my software architecture.
And fixing a flaky test usually involves making the actual code more robust.
Who tests the tests?
To me it's a bit like double entry bookkeeping. Two layers is valuable, but there's rapidly diminishing returns beyond two.
I think it's relative, right? That's how abstractions and interfaces work.
I can write a module with integration tests at the module level and unit tests on its functions.
I can now write an application that uses my module. From the perspective of my application, my module's integration tests look like unit tests.
My module might, for example, implicitly depend on the test suite of CPython, the C compiler, the QA at the chip fab. But I don't need to run those tests any more.
In your case you hope the in-memory database matches the production one enough that you can write fast isolated unit tests on your application logic. You can trust this works because something else unit-tested the in-memory database, and integration tested the db client against the various db backends.
My guess is the tunnel will become the preferred roosting spot for the bats.
We once saw a comment in the generated code that said "I need some coffee".
B1M covered this. The video has a fun animation of the political history too:
Yep! But I don't.
I usually just use asyncpg.
Why is the first one needed?
Don't sprinters start with 4 limbs on the ground? The advantage of the 4 limbs seems to be gone by the second step.
Trail runners often run with poles on up or down hills. Not sure about top speed, but from experience the poles definitely help with endurance.
Sebastián Ramírez created FastAPI and SQLModel, and was an early adopter of Pydantic. Samuel Colvin created Pydantic.
At a smaller scale, the efficiencies gained from properly designing the system are not a major savings.
That said, if I had a garden with a big fountain I absolutely would try to model it in EPANET ;)
Just how fancy is your irrigation system?
I suppose it's correct to say EPANET competes with expensive commercial offerings, but it's actually available completely free:
https://www.epa.gov/water-research/epanet
I know someone who uses it to design clean drinking water distribution systems in rural communities in Central America. They would not be able to do what they do if they had to pay for an expensive commercial licence.
Desktop EPANET is still windows-only though, so having a browser version is pretty cool.
It would be a fun callback if the demo was a factorial server:
https://joearms.github.io/#2013-11-21%20My%20favorite%20Erla...
This is the whimsy I needed today :)
You can take it one step further and make the file executable and place this at the top of the file:
#!/usr/bin/env -S uv run
My experience of the extension was bad.
The extension is a hack that allows them to redirect the searches from one of the available search engines to Kagi. So first you search, then e.g. the DDG page loads halfway, then the page flashes, you get redirected to Kagi. If you are lucky, you are signed in, and you wait for the Kagi results. If not, you sign in and type your search again.
On iOS, I made a shortcut that pops up a native text prompt for your search, then opens Kagi using your session token. I recommend this over the extension, it is fast snd reliable.
My experience of the extension was bad.
The extension is a hack that allows them to redirect the searches from one of the available search engines to Kagi. So first you search, then e.g. the DDG page loads halfway, then the page flashes, you get redirected to Kagi. If you are lucky, you are signed in, and you wait for the Kagi results. If not, you sign in and type your search again.
On iOS, I made a shortcut that pops up a native text prompt for your search, then opens kagi using your session token. I recommend this over the extension.
On desktop Safari, you can additionally make Kagi your home page. Not as convenient as searching directly from the top bar but not bad either.
I had the extension for a while and it didn't work reliably for me.
I replaced it with a "let's fetch" shortcut.
I have DDG as the default search in Safari (because Kagi is not an option, maybe it requires profit sharing with Apple?) and I often end up using DDG out of convenience while being a Kagi subscriber.
I agree there is not a lot of differentiation between stock Kagi search and DDG. DDG still has a few ads but it's not that annoying, perfectly usable.
Kagi's assistants are pretty interesting though. Recently I asked it to find back a post that I vaguely remembered. It managed to generate a bunch of Kagi searches with different keywords and narrow it down to an old tweet.
While this likely saved them from the disastrous CrowdStrike outage that had a massive global impact
I imagine log4j wasn't a problem either.
If you have this problem, leave one of those stone eggs in the nesting box to help them break the habit.