[-] FizzyOrange@programming.dev 5 points 4 months ago

Right but in practice nobody really uses the Windows store, and winget, chocolatey etc. are only used by geeks. For normal users it's always

  1. Download .exe or .msi
  2. Double click it.
  3. Follow the instructions.

On Linux you have:

  1. apt, dnf, etc. - pretty reliable but only really work from the command line (I have yet to use a "friendly" store frontend that actually works well), and you almost always get an outdated version of the software.
  2. Snap or Flatpak - the idea is there, but again I have yet to actually use one of these successfully. They always have issues with GUI styling (e.g. icons not working), or permissions, or integration or something.
  3. Compiling from source - no Windows software requires this but it's not uncommon on Linux.

Also it's relatively common for Linux software not to bundle its dependencies. I work for a company that makes commercial Linux software and they bundle Python (yes it's bad), but that depends on libffi and they don't bundle that. So it only works on distros that happen to have the specific ABI version of libffi that it requires. And you have to install it yourself. This is obviously dumb but it's the sort of thing you have to deal with on Linux that is simply never an issue on Windows or Mac.

[-] FizzyOrange@programming.dev 5 points 4 months ago

Some bad interview questions are like that, sure. But they're supposed to be things you are very unlikely to have done before and can reasonably figure out. It's not too hard to come up with simple questions like that. (Though I will grant many people don't seem to bother.)

[-] FizzyOrange@programming.dev 5 points 5 months ago

Stop linking this, please! Any benchmark where Typescript and JavaScript are different is trash.

[-] FizzyOrange@programming.dev 5 points 8 months ago

Yeah I agree. It's often easier to start from something that's wrong than a blank page.

[-] FizzyOrange@programming.dev 5 points 8 months ago

I would add this to the Wikipedia page for .mu, so at least other people don't use it. You can site this discussion as a source.

[-] FizzyOrange@programming.dev 5 points 8 months ago

Sure, but there are a gazillion forum websites already. I'd just use an existing one. The one D uses is the best I've ever used. I think it's actually written in D, which is a very niche language but way nicer than Ruby.

[-] FizzyOrange@programming.dev 5 points 11 months ago

It's not because people are sensitive, it's because Rust gets a lot of dumb criticism and people are tired of it.

[-] FizzyOrange@programming.dev 5 points 11 months ago

But don’t you loose polymorphism?

No. You'll have to be more specific about what kind of polymorphism you mean (it's an overloaded term), but you can have type unions, like int | str.

Your points 1-3 are handled by running the code and reading the error messages, if any

Not unless you have ridiculously exhaustive tests, which you definitely don't. And running tests is still slower than your editor telling you of your mistake immediately.

I probably didn't explain 4-6 well enough if you haven't actually ever used static types.

They make it easier to navigate because your IDE now understands your code and you can do things like "find all references", and "go to definition". With static types you can e.g. ctrl-click on mystruct.myfield and it will go straight to the definition of myfield.

They make the code easier to understand because knowing the types of variables tells you a lot of information about what they are and how to use them. You'll often see in untyped code people add comments saying what type things are anyway.

Refactoring is easier because your IDE understands your code, so you can do things like renaming variables and moving code and it will update all the things it needs to correctly. Refactoring is also one of those areas where it tends to catch a lot of mistakes. E.g. if you change the type of something or the parameters of a function, it's very easily to miss one place where it was used.

I don't think "you need to learn it" really counts as slowing down development. It's not that hard anyway.

I can understand the appeal for enterprise code but that kind of project seems doomed to go against the Zen of Python anyways, so it’s probably not the best language for that.

It's probably best not to use Python for anything, but here we are.

I will grant that data science is probably one of the very few areas where you may not want to bother, since I would imagine most of your code is run exactly once. So that might explain why you don't see it as worthwhile. For code that is long-lived it is very very obviously worth it.

[-] FizzyOrange@programming.dev 5 points 1 year ago

It's sooo sloooow though.

[-] FizzyOrange@programming.dev 5 points 1 year ago

Impressive persuasion! I can't imagine that ever working at any company I've worked at.

[-] FizzyOrange@programming.dev 5 points 1 year ago

I just looked up Deno and it’s part of an NPM stack.

It's not. It supports NPM modules for backwards compatibility, but the whole point is that it doesn't inherit the NPM tooling mess. You can go from a new Linux install to a running Fresh project in 3 commands.

[-] FizzyOrange@programming.dev 5 points 2 years ago

Yeah possible, but this of the amount of effort that would take!

view more: ‹ prev next ›

FizzyOrange

joined 2 years ago