The article is presenting something different entirely. This is the precursor to what it would take to create a compiler written in java that produces native code.
Regardless of whether you use JSON or Protobuf, the only way to be safe from version tears in your serialization format is to enforce backwards compatibility in your CI pipeline by testing the new version of your service creates responses that are usable by older versions of your clients, and vice versa.
Yeah, no discussion of this topic is complete without bringing up schema evolution. There’s a school of thought that holds this is basically impossible and the right thing to do is never ever make a breaking change. Instead, allow new fields to be absent and accept unrecognized fields always. I think this is unsustainable and hard to reason about.
I have not found it difficult to support backwards compatibility with explicit versioning, and the only justification I’ve seen for not doing it is that it’s impossible to coordinate between development teams. Which I think is an indictment of how the company is run more than anything else.
That's why this was the year I finally dropped Windows and VSCode forever. Not that hard for me because all the games I play work flawlessly in Proton, and I already used Linux at work.
You can drop Windows and keep VSCode. I'm running it on this laptop (Kubuntu 25.04).
To install it, browse to here: https://code.visualstudio.com/ (search: "vscode"). Click on "Download for Linux (.deb)" and then use Discover to install and open it - that's all GUI based and rather obvious. You are actually installing the repository and using that which means that updates will be done along with the rest of the system. There is also a .rpm option for RedHat and the like. Arch and Gentoo have it all packaged up already.
On Windows you get the usual hit and miss packaging affair.
Laughably, the Linux version of VSCode still bleats about updates being available, despite the fact that they are using the central package manager, that Windows sort of has but still "lacks" - MSI. Mind you who knows what is going on - PShell apps have another package manager or two and its all a bit confusing.
Its odd that Windows apps, eg any not Edge browser, Libre Office, .pdf wranglers, ... anything not MS and even then, there are things like their power toy sort of apps, still need their own update agents and services or manual installs.
Yes but winget is not the Windows central package manager. Actually, Windows does not have one but for some reason you have enforced updates from a central source.
Why does Windows not have a formal source for safe software? One that the owner (MS) endorses?
One might conclude that MS won't endorse a source of safe software and hence take responsibility is because they are not confident in the quality of their own software, let alone someoneelses.
I believe that MS wants that to be their own MS Store, though I don't know of a single person who actually uses it as their preferred way to manage software. For what it's worth, VS Code is available there: https://apps.microsoft.com/detail/xp9khm4bk9fz7q
Not who you responded to, but for a GUI editor I tend to like Zed, and for terminal I like Helix. Yes, Neovim is probably better to learn because Vim motions are everywhere, but I like Helix's more "batteries included" approach.
I decided to finally learn a modal editor and installed Helix. Ideal for me since it's very hackable if you're already familiar with Rust. Very easy to build from source. Plus all I need is LSP support and I'm good at work, clangd is all I need for an IDE.
Yeah everyone I've tried to introduce helix to who was already a vim master hated it. It's great for people who don't already have that muscle memory, I found the reversed selection->action model a lot more intuitive personally.
Right, the 4g/day number is the amount that should be safe for any relatively healthy adult (minus whatever is making them take the medicine). I should hope it isn't too close to the number where you can cause permanent damage.
It's become fashionable to fearmonger about it lately, but I agree, it's safe to assume the makers wouldn't tolerate the liability that would come with a single extra dose above the given instructions causing that kind of harm.
The side channel from memory access timings are exactly why cmov is its own instruction on x86_64. It retrieves the memory regardless of the condition value. Anything else would change the timings based on condition. If you're going to segfault that's going to be visible to an attacker regardless because you're going to hang up.
AFAIU, cmov wasn't originally intended to be a guaranteed constant-time operation, Intel and AMD won't commit to keeping it constant-time in the future, but it just so happened that at one point it was implemented in constant-time across CPUs, cryptographers picked up on this and began using it, and now Intel and AMD tacitly recognize this dependency. See, e.g., https://www.intel.com/content/www/us/en/developer/articles/t...
> The CMOVcc instruction runs in time independent of its arguments in all current x86 architecture processors. This includes variants that load from memory. The load is performed before the condition is tested. Future versions of the architecture may introduce new addressing modes that do not exhibit this property.
At your link there is a link to the list of instructions that guarantee constant execution time, independent of the operands.
The list includes CMOV.
However, the instructions from the list are guaranteed to have constant execution time, even on any future CPUs, only if the operating system sets a certain CPU control bit.
So on recent and future Intel/AMD CPUs, one may need to verify that the correct choice has been made between secure execution mode and fastest execution mode.
I mean the possibility that the rest of the program guarantees that the address is valid if the condition is true but otherwise it might be valid or invalid. This is probably not important for most applications, but I don't know if there are some unusual ones where it would matter.
It affects the minimum viable salary for a teacher to even be able to live in the city where you want to hire them to work, same for all the other support staff that make a school function.
With a budget of $28k per student, and 21 students per classroom, that’s $588k per classroom.
Now, granted, some of that goes on building upkeep, cleaning, supplies, heating, pensions, managers etc - but if $588k per classroom doesn’t let you pay enough to attract teachers there’s something very suspicious going on.
I don’t buy that argument, there’s no reason a teacher in San Francisco can’t live in Oakland or Berkeley, or a teacher in NYC couldn’t live in NJ. You don’t have a human right to live in the most expensive real estate on Earth.
GP didn't say anything about it being a human right. You seem to be strawmanning their argument.
I think it's a reasonable expectation that even in HCOL places like SF or NYC, people in careers important to society should be able to live in the communities they serve.
Yeah, screw the teachers, they should just have a longer commute, who cares about them? /s
I always want to laugh when I hear people complain about finding near-minimum-wage workers in a HCOL area. They can't seem to grasp that commuting is not free, it may feel free to them at their income level but transportation costs money (gas, car maintenance, insurance or bus, etc) and time. I'm not saying teaching is a minimum wage job but it's not a high earning one either, paying them as low as we do _and_ also asking them to have a longer commute is just absurd.
Jackson Hole residents complaining about "poor service" in stores and restaurants in town, because shocker, servers can't afford to live in Jackson Hole. And unlike even SF or NY (which may not be perfect but have at least functional transport), there's no easy way to travel from the next town, an hour away or more.
Residents have started banding together to rent coaches to bus people in, which seems the most reasonable solution, after all, no poors in town, still, and it doesn't hurt the residents that service industry employees in their town have a three hour commute. /s
It got so bad in Atherton, CA, that the school had to build accommodation for teachers in the school itself. Next step, they can do janitorial work for extra money!
reply