To be fair, if a naive user is going to get a virus, there’s a very high chance a browser will be involved.
To be fair, if a naive user is going to get a virus, there’s a very high chance a browser will be involved.
That doesn’t describe me or any other programmer I know.
“Even worse”? Are you saying Rust is bad?
Programming: not even once!
I’d say you’re misinformed, but it requires some real idiocy to be that badly misinformed and that deliberately insulting to a whole programming language community.
Ooooh, luddism is so edgy!
And no, Rust is not primarily used to generate web apps, shitty or otherwise. You’re thinking of JavaScript.
You know you can say fuck on Reddit, right?
Sometimes it works well as a stylistic choice. It’s not pretending not to use a bad word, but rather drawing attention to the fact that you’re deliberately being a little bit naughty with a wink to the reader. It’s like the absurdity of what happens when you find a stranger in the Alps.
The simplest solution is to set up the sudoers file to allow only specific commands your users need. I assume you need more than that, but what kinds of use cases does that solution fail to handle?
I switched jobs from one using a mostly C++ stack to one using a Typescript/JavaScript stack for a large application. I was absolutely shocked at how slow and generally shitty the tooling for JavaScript is, and coming from C++ land the bar was already very low.
I’m a developer and I’ve strongly preferred KDE over Gnome for many years. I find the lack of features and customization in Gnome extremely irritating.
It’s not intentionally obfuscated or minified. Generally it just strips out types and comments, but depending on how it’s configured, it will rewrite certain things to work in ES5. At my work our build process uses a separate minification and bundling step, which also serves to a obfuscate our proprietary code.
Historically Python has done no semantic analysis at all, and as far as I know CPython still ignores type annotations except for checking their syntax and (I think) checking that type expressions can be evaluated as regular expressions. It’s also one if the slowest languages around, and it used to be much worse in the 1.x days. The only actual declarations are global
and nonlocal
, unless they’ve added something else recently. Everything else that looks like a declaration is actually a statement executed for its side effects. The super
function used to only be callable with two arguments, because automatically supplying self
and the lexically enclosing class was considered too magical.
If you’re looking for something like Java or C#, Python isn’t for you. It was designed for use cases like fancy scripts and small applications that aren’t CPU bound. It’s about as dynamic as a language can be, meaning it’s possible to break almost any analysis you might do with a call to eval
, and a lot of what you’d expect to be core language primitives, like accessing a field of an object, can execute arbitrary code.
Yeah, I didn’t think of that case, because any time I use ref counting, cyclic references are at the from of my mind.
I agree Rust makes it virtually impossible to leak memory by accident. The difference I wanted to point out is that leaking memory is explicitly not considered unsafe, and types like Box have a safe “leak” method. Most “naughty” things you can do in Rust require using the “unsafe” keyword, but leaking memory does not.
If it’s ok to announce you’re moving to Linux (and it is), then it’s ok to announce you’re moving away.
I disagree about comparing languages by speed. Just because you can make Go programs as fast as Rust programs, it’s not going to be as straightforward as doing it in Rust. I’d much rather spend slightly more effort up front to write idiomatic Rust code that’s fast by construction than try to make Go code faster by applying a bunch of arcane tweaks to it.
So it would be how in the US half of all products have a warning saying they cause cancer thanks to California proposition 65? No thanks.