Hacker News new | past | comments | ask | show | jobs | submit | dataflow's comments login

> If you're standing on a planet, you're accelerating under gravity, and therefore don't you see Unruh radiation?

Layman here, but if you're standing, you're not actually accelerating, right? You'd only be accelerating if there was nothing under you holding you up, meaning if you were falling down.


Ah yeah there are multiple definitions of 'acceleration' here. Unruh radiation occurs when you're not 'in an inertial reference frame,' loosely meaning that you feel acceleration. So in a rocket in space or (presumably) standing on Earth's surface.

What you say makes intuitive sense, but it was actually the opposite logic that lead Einstein to his general theory of relativity. Here's a slightly dorky but very good Veritasium video that explains this issue and general relativity https://youtu.be/XRr1kaXKBsU?si=1iudoAx5kWgWHHt-


Ah gotcha! Yeah I'm familiar with Einstein's happiest thought - it just escaped me what was meant by acceleration here for the Unruh effect. Cool!

Also a layman. But as long as your temperature is not absolute zero, particles inside you are moving, and if they have mass, they would indeed radiate gravitationally - until they slow down to a stop, that being absolute zero.

My understanding from pop science videos is that they can indeed evaporate, but only through decay mediated by the weak force.


No, you are in fact accelerating when you are standing on the planet.

Brexit was 52% of voters voting to leave, but that was only 37% of the electorate. [1] It wasn't >50% of the electorate, let alone >50% of the population.

[1] https://fullfact.org/online/brexit-referendum-electorate-lea...


...I'll argue that those that didn't participate in that vote elected to opt out. I.e. Don't cry if you didn't care to participate and then don't get what you wanted.

This is a referendum that changes the fundamental rules of the game, not a pizza order. The onus isn't on the population to waste their time vetoing your bad or mediocre ideas, it's on you to come up with good ideas. And disgusting your constituents enough that they abstain entirely should very much not be a viable strategy. If you want to change the constitution, you gotta convince people that you're doing something good, including those who are hard to convince. That's literally the entire point. If you're not managing that, clearly your change isn't good enough to make.

Anyway, I wasn't even trying to argue in favor of this position, or against it. I was merely replying to the parent comment that Brexit did not meet the threshold that their parent comment had suggested.


People got lazy lately after a long peace time. Saying “it can’t get worse than that” with 5-10% unemployment. Yes this is not good, but it can get way worse than that. Also “my vote doesn’t count, and everyone is bad”. Enemies of democracy have pushed this a lot lately, internet make it trivially cheap and easy to spread. Nations like UK are in the find out phase.

Doesn't this obfuscate what assumptions you can make when trying to understand the core logic? You prefer to examine all the call chains everywhere?

The ”core logic” of a program is what output it yields for a given input.

If you find a bug, you find it because you discover that a given input does not lead to the expected output.

You have to find all those ifs in your code because one of them is wrong (probably in combination with a couple of others).

If you push all your conditionals up as close to the input as possible, your hunt will be shorter, and fixing will be easier.


This is why we invented type systems. No need to examine call chains, just examine input types. The types will not only tell you what assumptions you can make, but the compiler will even tell you if you make an invalid assumption!

You can't shove every single assumption into the type system...

You can and should put as many as you can there

https://lexi-lambda.github.io/blog/2019/11/05/parse-don-t-va...

If instead of validating that someone has sent you a phone number in one spot and then passing along a string, you can as easily have a function construct an UncheckedPhoneNumber. You can choose to only construct VerifiedPhoneNumbers if the user has gone through a code check. Both would allow you to pluck a PhoneNumber out of them for where you need to have generic calling code.

You can use this sort of pattern to encode anything into the type system. Takes a little more upfront typing than all of those being strings, but your program will be sure of what it actually has at every point. It's pretty nice.


Yep! I have seen so much pushed into a type system that in the end there was hardly any code needed to do validation or scaffolding… to the point where it felt magical

You can express a lot of concepts just through types in languages with richer type systems.

Even without a rich type system you can express a lot of things just through naming.

You just can't enforce those assumptions.


You can enforce them (statically) by other means if you’re determined enough, eg by using lint rules which enforce type-like semantics which the type system itself doesn’t express.

This does rely on the language having a sophisticated-enough type system to be able to extract enough type information for the rules to work in the first place.

True, but there are still documented interface contracts you can program against. The compiler won’t catch violations of the non-type parts, but the requirements are still well-defined with a proper interface contract. It is a trade-off, but so is repeating the same case distinction in multiple parts of the program, or having to pass around the context needed to make the case distinction.

You can at least shove them into the constructors.

[flagged]


Leave the dingos alone

  > with admirable tunnel vision, bullheadedness and mission for maximally general algebraic and arbitrary constraint type systems.
I believe they're called keyhole optimizations, greedy search, and "the customer is always right..."

The idea and examples are that the type system takes care of it. The rule of thumb is worded overly generally, it's more just about stuff like null checks if you have non-nullable types available.

No I don't think so because if you make your assumptions early then the same assumptions exist in the entire program and that makes them easy to reason about

If you’ve massaged and normalized the data at entry, then the assumptions at core logic should be well defined — it’s whatever the rules of the normalized output are.

You don’t need to know all of the call chains because you’ve established a “narrow waist” where ideally all things have been made clear, and errors have been handled or scoped. So you only need to know the call chain from entry point to narrow waist, and separately narrow waist till end.


That's a bad idea. It defeats tools (warnings, sanitizers, etc.) that try to tell you you have forgotten to place the semantically correct value in your variables.

If you want indiscriminate initialization, a compiler flag is the way, not forcing it in the source code.


I think you're thinking of incentive not interest. Like how you can have incentives to steal from the supermarket, but still have no interest.

I'm thinking of another definition of "interest". e.g. "have an interest in"

> Goodwill and more people willing to try whatever they release next

When's the last time your (pick your favorite non-technical) relative cared if the product they were trying was open-source?


My point has nothing to do with licensing, but longevity.

What non-technical users know is “Google released a project, I invested my time in it, they abandoned it, and I was left hanging. This has happened multiple times so I no longer want to try anything new they release”.

Had the projects been open-sourced, at least some of them would have been picked up by others and continued so non-technical users would know “Google released a project, I invested my time in it, they abandoned it, then someone continued it and I’m still using it to this day. I’m happy to try this new Google thing, because even if they abandon it I won’t be left in the cold”.


How many comets would you have to crash and how would one redirect and crash them that wouldn't make this exotic-level?

Depending on a size, probably on the order of tens of thousand.

Comets in the Oort cloud take very little energy to put on a collision orbit, the Sun barely holds them gravitationally, orbital speeds in the Oort cloud are measured in _meters_ per second. So they require (relatively) little energy to put them into a required orbit. It might be doable with just regular thermonuclear charges.

It will then take these comets more than a thousand years to "fall" from the Oort cloud.


You'll definitely want to allow theming on your controls, if for no other reason than to let them feel native like the rest of the OS.

I'd also suggest at ATL, to make your life a bit easier without making it much heavier.


> For the ARC, these federal contracts have been lucrative. According to government spending records, the company has received at least $600,000 from federal contracts so far in 2025, and about $700,000 last year.

That's the lucrative amount they're selling everyone's data for?!


Would YouTube not also be affected here? I don't have numbers but it seems to me a huge number of people depend on it as both consumers and producers, and I'm not sure it has any viable alternatives.

My even bigger worry is actually the effects on privacy, security, and people's data. I'm very curious what other companies people would trust more with their data.


Why would it? Youtube sells ads (and premium subscriptions) on its own. It doesn't really need the rest of Google, and can just continue living as a separate company.

> ta. I'm very curious what other companies people would trust more with their data.

The problem is one company with all the data.


> The problem is one company with all the data.

I realize, but the idea that we won't have another giant company succeeding at achieving the same seems like wishful thinking.


Making sure another company doesn't get into the same position is precisely what antitrust laws and enforcement agencies are for.

The only reason why we have the mess we do is because we have made our antitrust toothless starting in 1980s, and it's only gradually coming back now.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: