HNHacker News
TopNewBestAskShowJobs

cwp

4,462 karma · joined February 20, 2007

ML Engineering at https://vannevarlabs.com/
submissionscomments
cwp··on Whistleblower to Congress: Facebook products harm kids and democracy
Policing thought crime never ends well. Intolerance toward intolerance sounds great until you get into the thorny questions of "what even is intolerance" and "who gets to decide what's intolerant"?

I mean, it's right there in the quote: the intolerant might not be willing to have a rational debate, so we should criminalize the expression of intolerance. Our enemies might choose violence instead of debate, so we should apply state violence to prevent debate.

cwp··on How does the economy work? A new Fed paper suggests nobody really knows
Sounds like motivated reasoning to me. We've had 40 years of pretty successful economic policy, but we'd really, really like to spend a huge amount of money when there's already a shortage of workers. But hey, who really knows, right? Maybe inflation won't be a problem.
cwp··on Are software engineering “best practices” just developer preferences?
Eh, kinda. Calling something a "best practice" is basically an appeal to authority. It means, "this is the right way to do things, for reasons I don't have time to explain." There are times when that's appropriate.

But really, "best" and "right" are highly situational. Any rule of thumb, even the most basic and uncontroversial, has a situation where it doesn't apply. I was part of a discussion on a mailing list years ago, where somebody got flamed harshly when he mentioned using a global variable. He then explained that he was working on an embedded control system for cars and all the variables in that system were global. The team was well aware of the pitfalls of global state and used a combination of documentation, static analysis, custom tooling and elaborate testing to mitigate them. It was a considered design choice that made it possible to develop high-performance, hard-realtime software that could run on very limited hardware.

cwp··on Demonopolizing the Internet with Interoperability
I wouldn't call it reassuring, but it is the pattern so far. What gives me hope is that we don't have a single unassailable monopoly. Instead, we get a chance, every five years or so, to choose something better. We just might figure out how to deal with this.
cwp··on Demonopolizing the Internet with Interoperability
Not quite. Yes, network effects are important, but if that were the only important thing, then Facebook would be the only social media site. The opposing dynamic is that it's not hard to be on multiple sites at the same time. So if there's a site that meets my definition of "better" and has critical mass among the people I'd like to connect with it, it can compete. Each new generation gets its own social network because it has no interest in connecting with the squares on Facebook.
cwp··on Arctic World Archive Adds Latest Data Deposit in Svalbard Facility
I think the main motivation for doing it in Svalbard is the seed vault, which benefits from the cold, dry environment in the permafrost. And sure, that the remote location lends its self to Foundation-like restore-civilization-after-the-dark-age scenarios, but it works fine for shorter-term back up too. If there's a blight that wipes out corn or something we can use the seed vault to replant. (Assuming we can cure the blight... cf the American Chestnut.)
cwp··on All 16,777,216 RGB colours (2005)
Yup. Consider that all compression boils down to some form of a model that can predict the next bits of information, and then an encoding that only includes the deviation of the actual data from the prediction. Machine learning gives us new ways of making predictions.
cwp··on Lab-grown meat may never be cost-competitive enough to displace traditional meat
I don't have any expertise here, but I don't really see anything in the article to support the idea that the problems are fundamental. That's certainly the conclusion their experts come to, but it all seems to be based on looking at the proposed technique and poking holes in the assumptions. There are all these problems, and while they have solutions, the solutions are expensive. Ok, but maybe there's another technique that's better. We can't think of one right now, and maybe we never will, but it's not in the same class of impossible as faster-than-light travel. It's more like fusion power: the engineering is too hard.

The article is pretty persuasive on the lesser claim though - all this enthusiasm is unwarranted, and we shouldn't invest heavily.

cwp··on The Bagel Language
Have you looked at Fortress at all? It was designed on just this premise, and came to some interesting conclusions before being abandoned. For example, where the natural data structure for Lisp is the list, the natural data structure for Fortress is the tree.

(Discussed here: https://news.ycombinator.com/item?id=814632)

cwp··on Ditch your version manager
Nixpkgs is quite good. It has the package I'm looking for most of the time.

According to Repology[1], it's got more packaged projects than any other package repository, and more packages that are up to date than any other repository. It's also pretty on top of CVEs, with only 0.38% of packages having potential vulnerabilities.

Also check out Repology's size/freshness graph[2]

[1] https://repology.org [2] https://repology.org/repositories/graphs

cwp··on Ditch your version manager
The learning curve is the biggest issue. Nix is different, and that makes it hard to learn unless you're already into functional programming. I like it too, but damn, it's so hard to get someone up to speed, even if they're sold on the benefits and want to learn.
cwp··on Ditch your version manager
You're not wrong, but that's a different problem. Nix makes sure that you get a predictable and reproducible tree of dependencies, and allows different applications to depend on different versions of the same dependencies. That is, it's a solution to DLL hell. It's solid engineering based on solid theory, and it really does let you manage configuration with a level of reliability that most other package managers only pretend to have.

Now auditing dependencies, knowing that the packages you depend on aren't malicious and have no known vulnerabilities... well, that's a whole separate problem. And yeah, we don't really have a solution to that right now. The best we can do, as you say, is keep the attack surface small.

But if we did try to solve the auditing problem, the solution would have to sit on top of nix or something like it. If you can't precisely specify a dependency graph and reliably install from that specification, it doesn't matter how good your auditing is or what sort of system of trust you can create. You don't know what you're getting anyway.

cwp··on An appeal for an objective, open, transparent debate re: the origin of Covid-19
I understand all that. My point is that "debate" is about persuading people to hold your point of view, while this is a question of fact. You can't change a fact no matter how persuasive you are, because facts aren't subject to debate.

Now, in this case, the fact is hidden from us. SARS-CoV-2 had a natural origin or it didn't, but we don't have enough evidence to decide that question either way. In the absence of evidence, people are using prejudice to decide what is true, and trying to persuade others to adopt their prejudices. That is utter folly.

What we should do is give up on trying to establish the facts unless and until new evidence emerges. Instead, let's admit that lab leaks are possible, and regardless of whether it happened in this case, it should cause us to reexamine our assessment of the risks inherent to this type of virology. We have a demonstration of how bad we are at containing epidemics, and how damaging even a relatively benign virus is. We don't know what a more deadly virus would do, but we can safely assume it would be very bad.

Ok, I grant that I was a little harsh on the authors of this paper; they're really only saying that the lab leak is plausible, and we should examine it seriously. Fine. But I still think it's a red herring. Even if we could find patient zero and nail down the animal that infected him to conclusively prove a natural origin, we should still revisit our thinking on whether and how to conduct research with viruses. That we're a long way from that sort of conclusion makes it all the more important.

cwp··on An appeal for an objective, open, transparent debate re: the origin of Covid-19
This is stupid. You can't debate facts. Either SARS-CoV-2 escaped from a lab, or it didn't. Unless somebody comes forward to say, "Yeah, I tore my glove while transporting some test tubes and I got sick two days later," we're never going to know for sure.

The only sensible thing to do is assume that it's at least possible that it was a lab leak and reevaluate the risk-benefit tradeoff of this type of research. That is a debate worth having. The rest is just posturing.

cwp··on 6th Generation Stealth Fighter: Joint Effort by UK, Japan, Italy and Sweden?
Here are a few examples:

- Japan and Korea were historically enemies. But they've been at peace since WWII, mainly because both have US troops stationed there. Any time tensions flare up, the US does a little diplomacy and they make nice. That will probably continue for a while, even without US troops because both countries value the alliance with the US and don't want to be dominated by China.

- With the US withdrawing from the Middle East, Saudi Arabia is arming its self and allying with Israel (!) to deal with the threat from Iran. Iran, meanwhile is emboldened to attack Saudi oil fields and threaten shipping through the Persian Gulf. Meanwhile Yemen has destabilized, leaving Saudi Arabi to worry about whether it will be able to get access to the Arabian Sea. Hard to predict how this shakes out, but I can't see it being peaceful and stable.

- As soon as the US showed signs of disinterest in Europe, Russia annexed Crimea. With that experiment having been successful, they'll be looking for more opportunities to take back bits of the USSR. Now Europe is arming up to protect themselves from that threat. The catch is that Europe needs oil and natural gas, and that's mainly coming from Russia right now. We may see internal conflict in Europe over whether to be friendlier to Russia to secure that supply, and perhaps increased European presence in the Middle East. Either way, stability in that part of the world has decreased without US willingness to commit troops and money to maintaining it.

cwp··on 6th Generation Stealth Fighter: Joint Effort by UK, Japan, Italy and Sweden?
Well, it's not like nobody has ever thought of that before. The best we've been able to do is deterrence, which requires developing advanced weapons like aircraft carriers, stealth fighters and nukes.

I know this isn't what you had in mind, but the world is about to find out what it's like to not have superpowers interfering in their affairs. The US doesn't really have any need for troops abroad: the Cold War is over, the War on Terror is over, and there's plenty of oil at home. Americans have noticed that depending on foreign manufacturing for key products like medicines and microchips isn't so great when trade is disrupted, and there are going to be a lot more disruptions without the US military to stabilize things. That's going to cause America to do more manufacturing at home and further disengage with the world.

That's not exactly peace, but at least it's not war.

cwp··on Seed – A Rust front-end framework for creating fast and reliable web apps
An equally-quick but not-at-all-dirty version of this is to use the Accept header and do content negotiation. There is a solution to this exact problem in the HTTP spec.
cwp··on What's Wrong with Tech Hiring
Meh. There's nothing wrong with tech hiring.

Ok, sure, there are some companies out there that don't know what they are doing, and the very most prestigious companies have to do some very tedious stuff to deal with the fact that their process gets leaked and people are willing to put a ton of effort into preparation.

But mostly, it's pretty reasonable:

- Little reliance on credentials, because there are many solid candidates that didn't go to top schools or don't have CS degrees or maybe didn't go to post-secondary school at all.

- There's some sort of technical interview that asks the candidate to show they can do the work by doing a small amount of work. They usually let candidates choose the language and tools they'll use for this, offer help if the candidate gets stuck, let them look things up on the web, etc. This can take a few different forms, but it's inevitable given that credentials aren't reliable.

- There's some sort of "behavioural" interview that asks about how a candidate collaborates and communicates with coworkers. Tech companies aren't looking for the anti-social genius anymore; software requires teamwork.

- Recruiters are typically very accommodating of a candidates' circumstances. They'll tailor the pace and scheduling of interviews to the candidates' needs, fly them in from other cities, reserve time in interviews to answer candidate questions, and generally put significant and explicit effort into making the "candidate experience" as positive and low-stress as possible.

- There's a lot effort put into eliminating biases, and interviewers will often do things like not reading a candidate's resume until after the interview, or writing up their report before talking with other interviewers about the candidate. Most tech companies really want to do this right.

I think that what tech companies ask of candidates is quite fair. These are high-paying (sometimes very high-paying), high-prestige, comfortable jobs with lots of perks. The company puts a lot of time and money into training new hires before they're productive, and it'll be even more time before they can tell if the new employee was a good hire or not. In other words, the cost of hiring the wrong person is very high.

cwp··on I refuse to let Amazon define Rust
As the GP says, this probably refers to the practice of having short pithy statements to guide decision making. That is, AWS uses "Tenets" to help guide their decision making, Niko found that useful and wanted to do the same thing for Rust.

The post you linked to above links to a YouTube video[1] where he describes where the principles came from: some "design tenets" he came up with to help guide design of the async feature in Rust. Later he realized that they weren't specific to the async work, but were more about Rust in general. There has since been a lot of iteration involving others in the Rust community, and he's no longer calling them tenets.

And really, if you actually read the principles themselves, do they really sound like they're based on the design tenets that AWS uses? They sound an awful lot like principles that the Rust community has been using, but never articulated before. Maybe some more iteration is necessary, but it doesn't look very sinister.

[1] https://www.youtube.com/watch?v=ksSuXNmGZNA&t=2001s

cwp··on Leaded gas was a known poison the day it was invented (2016)
That's basically what Canada did with the Grand Banks in 1992. They didn't ban fish imports, but they did deploy the navy to prevent other countries (eg, Spain) from continuing to fish there. This absolutely devastated Newfoundland's economy, and even with unemployment insurance, the population dropped because people left to find work.

I don't think a few years would cut it, the Grand Banks are juuuust starting to come back after almost 30 years of nearly no fishing.

cwp··on Leaded gas was a known poison the day it was invented (2016)
I guess I put more of the blame on the influencers because they are the ones making editorial decisions. Sure the platforms are optimizing for engagement too, but it's all content-agnostic. The influencers choose their words carefully, and they choose harmful words because it makes them more money.
cwp··on Leaded gas was a known poison the day it was invented (2016)
Yup. It's blaming smokers for second-hand smoke. We need to figure out the social-media equivalent of "no smoking" signs.
cwp··on Leaded gas was a known poison the day it was invented (2016)
Yeah, the analogy between toxic media and toxic chemicals is pretty good. However, I'd put they blame for that somewhere you might find surprising: influencers.

Everybody likes to hate on "big tech" these days, but if there's anyone that knows the dangers and all the ill effects but ignores them to make a profit, it's content creators. They are hyper-attuned to the way people respond to their content, and they'll do anything to get a reaction, the more intense the better. And if that means siccing a mob on somebody, so be it. If it means doing stunts that endanger people in the real world, fine. And polarization is the best technique they've stumbled onto yet: say stuff that enrages people to get them to engage with the post, and then pick up followers among those that watch the rage with glee.

Just about every successful influencer has done a post about how hard it is to be internet-famous. It's almost always about how the negative effects of their work get reflected back at them. They know how the things they say harm people, they just want the negativity to be directed elsewhere.

There's a lot of debate about how social media companies should be regulated, how much censorship should be allowed, how much platforms should subsidize legacy media etc. But none of it will matter if we don't rein in what's considered acceptable in the creator economy.

cwp··on Media trust hits new low
> As vaccine rumor hunter Heidi Larson puts it, "we don’t have a misinformation problem, we have a trust problem.”

That about sums it up. The lies are fine, the problem is that nobody believes them. But let's imagine that the media wanted to regain the trust of the public by being more trustworthy.

Here is some advice:

Acknowledge bias. Too many in the media try to portray themselves as truth-tellers, and everyone else has hopelessly biased propagandists. Just own it. Be clear about ideological positions and points of agreement and disagreement with other political actors.

Acknowledge uncertainty. The truth is out there, but we often don't know what it is. Be willing to delay judgement until the facts are in, update conclusions when new evidence surfaces, and treat some "facts" as tentative when they're based on weak or the balance of contradictory evidence.

Criticize allies. If somebody is lying to support a conclusion you agree with, call them out. The ends do not justify the means.

Praise opponents. When "the other side" says something you agree with, say so, without any caveats about the other stuff you still disagree with. When they tell the truth, acknowledge the honesty. If they argue in good faith, engage with the ideas in good faith.

In the end, this stuff is not that hard for people that actually care about the truth. It doesn't seem like the media does anymore. Instead, they're mostly engaged in tribalism: signaling loyalty to the tribe, disseminating dogma and asserting the moral superiority of the tribe. No wonder trust is so low.

cwp··on Ask HN: What could a modern database do that PostgreSQL and MySQL can't
+1 to the application/database mismatch. GemStone is really amazing. I never got to do commercial work with it, but damn is it a great environment. I've never seen anything like it.
cwp··on Plain Text Accounting, a guide to Ledger and friends
When you say "it is the norm in the industry" do you mean that accountants are moving away from debits and credits, or is it just that accounting software translates to signed numbers when dealing with non-accounting software such as databases and spreadsheets?
cwp··on The All-Seeing “i”: Apple Just Declared War on Your Privacy
The CCP would make Apple stop manufacturing in China, which would effectively mean that they couldn't sell anything anywhere. Apple does have very deep pockets, but that would be an existential threat.
cwp··on Pacaso is turning houses into corporations
Having a website doesn't make you a tech company.
cwp··on Lab-made dairy products are now a reality
Yeah. I wasn't familiar with Quorn, but it does sound like what I'm talking about. You don't think we'll ever be able to improve on Quorn?
cwp··on Lab-made dairy products are now a reality
Surely he means cheese made from milk produced by fermentation as discussed in the article.
← PreviousPage 6 of 34Next →