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

Optimism is under-appreciated. To make the world better requires some optimism that it is possible.

More damage to science in the United States.

This is true, because Trump caters to them. It isn't clear that their numbers drove this -- I think rather it is a function of their willingness to be completely loyal to him, which is what he craves.

Let’s not Trumpwash history. There are critiques of Bill Gates philanthropy which have no link to anything Trump or his supporters have ever said.

It's a noble goal.

But the track record of the rich does not inspire confidence that this is the route our society should take in reclaiming these assets.


Coming from python (or Common Lisp, or...), I wasn't too impressed. In Python I normally make args for any function with more than a couple be keyword arguments, which guarantees that you are aware of how the arguments are being mapped to inputs.

Even Rust's types aren't going to help you if two arguments simply have the same types.


Just create dummy wrappers to make a type level distinction. A Height and a a Width can be two separate types even if they’re only floats basically.

Or another (dummy) example transfer(accountA, accountB). Make two types that wrap the same type but one being a TargetAccount and the other SourceAccount.

Use the type system to help you, don’t fight it.


Do you really want width and height or do you actually want dimensions or size? Same with transfer, maybe you wanted a transaction that gets executed. Worst case here use a builder with explicit function names.

I don’t really understand your point there.

Sound type systems are equivalent to proof systems.

You can use them to design data structures where their mere eventual existence guarantee the coherence and validity of your program’s state.

The basic example is “Fin n” that carries at compile time the proof that you made the necessary bounds checks at runtime or by construction that you never exceeded some bound.

Some languages allow you to build entire type level state machines! (eg. to represent these transactions and transitions)


My point is a Width type is usually not the sound type you are looking for. What probably wanted was a size type which is width and height. Or a dimensions type which is width and height. The problem was maybe not two arguments being confused but in reality a single thing with two elements…

Ah I see, it’s a solution too!

Terry Jones' documentary of medieval times made the point that the nobility was pretty similar to an organized crime family. Of course, he wasn't aiming at scholarly accuracy but trying to give viewers the flavor.

It is not an incorrect comparison, superficially it is hard to tell the difference between organized crime and the legitimate government, they both provide the same "services", protection for a portion of the profits.

There is a sort of equivalency in a corporation and a government, I would even say a corporation is a government, it is the ruling apparatus for a group of people. Organized crime is a corporation that is trying to operate outside the law of it's parent operation.

I like to joke that the reason the government is so hard on organized crime is that they don't like the competition.

But really organized crime should be suppressed because it is a brutal warlord style government.


I think it might depend on the business. In some places, open source is the "safe pick" (particularly if you aren't selling software and are not worried about things like the GPL). In others, licensing concerns are huge.

Strangely (I was a math major as an undergrad), I never doubted this. It just feels more like writing.

They'd think it because otherwise the prices would be too high and it would be difficult to sell the goods. If iphones go to $3000, the market for iphones will get much thinner.

That doesn't explain the ratio. If a highly efficient and automated China is employing (say) 1e6 people to supply US demand, it's implausible that anyone (including the US) would be able to spot a way to fire 90% of the factory workers when rebuilding the production line at same capacity anywhere else (including the US).

Of course, I simplify. But despite the wage difference, China's no longer the place you go to substitute expensive machines for cheap humans.

The wage difference between the USA and China also means that for any given product, there's a minimum tariff below which it still makes more sense to import and pay the tariff rather than to pay local workers. To paint a very broad brushstroke, if I naïvely compare GDP/capita, that's about 558% — from https://en.wikipedia.org/wiki/List_of_countries_by_GDP_(nomi... I get US 90,105 and China 13,688; then 90,105/13,688 = 6.58…, less 1 because tariff of 0% means the importer pays 100% of the money to the exporter.


To be clear I was suggesting that the number of jobs gained in the USA would not be 1-1 with the number of jobs currently in a given hypothetical factory. I.e. the Chinese factory loses 100 jobs, a corresponding American factory is unlikely in my view to gain 100 jobs, and instead the number may be much lower.

I guess it's possible if China is that good at efficient manufacturing that the number of jobs in the United States would increase relative to the job loss of the same factory in China, but I wouldn't view that as a bad thing. Higher employment and more wage pressure for regular workers, and companies will have to invest in better technology and processes to alleviate that wage pressure.


I see no evidence that we will be aligned this time. A large portion of the population will be angry and blame Trump and the Republicans who supported this.

Personally I see it as a win-win. Tough on China, people get mad about their trinkets being more expensive, and then they kick the traitorous fools out of office and we go back to more sensible Democratic foreign policy and tough on China stances.

Consider applying for YC's Summer 2025 batch! Applications are open till May 13

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

Search: