I don't know if it's intentional, isn't this the ultimate form of liberalism? To give the individual full autonomy, unshackled from the dependencies of family, neighbors, community, and any other local associations individuals are "born in". Seems like we are exactly where we've been aiming at for a couple hundred years.
Yeah, liberalism preaches selfishness under the false guise of pseudo-individualism. Everyone today is special, unique individual, but ironically, at the same time, almost identical to the next special, unique individual, with their identity constructed by fervent consumption of the same mass produced goods and images.
Final product of liberalism is Nietzsche's Last Man.
yes, because he forgot about the car. The reason we don’t befriend our neighbors is because as soon as we leave our home, we put ourselves in a metal cage, ensuring no one will talk to us if we don’t want them to.
Befriending your neighbors kind of works in a city but only REALLY works in Amish communities.
> they're not strictly necessary. We know this because humans can drive without a LIDAR
and propellers on a plane are not strictly necessary because birds can fly without them? The history of machines show that while nature can sometimes inspire the _what_ of the machine, it is a very bad source of inspiration for the _how_.
What caused textile machines to replace the manual labor wasn’t the quality of their output, it was quantity. In fact, manually made clothing was of higher quality than what was machine-produced.
Safety critical (will kill someone if not bug free) code makes up <1% of what's shipped, safety clothes which must be of high quality else risk harm to someone make up a similarly small percent
Both will stay manual / require high level of review they're not what's being disrupted (at-least in near term) - it's the rest.
This is a distinction without a difference. Even if you take a rudimentary raw cloth comparison like cotton vs heavy wool (the latter being fire resistant and used historically used by firemen, ie. “Safety critical”), the machines’ output quality was significantly lower than manual output for the latter.
This phenomenon is a general one… chainsaws vs hand saws, bread slicers vs hand slicing, mechanical harvesters vs manual harvesting, etc.
That’s just not the general case at all. Automated or “powered” processes generally lead to a more consistent final product. In many cases the quality is just better than what can be done by hand.
Have plenty of people, quite literally worth less than most material goods (evident from current social positions and continued trajectories) so why would companies care if it makes more money overall? Our lives have a value and in general its insultingly low.
The machines we’re talking about made raw cloth not clothing and it was actually higher quality in many respects because of accuracy and repeatability.
Almost all clothing is still made by hand one piece at a time with sewing machines still very manually operated.
“ …by the mid‑19th century machine‑woven cloth still could not equal the quality of hand‑woven Indian cloth. However, the high productivity of British textile manufacturing allowed coarser grades of British cloth to undersell hand‑spun and woven fabric in low‑wage India” [0]
“…the output of power looms was certainly greater than that of the handlooms, but the handloom weavers produced higher quality cloths with greater profit margins.” [1]
The same can be said about machines like the water frame. It was great at spinning coarse thread, but for high quality/luxury textile (ie. fine fabric), skilled (human) spinners did a much better job. You can read the book Blood in the Machine for even more context.
The problem with those quotes is the lack of definition of “quality”. Machine woven cloth in many ways is better because of consistency and uniformity.
If your goal is to make 1000 of the exact same dress, having a completely consistent raw material is synonymous with high quality.
It’s not fair to say that machines produced some kind of inferior imitation of the handmade product, that only won through sheer speed and cost to manufacture.
The environmental problem is enough for us to pump the brakes. By the end of this year, AI systems will be responsible for half of global data center power demand… 23 gigawatts. For what? A more useful search engine, a better autocomplete, and a shit code generator. Is it worth it? Are we even asking that question? When does it become not worth it? Who’s even running the calculus? The free market certainly isn’t.
I interpreted his post as saying it's not binary safe/unsafe, but rather a spectrum, with Java safer than C because of particular features that have pros and cons, not because of a magic free safe/unsafe switch. He's advocating for more nuance, not less.
Yeah, it's not binary; it's just a step function. /s
No, it's as close to binary as you can get. Is your only source of Undefined Behavior FFI specially marked functions and/or packages? Have you checked data races for violating thread safety invariants? If yes - You're safe.
Is Go in mostly safer than C++? Maybe. But you can never prove that about either of them. So while you may pretend one is safer than the other, it's a bit like picking which boat is taking on more water.
Can you prove Rust code is safe? Well there is the simple way - no unsafe. But what about unsafe blocks? Yes, you can prove it for them as well. If the unsafe code block is it will note safety invariants and why are they preserved by unsafe block. Can this be practically done? Depends on the crate, but with enough effort, yes.
Can you show RCE using this? Because, to this day, no one has been able to show me a reasonable program that someone would write and that would result in RCE from "Go memory unsafety" presented in this article. Meanwhile, I can show you thousands of examples and CVEs of how you can easily get RCE using C++.
> Can you prove Rust code is safe? Well there is the simple way - no unsafe. But what about unsafe blocks? Yes, you can prove it for them as well. If the unsafe code block is it will note safety invariants and why are they preserved by unsafe block. Can this be practically done? Depends on the crate, but with enough effort, yes.
You can’t prove Rust code "safe" in the absolute. Safety guarantees apply to safe Rust under the language’s (still evolving) rules, and even then the compiler/backend must uphold them. We still hit unsoundness[1] and miscompiles in safe code (equal pointers comparing unequal... [2]), and the official unsafe code guidelines are not a finalized spec. So documenting invariants in unsafe helps a lot, but it’s not a formal proof, especially across crates and compiler versions.
Neither are memory safe, so if you're going by the "safe in practice" definition then it has to be verified experimentally. Hence - maybe.
> Can you show RCE using this?
RCE and Undefined Behavior are two intersecting sets. Not all UB is RCE, but what all UBs are hard to track bugs that happen at most inconvenient times.
> You can’t prove Rust code "safe" in the absolute.
Sure you can't prove that any Turing machine has some property X or not. But Rust Belt (pdf https://hal.science/hal-01633165v2/document) is proof that safety of safe blocks is extensible and can apply to safe interfaces encapsulating unsafe well.
> We still hit unsoundness[1] and miscompiles in safe code (equal pointers comparing unequal... [2])
Your [1] is an LLVM bug.
As for [2] yeah there ARE bugs, wrong flags, bus they are fixing it and triggering most requires stuff like nightly, hitting bugs in specific hardware/LLVM, or very contrived trait constructions.
I mean sure by that token nothing is ever safe, reality is crooked, coins have three sides, and white is black, so traffic crossing are mass hallucinations.
> On the safety spectrum: C/C++ -> Zig -> Go -> Rust
Honestly it goes like this.
C -> C++ --> Zig ------> Go --------------------------------------------------------------------------> Rust --> Ada Core
> Neither are memory safe, so if you're going by the "safe in practice" definition then it has to be verified experimentally. Hence - maybe.
This is a ridiculous claim that it’s only "maybe". It’s so obvious, it’s like saying cars are not safe to drive, but if you use seatbelts and have airbags, then MAYBE they’re safer. I have verified this experimentally, like millions of other people. This argument is totally in bad faith, given the sea of CVEs caused by memory safety issues in C++ versus the almost virtually non-existent problem in safe Go in practice.
> Your [1] is an LLVM bug.
Yes, unfixed for two years. I don’t have this bug in Go, for example, so why, as a Rust user, should I care whose fault it is? If you buy a car and the engine doesn’t work as it should in some cases, do you accept the manufacturer saying, "Well, that’s the engine manufacturer’s issue, so all is OK"?
> As for [2] yeah there ARE bugs, wrong flags, bus they are fixing it and triggering most requires stuff like nightly, hitting bugs in specific hardware/LLVM, or very contrived trait constructions.
That went fast from "proven to be safe" to "yeah there are bugs".
> Honestly it goes like this. C -> C++ --> Zig ------> Go --------------------------------------------------------------------------> Rust --> Ada Core
And how did you arrive at these numbers of "—"? Did you "verify them experimentally"? Because I claim otherwise:
C --> C++ ----> Zig --------------> Go ----> Rust --> Ada Core
can you prove me wrong or prove you are right? You can't.
It seems we can only agree on the ranking of the languages.
> This is a ridiculous claim that it’s only "maybe". It’s so obvious.
Given enough effort, you can banish all UB and their related CVEs from a codebase. So it becomes a contest of which library had more scrutiny. I.e. you can compare a battle-tested library like cURL to stuff like baby's first XML parser. Plus, seeing how something is safe in practice is much different than just being memory safe.
> That went fast from "proven to be safe" to "yeah there are bugs".
Modulo compiler/hardware bugs goes without saying. Nothing really can exist in vacuum. You could prove your program is proven to work correctly, but if you put it on a platform where carry can randomly flip, and your perfect proof falls flat.
> Yes, unfixed for two years. I don’t have this bug in Go, for example, so why, as a Rust user, should I care whose fault it is?
Because it will be eventually fixed, unlike Go's design (that said they could change their tune and fix it, and I'll respectfully correct my statements). Then again, it's not like it is in scope for Rust. It's a bug in LLVM.
Plus, `unsound` bugs get extra scrutiny. Hell they had to write a new trait solver, Polonius, to solve problems some traits presented to the safety system.
> And how did you arrive at these numbers of "—"?
How many UBs do you leave open? How many errors other errors can your program prevent (e.g. do you allow `null`/`nil`)? And was this an error extremely obvious at time of writing (billion dollar mistake)?
> Given enough effort, you can banish all UB and their related CVEs from a codebase.
Sure. With infinite energy, anything’s possible - we can prevent all bugs. The problem is, we don’t have infinite energy.
> So it becomes a contest of which library had more scrutiny. I.e. you can compare a battle-tested library like cURL to stuff like baby's first XML parser.
I agree that software varies in quality, and that different people and teams can produce very different levels of quality. The issue is that we’re talking about languages used by many different people with varying capabilities and levels of scrutiny.
What really annoys me is that my phone can get hit with an RCE just from someone sending me a message. That’s exactly the kind of vulnerability that happens because languages like C or C++ are so easy to misuse, due to their complexity and lack of safety. You just can’t compare that to Go or Rust, they’re in a completely different galaxy.
> How many UBs do you leave open? How many errors other errors can your program prevent (e.g. do you allow `null`/`nil`)? And was this an error extremely obvious at time of writing (billion dollar mistake)?
Everything is a trade off. I find Go to be a middle ground where I can offload much of the memory management complexity to the garbage collector, yet still have control over the aspects I care about, with acceptable performance for multi-threaded networking code.
I make extensive use of atomics and mutexes and I don’t need "fearless concurrency," because I can only recall one serious concurrency bug I’ve ever had (a data race) which took some debugging time to track down, but it wasn’t in Go. YMMV.
As for the “billion dollar mistake”, I understand the argument in the context of C or C++, but not in the context of Go. Once every few months, I get a nil pointer dereference notification from the monitoring stack. The middle network layer will report the error to the user, I fix it, and move on, a $0 mistake.
I used Rust in many other projects, where I would never use C++ or C. Rust has a higher cognitive load, more language complexity, and refactoring is painful but it’s a trade off.
Under Go’s memory model, there’s really only one form of undefined behavior: a program with a data race has no defined semantics. That’s pretty much it. Compare that to C or C++, it’s like I said, a different galaxy. I find the whole discussion around Go’s safety exaggerated, and more theoretical than what actually comes up in practice.
> Sure. With infinite energy, anything’s possible - we can prevent all bugs. The problem is, we don’t have infinite energy.
You don't need infinite energy but it is a significant undertaking. The UB seem to obey a power law in regards to their lifetime i.e. every X years number of UB caused problems halves.
> I can only recall one serious concurrency bug I’ve ever had (a data race) which took some debugging time to track down, but it wasn’t in Go. YMMV.
That's what is nasty about UB in data races. It's not trivial to find and it's a pain in the neck to reproduce. So even taking you at your word, you not having issues with data races isn't the same as "I wrote code free of data races".
> As for the “billion dollar mistake”, I understand the argument in the context of C or C++, but not in the context of Go.
Even without a chance of UB. You're adding an implicit `Type | null` to every piece that uses nullable code without handling the null case. Each time you forget to do it, you cause either an UB or a null pointer error. And the place it manifests is different from where it's generated.
Furthermore, listening to Tony Hoare's talk (https://youtu.be/ybrQvs4x0Ps?t=1682), he mentions that trying to avoid the null, in the context of a language like Java or C#, that permits them is also causing people to waste time working around them.
> The middle network layer will report the error to the user, I fix it, and move on, a $0 mistake.
Sure, but that's not a $0 mistake. It's {time to fix * hourly rate}. Even if you're doing for OSS, you could have been spending that time doing something else.
> Everything is a trade off.
Sure. But trading "ease of use" for "preventing errors" is not something I want in any language I use. Null/nil are about as good concepts today as silently skipping errors.
> Even without a chance of UB. You're adding an implicit `Type | null` to every piece that uses nullable code without handling the null case. Each time you forget to do it, you cause either an UB or a null pointer error. And the place it manifests is different from where it's generated.
> Furthermore, listening to Tony Hoare's talk (https://youtu.be/ybrQvs4x0Ps?t=1682), he mentions that trying to avoid the null, in the context of a language like Java or C#, that permits them is also causing people to waste time working around them.
It's an insignificant amount of time in my experience, which makes this irrelevant in practice. I’ve never had to "work around them", this is either a theoretical argument or just sloppy programming.
> Sure, but that's not a $0 mistake. It's {time to fix * hourly rate}. Even if you're doing for OSS, you could have been spending that time doing something else.
Oh, come on, you’re smart enough to understand that a few minutes every few months may not be exactly $0, but it’s such an insignificant value that it can be treated as $0.
> Sure. But trading "ease of use" for "preventing errors" is not something I want in any language I use.
Well, you can choose your trade offs, and you can let others choose theirs. So I guess you use Ada for everything? or maybe you use Coq to prove everything? Of course you don’t, you’re also making trade offs, just different ones.
> Null/nil are about as good concepts today as silently skipping errors.
You exaggerate again. I do not agree with that framing, and I back my opinion with experience from practice.
> Oh, come on, you’re smart enough to understand that a few minutes every few months may not be exactly $0, but it’s such an insignificant value that it can be treated as $0.
You're smart enough to know that just because you sum small things, you can aggregate them over many people and a long time (circa 50 years) to get to massive numbers.
> Well, you can choose your trade offs, and you can let others choose theirs. So I guess you use Ada for everything? or maybe you use Coq to prove everything? Of course you don’t, you’re also making trade offs, just different ones.
Ada doesn't give you full memory safety. I think you need Ada.Spark. I can't find as much teaching material on it, but definitely on my radar. Also, I'm more of a Lean guy myself, but it has a different purpose than Rust. I.e. proving things.
The U.S. already manufactures warships, though, and we’re already by far the best at it. Not only do we already protect our economy, we protect pretty much all shipping on the high seas by all economies on the globe.
The John F Kennedy—built in the U.S.!—is in sea trials this year to become the 12th nuclear aircraft carrier in the U.S. fleet. No other nation has more than two carriers. The U.S. has more aircraft carriers operating as museums than other nations have in military service.
What about subs? Again, the U.S. has more than anyone else and Australia just cancelled a deal with France in order to buy subs built in the U.S. We build the best in the world.
I belabor this to make a point: a lot of what people think we need to do… we already have. Our nation and our economy is already the most secure on Earth. We are already the best in the world at making weapons. That never got outsourced, so we don’t need to dramatically reconfigure our economy to bring it back.
> The U.S. already manufactures warships, though, and we’re already by far the best at it.
We very slowly build a small number of incredibly expensive ships. For any other value of "manufacturers warships", Korea or Italy are better and more reliable.
Also, it's not clear if aircraft carriers are survivable in a vaguely peer context. Missiles and drones have come a long way.
> Australia just cancelled a deal with France in order to buy subs built in the U.S. We build the best in the world
We won't be sending them because we can't build them because our defense shipbuilding industry is moribund, and there is no civilian shipbuilding industry to do double duty.
But theoretically speaking, the time when a strong manufacturing industry is needed is if you get into a lengthy WW2 style conflict, where both sides burn through their stockpiles of tanks/shells/missiles/whatever.
Then whoever can deliver tanks to the battlefield fastest has the numerical advantage. In 1942 the allies had retooled their car/locomotive/tractor manufacturing plants to make tanks and they were literally producing 9x as many tanks as the axis powers. Which is obviously a very good thing, militarily.
So there is historical precedent for the idea that a strong domestic car/locomotive/tractor industry being very helpful in wartime.
Of course, the question you've got to ask is: Will we ever see another WW2 style conflict? Because in a nuclear conflict there's no time to retool and manufacturing plants, and in lower-intensity conflicts like Vietnam/Iraq/Afghanistan there was no desire to.
> we already protect our economy…aircraft carriers…subs…weapons
Except when the threat to your economy and security isn’t something against which those weapons will ever be effective. Even the USS John F. Kennedy, as wonderful as I’m sure it is, won’t fix the giant foot gun that is presently threatening your economy and security.
> we just need to become a lot more productive than we are now.
To nitpick about terminology:
productivity = output / input
The US would (and maybe will) become less productive; the US is not as efficient at producing many things as non-U.S. competitors, including ship-building. The US is more productive at other things, such as software. (And in 2025, you certainly would trade ship-building productivity for software productivity. Including in warfare.)
If we insist on building ships in the US, we spend more money on the same ships, and - unavoidably - we must shift more productive resources to these less productive tasks. If your neighbor is a great carpenter and you are a great farmer, wouldn't it be smart to trade your vegetables for carpentry, instead of you trying to do carpentry and the carpenter trying to grow vegetables? If you are a Linux maintainer end and the business down the hall back end, do you try to do back end and they try to design OSes? Why?
(Of course, you probably trade your skills indirectly through the wonderful fungibility of money.)
>the gist is: When you can manufacture ships, you can also manufacture warships.
Not really. Most of the complexity and value and technology lies in the difference between a civilian ship and a warship. Guns, radars, missiles, gas turbines - all that much more complex and involved tech than just a metal bathtub with a diesel that a regular civilian ship is. Nuclear aircraft carrier has even less common with a civilian ship. Submarine - pretty much nothing in common.
>or: If all you sell are financial services, and a pandemic hits and you need to protect your people, where will you find masks?
Well, we know that emergency stockpile wasn't maintained as a money saving measure. When you sell finservices you actually have more money to maintain stockpile than when you're manufacturing masks. Yet if you're choosing to not maintain the stockpile ...
>the gist is: When you can manufacture ships, you can also manufacture warships. When you can manufacture warships, you can protect your economy.
The counter to this thinking is that if you intertwine your economic wellbeing with your "enemy" to the point that neither side wants to sever the relationship, you won't need to build many warships. Reversing course back towards isolation in order to give yourself the option to build warships increases the odds that you will end up having to build those warships because you have now made it easier for both countries to go to war.
In 2020 during the largest public health crisis in a century, non-woven respiratory masks were found to be an effective intervention. The country that manufactured 90% of the world's respiratory masks took care of itself first and foremost at the expense of all other countries. You can't blame them for doing so, but you can avoid this scenario repeating itself in the future.
The US had manufacturers of melt blown masks, but instead of giving those manufacturers long guarantees to build up capacity they decided to just wait for China to build up instead.
> The country that manufactured 90% of the world's respiratory masks took care of itself first and foremost at the expense of all other countries. You can't blame them for doing so
Yes you can. People have a moral obligation to help others, including when they have to sacrifice, and they do it all the time. People make sacrifices all the time for the greater good.
In fact, many of the extreme self-interest capitalist crowd argues that others should make sacrifices for the greater good of 'the economy' (i.e., for the good of the extreme capitalist). Musk has argued that people need to sacrifice so the economy will be better in some unspecified future.
The new commonplace phrase that 'you can't blame them' is an embarassment. I don't blame you for using it because it's so common, but it's like a core, fundamental belief that humans should not and cannot care anything about anyone else, (or often, anyone but their family). Obviously false and entire, widespread moral beliefs are built on the opposite.
Fair enough. During the pandemic there was an acute shortage of medical supplies and there were really not enough to go around for everyone. It would be a tough sell to convince the person who is actually making these supplies to put the needs to an arbitrary person above the needs of their immediate community. I didn't really enjoy having to be the one to go without on that round, but I would have been pretty angry in a hypothetical situation where my neighbor has needed medical supplies and refuses to provide them to the local fire department because he is trying to sell them to a foreign country for the greatest possible profit. In any case I don't really hold much personal animosity to the people and organizations who made these decisions during the pandemic. I do however want to make sure that we can avoid repeating that the next time around.
> trying to sell them to a foreign country for the greatest possible profit
First, to clear things up, I don't at all mean doing it to maximize profit. Notice that we expect a great degree of selflessness here - they should not be maximizing profit during the pandemic. We require it - we put them in jail otherwise.
It's all hands on deck.
> It would be a tough sell
There are definitely challenges here; I agree about that.
I think what sells to most people is to appeal to fairness. Democracy's foundation is fairness - rights to all, all get a vote. Fairness actually sells very well everywhere, despite the modern authoritarian's false critique. Law of the jungle is highly undesireable to most people; they like having civilization and rights.
But not universally; some will fight it. You need leaders and neighbors standing up for what's right. Also, enlightened self-interest can be convincing - help those in need, and you'll get help when you are in need.
You also need a way to determine what is fair; good leaders build consensus and navigate the politics - that is their job definition. Probably you put supplies where they do the most good. Start with hospitals and nursing homes, where contagion and vulnerable patients combine for the greatest risk. Then other vulnerable people (e.g., elderly or ill in private homes), then the first healthy recipients being front line workers like firefighters.
I think most healthy people would happily give up their medical supplies for those who need them more. There are always some malcontents, but we can't hold up society and progress for them.
> convince the person who is actually making these supplies to put the needs to an arbitrary person above the needs of their immediate community
Manufacturers provide them outside their employees, and health care professionals help strangers all the time. If we asked someone in downtown SF to provide them to someone across the Bay, would that be too far? To LA? NY? Rural Georgia? What about from Seattle to Vancouver? Belgium to the Netherlands? To Germany? To Turkey? To Japan?
My probably obvious point is, ''community' and 'us' are amorphous, changing concepts. Of course people in LA and Toronto and anywhere deserve the medical supplies as much as people next door.
No country has any moral obligation to help any other country. It is anarchy between nations. Every government does have an obligation to its own people. If China didn't take care of their own needs before other nation's they wouldn't be a very successful government.
The only logical way forward is to ensure that your own nation is taking care of its own needs before helping others.
I have always found it interesting that if everybody focused on improving their own conditions first then helped others locally the world would be objectively better for everybody. The better you make the lives of those around you the more you can expand the reach of your goodness.
> No country has any moral obligation to help any other country. It is anarchy between nations.
You just made that up. First, what defines morality? Second, by what morality are you not obligated to help others? That is amorality, greed, evil. And empirically, countries have long felt, talked explicitly about, and acted on, sometimes at great cost, the moral need to help other countries. Leaders have long made that argument to their fellow citizens (or subjects).
The parent claim is a transparent fiction of nationalists. You can do better!
> I have always found it interesting that if everybody focused on improving their own conditions first then helped others locally the world would be objectively better for everybody.
An even more obvious fabrication with not even an attempt basis. As is often the case with this stuff, the only 'basis' is saying it like it's a fact.
Everybody is selfish, including you and I, including the people you believe are selfless.
A functioning society cannot be built around people being selfless.
But a functioning society can be built around selfishness - free markets - and irony of ironies, free markets also do a great job of helping the less fortunate, a much better job than the selfless attempts.
(In the news a couple days ago, the CEO of an NGO charity funded by the government had awarded herself a $750,000 salary.)
"A society that puts equality before freedom will get neither. A society that puts freedom before equality will get a high degree of both." - Milton Friedman
Everyone is both selfish and selfless, to different degrees at different times and in different situations, including the people you apparently believe to be completely selfish (you don't really believe that?).
(Obviously a simplistic binary system, but appropriate for HN comments where time and space is limited.)
The religion and worship of selflessness is a cult - who ever followed such an ethos; even what great American? Did Washington? Lincoln? King? Eisenhower? Who before Trump? Who anywhere at any time is admired for it? Any religious figures? Saints? Moses/Jesus/Mohammad? Siddhartha Gautama?
Step back, stop drowinging in Internet ideology, take a even slightly broader view than the immediate tide of ideology - the concept is an absurdity for its simplicity and morality. Wake up sooner, rather than later.
A functioning society can't be built around either extreme, and because no human fits either extreme, it's a pointless debate about science fiction.
Markets are great tools and work with a mix of selfishness and selflessness - markets are destroyed by the too selfish, parasites who, for example, undermine the essential trust, safety, and integrity of the market for their own profit. The tools of selflessness are also great and built a society of freedom, which creates markets, innovation, opportunity, and social stability - universal education, for example; much healthcare is funded that way; many people wouldn't have effective rights without pro bono legal help and advocacy.
They are different tools each relatively better for different problems. Obviously 'free markets' leave a lot to be desired; obviously we can't function solely on selflessness.
> (In the news a couple days ago, the CEO of an NGO charity funded by the government had awarded herself a $750,000 salary.)
C'mon; that is a silly point and you know it (though it actually supports my claim in this comment).
Some do extremely well, many don't do well at all.
> with a mostly free market.
We both know there are massive social programs, and the market is unfree in many ways - powerful participants often make markets very non-free for others, and of course some are highly regulated to the point of distortion.
I actually favor using the free market whenever possible, most importantly because of the first word - people should be free to do as they like in business too, as much as possible - and because it works very well for the great majority of things.
I think we need freer markets - open to all competitors. Extreme capitalism is destroying the free market because capitalists are driving out competition. It's become capitalistism - an economy allocating things for the capitalists, not for capital.
> The counter to this thinking is that if you intertwine your economic wellbeing with your "enemy" to the point that neither side wants to sever the relationship
You mean like how Europe has made themselves completely dependent on Russia for energy? How's that working out?
You've picked one example, but there are many other examples of it working - such as the EU itself. Before the predecessor of the EU was formed, you may recall two massive, Europe-wide wars in half a century.
We had a little event a few years ago that answered your question. You give people money and they make crap. I helped procure like 30M masks. Nature finds a way.
As a society, we’re more productive than we ever have been. We’re not breaking society to create a nation of workshops. This is a cynical power play.
> We’re not breaking society to create a nation of workshops.
That's what Mao tried in the Great Leap Forward: They tried to shift steel production to a cottage industry in back yards. You can imagine the results.
And also relevant: Everyone learned to say whatever Mao wanted to hear, so they all reported high and increasing production. It turns out that disinformation isn't economically productive, even if it feels that way - you can't make cars out of it.
Yes, and the American N95+ mask manufacturers didn't want to risk another boom-bust cycle so when the government wouldn't guarantee them a long term purchase deal, they couldn't ramp up. They had gone through this same scenario during the first SARS scare and almost went bankrupt when everyone went back to buying cheaper imported masks.
Both yes and no. It was a brief lack of available local stock from suddenly unexpected demand, followed by a lack of factories willing to stop doing well paid work to switch to making cheap masks, while we waited for even cheaper masks to get made and imported from countries with cheap labor, followed by a surplus of masks (source: a brief chat with a factory manager in my social network who was considering whether he could at least break even on costs and labor if temporarily switching to making masks)
Even then, there weren't enough melt spinning machines in North America to make the necessary raw materials, and the lead time on new machines was too long to address the shortage in time to respond to the needs of a pandemic.
The USA is already a lot more productive than everyone else. This is because the USA generates an enormous amount of wealth through very few people thanks to its technology and finance industry. Irony is that there's no end to handwringing editorials in Canada about our "productivity gap" between us and the USA and the USA under Trump is wanting to move itself backward and become less productive. Everyone else in the G7 wishes they were as productive as the USA.
The solution to the problem posed here is for the USA to use its incredible wealth deriving from its incredible productivity to buy the warships from Poland etc.
I switched from mechanical engineering to writing software because of the instant gratification of software machines. If you're designing a gearbox, it takes years to see the actual hardware, and you'd better have gotten the design right the first try, as changing the box gets very expensive.
I would have been much happier as an engineer working next to the shop where I could partner with the machinists.