That’s probably cause you or your packages use CoreJS. It’s basically a one man project that’s holding up the whole modern Internet infrastructure. You can look up the story online, but it was a pretty small donation request for a really relatable individual.
I guess this highly depends on package maintainers, Node already provides funding in package.json for much less invasive funding requests (and that can also be disabled) and you might also block executing the scripts during package instalation which are sometimes used for advertisement. I think this was a lot worse in days NPM didn’t support funding, especially for projects depending on a huge number of dependencies. But I’m not that old Node/JS dev to tell how things were back then in reality.
<span style="color:#323232;">~ $ adware
</span><span style="color:#323232;">(...ncurses ad featuring blockchain shows for 10 seconds...)
</span><span style="color:#323232;">
</span><span style="color:#323232;">Sorry, internet connection is required to run adware.
</span><span style="color:#323232;">Aborted
</span><span style="color:#323232;">~ $
</span><span style="color:#323232;">
</span><span style="color:#323232;">(plugs in ethernet cable)
</span><span style="color:#323232;">
</span><span style="color:#323232;">~ $ adware
</span><span style="color:#323232;">(...ncurses ad featuring Threads displays for 10 seconds...)
</span><span style="color:#323232;">(...ncurses ad featuring next-gen Android displays for 10 seconds...)
</span><span style="color:#323232;">Press CTRL+C to skip the ad
</span><span style="color:#323232;">[^C[^C
</span><span style="color:#323232;">Got tired from ads? Buy Adware Pro for $5.99/mo [Y/n] n
</span><span style="color:#323232;">
</span><span style="color:#323232;">ADWARE SHELL
</span><span style="color:#323232;">(C) 2023 Buy-n-Large Corp. All wrongs reserved
</span><span style="color:#323232;">---ad---
</span><span style="color:#323232;">How much do YOU think this advanced operating environment is worth?
</span><span style="color:#323232;">Just press F1 to get the answer!
</span><span style="color:#323232;">---ad---
</span><span style="color:#323232;">
</span><span style="color:#323232;">Activate Adware
</span><span style="color:#323232;">Go to Settings to Activate Adware
</span><span style="color:#323232;">% exit
</span><span style="color:#323232;">Please watch all the ads to be able to exit.
</span><span style="color:#323232;">(...ncurses ad featuring alt medicine displays for 30 seconds...)
</span><span style="color:#323232;">(...ncurses ad featuring ad-blocker for 30 seconds...)
</span><span style="color:#323232;">[^C
</span><span style="color:#323232;">Interrupt rejected. Please watch all the ads.
</span><span style="color:#323232;">[^C[^C[^D[^X[^Z[^Z[^Z (unplugs ethernet cable)
</span><span style="color:#323232;">Interrupt rejected. Please watch all the ads. Buy Adware Pro for $5.99 to allow interrupts.
</span>
Your local account has not been verified yet:
please enter your user ID, your SSN, your credit card number, your home address, your credit card’s PIN, the SHA512 hash of your bank account’s password (salted with 0x71a0 at the beginning) and the number of bytes received by your work computer’s primary network interface with a maximum error of 256kb to allow interrupts.
You haven’t seen the best part yet. They’re holding back security updates, if you don’t do this whole Pro-shit. I really don’t know how much pot their executives smoked to get that awful idea.
And like, to be fair, for personal use, you can get Pro for free, so you ‘just’ need to create an account to get a secure OS.
But yeah, you basically don’t really hear people complaining, because we simply don’t use Ubuntu. Plenty better Linux distros to choose from. I only know this shit, because my work laptop unfortunately comes with it and I’m not necessarily allowed to change it.
Security updates for packages that are so old that they aged out of official support.
Who determines how old a package needs to be before they start charging money for it?
Well they do, of course.
Tune in next year when they turn off free Snap patches.
Kinda a shit take. Canonical is very generous with licensing. They give you 5 free personal licenses per account AND they license per physical host which is practically unheard of now. Like everything is per VM or container or CPUs or sockets etc now. One pro license on an ESXi host could have hundreds of VMs and Canonical is OK with that.
Source: I work with and use ubuntu pro. Canonical’s alright in my book. More than I can say for the RHEL team
What’s possible for web apps today is insane considering where it started. I remember when AJAX was a brand new technology, and now you can do videoconferences with screenshare right in a web browser.
I think the push toward apps is because of influence from mobile. Everyone wants their own app, just like everyone wanted a dot com in the 90s. Hopefully we’ll stabilize around browsers and open standards.
Hopefully we’ll stabilize around browsers and open standards.
I would love this, but I think it will require major privacy reform. The push toward apps comes overwhelmingly from a single source: surveillance capitalism.
The push towards apps is due to a collection of corporate interests that are of dubious value to the end user.
Apple, Google, and Microsoft prefer apps over websites because they can exert much more control over their functionality and operation (as well as collect that sweet sweet 30% royalty on all digital purchases). This is why they intentionally make Home Screen bookmarks so unintuitive and inconvenient compared to downloading an app (at least on iOS and Windows; not sure about Android). They’re also more difficult to make cross-platform, although this is becoming less and less of an issue as cross-platform libraries evolve).
App developers push for apps because they’re much stickier (especially due to the aforementioned bookmark situation; it’s all very intentional). Their app is right at the user’s fingertips until they explicitly decide to delete it. For streaming services and the like, app SDKs also tend to offer more robust DRM than their browser counterparts. That’s why, e.g., Hulu cripples their streaming bandwidth on browsers like Edge while their Windows app is not, even though their Windows app is very obviously just an Edge WebView 2 window. It’s pathetic, but it’s something they can point to in a meeting with their investors and say, “See? We’re doing something about piracy!” as if one trip to a piracy website doesn’t refute all their hard work.
It took a wrong turn in the 90s. There's been no real feasible way to fix it without breaking the web for many decades now. Some things are just forever despite their problems, like QWERTY.
This meme is really only true for things like Slack where the app is just the webpage in an app, and even then it's not quite true because Electron is a lot heavier than a webpage because it has to now run the webpage and the app - which I think is terrible.
But then also, Electron enables actual apps to be developed using web standards - which I think is great.
TLDR: Use Electron to make apps, not glorified webpages.
For Slack it does. Building an app via Electron means it’s cross-platform by default, so Slack doesn’t need to invest in separate platform teams to solve the same problem (Windows, macOS, Linux).
Electron also has better support for things like native notifications, video and voice calls, offline capabilities, and to other native APIs etc that are either unsupported or spottily supported via the browser.
It’s a much more lightweight option for building cross platfrom apps than Electron. Heck, even Tauri is better than Electron even though it also uses web technologies for UI.
It has all this support for native platforms yet it’s always a clunky memory hog that makes zero effort to respect the design language of the OS it’s running on.
I’m on macOS, I want the app to be a native macOS app. If I wanted it to look like a webpage, or Windows, or Linux GTK then I’d switch to one of those and expect it to match those paradigms.
It has all this support for native platforms yet it’s always a clunky memory hog
Maybe so but it has improved a lot over time. The app devs share some responsibility too so it’s not all on Electron.
zero effort to respect the design language of the OS it’s running on.
That’s the Dev’s design choice, not a limitation of Electron.
I’m on macOS, I want the app to be a native macOS app. If I wanted it to look like a webpage, or Windows, or Linux GTK then I’d switch to one of those and expect it to match those paradigms.
I don’t disagree but at the end of the day it doesn’t matter to enough people for it to become an issue. People are used to Slack and the way it works.
Moreover the cost of building the same app 2x or 3x simply doesn’t make business sense.
I’m a web developer but is there no concept of classes, libraries, etc in other programming languages?
What happened to writing the “core” of an app that doesn’t rely on UI then simply writing the front ends for each platform you want to support?
You keep saying Electron is used for better compatibility and listing out Linux, Windows, macOS but here’s the thing — most companies are only targeting those. That’s just three (if you don’t write for a million desktops on Linux).
Is it really so hard to support just three environments with only the UI being tailored for the OS it’s running on?
Honestly, it just feels like poor tooling and a poor excuse.
What happened to writing the “core” of an app that doesn’t rely on UI then simply writing the front ends for each platform you want to support?
What do you mean? I can’t speak for Slack but I’m sure some degree of business logic / client side logic separation exists.
By the way, what you just described is the essence of cross-platform development, rather than an argument for building apps natively.
simply writing the front ends for each platform you want to support?
But why would you rewrite the “front-end” for each platform if you have one you could just port over? Who is going to pay for those 2x developers and what would be the ROI on this effort?
That’s just three (if you don’t write for a million desktops on Linux).
Is it really so hard to support just three environments with only the UI being tailored for the OS it’s running on?
In Slack’s case I’d wager the answer to be a resounding YES. I don’t think you fully grasp the full scope Slack’s capabilities, and the amount of work involved to build native clients for not just one or two, but three different platforms - it’s definitely not just the “UI”.
Honestly, it just feels like poor tooling and a poor excuse.
Quite the opposite - frameworks like Electron let’s devs with your skillset build with the stack you already know, and abstracts away quite a bit of the cross-platform complexities, which strangely enough is what you are suggesting but also what you are arguing against
@Zeragamba@QuazarOmega just because something is paranoia doesn't mean it isn't true. Whenever I turn on the DuckDuckGo "VPN" to stop tracking by third party apps, I'm amazed at how many request are happening from apps I hardly use and many I don't expect (though I should know that something can still be open source Free Software and that the open code contains surveillance capitalsm tracking in order to fund the project)
programmer_humor
Oldest
This magazine is from a federated server and may be incomplete. Browse more on the original instance.