skysight-inc/HackerNews huggingface dataset:
Wait, the Go error handling on that code has the exact same functionality as the Python one. All it does is making the code about 5 times as long and way less extendable.

Way, way less extendable. You'll have to completely rewrite the Go code if you want to put it in a library.

Now I'm doubting the author discernment on building that opinion.
> it's really trivial to simply not buy an iPhone

Only if you don't care about your privacy at all: https://news.ycombinator.com/item?id=26639261

See also: https://news.ycombinator.com/item?id=39935888
It really isn't for anyone whose native language is American English. Unless you plan to quack, while singing a Mariah Carey song, and waiting to speak to customer service rep instead.
Well, greed usually refers to a selfish desire for things that other people also want...

But since nobody else wants oil because of that whole killing people thing, clearly it's not greed.
funny how this new "new stuff" follows the "Smoking-is-fine" of the past..
in a "Merchants of Doubt" [0] style

[0] https://en.wikipedia.org/wiki/Merchants_of_Doubt_(film)
That’s for all surgeries as a whole, not prostate cancer treatments.
If the comparison is to buying an emergency gallon from a "town blacksmith", then let's get those numbers too: a (Ford) Model T was said to get 13 to 21 miles per gallon. So if you managed to buy a full gallon from your hypothetical blacksmith in history, you'd need two to three hours on a boring wall plug to get the equivalent charge in your Model 3. That's quite a bit more time than you might want to spend in a small town, but that's "a lazy afternoon" amount of time (or a good four course meal with all the fixins depending on whereabouts in the country you find this stop and the hospitality of local restaurants) and still not "spend the night" amount of time.

I know this thread is entirely about comparing apples and oranges, but the historical examples weren't getting a full tank from a small local Blacksmith back then and so it doesn't make sense to worry about getting a full charge in this situation either.
Dynamics of the charge transfer to solvent process in aqueous iodide
You can tell this is fluff because it discusses commercial real estate without ever mentioning the many tax shelters that politicians have created for their real estate developer donors, e.g.

> "What are the most common tax benefits of investing in commercial real estate?

> "The most common tax benefits of investing in commercial real estate include accelerated depreciation, mortgage interest deductions, and tax advantages for an investor’s heirs. Accelerated depreciation allows investors to write off the cost of their investment over a shorter period of time than the asset’s useful life. Mortgage interest deductions allow investors to deduct any interest they pay on a commercial mortgage off of their federal income taxes. Lastly, tax advantages for an investor’s heirs can lead to a massive difference in returns, especially over an extended period of time."

https://www.commercialrealestate.loans/blog/the-top-10-tax-b...

If the market really goes belly-up, then the government will step in to bail out the 'fearless entrepreneurial capitalist investors' as with the subprime collapse, the covid collapse, the Silicon Valley Bank collapse, etc. Then the cheerleaders of capitalism stop complaining about socialism, at least for as long as it takes for them to deposit their government welfare checks.
A (sad?) workaround I've seen is to intentionally misspell words in error / log messages so that they're unique enough. I guess I don't blame people doing that, but it does point to limitations of the language.
Just saw this a few days ago:

https://stationview.raspberryshake.org/

Not a ton of coverage in the area but it was picked up.
> do you want to know when something bad can happen in your program, or don’t you?

No actually, I want to know when consequential errors that I can be responsible for happen.

I don't really care that reading a file could fail (and it can fail in such a variety of ways, there's like 3 dozen distinct errors that could be thrown!) because I can't do anything about that. But if there are errors that I could recover from, that I would care about.

Unfortunately while it's possible, very little code distinguishes between error kinds or returns custom errors in go, so your bet is usually parsing error messages, while in Python or rust you have the ability to handle errors that are relevant to you, and let irrelevant ones percolate away.

Go on the other hand encourages doing nothing except logging, because it's somewhere between difficult/unidiomatic and impossible (depending on the libraries your building on top of) to handle only certain kinds of errors.

As a concrete example, in that csv parsing code, how do you differentiate between a file not found, file too large, and lacking permissions to read it? The stack overflow consensus is that doing that is unidiomatic, and you should just print the error to the user, which means this is just boilerplate for an exception that will ultimately gracefully end processing and print an error/stacktrace to the user. A bunch more typing for precisely the same intent as you get for free in Python or Java.
Since you're clearly knowledgable ...

What's your take on http://cheribsd.org (and CHERI as a concept overall)?
In VSCode it’s just a command away (on the command palette).
runtime/debug PrintStack() is 0 effort… what are you going on about? Stack traces are not required, only preferred by some because they don’t program defensively. If you want to include debug information in your binaries, go for it - I’ll be waiting with Ghidra
That's correct. The resulting error message won't be a stack trace, but I find it spells out the problem quite nicely in practice. I haven't had issues with grepping for the errors, but I can see that it would be a problem in larger codebases.
Stagex: A full-source bootstrapped and reproducible Linux distro
Audio gear: a decent, portable mic for corporate video calls in a noisy room
Israel is a very small country. It has the population and size of the Bay Area.

Everyone is basically a 2nd or 3rd level connection.

It has it's pros (eg. VC and Entrepreneurship is much easier because the barrier to entry is lower) but also it's cons (gossip flows very quickly, and it's fairly easy to unmask someone).

This is also why the IDF is so ferocious in Gaza - everyone in Israel and the Diaspora either knows someone or is related to someone who died either on 10/7 or during the deployment (eg. I'm from the west coast yet an elementary school classmate of mine died in the Nova massacre, and a couple former coworkers were mobilized to Gaza because they had an infantry MOS back in the day) so there is no appetite for reconciliation.

Also, most of 8200 basically leaves and joins the private sector after a couple years, and the younger guys (post-2010) seem to have sloppy opsec compared to the older ones, for example publicly listing that they are ex-8200 on LinkedIn or social media.

The IDF, Shabak, Aman, and Mossad have all deteriorated severely since the 2000s, because the best and the brightest in Israel now have private sector options that pay way more and give you way more fame, instead of working as a relatively underpaid bureaucrat in a country just as expensive as the Bay Area.

A similar trend is happening in Singapore as well, as almost all my A*STAR friends and classmates broke bond and naturalized in the US instead of returning. Only those whose families owned a house or a car returned (iykyk).
Show HN: StreamPod with AI Ft. Haiku and Sora
Hey there, HN!

We(Me and the AI) have been cooking up something pretty cool, and we can't wait to share it with all of you!

Introducing StreamPod w/ AI - the open-source video platform API that's all about leveraging the power of AI to keep your content safe, engaging, and on point!

Under the hood, StreamPod's rocking some seriously impressive AI workflows and analysis tools that help all of you:

- Keep your content squeaky clean by detecting & flagging any sketchy content.

- Engage users with hyper-relevant vid recs powered by machine learning magics.

- Get the scoop on what folks are saying with sentiment analysis on comments.

- Ensure everything's on the up-and-up with AI-driven content moderation.

And if that wasn't enough, we've even got an AI-powered Haiku Bot that'll craft witty, memorable poems for each vid!

It's like having a creative genius right in your back pocket!

Wanna see StreamPod in action? Easy peasy!

Just snag our Docker Compose file and let it rip:

1. Clone the repo:
git clone https://github.com/blowleaf/streampodvms.git

2. Mosey on over to the directory: `cd streampodvms`

3. Unleash the magic: `docker compose up`

4. Ta-da! The StreamPod API is live and ready to party at http://localhost

* There's a video too(DISCLAMER... not made by AI and hosted on youtube to avoid a big cloud bill in case it goes viral):

https://youtu.be/T-wMC0TPq68

Thirsty for more info? Swing by our digital digs at https://www.streampod.io

We'd be over the moon to hear your thoughts, suggestions, and crazy ideas for how we can push the envelope even further with AI-powered video platform goodness!

So go ahead, take StreamPod for a spin, and lay some wisdom on us YC!

Let's harness the power of AI to create a video platform that's a bit different
I'm mostly familiar with it in F#, Scala, and Haskell, but I suspect any language with some functional roots has an equivalent.

The F# For Fun and Profit blog has a decent post explaining it. That blog doesn't appear to be maintained anymore, but it is archived: https://web.archive.org/web/20180329001511/https://fsharpfor...

You can find examples in Scala with `for` comprehensions as well.
They are feeling the p-wave, which arrives just before the s-wave that you feel as shaking: https://www.smithsonianmag.com/smithsonian-institution/ask-s...
The title is misleading as the article primarily focuses on Bulgaria. In contrast, Poland began re-insulating old blocks en masse about 20 years ago, especially in all the larger cities.

Moreover, the project isn't as "innovative" as it seems to be portrayed in the article. The quality of these buildings today depends on a variety of factors, such as the precise time they were built (during periods of a strong vs. weak socialist economy), the location (growing worker cities vs. peripheral cities), and their maintenance over the years. During socialist times and even up to today, these buildings were largely maintained by legal "cooperatives." The quality of management within these cooperatives can vary significantly. And management of those basically never changes through the decades.

There is also a notable difference in the quality of an average "block" among different Central and Eastern European countries. Having traveled through most of this part of the continent and living in Poland, I've observed that many Balkan Soviet blocks were of significantly lower quality, likely due to smaller economies and greater scarcity of materials at the time, which affected their ability to meet building standards (all these blocks were state-built).

For anyone interested in how these were made en masse in months, here's a link to an old Polish movie archive from 1976, which was pretty much the peak of building these in Poland, following a substantial loans from the western world. The video lacks subtitles, but you can still observe the manufacturing, quality control, delivery, and on-site assembly process.

https://www.youtube.com/watch?v=NYW5bnD-3Z8
> I'm not denying any atrocities

you are
Even more self-explanatory is "Duck into the bathroom. Cover the toilet seat with toilet paper. Hold your bladder until you're on the toilet."

I'm still not sure what I'm supposed to be holding onto. Do I briefly cover my head with my arms, then stop covering my head to hold onto the table? Do I hold onto my head while I cover it? Do I cover my loved one's head and they cover mine, sharing our last moments in a loving hold?

Now I'm beginning to wonder if I made a massive assumption that I would be covering my head with my hands. That's what I would do during a tornado, but maybe I'm supposed to be covering my head with a blanket so my hands are free for the hold on part?

Honestly, my facetious hold my bladder advice seems more apropos than anything I've managed to come up with for part three.
Would the evolutionary approach be an advantage in allowing existing code bases to run with minimal modifications? So not perfect but safer than linux with minimal effort?
Gatekeeping as a term has lost its meaning. These days it’s used to refer to any kind of quality control.
Going from a personal computer to a tablet or phone is not a stretch. Trying to include a freaking car is. Come on.
This will be a fun reminiscence once we find out how humans are able to learn with just a tiny fraction of that data volume.
Right now, what a lot of people so rural they don't get broadband have is the newspaper, AM radio, the local network news, the national network news, and/or the cable news. Four of those five have seen major providers controlled by large-scale ideological campaigns to one degree or other.

I'm not saying it's a slam dunk or anything, but access does at least permit another shot at viewing the world through a lens other than the movement conservative one.
32B (also 34B) is a neat size for prosumer hardware and more compatible with running the llm alongside other apps

context: Qwen 1.5 72B is quite good. It ranks higher than Mistral-Medium (proprietary) on Chabot Arena

edit:

other interesting models in this weight (ha) class:

* Yi-34B (https://huggingface.co/01-ai/Yi-34B)

* Command-R 35B (https://huggingface.co/CohereForAI/c4ai-command-r-v01)
I think the alert is to try to get people to stop calling the police to ask/inform them about what they felt.
> Liblzma ends up dynamically linked to sshd because of a
systemd-related extension added by many Linux packagers that pulls
in liblzma as an unrelated dependency

kinda wish this was unpacked a bit more, why exactly is a service executable dynamically linking to a library without using any of its symbols or functions, because of systemd.

and a follow up if some openbsd folks can comment. over the years i've read about various unique security capabilities in openbsd, it seems natural to ask, what kernel or OS capabilities does openbsd provide to thwart the stage 2 efforts for this class of injection techniques?
https://news.ycombinator.com/item?id=39935888
Midwest and we have a similar process for tornadoes.. and nuclear bombs.
> it would eventually push all the stars and galaxies so far apart that even atoms could be torn asunder

If that's what expansion driven by dark energy does, then why hasn't it already happened? And where did the reporter get this factoid?
java:

Optional<String> result = returnsAnOptional();
if (result.isPresent()) {
log.info("result is {}", result.get());
}

// and

returnsAnOptional().map(r -> log.info("result is {}", r);
6.1.1 is the latest build from the 6.1 release channel, which was the latest up until about 4 or 5 hours ago when a new major release was cut.

Not at all the same as running a 4.x release.
Or you could download HandBrake?

Browsers are annoying. They constrict the designer, they constrict the user, they're overly complicated, slow, bloated... I don't know why people keep pushing them to do things they are bad at.

I wish 20 years ago we'd made a concerted effort to make Java suck less. We'd have the universal applications everyone wants but nobody wants to put effort into. But the web was new-ish, and people didn't realize that hypertext document viewers would become an entire application platform and mini OS.

What I'd really like to see is something like FlatPak, but for all platforms. Basically it would be containerized GUI apps, but one repository for one app that serves all platforms. On Android, MacOS, Windows, etc, you would run your "flatpak add https://some/repository/ my-app && flatpak pull my-app && flakpak run my-app" (but in a GUI, like an App Store you control). And that would pull the image for your platform and run it. Since it's containerized, you get all the dependencies, it's multi-arch, & you control how it executes in a sandbox. You could use the same programming language per platform, or different languages; same widgets, different widgets; it wouldn't matter because each platform just downloads and runs an image for that platform. This wouldn't stop us from having/making "a better Java", but it would make it easier to support all platforms, distribute applications securely, update them, run them in a sandbox, etc. Imagine being able to ship a single app to Windows and iOS users that's just a shell script and 'xdialog'. Or if you prefer, a single Go app. Or a sprawling Python or Node.js app. Whatever you want. The user gets a single way to install and run an app on any platform, and developers can support multiple platforms any way they want. No more "how do I develop for iOS vs Windows"; just write your app and push your container.
There really is an exception to every rule. "Do not attribute to malice that which can be adequately explained by neglect, ignorance or incompetence" and then you come across:

> The stage 0 shell snippet looks at first glance like a plausible part of
> the poorly readable autoconf/automake tooling.
> if he meant to say "Don't make the mistake of anthropomorphizing Oracle" when he said "Don't make the mistake of anthropomorphizing Larry Ellison."

Perhaps not that exact phrasing, but I'd say he said both; https://www.youtube.com/watch?v=-zRN7XLCRhc&t=33m - I have it in my quotes file as

> You need to think of Larry Ellison the way you think of a lawnmower. You don't anthropomorphize your lawnmower, the lawnmower just mows the lawn, you stick your hand in there and it'll chop it off, the end. You don't think 'oh, the lawnmower hates me' -- lawnmower doesn't give a shit about you, lawnmower can't hate you. Don't anthropomorphize the lawnmower. Don't fall into that trap about Oracle.

and a bit later,

> Do not fall into the trap of anthropomorphizing Larry Ellison
I used to do the lottery, then i stopped. Now i have more money.
Freely available Minecraft server plugins were doing this in 2015.
To me, the advantage isn’t so much that you have to handle every error. It’s that you can see, with certainty, which functions and methods are error-free. I even find myself encouraged to write functions that cannot return errors.

You don’t get anything similar in exception-based systems.

Of course, algebraic error types share this advantage. They are good too.
The mana cost is wrong on 3 out of 4 cards, no?
A "stable" syscall ABI means that the interface between kernel and userland is ossified, potentially forever. If OpenBSD did this, then many of the security improvements it has made over the years, which has required the deletion of old (bad) system calls and the modification of other system calls to make them safer, never could happen without fundamentally breaking userland.

Calling into system calls in libc is not a hindrance at all for the use of other languages, any more than calling directly into a syscall would be. Cross-language function calls have been a time honored tradition since the first compilers were developed.

Linux's ossified syscall ABI is a quirk of Linux, and not a feature found in most, let alone many, operating systems.
“While Tesla spent years developing its highly experimental Cybertruck, a pricey electric pickup, Chinese automakers have raced ahead on affordable EVs, grabbing market share, gaining economies of scale…”

TL; DR
Just as a point of fair comparison, here is their prompt for CSV parsing in Rust (brought to you by Gemini):

use std::error::Error;
use csv::Reader;
use reqwest::Client;
use serde_json::Value;

#[tokio::main]
async fn main() -> Result<(), Box<dyn Error>> {
// Define the CSV file path
let file_path = "data.csv";

// Open the CSV reader
let mut reader = Reader::from_path(file_path)?;

// Create a new HTTP client
let client = Client::new();

// Iterate over each record in the CSV
for record in reader.records() {
let record = record?;

// Get the value from the first column
let url = record[0].to_string();

// Perform GET request
let response = client.get(&url).send().await?;

// Check for successful response
if response.status().is_success() {
// Read response body
let body = response.text().await?;

// Parse JSON
let json: Value = serde_json::from_str(&body)?;

// Process the parsed JSON (e.g., print it)
println!("JSON for URL {}: {}", url, json);
} else {
eprintln!("Error fetching URL: {}", url);
}
}

Ok(())
}

The thing that makes it perfect in Rust, that you can keep the above for a simple script, but if you want to solidify it you just think about how you want to handle the `?`-annotated spots (retries, error-repacking, panics, etc.)
this is now a chicago thread: https://en.wikipedia.org/wiki/Raising_of_Chicago
As far as I know, all of these statements are still true:

https://web.archive.org/web/20220227172102/https://madaidans...

https://isopenbsdsecu.re/
Hospitals were closed with the release of new drugs that promised to treat mental illnesses. They didn’t deliver, but the hospitals were closed anyway.
A significant benefit of IaC is the work-savings it yields for recovery from a total-site-loss event, or the migration to multi-geo/multi-site.

Sure, very few IaC environments are going to make that sort of thing seamless--bootstrapping new infra from nothing in a hurry is always going to turn up every skeleton in every closet and require a lot of manual work. But having even 80% IaC automation yields huge time savings in those rare-but-impactful "start from zero" cases.

Having even just the easy/copy-paste parts of the infra encoded in automation can be the difference between hours and days for disaster recovery, or days and weeks for creating a new geo/staging/whatever environment.
And now we learn no one wants oil. This is totally consistent with history and current market conditions!!1!
Are you a pig farmer? Because this has been studied many times and you’d think they’d notice.

This is one situation where I can say, “how can a billion Chinese people be wrong?” without sarcasm. Roasted grasshopper is sold as a snack. Whole grasshopper. People aren’t dying from it.

https://www.science.org/doi/10.1126/science.adc9165

https://www.wired.com/story/insects-pigs-poultry/ - EU approved insects for pigs and poultry in 2022 and I’m pretty sure there are farmers in Europe.
I believe the issue is that children are involved. If Roblox re-oriented itself to become an education platform where children can explore and learn different things virtually... that would be a win/win. e.g., Roblox could say, if you create a mini game that fulfills this lesson plan about chocolate [1], then your minigame can be published in the Educational section of the platform. Parents could then let their children participate in the Educational games only. I would for one would gladly donate/pay for such a service.

BTW the lesson plan for chocolate asks students to design a new chocolate bar. Choose the ingredients and design a wrapper. The students/players can then vote on their favorite design etc.

[1] https://www.teachingenglish.org.uk/teaching-resources/teachi...
Nothing has changed in 30 years, and it is not a female issue. I Left Academia in about 1993