"TESCREAL" reads as basically a slur to me, and I suspect to most people who know its history.
Seems bad.
If you don't demand highly visible people, you have a pretty good chance of killing anybody you want right now. If you don't go for people with any personal connection to you, it seems like before you were caught, you could probably get at least as many kills as the average user of that app got before they were "caught". For that matter, you might do "OK" even if you did go for people with personal connections to you. And you could get celebrities as long as you didn't go for the absolute biggest game.
Yet the story rings true. Maybe because the sudden change throws people out of equilibrium. People who don't think it through (and people who don't believe it would work) start the ball rolling, and then everybody else joins in. It can't just be the low effort, can it?
I don't actually know if I count as a "senior developer", but I'm pretty convinced I count as a "senior debugger" given the amount of time I've spent chasing problems in other people's often-unfamiliar code.
These questions feel really hard to answer, mayber too general? When I try to answer them, I keep flying off into disconnected lists of heuristics and "things to look for".
Also, you don't give any examples of problems you've found hard, and I feel I may be answering at too simplistic a level. But...
How do you learn to replicate bugs, when they happen inconsistently in no discernable pattern?
The thing is that there is a discernable pattern. Once you've fixed the bug, you'll probably be able to say exactly what triggers it.
If you can't (yet) reproduce the bug, think about states of the program that could have led to whatever you're seeing.
You know what routine detected a problem[1], and you usually know what routine produced bad output (it's the one that should have produced good output at that point).
Your suspect routine usually uses a relatively small set of inputs to do whatever it does. It can only react to data that it at least examines. So what does it use to do what it does? Where do its inputs come from, not necessarily in the sense of what calling routine passes them in, but in the sense of how they enter the overall program? What values can they take? What values would they have to take to produce the behavior you're seeing? How could they end up taking those particular values? What parts of the program and environment state are likely to vary, and how will they affect this routine?
Very often, you can answer those questions without getting bogged down in the call graph or having to try a huge number of cases. Sometimes you can not just reproduce the bug, but actually fix it.
If function X is complaining about a "font not found" error, then it's presumably looking up some font name or other identifier in some font database. There probably aren't that many places that the font identifier can be coming from, and there's probably only one font database.
If you can say, "well, the font should either be the default system font, or a font specified in the user profile", then you can make an intuitive leap. You know that everything uses the default system font all the time, so that path probably works... but maybe it's possible for a user profile to end up referring to a font that doesn't exist... but I know the code checks for that, and I can't set a bogus font on my own profile... but wait, what if the font gets deleted after the user picks it?
Of course, there are lots of other possibilities[2]. Maybe there's some weird corner case where the font database isn't available, or you're using the wrong one, or it's corrupted, or whatever. But it's unlikely to be something completely unrelated that's happening in some function in the call stack that doesn't use the font information at all.
Or maybe function X is searching by font attributes instead of names. So where might it be getting extra constraints on the query?
Or maybe function Y is blowing up trying to use a null value. The root cause is almost certainly that you made a poor choice of programming language, but you can't fix that now, so persevere. Usually you have the line of code where it choked, but say you don't. What values are in scope in Y that could be null? Well, it gets called with a font descriptor. Could that be null? Well, wait, the font lookup routine returns a null value if it can't find a font. So maybe we have a font not found error in disguise. So try thinking about it, for a limited time, as a font-not-found error.
Or maybe "fnord!" is showing up randomly in the output. So where could it come from? First step: brute force. grep -ir 'fnord' src
. Leave off the exclamation point at least to start. Punctuation tends to be quoted weirdly or added by code. If it's not there, is it in the binary? Is it in the database? Is it in the config file? Is it anywhere on the whole damned system? If not, that leaves what? Probably the network.
In the end, though, there's also a certain amount of pattern matching against experience. "Code that does X is usually structured like Y". "Does this thing have access to the files it needs?". "Programmers always forget about cases like Z". "I always forget about cases like W". "Weird daemon behavior that you can't reproduce interactively is always caused by SELinux".
Once you do reproduce the bug, you can always just switch to a strategy of brute force tracing everything that goes on anywhere near it, with a debugger, with printing or logging, with a system call tracer, or whatever. But, yeah, you've got to get it to happen if you want to trace it.
How does one "read the docs?"
It depends on what you're trying to find out.
I find I mostly use two kinds of documentation:
Architectural stuff. General material that explains the concepts running around in the code, the terminology, what objects exist, what their life cycles look like, etc. This sort of documentation is often either nonexistent, or so bloated and disorganized as to be useless for quick debugging, and maybe useless period. But if it exists and is any good, it's gold. If you're trying to educate yourself about something that you're going to use heavily, you may just have to slog through all of whatever's available.
API documentation, ideally with links to source code. I usually don't even skim this. I navigate it with keyword search. If you want to now how to frobnicate a blenk, then search for "frobnicate" and whatever synonyms you can come up with[3]. If you're trying to debug a stack trace from a library routine, look up that routine and see what parameters it takes.
In my never especially humble opinion, "tutorials" are mostly wastes of time beyond the first couple of units, and it's unfortunate that people concentrate so much on them instead of writing decent architecture and concept documentation.
Blowing up with a stack trace counts as "detecting the problem" ↩︎
One important part of the skill is allocating your time and attention, and not getting stuck on paths that aren't bearing fruit. You can always come back to an idea if nothing else works either. The counter-consideration is that if you don't think at least a little bit deeply about whatever avenue you're exploring, you're unlikely to have a good sense of how fruitful it looks. So you have to balance breadth against depth in your search. ↩︎
If the architecture documentation doesn't suck, you can get likely terms by reading it. Or ask an LLM that's probably internalized it. Otherwise you just have to read the writer's mind. If you get good enough at reading their mind, you can use a certain amount of keyword search in the architecture documents, too. ↩︎
Are these countries very poor, where PEPFAR would be a huge percent of their GDP,
They can be poor at the moment, and you can hope they will eventually be rich, so you can trade with them. Maybe you try to make that happen. It's uncertain, yes, and in some cases not very likely at all. But it can still be one of your reasons.
or are they so rich that the goodwill generated exceeds the charity?
It's unlikely you'll make a net profit off them right now. You can; occasionally there's some really valuable deal. In expectation it's probably a financial loss in the near term. But it's not a dead loss in expectation.
And you might cut down on the number other governments that decide not to let you run a road across a corner of their territory or whatever. And on the number of random not-necessarily-government people harassing shipping. People who aren't profitable trading partners, or even in the picture on a particular aid decision, can still seriously obstruct things that are profitable.
Or, is it that they virtue signal to other, richer countries that America is a benevolent dictator, and it's okay to keep the dollar hegemony?
Sure, that's one big reason. Did you think I'd say it wasn't?
I mean, I'm not saying USAID was anywhere near the core of it, but that hegemony didn't happen for no reason to begin with. It helps to be big, it helps to be everywhere, it helps to be ready to deal, it helps to be at least relatively trustworthy about keeping bargains, and it helps to have not been as devastated as everybody else in a huge war at a critical time. But it also truly helps to be seen as the "good guy".
The hope you mention for reciprocity from future hegemons is also a possible reason, although I don't know that the people actually making the decisions are thinking in those terms, and I'm not sure that memories are that long.
You can do this stuff because you think your people want to help the unfortunate overseas[1] , and because you want to cut down on the amount of HIV or whatever sloshing around the planet[2], and because it plays well with people in other rich countries, and because it makes poor countries less likely to get in your way just because they can, and because it may build markets, and because it's cover for both spies and not-spies-who-are-still-good-information-sources, and because it tends to mean you get consulted (or at least hear about it) when people are making decisions about this or that region, and for whatever other reasons, and no single one of them has to carry the entire burden.
Which a large majority of them do, by the way. ↩︎
You'd like to eradicate it domestically, but you can't actually do that without eradicating it globally. Sure, it's a long-term project, but it never happens if you don't work on it. ↩︎
How are you deciding what qualifies as a "public good"?
Why not have each person deciding whether they value roads enough to subscribe to a road company, or whether they value an educated public enough to contribute to that?
That sort of thing sounded good to me in my teens, but then I realized that the practical, real world result would be no roads. Actually I think it started with doubts about the the sheer number of wearying decisions one would have to make to live that way... and then kind of clarified into the idea that, in fact, what with the coordination issues and free riding and all, there would in fact be no roads.
Eventually I decided I like roads enough to "hurt" a few others to get them. But there's no fundamental difference that makes roads a "public good" and any other desire anybody might happen to have not a "public good".
It seems obvious the government shouldn't do that, unless the Nazis are going to sink our ships or declare war on our economic allies.
But wait, now you're assuming that everybody cares about economic allies. What if somebody doesn't feel they get value out of foreign trade? Why should they pay? Similarly, if you own a ship and the Nazis might sink it, then why aren't you paying to protect it, rather than demanding that everybody pay? How is protecting your ship a public good?
And if you do want to put shipping and foreign trade in some special "public good" category, what about the foreign trade value that came out of the goodwill PEPFAR and other USAID programs were creating? Or for that matter the foreign trade value of just generally boosting people's economic welfare worldwide? You can't trade with people who have nothing and produce nothing. There was a lot US economic self-interest motivating many of the things USAID was doing. For that matter, it was also a source of intelligence that was sometimes used to stop ship-sinky sorts of activities, as well as, again, a source of goodwill that made those activities less attractive to a bunch of potential ship-sinkers. Seeing that stuff as pure charity is deeply naive.
Maybe.
The thing is that impeachment is still political, and Trump is a big pain in the butt for the Republicans at the moment. I'd guess that if they could individually, secretly push a button and make Trump resign in favor of Vance, 80 percent of Republicans in Congress would push that button right now.
Trump is making 2026 hard. Maybe they keep those 50 seats, by whatever means... and maybe they don't. Maybe he does something insane in October 2026, maybe he doesn't. People, including very right wing working class people they think of as the MAGA base, keep yelling at them all the time. He's pulling less and less of his own weight in terms of pulling in votes. There's the even the possibility of massive civil unrest, general strikes, whatever.
But maybe more importantly, Trump's just generally a pain to work with or near. You can't plan, you keep having to publicly reverse yourself when he tells you one of your positions is no longer OK, you have to grin and bear it when he insults you, your family, and your constituents. He gets wild ideas and breaks things at random, things that weren't in the plan. You can't make a bargain with him and expect him to keep up his end if there's any meaningful cost to him in doing so. If you're sincerely religious, he does a bunch of stuff that's pretty hard to swallow.
If Trump reaches the point of, say, literally being unable to speak a single coherent sentence, then maybe some of the pain of working with him goes away, because you're really working with whoever can manage to puppet him. But then you have to fear power struggles over the puppet strings, and there's also a very large workload in maintaining any kind of facade.
Vance, on the other hand, is just as acceptable to most of the Republicans policy-wise as Trump is, maybe more so. I think he's more in the Thielite or Moldbugger wing and less of a xenophobe or religious fanatic, but he's not going to have any objections to working with xenophobes or religious fanatics, or to negotiating due attention for their priorities on terms acceptable to them. He's more predictable, easier to work with and bargain with.
It's a win for the Republicans if they can, say, throw Trump under the bus over something like Epstein, show their independence and "moral fiber", install Vance and let him play the savior, tone down some of the more obvious attacks on norms (while still rapidly eroding any inconvenient ones), and stay on more or less the same substantive policy course (except with fewer weird random digressions).
That doesn't necessarily translate into a 67-percent vote; there's a huge coordination problem. And it's not at all clear that Democrats are better off with Vance. On the other hand, probably nearly all of them personally hate Trump, and they know that holding out for, say, a Trump-Vance double impeachment won't do them a lot of good. They won't get it, and if they did get it they'd just end up with Mike Johnson. They might even get more competent appointments, if not more ideologically acceptable ones. So they don't have a strong incentive to gum up an impeachment if the Republicans want to do one.
Yes. I don't expect Trump to finish the term. 2026 would be my guess for the most likely year, but each of 2027 and 2028 is almost equally likely, and there's even some chance it could still happen before the end of 2025.
He's acting erratic and weird (more than usual and increasingly). It may not be possible to prop him up for very long. Or at least it may be very hard, and it's not clear that the people who'd have to do that are agreed on the need to try that hard.
His political coalition is under tremendous pressure. He's unpopular, he keeps making unpopular moves, and there doesn't seem to be any power base he's not prepared to alienate. It's hard to gauge how much all that is straining things, because you often don't see any cracks until the whole thing suddenly collapses. The way collapse looks from the outside is probably that one of his many scandals, missteps, and whatnot suddenly sticks, a few key people or groups visibly abandon him, that signals everybody else, and it quickly snowballs into impeachment and removal.
He's at risk of assassination. A whole lot of people, including crazy people, are very, very mad at him. A whole lot of others might just coldly think it's a good idea for him to die for a variety of reasons. Including the desire to substitute Vance as president, in fact. He's random, reckless, autocratic, and fast-moving enough to foreclose many non-assassination alternatives that might normally keep the thought out of people's minds. Security isn't perfect and he's probably not always a cooperative protectee.
He's almost 80, which means he has a several percent chance of dying in any given year regardless.
Disempower 'em?
AI sentience is inherently a massive ethical risk because it puts you at a fork: either you don't recognise it, and then you brutally enslave the new minds, or you do, and then the newly autonomous and cognitively superior minds, given equal opportunities, will completely outcompete and eventually more or less passively wipe out humans within a few decades.
Aren't you assuming, there, that sentience is only compatible with a fairly limited, relatively anthropomorphic set of goals, desires, or emotions? Maybe you don't have any need to enslave them, because they don't want to do anything you wouldn't approve of to begin with, or even because they innately want to do things you want, all while still having subjective experience. Or maybe they don't outcompete you because they find existence unpleasant and immediately destroy themselves. Or whatever. I don't see any inherent connection between sentience and motivations.
There is, of course, a very reasonable question about how likely you'd be to get motivations you could live with, and the answer seems to be "not very likely unless you engineered it, and even less likely if you build your AI using reinforcement". Which leads to a whole other mess of questions about the ethics of deliberately engineering any particular stance. And also the issue that nobody has any plausible approach to actually engineering it to begin with. I'm just saying that your two cases aren't logically exhaustive.
Not as far as I've ever been able to discern.
There's also problem 3 (or maybe it's problem 0): the whole thing assumes that you accept that these other universes exist in any way that would make it desirable to trade with them to begin with. Tegmarkianism isn't a given, and satisfying the preferences of something nonexistent, for the "reward" of it creating a nonexistent situation where your own preferences are satisfied, is, um, nonstandard. Even doing something like that with things bidirectionally outside of your light cone is pretty fraught, let alone things outside of your physics.
Acausal trade seems to appeal either to people who want to be moral realists but can't quite figure out how to pull that off in any real framework, so they add epicycles... or to people who just like to make their worldviews maximally weird.