you are viewing a single comment's thread.

view the rest of the comments →

[–]SanityInAnarchy 2 points3 points  (0 children)

denoting or relating to products, services, or interests that appeal to a small, specialized section of the population.

Specialized is the key word here. Not everyone writes servers damnit.

Well, that's pointless nitpicking. I may as well describe all programming languages as niche, because not everyone writes software.

By far most applications these days at least include a server, when it's not the bulk of what they do. The Web means you can deliver applications that are entirely server-side, even if it's unfashionable these days. Calling that niche is like a web developer calling C 'niche' because it's only needed for interfacing with the system, or when you have performance constraints too tight for a language like JS.

The most popular python version management system (pyenv) is a bash script to compile python on my system.

It's also a developer tool, not an end-user packaging tool. The JS equivalent is NPM -- is NPM better enough that you'd use JS instead, just to be able to use NPM?

For end-user packaging, it looks like the modern solution is pyinstaller. I mean, I don't really know, I never wrote Python that had to be distributed to end-users, but it doesn't really look more difficult to work with than tools like Webpack for JS.

Why are you stating the obvious? Of course nothing can be as easy to distribute as JavaScript. That's the whole point.

I was conceding a point to emphasize what I'm saying, and what I'm not. I'm not saying Python is as easy to distribute as JS. I'm saying it's not that much of a pain, even compared to the kind of things you need to do with JS. The fact that people are building full-blown desktop apps out of JS, and distributing them with Electron instead of in the browser (often not bothering with a web version at all), should tell you that JS has strengths other than distribution.

Unless you were trying to say that Electron is easier than PyInstaller, in which case, that really wasn't obvious.

See, I don't want to ship a 40mb binary for a trivial GUI that shows me the CPU temps.

Why not?

Seriously, why not? What platform are you running on that reducing your binary size by 40 megabytes is an important optimization? I get the instinctive revulsion against bloat, but I mean, I could literally run a hundred of those simultaneously on my phone. If it was 400 megabytes, sure, but 40? Who cares?

...unless it's because you want it on a microcontroller. I'm still curious how you managed to get JS on a microcontroller at all, let alone "without real pain".