Hacker Newsnew | past | comments | ask | show | jobs | submit | cogman10's commentslogin

ICE is rogue* agency. They need to be disbanded. Fine if we still have an agency doing ICE work or whatever, but every single person employed by ICE needs to be fired, potentially prosecuted, definitely black listed from federal government work, and their funds returned for the blatant unconstitutional and dangerous use they've been put towards.

Put them back under the DoJ and have the FBI handle criminals, not ICE. Bring back the INS.

* Misspelled initially


They aren't rogue, they're what you call "kings guard". They're there to protect the President, not serve the country.

They're doing exactly what you expect of such a 'secret police' based on the history of basically all other secret polices.


They are doing exactly what they are being asked to do. There's nothing rogue about what they are doing. They are following orders.

As history has already shown during the Nuremberg Trials, "Following orders" doesn't absolve the individual responsibility of the people under command.

Words have meaning.

Rogue would imply they are doing something at odds with the President’s wishes. The reality is worse.


Pardon powers, OTOH...

The Republican way:

There are those the law protects but does not bind.

And then there's us.

I think we're deep into a post-law environment at this point, though. People who weren't bound by the law will not be protected by it either.


Spying on political enemies and arresting citizens? That's completely outside of their statutory powers.

The whole point is that powers don't matter. Orders do.

If only those who are intended to oversee the proper use of those powers could take offense at this misuse ...

But they aren’t following the constitution or the rule of law, hence rogue.

brother it is the executive branch that isn't following the constitution. if your house is on fire you don't say "oh no! curtains are burning!"

Ice is under the executive branch. They are one and the same thing

The point of bring all this up isn't to expect the trump admin to do anything, it's an expectation of a (hopefully) future democrat admin to change forces and stop framing the ICE problem as a training or lack of body cams issue.

A core principle of a free democratic society is that everyone has obligations to more than the whims of a wannabe fascist dictator. ICE agents who do things like violently assault peaceful citizens are in the wrong, both morally and legally. The fact that the current president wants to destroy the pillars of our society means there won't be immediate consequences for that kind of behavior, but that doesn't make it any less despicable or immunize them against future consequences.

Dude you mean rogue? Or red (rouge means red in French)?

At least you know I'm not using AI for my comments :)

Let's put aside whether or not surveillance is necessary.

The very big problem I have here is that ICE is not the agency that should be doing this sort of surveillance. Their role is immigration control, not leftist or citizen control. If they suspect there's some dangerous criminal problem going on, then that's the role of the FBI to investigate.

The specific reason they are doing this is because ICE doesn't use traditional courts for most of their actions. As such, they are fairly unaccountable.

ICE also isn't even technically criminal law enforcement, they are civil law enforcers. They are supposed to involve local law enforcement or federal law enforcement when going after criminals. Their roles are, instead, to dish out tickets. The fact that they've been militarized is a major problem. CBP is the only agency under the DHS that is supposed to have any sort of military equipment and general detention powers and those are only supposed to be exerted at a border.


Constitutional rights extend everywhere the Constitution covers regardless of immigration status. If ICE is conducting business in opposition to rights conveyed by the Constitution then you have found a far more grave concern to address.

For sure, my point is that there's no way you can slice this as being justifiable. Even if you are pro surveillance and anti-leftist. ICE shouldn't be doing this, it's the job of the FBI.

HSI has long been criminal enforcement within ICE, but I agree that they are the wrong agency to investigate this. They're doing it because they're unquestioningly loyal to Trump and because it's likely the administration has ordered certain outcomes.

I would also argue that there are no potential benefits that would make this sort of surveillance acceptable, let alone necessary.


This is basically it.

Imagine, for example, a case is about someone disclosing the location of nuclear arms to their spouse. Maybe even accidentally. If they are brought up on charges about this, national security doesn't want the fact that a case is about nuclear weapons to be public information. They further don't want it disclosed who was told about them (as the spouse wouldn't be subject to charges). That's basically where a secret interpretation and ruling would ultimately enter. The courts can't disclose what the ruling was nor what the case was even fully about.


Why can't they? They can redact names of individuals in a case like that. "Oh some person who was married to some other person who works for some agency knows where nukes might be". That's not a risk.

They could even redact larger portions of the case and still release the interpretation in some form.


Because it's very hard to stop accidental or incidental information leaks. For an opinion to be rendered, generally they also attach the case facts which lead to that ruling. Heavy redaction means it becomes almost impossible to use that ruling as precedent but also runs a real risk of exposing state secrets. For example, which judge made the ruling? Well if you get that you can start pulling information about the days the judge was active and a short list of the people the judge was hearing cases for.

All it takes is 1 accidental redaction or someone who did something silly like using a black highlighter on a PDF and now where the nukes are stored is public information.

There's also simply information that can be gleaned just based on the location that the hearing is taking place. This came from x court in x district, well then it's likely a nuclear silo is roughly in that county or surrounding counties.


> Because it's very hard to stop accidental or incidental information leaks.

It's really hard if it is in your interest not to stop accidental information leaks, because it is easier to bulk classify everything and blame this difficulty. There is no incentive to stop accidental leaks if you can always hide everything.


These courts don't have public lists of who was being tried.

The specific location of the court, and even identity if the judge, can be redacted. We don't have to use the case as precedent.


I’ll assume that there’s some fake district we can create in the system to attribute such things to, since normally the courts are in districts which may be too specific on their own.

But the resulting material would be like, (XXXX meaning redactions)

XXXX was accused of XXXX

Tried before judge XXXX in XXXX District court

The evidence was XXXX XXXX XXXX

The witnesses were XXXX XXXX XXXX

They were found (not) guilty

If anything could be unredacted it could potentially (?) be the bare fact that it was about nuclear secrets but you can’t really reveal anything else without giving majorly risky facts to bad actors.

The redactions of every document could require many full-time very security-cleared clerks (or take years to do if understaffed) and is of the highest importance since a single failure to redact, or operational error, may reveal the whole secret thing. Mostly, all the things need redacting, so either whole documents, or everything but the prepositions and articles is redacted.

Since it sounds like the concern here is about the public’s interest in monitoring to make sure no abuses are taking place (which is a value I do share), what part of this aim would be served by a redacted report like this?


ok, so put a disclosure time on ruling. how how much time should pass so that information is non risk anymore? So you know that nukes locations got leaked, so what do you do? do you relocate the base? if not how sure can you be that this information is not accuired by enemies? So if you do not realocate the base you accept that this is acceptable risk. So might be that publishing the ruling is also acceptable?

Sounds like if one desperately wants some sort of excuse, this can be shoehorned to anything and everything. Exactly what 3 letter agencies would say to keep doing whatever nasty dirty unlawful and unconstitutional things they are doing on whims of current set of people in power.

Its still pretty lame and shows vast incompetence on all levels. Maybe I am a bit naive but correct solution is to tackle underlying problems, not just give up because thats what you basically suggest.


A federal court tried to conceal the identity of a judge who has been reprimanded.

Claude was able to work out who it was in less than 10min based on stringing together facts that remained and seemed irrelevant. Journalists uncovered the identity independently using different means. (The ability of Claude to do this was not revealed until the other journalists had gone public and confirmed the identity.)


> Imagine, for example, a case is about someone disclosing the location of nuclear arms to their spouse.

The location of most US nuclear weapons are public. Moreover, if you suspect that the location of some you intend to be secret may have been compromised then the obvious sensible response is "move them" rather than "keep even the legal theory of the case a secret forever".

This is why the primary ones whose location is intended to be a secret are on submarines -- submarines are easy to move around.


This example requires a secret ruling but not a secret interpretation of the law.

Rulings are interpretations of the law.

2 parties bring up what they believe is the legal justification for their position in dispute and a judge rules on which is the correct position. If a party thinks the judge got the ruling wrong (interpreted the law wrong), they object and appeal.


If you look at the history of secret interpretations / rulings, they are more like "retention of communications by the government is a pre-interception act". No specifics, very broad legal definitions of what it means for everyone's communications to be retained (and in this case, probably analyzed by AI systems for risk).

Yeah, still illegal, but because they are new they have to work their way up through the courts to be affirmed as illegal once again.

These cameras need to be banned federally. It shouldn't be legal to own or sell access to a network of these pervert cameras.


I think there is a rise of "this is legal because we used a computer to do it." A HN audience will not appreciate this sentiment, but honestly, a company should not provide tools to do this because they should have a filter. They should say "I won't provide tools to break constitutional rights".

Somewhere along the way, tech stopped asking questions like that, and now, people are hostile to the suggestion that the question should be asked.


Like it or not, the other team get to play lawyer too. Flock's argument is almost certainly along the lines of "If we had police officers stationed at all these intersections writing down license plate numbers, no one would bat an eye at it. Why is a camera any different?"

We know why it's different of course: scale. But there was never a general principle about scale and automation articulated in the Constitution because it just wasn't a thing to worry about in the 1700s.

We're left to hope that courts agree that just because something is okay for one police officer in one place to do, that doesn't mean the police department can perform that same task a thousand times in a thousand places with a thousand machines and still have it be okay.


> "If we had police officers stationed at all these intersections writing down license plate numbers, no one would bat an eye at it."

This is literally the definition of a police dragnet.


>We know why it's different of course: scale. But there was never a general principle about scale and automation articulated in the Constitution because it just wasn't a thing to worry about in the 1700s.

If we're doing the whole "the other team get to play lawyer too" thing, your logic can become dangerous when applied to other issues. For example, almost no one had the ability to protect their communication and personal files from warrants when the laws regarding that sort of thing were written and computers have now made that trivial. Would people here treat that as a valid argument against end-to-end encryption?


> For example, almost no one had the ability to protect their communication and personal files from warrants when the laws regarding that sort of thing were written...

Pardon? We know that encryption was used at least as far back as the days of Julius Caesar. [0] Clever kids and adults have almost certainly been making their own ciphers since the invention of written language, and their own conlangs since the invention of verbal language.

I expect that -in the US- one could not be compelled to provide the decryption methods for one's papers and journals to the cops back in the 1700s just like cannot be compelled to provide one's passphrase to decrypt one's encrypted data today. Both are really obviously testimony, which cannot be legally compelled. [1]

[0] <https://en.wikipedia.org/wiki/Caesar_cipher>

[1] ...abuse of contempt of court charges notwithstanding...


Maybe you skipped over the "almost no one" aspect of that section you quoted. I didn’t claim that encryption was historically impossible in the same way the original comment didn't claim that it’s impossible for a cop to just sit around and watch a public road. The original point was about scale and the scale (and strength) of encryption available today was not possible for most people until the advent of computers.

> Maybe you skipped over the "almost no one" aspect of that section you quoted.

Nope! These methods were available to everyone who was literate as well as anyone who either maintained oral traditions describing how to perform them or just decided to make up a language for fun. Maybe you're forgetting that our ancestors were generally just as smart as we are today.

> The original point was about scale and the scale (and strength) of encryption available today was not possible for most people until the advent of computers.

This is completely irrelevant. Why? Cops have access to computers that can brute-force most everyday ciphers that would have been cooked up in the 1700s. The just outcome is for non-cops to have access to those same computers to create and use ciphers that restore the ability to keep one's private communications safe from the eyes of the police back to what it was hundreds of years ago.

This just outcome is -incidentally- what we have today because of a lot of tireless, difficult, thankless, ongoing work by some absolute heroes starting most visibly in the 1990s and continuing through today.

As a bonus, none of this has anything to do with the establishment of dragnet surveillance systems built and operated by private companies that are defacto acting as agents of The State. Dragnet surveillance is -at minimum- plainly antisocial and has no place in any civil society.

EPN3D's point stands despite your complaints: the only reason that the illegality of these dragnet surveillance systems wasn't immediately obvious to the courts is because the US Constitution doesn't explicitly mention that courts must always consider the expanded scale of what enhanced technology makes possible, so courts are very slow to incorporate it into their decision making process. Judges and lawyers rely heavily on tradition, so this slowness is only natural.


You are arguing against no one. The "almost" indicated an admission it was possible. No one was accusing people in the past of being stupid. My point was about the practicality of it. Or to rephrase the same idea, what percentage of human communication do you think was encrypted in the 18th century compared to today?

That's why it works as an analogy to mass surveillance. Surveillance was always possible, but now it is scaled up so a much higher percentage of our activity is surveilled. The commonality is that computers made these two things much easier to do. The purpose of my comment was to show that's not inherently good or bad by showing one example of when that's viewed as good and another when it's viewed as bad.


When the constitution was written correspondance (papers and effects) was physical and you could destroy it. It was not kept for years in a "oh it's deleted but that's just a flag, until we need the space it's still there" on some other party's servers like it is today.

> But there was never a general principle about scale and automation articulated in the Constitution because it just wasn't a thing to worry about in the 1700s.

> We're left to hope that courts agree that just because something is okay for one police officer in one place to do, that doesn't mean the police department can perform that same task a thousand times in a thousand places with a thousand machines and still have it be okay.

There are multiple court cases that have done this exactly this. Carpenter v. United States and Chatrie v. United States are the ones you want.


I'm reminded of Jeff Dean's maxim "Plan for 10x growth, but somewhere along the line to 100x, you are going to need an entirely different architecture, because the bottlenecks shift."

We've had certain areas of technology get 5-6 orders of magnitude more efficient, which shifts the bottlenecks and introduces new possible abuses. Government hasn't caught up. The last time this happened (with the industrial revolution), we had 3 major waves of wars between 1861-1945 that finally refactored the governments of the world into a working state. I'm hoping this time around can be less bloody, but I don't have very high hopes.


We used to call second hand information "circumstantial", and it couldn't be used against you. If the officer sitting in court didn't personally see it, then it didn't happen.

Or did Law and Order lie to us?


Circumstantial evidence is certainly sufficient to convict in most (if not all) US jurisdictions.

Since you mentioned secondhand information, I think you might be thinking of hearsay.


Yes I was absolutely thinking of hearsay, thank you.

There are also several exceptions to the hearsay rule.

… and certain evidence that would otherwise be hearsay is often deemed non-hearsay by rule or statute!

I wasn’t aware CCTV was ever called circumstantial. At which point does the principal end? Are forensics circumstantial because a police officer wasn’t there when the material was deposited?

Maybe this is me being naive?


Being in an area is circumstantial.

Law and Order lied to us. Courts run on circumstantial evidence. A lot of cases turn on it.

For criminal law, prosecutors have to prove beyond reasonable doubt. If they have a gun, search history for "how to kill someone and get away with it", blood in their car, and someone that's been missing for an extended period of time. They can and have gotten convictions based on that. Hans Reiser was convicted under pretty much those circumstances.


Your example evidence set is actually quite robust by US justice system standards. There are countless cases of innocent people getting sentenced to death for e.g. being the one to report the murder, often in the face of strong circumstantial counter evidence.

Law and order lied to you. Circumstantial evidence can be enough for a conviction, provided that all the evidence adds up to enough to prove guilt beyond a reasonable doubt. And it can certainly provide a reasonable suspicion for a traffic stop.

Law and Order absolutely lied to you, in many ways. Video evidence is absolutely evidence. Also, the threshold for a traffic stop is very low. “I thought I saw something on a camera” absolutely meets the limit for a traffic stop.

Law and Order lied in many ways, but calling out evidence for being circumstantial isn’t one of them. “Circumstantial” doesn’t mean it doesn’t count, but it does discount its evidentiary strength.

Not only are you wrong, you are mixing up court evidence and police investigation.

Your fingerprint at a crime scene or DNA on a victim is circumstantial evidence. It is weaker evidence in court than hard evidence, but still valid.

This circumstantial evidence is more than sufficient to search your house or car and find a body (hard evidence).


>We know why it's different of course: scale

I think it's more about abstraction. If someone is standing on the street corner taking down your plate number, you know they're likely up to no good. If there's a camera on the street corner, it may bother me, but the vast majority of people just go "eh".


I would definitely bat an eye at cops acting like human flock cameras. That sounds like an incredible waste of resources.

In the several years it will take to resolve, the one side will get to do what they want and the other will not.

Flock has no power vs the commerce clause. Congress just has to use it.

There was a case exactly like this, and the ruling was literally "just because you could post officers next to the suspects house 24/7 and record their comings and going, doesn't mean that using illegal survailence to record their movement is the same". It has been tried in court and lost.

laws are a tacit agreement between the people and government that is all.

> I think there is a rise of "this is legal because we used a computer to do it."

Arguably, a lot of the modern tech industry is built on this. AirBnB to sidestep hotel regulations. Uber to sidestep taxi regulations. There's a bit of "this is legal because a private company is doing it and not the government", too.


I think tech people often have a very mechanistic interpretation of law (also leading to the common misconception that it would be possible and desirable to encode law as a computer program!) and like Orthodox Jews, a certain kind of people seem to treat law as some sort of puzzle to be solved.

It's not the tech there that sidesteps the regulation, it's the diffusion of responsibility. AirBnB isn't breaking the hotel regulations, the individual hosts are breaking the hotel regulations, and AirBnB is just providing you a platform to find them, several of which are not breaking any regulations. Uber isn't sidestepping taxi regulations, the individual drivers are sidestepping taxi regulations, and not all places have taxi regulations so Uber as a company has substantial non-lawbreaking uses.

They're taking advantage of the same misfeature of our justice system that is being discussed here, notably that it's all based on individual personal responsibility and scales very poorly to lawbreaking at scale or cases where the negative outcome had many people responsible for it.

Corporate execs use this frequently to legitimize atrocious conduct. Have a pesky law (like the Freedom of Information Act requests that were discussed here yesterday) that you want to ensure is not complied with? Create a team whose job is compliance, but underfund them by a factor of 100, so that there is no possible way they can catch and address all of their legal obligations. The exec created a relevant team and delegated responsibility, so they're in the clear. The individual workers are falling down on the job and not responding to requests fast enough, but they're also falling down on the job and doing the best they can, so at worst they should get a bad performance review and no raise, they can't be held criminally liable. The people trying to get the law enforced are just outta luck, because it's another unfunded mandate and they don't hold the budget strings.

Or consider the case of cheating on emissions standards. No executive will tell their engineers "You should cheat on these" - that would be a crime, right? But instead, they might take the 20 or so employees that have the biggest disrespect for rules. And then they give each of them a small team and a budget, and have the teams compete to create the best engine on a variety of metrics that are important to customers, but notably not the emissions standards, because it goes without saying that everyone is going to follow the law, right? Then inevitably one of those teams will win and there's a good chance that it's one that cheated on emissions, but of course the exec had no knowledge of that and the team lead in question has been fired.


Many in tech would say that, and sure we'd be better off if even more did, but on some level it doesn't matter. In a sufficiently large country you'll always find someone willing to Be Evil, especially if they're paid well. We can't rely on every single capable company deciding not to take a given government contract, this sort of thing has to be solved via the political and legal system

But the more dominant the "legal because computer, and how dare you ask me?" attitude is, the less we'll see enforcement. People should demand action, rather than call it a clever business plan.

Folks who were on here praising Uber or Airbnb for skirting the law 10 years ago, this was part of the problem.


Honestly, I would argue Uber advocates had a valid point. Taxi medallion laws were created to artificially screw with the market by limiting supply of taxi cabs to far below a reasonable number that would’ve been on the road otherwise. This was 100% to the benefit of the taxicab industry and came at the expense of people who wanted to ride in cabs.

I do have some sympathy for the cab drivers who used to be able to earn a better living, but the only reason that was possible is that city government gave them a sweetheart deal, which isn’t fair. It makes exactly as much sense as having barber medallions or pharmacist medallions. If they had those, it might cost $85 for a basic haircut, and pharmacist and barber medallion owners might make a ton of money (remember, you can rent out medallions, so they became investment vehicles), but those are prices we’d all be paying for.

Regulations that just pick winners and losers, making most of us the losers, are stupid - and should be loopholed-around if it’s possible.


>Taxi medallion laws were created to artificially screw with the market

My area had no taxi medallion laws or system.

That's part of the problem. The excuses were always bullshit made up from generalizations of local problems. Uber wasn't needed to "Bust the taxi monopoly" because in most places there was no taxi monopoly, at least, not until Uber showed up and made one.

The excuse was never meant to be actually valid though. It was always just a simple "gotcha" that could be employed as a thought terminating cliche by people who had already made up their mind on which outcome they wanted.


This is a valid point, but doesn’t it seem like it is tremendously easier to get a ride somewhere in some random suburban area or even a semi-rural area? New York or San Francisco had plenty of people who would’ve been willing to drive cabs who couldn’t afford a medallion[1] but it seems like in less urban areas what was lacking was just the exact product Uber provides: a dispatching system that connects people who need rides with people who are willing to drive, without requiring those drivers to paint their cars yellow and incorporate their own formal business. It lowered barriers on both sides of their marketplace, especially on the driver side, since it was no risk to become a driver - if you never got any rides, you hadn’t really invested anything.

Anyway, isn’t that a good thing for those areas? I think a lot of people just didn’t have any convenient way to get around besides walking or waiting an hour for a very infrequent bus.

[1] (I was going to say “couldn’t get a medallion,” but since they were rentable and thus served as investment vehicles, it’s really just a matter of not being willing to pay the price those things commanded on the market)


> A HN audience will not appreciate this sentiment

I don't really agree. I think HN is particularly hostile to the likes of Flock cameras and other surveillance companies like Palantir.

But it's undeniable that spying on people along with other war/defense spending is very lucrative as governments love intel. All it takes is to be an amoral fonder to pitch to the amoral investors. It's a particularly easy pitch as well "We'll charge governments a lot of money and they'll happily pay because they love spying on their citizens".


The people that run HN are so hostile they launched the bloody thing:

https://www.ycombinator.com/companies/flock-safety


Commenters on HN are not the same thing as companies launched through ycombinator.

Where do you think those founders come from?

One of the application questions for YC used to be (maybe still is) 'What is your HN username?'


That is the point. Run HN and run YC are the same. HN and YC are different.

You are conflating separate things, considering that (for very good reasons) it is go-to-jail illegal for at least US intelligence agencies to collect on US persons, i.e. citizens, green card holders, and a few others. And please don't waste my time trying to gin up counterexamples when I'm explaining the law, not whether it's ever been broken.

There are also loads of caveats about whether or not intelligence information can be used in prosecutions of US persons, again for very good reasons. The idea that the NSA or CIA is magically spying on all of America is a tinfoil-hatted myth.

"War/defense spending" != "law enforcement spending" and if you conflate these, you're either being ignorant or deliberately disingenuous.


> I think there is a rise of "this is legal because we used a computer to do it.

This has literally been defining the modern age since the 2000's or earlier. Basically every law that ever existed about targeting ads towards children has been WILDLY ignored (to everyone's profit) because of it.


There are a million more examples of that

Look at all the anti CSAM laws... "hey, we'll scan all the mail you get and send, and well check all your photo frames in your houses, just in case you have pedo stuff there".

Or the different chat control laws... "well put a mic on you and listen to every conversation, just in case you talk about something illegal".

Then you have the people defending this with "ok, that might be bad, but metadata is just metadata"... sure, every time you go to a bar, we'll record when you came inside, who you sat with, and record how much you talked with each person there.


Our economy is based on "its legal for a computer to do it", so long as the ones controlling the computers are in the same class and sufficiently subservient to the power structures that selectively enforce laws.

> Somewhere along the way, tech stopped asking questions like that, and now, people are hostile to the suggestion that the question should be asked.

People never stopped asking this sort of thing, and you can find some people who are hostile to anything. 'Twas ever thus. Constructing a cherry-picked, wistful narrative is not very helpful.


This battle was lost under Bush

> A computer can never be held accountable

> Therefore a computer must never make a management decision


Are we on about Flock or other public cameras? Because I would rather not ban regular everyday people doing nothing wrong from streaming certain areas if that's their purview, or in general, citizens being unable to record in public would be bad.

It's kind of crazy how we went from nobody really had cameras in their homes unless they were wealthy, to now people have cameras as their doorbell, and all over their homes.


> clearly stated scope

The scope of a JIT is the entire python runtime. Not at the beginning, it can be more narrow, but certainly it can evolve to cover everything. JITs touch everything.

> success criteria

Impossible to measure. JITs don't universally make things faster and unless the SC was willing to accept "some programs will see around x% improvement" then it would be impossible to actually give them the criteria they want. There's a reason C++ compilers and their optimizations aren't defined by the ISO committee.

> support plan

Like most JITs, support for a JIT is an ongoing and ever evolving process. What's needed depends entirely on what's needed today. You usually need more than 1 or 2 dev working on it, which may be the issue here.

> It’s just that open-ended experimentation doesn’t belong in main, of all places.

Very strong disagree. That's simply the nature of performance optimizations for JITs. They belong on main because new optimizations and heuristics will always be generated. The role of doing a compiler is a long term experiment in performance, seeing what your runtime is currently doing and how it's being used and tweaking it to work better.

pypy isn't in a worse place because it's been running a longterm performance experiment.

> They have an ongoing duty to ensure that a critical piece of global infrastructure remains stable and trustworthy to consider.

None of the things mentioned actually do that, other than perhaps a support plan. There are plenty of critical infrastructure projects who all can manage to develop JITs. Python is the special snowflake that has decided to do JIT development incorrectly.

This is a runtime optimization/implementation detail. It's foolish to send it through a committee approval process. That's why you won't be able to find a single language with a JIT or advanced optimizations that has do it by committee.


In that case I can understand why it's not a fit for Python. The risks you're describing are more what a brand new language would face: universal scope, impossible to measure success, no support plan... sounds like a nightmare in a mature product. If that's actually what it means to add a JIT to Python, the SC is doing its job by steering Python around this quixotic task.

> This is a runtime optimization/implementation detail.

I view JITs as a critical architectural component. Like you said, it impacts the whole system. Optimization and implementation details don't usually do that.


The problem is that “Python” the language includes native poorly isolated FFI interfaces exposed by CPython. So the language isn’t “Python” but CPython. That’s why alternate implementations like PyPy haven’t seen adoption despite having a very mature JIT while languages like JavaScript have JITs that put CPython’s performance to shame.

It’s also part of why Python has been so successful in many domains. I was there for Python’s takeover of the data space, and I got quite used to porting things from Java (static, JIT, decent at multithreading) to Python (dynamic, interpreted, GIL) and realizing substantial performance improvements in the process.

It’s kind of wild how nice Python’s C extension system, which enables basically zero cost interop with native code, is for certain purposes. It supports a situation that’s comparable to the games industry’s tradition of putting a Lua or Lisp tip on top of a C++ iceberg.


> The problem

Who is this a problem for?

I think there is enough evidence to conclude that most language ecosystems cannot support multiple implementations that are fit for general purpose usage. There are almost no successful examples, and there are many, many failures.

The most successful things I can think of:

C & C++ - often does require at least some pre-processor logic or different build system settings.

Java - I'm not 100% sure - I think there are credible implementations of both the JVM and compiler though of course almost everyone is building from the openjdk or the commercial fork.

Nodejs & Bun - Most of NPM just works.

...

Thats it. Honorable mentions like C#/Mono exist, but if you look at that ecosystem a majority of applications only ever built with one of those, not both.

There are niches maybe like some subsets of scheme or common lisp - but I think most apps have a single implementation creating the builds that they ship. There are re-implementations perhaps that would count that I don't know enough about like Delphi/Lazarus, but I truly don't think there is another mainstream example.

In Haskell, SPJ noted years ago that GHC was really the reference implementation and he no longer considered standards work to be worthwhile (though it has continued past that).

Others I think have reach the same conclusions, such as Ruby. I could be missing something but I don't think most platforms should even aspire to support this.


And yet, not introducing unnecessary chaos into the CPython project remains important.

Perhaps these priorities were always irreconcilable.

Perhaps that’s why the existence of competing Python JIT projects that weren’t trying to commit directly into CPython’s main branch kept coming up in the conversation.


I think this is a major issue with requiring a PEP for what's a performance optimization.

JITs are big nasty things that by their nature have to do a lot of things. You are basically saying "Give us a PEP for a new python interpreter and compiler".

What they do is fuzzy by their nature because optimizations are very rarely universally beneficial. It's a game of measuring, looking for regressions, and tackling the biggest problem next for whatever sample applications you have available. You always run into the risk of overfitting on top of all that (You may have made django faster, but you've made flask slower).

This is the sort of thing that, IMO, should not go through the PEP process. It's an implementation detail for the runtime.

Imagine, for example, if the JVM needed a bunch of JEPs for JIT improvements. They'd never get done. Or if any javascript engine needed ECMA acceptance before they could do a new JIT optimization.


> Imagine, for example, if the JVM needed a bunch of JEPs for JIT improvements.

They do:

https://openjdk.org/jeps/197

https://openjdk.org/jeps/515

Not every optimization requires a JEP, but certainly something as big as "add or remove a JIT" would 100% require a JEP.


> Imagine, for example, if the JVM needed a bunch of JEPs for JIT improvements.

FWIW, I definitely can find a bunch of both PEPs and JEPs for internal optimizations, random examples:

https://peps.python.org/pep-0509/

https://openjdk.org/jeps/147


You can find those JEPs, but frankly they are there for 1 of 2 reasons.

1. An outsider to the regular OpenJDK dev team proposing an optimization.

2. Advertising for a cool new performance tweak with potentially large impact.

You'll also notice that the JEP descriptions are very different from PEP descriptions.

Probably the largest JEP for the JVM, Valhalla

https://openjdk.org/jeps/401

Does not have the same level of requirements being asked of the Python JIT. Further, it's well understood that this JEP will "live on main" for quite some time in preview before it's accepted and merged.

What the JEP does, instead, is simply describe the feature and potential risks.

The vast majority of JVM optimizations do not get a JEP.


Fair, I don’t argue with that, I’m not knowledgeable about Java’s processes. Just one thing:

> The vast majority of JVM optimizations do not get a JEP.

In Python too. Still, the JIT really is just a really big thing. I don’t know if there could be a better way to do it, as either 1. You develop it off-branch and… make an enormous PR when you’re done, with risks of getting rejected anyway? Or 2, you allow more experiments on main like Rust, but then you end up with hundreds of minor half-maintained nightly-only features, possibly conflicting with each other, and eventually go through bureaucracy to remove them anyway.


So, I'd grant that it'd probably be a JEP for java (the initial JIT) but not that every change to the JIT would result in a new JEP. Java's JIT, hotspot, was integrated right before they started the JEP process. The JEP for the JIT would likely be pretty boring like "It's a JIT, it does this, in some applications we see this sort of speed up". Much like the AOT JEP https://openjdk.org/jeps/514

The Java governance allows for a lot more open ended projects with follow ups. Not that it's reckless, Valhalla is proof of that, but rather that once something is good enough they are pretty open to just shipping it as a preview feature and refining until it is worthy of being stable.

That's why, for example, we saw ZGC get merged, and then JDK after JDK seeing continuing development and improvement on ZGC (Or G1 for that matter). These GCs were fairly rough on their first release and now they are pretty much best in class.

I see a Python JIT as the same thing. Delivering the infrastructure for a JIT would need a PIP, but I wouldn't put in things like "acceptance criteria" beyond "doesn't break older code". I would expect such a project to get continual updates without PEPs.


> I would expect such a project to get continual updates without PEPs.

Just for completeness: the original JIT PR was merged quite enthusiastically and only after the fact it was pointed out that it should have went through a PEP process [1]. The following PEP 744 was of the “informational” type, and the just-withdrawn PEP 836 was the first “standards track” PEP, which means that (in my understanding) it’s technically the first actual PEP that the SC would formally comment on. So in a way it’s not “can we update the JIT” PEP, but the first real “does SC want this JIT as proposed” PEP.

That said, I do agree with most of what you said, especially the acceptance criteria part.

The issue I have and find it hard to resolve is that since the code was already on main, the feature was already in “sunk cost” mode. It’s hard when the code is already on main and another 3 optimization PRs are always there behind the corner, but it needs to be possible for SC to say “we decided it’s not actually worth all this complexity for <some small number>% speed improvement” (I’m not commenting whether in this particular case it’d have been a right call), and the PEP (if not withdrawn) was the way to exercise that control.

[1] https://github.com/python/cpython/pull/113465#issuecomment-1...


The original JIT certainly did not get a JEP, because JEPs replaced the previous JSR process.

And even then, Hotspot did not got a JSR, because all that work was done before Sun started collaborating with industry partners for Java evolution.

They "simply" ported the JIT compiler from the Strongtalk acquisition into Java.


Aren’t you confusing internals and API? I don’t think nobody cares about HOW the optimisation is done, but SC wanted API with the rest of the interpreter be defined and stable. Two different things. I think.

Oh, it's not just a performance optimization. But you've said it yourself: "a new python interpreter and compiler". A lot of Python code out there lives with assumptions of CPython interpreter built into it. Pretty sure pytest would've been affected, should JIT replace the existing interpreter, for example.

Anyways. I don't believe that Python needs a JIT compiler. I don't believe that CPython can realistically replace its interpreter with JIT compiler without causing major problems with the community packages.

The way I see it: Python users today desperately want Java. They want it called Python because there's some vague memory still around of Python being cool and Java not being cool.

In Russian there's a children tale about a hungry soldier returning from a war and a greedy old woman who offered him a bed for the night. The old woman then pretends to have no food for dinner, and a soldier promises her a magic trick of making a porridge out of a hatchet. And so he tells the woman to put a pot on a stove with a hatchet in it, and step by step he makes her add all the ingredients necessary to make a porridge to the pot. The story gave birth to the idiom "hatchet porridge", which is used to describe anything that was created in a similar way: by deception, when another goal was allegedly being pursued.

So, to me, the current state of Python is this "hatchet porridge". None of its users want the actual Python (the hatchet is still sticking out of the pot), and they keep adding Java ingredients to the pot in hopes to cook up Java. And so was JIT. It just turned out to be too difficult to throw away the hatchet. An the porridge still has some chipped wood in it as well as a metallic taste.


Just FYI, basically the same story is common in European folklore, and there's a somewhat idiomatic "stone soup" concept in English

https://en.wikipedia.org/wiki/Stone_Soup


Nope. Big oil has spent big money on propaganda for a VERY long time. Something that almost all right wing pundits and podcasters are funded by.

For the right to actually embrace solar, you need either big money in solar to start it's own propaganda campaigns or you need big oil to collapse to the point where they can't afford paying propagandists. Right now, they are making record profits so don't count on that anytime soon.


Exactly.

The majority of jobs from the earlier computing era were doing mindless menial work like fixing the Y2K bug in 1000 COBOL systems doing boring stuff like accounting software.


Eh, there was a ton of frivolous work being done. That has long been the majority of jobs in the computer world.

For example, you could have been dealing with COBOL banking software. Or order management software. Or even spreadsheet software.

The difference being that all the tools were a lot worse and everything was built from the ground up so it took a lot longer.

Exciting stuff was about as common as it is today, and the reason you aren't doing exciting stuff today is likely because you know that 90% of those companies will end up failing and might not actually pay you. The most successful of those companies will likely do something like selling insurance adjustment software.


Which is nuts because one thing LLMs are actually pretty good up is generating "traditional ml" harnesses. You just have to describe the problem you are trying to solve and ask the LLM for algorithm suggestions.

It's also nuts because "traditional ml" generally requires a fraction of the resources of an LLM. If you need to auto label, tag, categorize, it's never been easier to setup that sort of system in any project.


And yet, most seem to be completely unaware of this and focus on LLM-related stuff almost exclusively.

Consider applying for YC's Winter 2027 batch! Applications are open till November 2.

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

Search: