For the best experience on desktop, install the Chrome extension to track your reading on news.ycombinator.com
Hacker Newsnew | past | comments | ask | show | jobs | submit | history | vbezhenar's commentsregister

Can you provide some examples of these beautiful abstractions or tools?

Memory garbage collection, borrow checker, compile-time static typing in dynamic languages (Typescript, Python).

Language specific for JavaScript: Strict comparison operator === that disables type coercion, together with banning ==.

== allows "5" equals 5.


Take message queues. ZMQ and the like have basically solved message passing which was a ghastly thing to worry about for many years.

Read The Linux Programming Interface book

The most obvious approach seems to implement device blocks as S3 objects and use any existing file system on top of it.

S3 is notoriously miserable with small objects.

You can't just walk in and out carrying 12kg bars. Also I don't think you can just buy a bar of tungsten, you gotta smelt it, coat with gold, not trivial. That kind of operation would involve a lot of cooperating people. You also need to convert gold to dollars which might not be as trivial as you think.

So maybe that happens, but it's a lot more complicated. And, of course, there are measures against that happening.


Russia's frozen assets probably were considered safe by the similar calculations. Everything is safe until it is not.

The gas supply from Russia was announced as secure* until it was not.

* mainly by Russia and people on their payroll that is.


I don't understand what point you are making.

HTML is valid markdown. So I'm not sure how you make oppose markdown and XML. XML is basically a subset of markdown.

    <b>This</b> <i>is</i> *valid*
    <ul>
    <li>*Mark*</li>
    <li>_down_</li>
    </ul>
Markdown basically adds a whole layer of complexity upon HTML.

If you're writing things like that in Markdown files (without being escaped in code blocks as HTML syntax examples), you're doing it wrong.

Not wrong, perhaps a little weird. HTML is a first class citizen in the commonmark (spec)[https://spec.commonmark.org/0.31.2/#html-blocks].

"Wrong" does not necessarily mean "against the standard". It means "against common usage and good team practice" in this context.

It's "allowed" to use raw pointers, malloc, and any number of things in C++ code. In general, if you do any of them in a modern codebase you're doing it wrong.


Yes, it's obviously "against common usage" given HTML support exists specifically for less common features that Markdown does not support. Like tables, which are supported by some implementations but not all, and iirc not even all Markdown variants that support tables use the same syntax for them. The only way to be 100% sure is to use HTML. Of course you wouldn't do that if you just have the file on Github, but in general HTML is supported in Markdown for a reason.

But it is a bad reason that goes against the reasons for the creation of Markdown.

Mac apps often do various things on your computer. Just because you dragged it to Bin, doesn't mean there are no leftovers on your computer. I'd prefer proper uninstaller any day.

> Mac apps often do various things on your computer. Just because you dragged it to Bin, doesn't mean there are no leftovers on your computer. I'd prefer proper uninstaller any day.

I think I know what you're talking about. There are likely files inside the ~/Library/Application Support/ or ~/Library/Caches/ folders for example.

What is the proper, Apple way to make sure these get deleted when we delete apps? Because I fear there is no universal solution here. There are some files that an app creates that some of the time I would probably want to persist uninstalls. But then these files should be in a user home directory, not in application support according to XDG, right? I feel like the OS should detect dragging of an app to the trash can and clean up its app support folders? I don't think it does this today but I think it should.


It wouldn't be hard to display "remove configuration and cache files?" modal during uninstall/trashing process. But it would be hard to go against own simplicity of platform usage idea - that's the problem.

KDE's Discover after you uninstall a flatpak application shows small infobar (still really easy to miss) saying "appname is not installed but it still has data present." with "Delete settings and user data" button.

But then, all sort of software even on Windows leaves some kind of traces of own presence.

In a perfect world we'd have a standardized application uninstall procedure - either by dropping icon on trash (which is something still many people do - especially on Windows) or by bringing similar to mobile solution with "x" on longer click. All of this controllable by options for advanced users including optional configuration and cache files removal.


Mobile apps handle app data better. They have their own well defined jail to work with. Simple to locate “stuff”

Same applies to Windows or UNIX based packages, other than systems like iDevices, Android or UWP, where applications are sandboxed.

However people around here hate sandboxing on their OSes.


This problem has been around for decades. An application installer doesn't just copy some files to a few directories. It may put them in hundreds of different places. In addition, it adds entries to the registry or other system files. Even the best uninstallers or cleaners miss something when deleting the app.

This is one of the many issues my side project is designed to address. Imagine if installing every application meant just dropping it on the computer. The software 'package' was just a list of data objects the comprised all the files, config settings, etc. Needed to run the app. All these objects would be copied to the storage drive(s).

Imagine further, that the operating system did not have a central registry. Instead, all configuration was managed via a set of configuration objects, spread all over (preferably in the app folders). The configuration manager was just a program that could find every configuration object and make them appear to the user (and the OS) like they were in a unified file.

If a configuration object was copied anywhere in the system, it looked like its contents were just appended to the configuration store. If you deleted an object, all its settings just disappeared.

Uninstalling an application would mean just deleting all the objects in its package. The files would be gone and any configuration settings with them.

This is just one of the features my 'file system replacement' project is designed to handle.


> Uninstalling an application would mean just deleting all the objects in its package. The files would be gone and any configuration settings with them.

Applications developers of the world. Please always make "keep configuration" an option with your uninstallers! I don't like the mobilification of PCs. For example, because of some issues, I wanted to try a different version of Thunderbird. I had the Snap version. Uninstalling it meant losing all its mails. I wasn't expecting that. Like at all!


I think it's a snap "feature".

The is actually what Windows App Sandboxing does for Win32, the registry is virtualised and all writes kept track from, however this needs to be explicitly enabled, e.g. using msix packages, or the application management tool.

https://learn.microsoft.com/en-us/windows/win32/secauthz/app...


Are you under the impression that Windows uninstallers don't leave files and registry settings behind?

They certainly can clean everything after them. And I'm pretty sure that many of them do. When macOS user drags application folder to the Bin, application does not have a chance to clean after itself.

Just because some Windows uninstaller are bad doesn't mean that all of them are bad, or that uninstaller concept is bad.

Now I'd welcome for operating system to be built in a way to let user to delete everything related to the application. Maybe android or ios are built this way, but not macos.


> And I'm pretty sure that many of them do.

My AppData disagrees with you.


apt purge software on Debian does a pretty good job of that, but it's got limited adoption.

I use this

https://github.com/Klocman/Bulk-Crap-Uninstaller

The nice thing about Windows is that people have been writing software for it for decades. A very underestimated advantage.


> The nice thing about Windows is that people have been writing software for it for decades. A very underestimated advantage.

AppZapper has been doing the same thing on Macs for decades.

https://www.wikipedia.org/wiki/AppZapper


Sorry an advantage over what? What desktop operating system in common use _hasn't_ had decades of development of pet projects on obvious problems like system cleanup? Literally every operating system has these kinds of things

The Macintosh came first, technically.

Yeah. But mac is still and I mean BY FAR the cleanest of all operating system when you got to uninstall stuffs.

Windows is as bad as Linux, leftovers everywhere without any sense whatsoever. Some company use a directory, other use another, makes no sense.

On Linux, at least there is some kind of uniformity but since all apps install with sudo permissions, they get put everywhere and you never really know where.

On macos, you got 2 folders to look for, all in the user directory (app, application support) and that's it.


If you are aware of this not hard to manage. Grep. rm -rf. Done. Usually its pretty tiny folders at least. Heavier stuff usually software makes a directory under Documents. Kinda nice in a few cases having it set up like this. For example I can delete the app but preserve my config. Drop the app right back again and no setup its turnkey and works.

How do you know that you need to remove:

    /usr/local/bin/xxx symlinks
    /etc/hosts modifications
    /Library/PrivilegedHelperTools/com.docker.vmnetd
after you moved your Docker folder to Bin.

That's only system files, there are also dozens of other files in $HOME.

I guess you can do `find / -name 'docker'` and `grep -iR docker /` but that's a bit ridiculous.


You can check these things out periodically. Probably a good exercise to understand parts of the OS if any of it seems unfamiliar. At least they are there, standardized locations where these sorts of tools might leave these sorts of crumbs behind. There are reasons why things go where they do. Seems byzantine until you write your own tooling and realize a lot of it is convenience functionality.

grep for what? How am I supposed to know that the Foo app installed stuff under ~/Libraries/Application Support/com.bar.corporation?

Sorry you'd use Find not grep and you'd search for "Foo" or "corporation".

But if you know to do this you know that these things are stored where they are under Libraries.


Sorry for being nitpicky about the exact tool, my broader point is that "Foo" or "corporation" isn't always obvious and is sometimes someone/thing you've never heard of before and would never think to search off the top of your head.

But like where would it be found? People are saying gotchas to me but they are saying things like host files or other directories where one might find services stored on macos. These aren't in some cryptic areas is what I am saying. If you are familiar enough with the OS to understand the concept of launchd and background services you know about these directories and what they might contain. These things are where you kinda ought to put these sorts of services if you are to write that sort of service for macos.

And really, this is better than what I've seen in linux where everyone wants to be cute with their own hidden directory paradigms.


Me, too.

There is Mac Cleaner https://freemacsoft.net/appcleaner/ which does a good job of removing preferences as well as the application.


I use AppCleaner: https://freemacsoft.net/appcleaner/

Raycast has a built-in uninstaller as well.


Pear cleaner is the successor, you’re welcome :)

https://github.com/alienator88/Pearcleaner


What's new with Pearcleaner? I don't see a comparison chart in the GitHub repo, and I don't care for features other than completely uninstalling an app.

AppCleaner still works fine for me in Sequoia.


Haiku package system has an unparalleled installstion, deletion, boot into previous states, data integrity (read only packages) and dealing with conflicting library policy. Its a technical crime that other systems are not copying Haiku packages … they’re several decades behind. IOS is half way there …

I got bigger problems.

I don't think "know COBOL" is enough. I'm pretty sure I can learn COBOL in a week. It's more about "know COBOL and know all this old stuff like CLIs, etc, and know all these old approaches".

What I think today people do:

1. They run complicated infrastructure software, written by third-party developers.

2. And they run their own simple programs on top of them.

So for example you can rent Kubernetes cluster from AWS and run simple HTTP server. If your server crashes, Kubernetes will restart it, so it's resilient. There will be records in some metrics which will light up some alerts and eventually people will know about it and will fix it.

Another example: your simple program does some REST GET query. This query failed for some reason. But that query was intercepted by middleware proxy and that proxy determines that HTTP response was 5xx, so it can retry it. So it retries it few times with properly calibrated duration and eventually gets a response and propagates it back to the simple program. Simple program had no idea about all the stuff happening to make it work, it just threw HTTP query and got a response.

There's a lot of complicated machinery to enable simple programs to be part of resilient architecture. That's a goal, anyway.


Worth noting, of course, that Kubernetes traces its lineage to Google. It is the virtual mainframe that Google built on top of commodity clusters.

No, it is not. Russia was attacked by Ukraine multiple times and nukes are still not used. India, Pakistan and China are in various stages of conflicts with each other for decades and all of them are nuke-enabled super-powers.

There are three points of having nukes:

1. Deter other countries with nukes from using them against you, or your military ally.

2. Prevent total annihilation in the war. You can lose the war, but not too much.

3. Burn the world to ashes. Very few countries can do it. It effectively forces the whole world to make sure that this scenario does not happen. So you can be sure that scenario where Ukraine conquers Russia and completely destroys it - will be prevented by the very Ukraine supporters. They don't want to live in the nuclear post-apocalypse, because there are scenarios where Russia fires every single nuclear missile on every major city on the Earth. As Putin framed it: We will go to heaven as martyrs, and they will simply drop dead.

America lost several wars, recently they lost Afghanistan war and right now they're losing Iran war. They won't invoke nukes to overturn the table, they'll accept the lose.


> They won't invoke nukes to overturn the table

How do you know? Trump's frustration is on the rise; at some point he very well may threaten nuclear strikes.

Another scenario is, he tries to invade, an Iranian drone makes it through and sinks a big US ship, hundreds or even thousands of American soldiers die in a very short period of time. Now everyone's upset and the American public screams "revenge".

Then anything can happen, really.


> How do you know? Trump's frustration is on the rise; at some point he very well may threaten nuclear strikes.

Whole world will boycott USA if they use nukes.


Will they?

US can squeeze Europe/Japan as much as they want.

Just disable Microsoft/Google/AWS/Apple crap for them and they will be on their knees.

Although, I will give larger chances of Israel using nukes than then US.


> Just disable Microsoft/Google/AWS/Apple crap for them and they will be on their knees.

The dumb thing is that there are people in the US that actually believe this. Apparently including you. It would destroy the US as a trading partner and cause overnight implosion of the USD. If you thought brexit was an own goal this would be on another level entirely. But please, shout it around some more and prove the point that I've been making to every company that I've been involved with in the last decade: have a plan in case your cloud stuff isn't available anymore.


First, the US has recently done a lot of dumb shit and own goals. One never knows where is the boundary, especially if things escalate gradually.

Second, the spinelessness of 'the west' also seems unbounded (the failure to condemn Venezuela action, Iran war, or Israel's behaviour). Even after the Greenland fiasco. Carney's words at Davos seem very hollow, when one sees his reaction to Iran war. So, it might not even come to full stop of IT infrastructure, just 'a gentle warning'.

Third, the US has no problems screwing its partners, with those obediently bowing down; that is not a new phenomenon. Read on 1971 Connaly's statement "The dollar is our currency, but your problem."


Ah hahahaha. Yeah... No. Contrary to popular belief, the 2-300 year old upstart that is the United States doesn't have a magical lynchpin it can pull to get the other longstanding nations of the world to acquiesce entirely. If the U.S. really pushes things, it will soon find itself on the shit list of everyone else on whom we rely for implementing key links in the supply chain. I honestly do not understand where the gung ho America ooh rah comes from anymore these days. People, we sold out our industrial base. We sold out how to make things. We sold out everything that wasn't nailed down chasing cheaper payroll to undercut the American worker. This country is not as on it's own two feet as we like to believe. One need only look at the supply chain disruptions of the last decade to understand that.

So much goodwill. Just up in smoke. Smfh.


Well said.

Perhaps I should have formulated my post more precisely.

1) So much goodwill gone up in smoke. Yes.

a) Will the US stop wasting its goodwill? Well, that would be a new thing, so no. b) Will it exploit the dependence on its IT infrastructure muscle? Who knows? It exploited the dependence on it financial infrastructure, despite obvious long term consequences on trust in this financial infrastructure. c) Will it come to truly turning off IT infrastructure? Probably not, the threat of that is sufficient, plus see 2).

2) My main beef is not with the US (I am not from US), its with Europe, for its spinelessness and inability to break its US dependence.


> 2) My main beef is not with the US (I am not from US), its with Europe, for its spinelessness and inability to break its US dependence.

Silicon Valley has an 'unfair advantage' in terms of capital available and the talent pool (though the latter is changing). This means that if you're going to roll something out you have a very good shot at cleaning up the EU market besides your home market because you will have the ability to massively undercut any EU competitors to the point that it would have to be an existential risk (after all your other EU competitors can do the same) to not do business with the US tech giants.

That's not spinelessness, that's sheer survival in a world where the table is massively tilted.

Breaking US dependence means breaking SV dependence and that's not even something the other states in the US have been able to do (Seattle got a head start and still didn't manage).

The same goes for the rest of the world...

Now, as to whether or not the EU could do better: so far, not really, because the main reason the EU does what it does is because it is a strong subscriber to free market principles, both within and without (and for better or for worse). The US has now burned a number of bridges which for most people in the EU (present company apparently excluded) were beyond the pale not that long ago.

So the tide is finally shifting: doing business with the US for critical services is now seen as a massive liability. This opens the door to local competition but that local competition still has to deal with various realities: environmental laws, anti-competitive legislation (which is stronger than in the USA) and a fractured linguistic environment as well as a lack of available capital. Those are - each by themselves - massive challenges that will need to be overcome.

I'm too old to take the lead in any of this - assuming I even could - so I'm happy to stand back to see what is going to happen and to help people see what is to their advantage and what is not. But I'm going to reserve judgment because I think that if you want to solve a problem you're going to have to work with people rather than to blame them for any of the ruts they're in.


Well, yes, all is more obvious in hindsight.

The tilted table facing the Silicon Valley: Yes, definitively. The US is screaming murder regarding the others (China...) subsidizing their industries to gain monopoly advantage. That is exactly what US (via Venture Capital) is doing regarding the SV startups -- the whole model there is burning cash to scale quickly to market dominance.

If China and Russia have been able to (at least somehow) insulate themselves from US IT dominance, so should had Europe, at least for the most critical things. Hiding behind 'free market' ideology when the other (stronger!) side is not playing by the same rules is sheer stupidity.

Yeah, yeah, nobody could have foreseen the level US would abuse its power... if you wholeheartedly believed the spiel about the common values and interests. In reality, the US has always been very transactional and aggressive. Its just that with Trump the mask has come off.


So, here you are with your successful EU startup. This time you'll do things right. So you go and raise some EU VC in order to be able to fight off the SV competition. And miracle: it works, you are successful. You consolidate your EU presence and get to the point where even the SV competitors can no longer compete.

So they buy out your investors and fire you.


Critical infrastructure is not for sale to potentially hostile foreigners.

Oh nice, tell me what legal basis you will use to stop a takeover bid. Have a look at NXP and a whole raft of other absolutely critical companies whose shares eventually wound up in the hands of countries hostile to Europe.

We have a whole department in the EU that would like nothing better than to be able to stop these kind of things from happening but time and again the business world finds a way around it. That's one of the main issues with the EU: we play by the rules even if the rest of the world does not. But that's a very expensive principle to let go and I for one am happy that so far they have not, even if you think it is 'spineless' it actually is the opposite.


Not all rules are created equal.

You are fool to play by the rules designed by the others to prey on you.

US/China/Russia would not let their critical infrastructure get in the hands of potential adversary.

If EU does, that just means it has resigned to the role of vassal. In such case it is fair to call them spineless.


passes him a german beer, silently nods

This applies to incumbents (well maybe until it does not). Smaller countries facing destruction of their regime might actually use the nukes. Probably do the test first along with the warning

> they're losing Iran war.

What criteria are you using for this assessment?


> What criteria are you using for this assessment?

We lost the moment we started because we went on a whim and without a cohesive strategy. This was a stupid stupid thing to do, and the longer it goes on the more obvious it becomes that this administration has no idea what it is doing.


Pool's closed.

If we look at the stated goals (as inconsistent as they have been):

Unconditional surrender -> nope Regime change via popular uprising -> nope Destruction or removal of enriched uranium -> nope Destruction of drones and ballistic missile capability -> nope

Final goal of getting back to the pre-war state (which is admitting loss in itself):

Reopen in the straight of Hormuz -> nope

So no objectives have been achieved, and although you could argue they will be in the future, this seems increasingly unlikely in the short timeline the Trump admin has given themselves. It any of them were possible at all, which seems doubtful.


America has lost every war in the recent past.

Has anyone “won” a war in the recent past? In the old fashioned sense that they conquered something and used the newly acquired resources to make their own citizens lives better?

The problem with the post ww2 world is that the old definition of winning a war no longer holds. You just don’t see wars of conquest very often and they don’t seem to work when they happen.

The closest I can think to winning off hand is a few of the colonial civil wars. Vietnam for instance won in the sense that they outlasted the US and have a nominally communist government but it is not an outpost of the Soviet Union and it’s a major trading and tourist partner of the US.

Iraq is not led by a belligerent to the US dictator and Afghanistan isn’t home to training camps for terrorists dedicated to attacking the US (yet).

These were all extremely stupid, expensive and inhumane military actions. But the US never went into them to hold territory. So “there until we got tired of it” is as close to winning as it was ever going to be.


Yes, winning a war means achieving your political objectives. For example Iran wins this war even if they maintain the status quo. And they are on track to get even more, like obtaining ownership over the strait.

Then by the stated aims going in the US “won” both wars in Iraq.

Some of them. These were the stated objectives as per general Tommy Franks:

* Depose's Saddam government

Accomplished.

* Identify, isolate, and eliminate Iraqi WMDs

Failed. They were never there.

* Find, capture, and drive out terrorists from Iraq

Failed. Iraqi-based terrorism increased in the aftermath.

* Collect intelligence related to terrorist networks, and to "the global network" of WMDs

Failed. North Korea tested its first nuclear weapon in 2006, years after the invasion. The US accuses Iran of trying for them to this day. Chemical weapons were used by ISIS.

* End sanctions

Accomplished.

* Deliver humanitarian support to the Iraqi people, including the displaced

Failed. There were more displaced people due to the war than before and a higher need for humanitarian support which took years to complete.

* Secure Iraq's oil fields and resources, "which belong to the Iraqi people"

Accomplished. Somewhat, US and UK based companies, plus China, now runs a lot of their oil fields. Iraqi GDP per capita is one of the lowest in the region.

* Help the Iraqi people "create conditions for a transition to a representative self-government"

Arguable. Parts of the country want to secede and have armed groups. Representation and turnout is not amazing, but I guess not even in Western countries it is.


> Secure Iraq's oil fields and resources, "which belong to the Iraqi people"

The cynical read of this statement (extract resources from the invaded countries in order to enrich the American capital class) is the primary aim for all these conflicts.


That's not cynical. Trump has done the world a great benefit by transparently saying out loud what was hidden US policy for decades.

The notion of owning or monetizing an international waterway is fundamentally incompatible with customary international law. Iran can try it anyway if they're not worried about international law, but that was always an option for them, war or not. The timing of performing this extortion now seems to be mainly about scoring war propaganda points.

Panama Canal and Suez Canal require tolls, granted not exactly the same thing.

The Panama and Suez Canals charge fees because they are artificial passageways, created by the blood and sweat of thousands. Both were huge investments.

The Panama Canal had cost 400-500 million USD and 25-30k lives to construct, when it opened in 1914.

The Suez Canal cost around 100 million USD and 100-120k lives to build in 1869.

Charging for transit through man-made infrastructure is fundamentally different from charging for passage through a natural international waterway.


> fundamentally incompatible with customary international law

So is bombing countries on a whim.

If you want to take the high ground you have to make sure you don't first poison it with your own stupid mistakes. Iran can make a pretty credible play for reparations, and if the belligerents are unable or unwilling to pay up then Iran can selectively blockade the strait for their vessels and cargo. It is one of those little details that was 100% predictable going into this.


Not exactly "on a whim" after Israel has been attacked by at least a hundred thousand Iranian rockets and drones.

Yes, and before you know it we're at the Balfour declaration. But none of that matters in the context of the situation on the ground (and, crucially, in the water) today which was entirely predictable (except by Trump, Hegseth & co). You either plan for that eventuality or you don't start the war.

Note that we're talking about the US and Iran, not about Israel, though obviously they are a massive factor here it is the US that is in the hot seat, both Israel and Iran were doing what they've been doing for many years.


Why would we look back to the Balfour declaration? Israel has been attacked by tens of thousands of Iranian rockets and drones just since Oct 7.

After all their aggression, it seems absurd to paint the Iranian regime as a victim that was attacked "on a whim" and is owed reparations.


I can't find sources for "tens of thousands of rockets just since oct 7", can you help me? I see a few thousand as parts of exchanges after the Israel-initiated "12 Days War", and then a few thousand more after the (also Israel-initiated) current conflagration. Notably, the rocket attacks stopped during peace talks that US and Israel entered after starting the wars, only to resume after those peace talks were betrayed with bombing.

Not sure what the best data source is, but one data point is that just in the month or so since Oct 7, the number of rocket/drone attacks against Israel was already around 9,500: https://www.reuters.com/world/middle-east/hamas-fires-rocket...

The above claim was that Iran had attacked with thousands of rockets. These are from Hamas.

The 9,500 figure was for all fronts, not just Gaza. But true, it does include some Hamas rockets, most of which are not exactly "Iranian" (although Iran helped with training and smuggling some parts).

Another data point - https://www.reuters.com/world/middle-east/one-year-war-israe...

> Since the start of the war, 13,200 rockets were fired into Israel from Gaza. Another 12,400 were fired from Lebanon, while 60 came from Syria, 180 from Yemen and 400 from Iran, the military said.

So 12,400 rockets fired at Israel by Hezbollah, the vast majority of which are supplied by Iran at no cost. That's just in one year and doesn't include drones.


> except by Trump, Hegseth & co

Do not underestimate the current administration. They have other reasons for this conflict, and so does Netanyahu.


US doesn't have the cards as Trump likes to say. "International Law" is the last word coming out of mouth of Americans I want to hear. US kidnapped Venezuela's leader. It is currently blockading Cuba. It blockaded Venezuela recently. Where was the so-called "International Law" back then? Losers can't be choosers. US lost the Iran war strategically. Now pay the piper. There is no second option. Welcome to the "Might Makes Right" world that US opted in for.

Azerbaijan invaded Nagorno-Karabakh in 2023 and now all their enemies are gone (disarmed and Armenians expelled) which presumably makes their citizens better off once they move into the empty territory.

Yeah and I suppose Sri Lanka won against the Timor rebellion.

So I shouldn’t say it never happens.


And the left didn’t make a peep about 100K+ people being ethnically cleansed from their historical homeland. Contrast with Palestine.

Two things to note there. One, many did make a peep; I have friends, coworkers who both ardently discussed and even pointlessly protested in small groups with signs.

The other - I don't pay taxes to the Azeris, every moment of my productive life doesn't support the genocide there, and my soul is in some way not as blackened by the atrocities there. I think people care about Palestine because they rightly feel complicity. Maybe Russian citizens - whose labor indirectly goes to supporting Azeri atrocities - are up in arms?


Well, given that the Azeris are armed by Israel, there might be some indirect US complicity…

The Gulf War was a decisive victory, if you consider that recent.

It hasn’t. There hasn’t been a war in centuries where America didn’t obliterate its opponent. It loses politically because its people don’t want war, but it’s defeated militarily everyone it’s engaged with.

If you can not win a war because your population is unwilling to bear the cost, then you are still unable to win (that is in fact a very typical way for a war to end).

Nobody is disputing the fact that the US spends more money on arms than anyone else and has the shiniest of toys as a result, but "winning" in war is about effecting the outcomes that you want, not about whether your weapon systems are superior.

The US military has clearly failed to deliver the outcome that Americans wanted in many recent conflicts (Vietnam, Taliban); counting those wars as "lost" makes a lot of sense.


One of the reasons to do a war is to simply show the enemy that you are able and crazy enough to go to war with them over whatever grievances you had. This is called strategic deterrence.

You are making the folly of thinking of war like lawsuits, where one side wins and the other side loses, and the losing side goes home with nothing. This is not so.

If you're walking home from work and some person tries to mug you, even if they are unsuccessful, that will permanently change your behavior as if they had successfully robbed you anyway. Maybe you'll change your route. Maybe you won't walk and drive instead.


You can both "win" or both "lose" if your goals are not in direct conflict (rare).

I'd argue that the most important thing when trying to win wars is to aim for realistic outcomes.

The first gulf war was arguably a win because of realistic goals (get Iraq out of Kuwait and stop them from invading it again), while most other interventions in the region were basically "designed to fail", and unsurprisingly never achieved anything of note (and the problem was not lack of military capability).


Yes but if you spend some billions of dollars to replace the Taliban with the Taliban, you have only demonstrated that you are willing to make your own citizens suffer with diminished resources for no outcome.

>If you're walking home from work and some person tries to mug you, even if they are unsuccessful, that will permanently change your behavior as if they had successfully robbed you anyway. Maybe you'll change your route. Maybe you won't walk and drive instead.

In global politics, this tends to make you want to increase your defenses so it doesn't happen again, and find local partners for that defense. This usually comes at the cost of US influence, not its increase.

Like Iran is looking at its current situation and going "The literal only deterrence we could have to prevent this is to develop a nuclear capability. The US cannot be trusted to deal with, and it is pointless to try."

A nuclear Iran can now only be avoided by scorched earth. Scorched earth will now just cause an already partly US hating population to hate them more and create matyrs. Theres no possible upside to this conflict.


With Afghanistan, I think people fixate on the fact that the Taliban is still there and while that's true, Al Qaeda has completely been wiped out (except fringe groups that have adopted the name) and OBL, the person most responsible for 9/11, was successfully killed by an attack launched out of Afghanistan. The current Taliban and whatever terrorist groups remain in that region no longer have an interest in hurting the US directly. The current Taliban is also very different from the one in 2001, almost geopolitically flipped in some ways (allied with India instead of Pakistan, and almost certainly responsible for majorly disrupting China's OBOR project in that region, another win for the US.

Not to mention, 20 years of no Taliban. An entire generation of Afghans grew up without being under a Taliban government.


“A Kourier has to establish space on the pavement. Predictable law-abiding behavior lulls drivers. They mentally assign you to a little box in the lane, assume you will stay there, can't handle it when you leave that little box.” - Snow Crash

Is it strategic deterrence, or just being so unreliably and inconsistent that insider information becomes more valuable?

Is it strategic to demonstrate a lack of planning or that you are a poor ally incapable of garnering support (either domestically or abroad)?


The term of art for losing politically is “losing”.


War is fought to achieve political objectives. If those objectives are not achieved then it is only fair to say you lost the war.


> It exposes all your frontend source code for everyone

I hope it's a common knowledge that _any_ client side JavaScript is exposed to everyone. Perhaps minimized, but still easily reverse-engineerable.


Very easily these days, even if minified is difficult for me to reverse engineer... Claude has a very easy time of finding exactly what to patch to fix something

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

Search:

HN For You