Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror

Comment Re:Very quick code reviews (Score 1) 37

The above was already quite long, but allow me to add a bit :-)

I spent a few minutes looking for the state of the art in C++/Rust interop for contexts that don't have a nice intermediary like binder. It turns out that the situation isn't as bad as I thought. The CXX project enables automatic generation of bi-directional definitions between Rust and C++ and is being used at scale by the Chromium project and that seems to be going pretty well.

There's also a Google-funded Rust Foundation project to define a better solution, though I don't see what, if anything, has happened since it was announced last year. Hopefully that's because there's a small group working too hard to waste a lot of time talking about it.

The reason I went to look is that my new team (I left Google a couple of months ago) might need such a thing. I've been asked to define an API that would benefit from being implemented in Rust and usable from C++ and Rust.

Comment Re:Trump Mania (Score 1) 220

3) The outbreak is all along the southwest border with large populations of people who lack access to regular health care.

With the republicans holding a majority in 3/3 branches of the government, what are they doing to to combat this problem?

Telling people that vaccines are bad, ensuring that any parent who wishes to refuse to vaccinate their children is fully supported in that decision, and working to make vaccines harder to get, more expensive and more painful (RFK Jr. wants to separate the MMR vaccine into three shots, each of which will still require three injections, so kids will have to get 9 shots to be fully vaccinated instead of three).

This is similar to their plan to fight inflation by imposing tariffs and forcing the Fed to lower interest rates in spite of rising inflation (note that this last part hasn't really happened yet -- the interest rate cuts have been measured, cautious and justified by economic conditions -- but Trump is working on it). Though to be fully fair, by making the tariffs arbitrary and capricious so that business leaders are completely unable to plan, Trump is also causing a contraction in US economic activity that might eventually generate significant unemployment, which actually does reduce inflation. I see no corresponding "silver lining" in the mumps plan, though.

Comment Re:Oh, Such Greatness (Score 1) 220

From an economic perspective, he was right. The Southern slave system enriched a small aristocratic elite—roughly 5% of whites—while offering poor whites very limited upward mobility.

And, ultimately, slavery was a far less efficient and effective economic system. One might think that keeping a big chunk of the populace poor is efficient, since you're not "wasting" a lot of production on providing them with unnecessary goods and services, but it's really not, at least not since the industrial revolution. I think the core reason that it's so inefficient is the same reason that Marxist communism is inefficient: From an economic perspective, both systems value the masses only for their physical labor, and fail to cultivate and take advantage of their brains, which also actually tends to reduce their labor output. Harnessing the distributed ingenuity of your workforce requires giving your workforce some reason to exercise ingenuity and some way to benefit from doing so.

It's going to be interesting (or maybe terrifying, or maybe just sad) to see what happens when we fully automate ingenuity, too, which will mean that the system no longer depends on or benefits from distributed ingenuity because the machines are smarter and think faster, just as the machines are already stronger and indefatigable.

Comment Vibe coding is an intermediate step that will die (Score 2) 29

I don't think vibe coding is going to last long as a thing, because it's just a sort of intermediate step to telling the AI to do what you want and having it do that. Right now, people are telling the LLM to write code to accomplish a thing and then running the code to see how it works, then telling the LLM to refine it, but that's a lot of unnecessary extra steps. I'm sure that in the not-too-distant future people will just tell the LLM what they want to do, which may require creating a custom user interface to make user interaction convenient, and may require creating databases or performing network queries or whatever, and the LLM will understand what they want, and do it.

In that future, it's possible that the LLM may generate code to implement the requested functionality, but if it does so that will be a compute-saving shortcut, essentially a way to cache the LLM's work and be able to repeat it with less effort. There won't be any need to show any of the code to the user, or even tell the user that the LLM chose to generate some code.

As an aside, the whole notion of leaning "prompt engineering" is another intermediate step that will die. The whole point of natural language-capable AI is that it will be able to understand what humans want when we express ourselves as we would to other humans. As the LLMs get more capable, it will become less necessary to treat them as something different from an entity that is fully capable of understanding and acting on human communication.

Comment Re:Very quick code reviews (Score 1) 37

At my company we don't have any dedicated Rust programmers. We all have to learn it (eventually). So passing a review off to a Rust developer or dedicated team isn't an option for us.

C++ reviews go quick for us because we have 20 years of it in our code base. And our changes tend to either be a tiny increment at the core. Or a massive dump of support for a new feature or chip that not every reviewer is familiar with.

At my company we don't have any dedicated Rust programmers. We all have to learn it (eventually). So passing a review off to a Rust developer or dedicated team isn't an option for us.

One of the things Android did very right with the Rust transition was to set up a small team of people who were entirely focused on Rust support. It wasn't a large team, only 2-6 people (it varied over time) out of approximately 1500 engineers. Having that core team who either were or became deep Rust language and toolchain experts was critical to smoothing the path for everyone else. It provided a group that had the knowledge and bandwidth to solve the problems that inevitably came up, as well as to offer advice and code review support to the early adopters.

That group no longer provides code reviews and design advice because Rust knowledge is now widespread enough that teams have their own, homegrown, Rust experts (not people designated as Rust experts, just engineers who became enthusiastic and dived deep), but the group still exists to resolve complex technical problems with language integration and to work on improving tooling and performance.

I think any shop adopting Rust (or any new language or complex tool) needs to have some people who become deeply expert in it and are allowed the time and freedom to support others who are picking it up.

C++ reviews go quick for us because we have 20 years of it in our code base.

So does Android. Google has been a primarily-C++ shop since its inception and although I'm not sure if Android had a lot of C++ in it when Google bought Android in 2005, it definitely became a C++-based system as soon as that happened.

And our changes tend to either be a tiny increment at the core. Or a massive dump of support for a new feature or chip that not every reviewer is familiar with.

The highly-segmented architecture of Android really helped facilitate the transition. Most of Android is structured as a web of collaborating services that communicate through a common language-independent [*] IPC mechanism (binder). Implementing Rust binder IDL generation and support libraries was a moderately big job, but once that was done it was easy to begin writing new system components (or replacing existing system components) in pure Rust, generally without any unsafe blocks at all.

If your code runs as a monolithic process, or has a lot of different IPC mechanisms, or uses a lot of existing libraries, it will be a lot harder, and the benefits will come slower. You'll have to wrap a lot of C interfaces in Rust -- and they will have to be C, not C++, since there isn't a good way for Rust to interoperate directly with C++. People are working on that, but it's a very hard problem and at present the best option is to layer a C interface on top of your C++ code, then wrap a Rust interface around the C interface. Yuck. Or, in the alternative, insert some other language-agnostic boundary between them.

So in a lot of ways Android got lucky because of its modular architecture and single, language-agnostic IPC mechanism. OTOH, that wasn't really "luck", it was a lot of work, done for good reasons, one of which was cross-language compatibility, notably between Java and C++.

[*] Language independent-ish, maybe I should say. The binder IDL is definitively Java-based, but this maps fairly nicely onto OO languages that support common primitive types (int, char, enum), basic composite types (array, vector, class/struct, string (which is just a vector, but used enough to be worth treating as a first-class thing)) and Java-like methods (fixed argument list, single return value). Further, it's based on "old" Java, before Java acquired functional extensions, when doing things like passing method references as argument was uncommon, and therefore not supported. So it's moderately-expressive but avoids things that get weird and complicated. My one big complaint about it is that I wish it supported unsigned integer types. That's my biggest gripe with Java, too.

Comment let's see actual statistics (Score 1) 220

Is this
1) (stupid) antivaxxers, as so very many ideologically-motivated comments here have immediately assumed?
Or is it
2) millions of unvaccinated illegals entering the country since 2020? ... Or something else?

I find it curious that so many commenters here are insanely militant and aggressive about vaccination, I didn't recall those same voices ever insisting that the tidal wave of illegals submit to vaccination... Do you?

Comment Re:"Your teeth will get through anything," Mr. Kay (Score 1) 84

Now that I know this from reading TFA, the next time I find myself in the position of kidnapping someone for their Bitcoin, the first thing I'm gonna do is knock their teeth out with a pipe wrench.

Thanks, Slashdot. You've made my career of being a terrible person that much easier. :)

I will do you one better ...

Just tie their hands behind their back. No gnawing can get one out of that ...

You owe me 20% of the Bitcoin you get that way ...

Comment Re:The price of wealth (Score 1) 84

Does a story like this make anybody else wonder if the lifestyle cost of wealth is too high?

The problem in this story is not the wealth, but its form. Cryptocurrency transactions are generally irreversible and not subject to the layers of process and protection that have been built up around large banking transactions. Keep your money in banks and brokerages like a sensible person and you don't have much risk.

Comment Re:Huh? Where? (Score 1) 60

No it's far from the most expensive option

Uh, yes, the 24-hour cancellation option is always the most expensive one for a given room (ignoring paying extra for add-ons like free breakfast or extra points). What other option would be more expensive? The one that gives the consumer the most flexibility is the one with the highest risk to the property, and that's priced in.

TFA postulates a scenario where the cancellations have disappeared.

Yeah, TFA overstated it. Though if you're not booking through the chain directly, in many cases it is hard to get a 24-hour cancellation policy. Many of the travel aggregator services hide them.

Comment Re:way more than some irrationality (Score 1) 56

The AI thing absolutely is a bubble, but it's not "sand-castle based or vapor based". It's very real. The problem is that the massive wave of investment is going to have to start generating returns within the next 3-4 years or else the financial deals that underpin it all will collapse. That doesn't mean the technology will disappear, it just means that the current investors will lose their shirts, other people will scoop up their assets at firesale prices, and those people will figure out how to deploy it effectively, and create trillions in economic value.

The problem is that the investors - and lenders - potentially losing their shirts include major international banks and pension funds, not just private shareholders. Recently, a J.P. Morgan analysis estimated that at least $650 billion in annual revenue will be required to deliver mere 10% return on the projected AI spend. And already banks like Deutsche Bank are looking to hedge their lending exposure to AI related projects.

If the AI bubble crashes hard, it could be a repeat of the 2007 global financial crisis.

Yep. That's all true even if AI is the most transformative technology ever invented, even if it generates trillions per year in economic output -- it might not do it soon enough to prevent another crash. You don't have to believe that AI is "sand-castle based or vapor based" (which it's really not) to see a big problem coming.

Comment Re:way more than some irrationality (Score 1) 56

Here is the thing, you are posting on Slashdot. Don't tell me you are not sharp enough to find a broker, and buy some long dated at the money PUTS either on the AI and AI adjacent firms or just the market over all with funds like SPY / QQQ.

The market can remain irrational longer than you can remain solvent.

The better strategy, IMO, is to keep your money safe and wait for the bubble to burst, then pile in for the recovery. Where to keep money safe is a good question, though. Just holding cash might be risky if inflation comes back, and the current administration seems anxious to pump up inflation.

Slashdot Top Deals

"Life begins when you can spend your spare time programming instead of watching television." -- Cal Keegan

Working...