Please create an account to participate in the Slashdot moderation system

 



Forgot your password?
typodupeerror

Comment Re:Java has no business in the browser (Score 1) 27

WebAssembly means that, no, Javascript is not the only language available for manipulating web pages on the client side any more, it can be anything you want. If Java is ready for that, and programmers want to use Java, there's no reason they shouldn't - it's a safer, more robust, language than Javascript. Of course, they can also use Rust, Go, or a whole host of other languages.

Also, FWIW, applets have been dead for a decade or more now, no mainstream web browser has supported them since 2017. The article is about Oracle removing the obsolete infrastructure from the core Java libraries. The only reason they've sat on their hands about it is that in theory a non-applet might still reference some class intended for applet usage - perhaps because a JAR might be dual mode, or because an applet ported to the desktop might have legacy references.

Comment Re:Why should I choose java for my next project? (Score 1) 27

C# is a better language over all. Java has suffered for a variety of reasons:

- An insistence on backward compatibility, which is why, for example, generics are kinda half-assed, the standard library has lots of gotchas as functionality was grafted on poorly.
- Apparent confusion of "slowly" with "carefully" which means many features are missing decades later, and what finally gets in there seems to be half a solution, as if the Java team wants to see whether it works before finishing it. The "AutoCloseable" try-with-resources thing seems a classic example (as well as hampered by the compatibility obsession)
- Oracle just doesn't seem interested in it as a project to invest resources into improving
- Oracle keeps playing licensing games which is pushing away a sizable amount of the community- especially that part they need to attract, skilled academics and other experts who aren't going to contribute to a proprietary project outside of being hired to work on it.

And... hate to say it, but Microsoft does know what it's doing for the most part.

But if truth be told, while they're not full replacements (JVM and .NET are far more useful than Slashdot's naysayers like to pretend), most of the mindshare lost from Java is going to Rust and Go. Rust solves a specific issue the JVM has, albiet with its own problems and requiring a mindset change from programmers, and Go is more Java-like but loses the bureaucracy overheads and compiles to executables directly.

Should you choose Java for your next project? If you're familiar with Java, and/or more comfortable programming in it than C# take a look at Go. If you need something more cross platform or something more modular, making Java and .NET the only platforms you'd look at, C# is way more advanced than Java ever will be.

Not trying to say Java is bad. It's just fallen behind, and Oracle sucks.

Comment Re:Good riddance (Score 1) 27

Applets were a problem for a variety of reasons. The JVM at the time was buggy, Netscape was buggy, and the combination of the two could lead to crashes. Additionally several bugs in the JVM were actual security holes giving Java an unfair reputation for poor security (it wasn't Java or Java's design, it was a crap implementation.) And I don't think browser makers ever quite embraced the idea despite believing early on that Java was "the future".

In part, the latter was because of a combination of Microsoft going anti-Java when Sun made it clear they weren't open to forks, and Netscape just realizing it was weird to tie Netscape to a specific programming language and associated environment, especially one that wasn't quite sure what it wanted to be.

Meanwhile your views about Java's UX capabilities were almost certainly based upon the fact applets had only two ways to interact with users - pop-up windows and fixed sized rectangles on web pages. Neither were ideal.

What TFA talks about is arguably the way Java should have gone, with the browser dictating the environment in which apps should run, and the functionality being much more advanced than what was available in a browser in 1998. A lot of where browsers have headed has been the wrong direction - it shouldn't take gigabytes to render pages just because they have some fancy DOM stuff on them - but at least one can argue they're pretty close to feature complete right now. WebAsm with a modern DOM is a hell of an improvement on the rectangles.

Comment Re:Makes no sense (Score 1) 58

> I'm always baffled by the insistence of Rust, Java, or other modern programming languages

should be

> I'm always baffled by the insistence by opponents of Rust, Java, or other modern programming languages

This has been your reminder that Slashdot's refusal to allow people to edit their own comments just generates more heat than light.

Comment Re:Play stupid games, win stupid prizes (Score 1) 59

"Our side" hasn't really shot anyone. Kirk's killer appears to either be apolitical or, less likely, a member of a MAGA faction that hated Kirk's faction. There isn't anything linking Kirk's killer to left wing politics at all, if there had been it'd be mentioned pretty much every day by the Trump administration. And both the attempts to murder Trump came from people whose friends said were conservatives.

Your side, OTOH, has killed or attempted to kill a fair number of the right's opponents, be it the murder of elected politicians such as Hortman or Hoffman, or even the crazed hammer attack on Pelosi's husband.

And we're still here. You're not going to win.

Comment Re:Is there an engineering reason why... (Score 2) 58

Are the people rewriting everything in Rust with us in the room right now?

There are some projects to rewrite some tools in Rust, sometimes unnecessarily, but nobody's proposed rewriting everything or even everything in use. Even this article is about Rust being added to the kernel, not rewritten in it. Where are you getting it from that, say, anyone is proposing rewriting the Linux kernel in Rust?

Comment Re:Makes no sense (Score 1) 58

In fairness, PHP simply replaces one type of lack-of-safety with another. C does not assume null, 0, "", "0", and false or all the same thing, something PHP does because... reasons. If PHP actually implemented mandatory type safety, PHP would be no worse than Python, and the rewritten code running under the new PHP would have most of the security issues fixed.

Rust's spec... do bear in mind there's at least one project out there that's implementing an independent version of Rust. You kind of need multiple implementations for a programming language to have one. If you look at most of the programming languages we deal with every day, relatively few have a formal spec that isn't "Whatever the only implementation of this does". I'm not arguing that's good, far from it, but it's apparently not a barrier.

If I had to criticize Rust these days, I'd say the fact its standard library is bare and you're forced to rely upon third party modules ("crates") that aren't audited or in any way curated for basic functionality is pretty fucking dumb. It completely undermines the entire point of the language, that it's supposed to be safe to use. We know from the XZ backdoor that you can't trust third party code that way, and it's only a matter of time before a malicious actor attacks one of the bigger crates - perhaps via a dependency - and does the same thing.

To me, Rust having a standard library comparable to, say, Java's is more important than it having a written specification.

Comment Re:Makes no sense (Score 2) 58

I'm always baffled by the insistence of Rust, Java, or other modern programming languages that developers can only make a certain number of errors-per-project. That somehow if you write something in C it'll be perfect except for the buffer overflows and null pointers. That if you write it in Java or Rust or Go or whatever somehow those will go so you need to introduce logic errors instead.

Is this how you program?

As for "Developers should now be freed to make higher level, more difficult to find logic erors", are you implying that it's easier to find logic errors in C?

Comment Re:I have to say by now I approve (Score 1) 58

God forbid anyone ban bullying at a time when bullying was becoming increasingly common in tech communities.

I'm not sure how it qualifies as "toxic" to ban toxic behavior, but there we go. In the mean time at least one kernel programmer has been celebrated here for actively lying about the Rust project and demanding the Rust modules be banned from using his code because... no reasons given.

Literally the only reason for objecting to Rust's "real world politics" is if you wanted to call a fellow programmer who you had a disagreement with the N word, F word, or misgender them. None of that behavior has a place in an open source community, or indeed a work place or even a bar.

Slashdot Top Deals

"The medium is the message." -- Marshall McLuhan

Working...