- cross-posted to:
- programmerhumor@lemmy.ml
- cross-posted to:
- programmerhumor@lemmy.ml
isn’t it a combination of younger developers not learning to programme under the restrictions of limited memory and cpu speed, on top of employers demanding code as soon as possible rather than code that is elegant or resource efficient or even slightly planned out
Because the app stores keep adding new requirements that you have to add code to deal with and it gets worse every year and seemingly every day.
Usually, instead of having 8-bit art, you have epic songs and very high definition textures. That is a good deal of why.
I think the epic songs and 4K textures are missing in my MS Office.
Yeah but they made xlookup, that’s worth a few hundred megabytes
Textures and songs are not a thing on most apps right? For android, using Kotlin has created much bigger appsize than old java
Backed devs: sweats
#include “the_entire_fucking_internet.h”
You know we’ve reached peak bloat and stupidity when JavaScript web apps have a compilation step, and I don’t mean JIT.
I’d rather take a compile step than having no type safety in JS, even as a user.
Except… the compilation step doesn’t add type safety to JS.
As an aside, type safety hasn’t been something I truly miss in JS, despite how often it’s mentioned.
That topics always made me curious tho…take a sample AAA games back then has smaller size compared to shitty Unity 2D games nowadays and i wonder why ?
Smaller textures, more assets, and worse audio mainly. Textures used to be like 512 for hero props. Now even random objects you see a few times get a texture 16 times larger. And they get up to 4 of those for each object/group of objects. Thanks to pbr and normals and whatever other masks and lightmaps may be required.
Im sure there are more reasons for size bloat but this is from us artists at least.
Less triangles and smaller textures. Crt monitors had less resolution and practically built-in anti-aliasing so they could get away with (and had to) “worse” assets.
Also since ssd-s have become mainstream unity uses less compression so it would load relatively faster.
Basically because monitors got better, standards got higher, competition got fiercer, storage got bigger and faster, etc.
And it’s not like there weren’t shitty games before, just everybody forgot about them.
I like how the game Banished is made. From a requirenments/looks ratio it is IMO great. One guy made it. Ghosts of Tsushima also looks amazing and is great from a techical perspective, but it is heavy.
Polygons aren’t that costly, they’re just a set of coordinates and pack up well and ultra expensive highpoly stuff is avoided wherever possible by proffessionals. It’s mostly textures and maybe audio that bloats size.
Yeah but like, what new features do apps have which weren’t available in those times? Embedded videos maybe? Doesn’t justify the bloat.
Presumably less compression and fewer ways to install only necessary assets (such as only downloading audio for used languages)
Simple reason - dependencies.
Modern devs dump any dependency and sub-dependency under the sun into their project and don’t bother about optimizing it. That’s how you end up with absurdly large applications. Especially electron is a problem in this regard.
You can still write optimized and small software. However, for most businesses, it’s just not worth their time. Rather using an additional couple hundred megabytes of dependencies on the client system.
In terms of programming, absolutely some bloat there.
But I would wager a majority (or plurality) would actually be high(er) res media assets, embedded animations and video etc.
I’d wager it’s the multilevel dependency of countless prebuilt components when devs are only going to use a small fraction of their capabilities.
I don’t get paid to optimize, I get paid to implement features.
It’s the ads.
Fucking Chrome/Electron is why.
I honestly wouldn’t mind that if they could all use the exact same runtime so the apps could be a few MB each, but nooooo.
400mb iphone banking app entered the chat
See: Webview2
Unfortunately, it is extremely painful to work with😔 Enjoy rolling your own script versioning and update systems instead of using squirrel et al
Edit: I think Tauri works by targeting this and webkitgtk via their wrapper library, unfortunately I can’t get my coworkers to write rust
Isn’t that just the same pig, just wearing different makeup? I’m not a fan of msedgewebview2.exe allocating 500+ MB RAM just because Teams is open, but maybe that’s Teams fault…
Is there any alternatives to electron ? And why people’s doesn’t move on to alternatives if electron is huge & heavy resources ?
The alternative is “just serve it as a regular website”. It doesn’t need to be an app to do its job. Name a functionality which only exists in electron but not in the standard browser API.
I mean, Object Pascal was doing the “write once, run anywhere” thing decades ago. Java, too. The former, especially, can make very small programs with big features.
Java (and Object Pascal, I’m assuming) have very old-looking UIs. Discord’s gonna have trouble attracting users if their client looks like a billing system from 2005. Also, what do you do about the web client? Implement the UI once in HTML/CSS/JS, and again in JForms?
So if you’re picking one UI to make cross-platform, and you need a web client, do you pick JForms and make it work on the web? or React and make it work on desktop?
Yea, electron has flaws, but it’s basically the only way to make a truly cross platform native and web app. I would rather take a larger installed size and actually have apps that are available everywhere.
The sad truth is there aren’t enough developers to go around to make sleek native apps for every platform, so something that significantly frees dev time is a great real world solution for that.
programming as a profession is full of incompetent failchildren, like all highly paid positions
Don’t sell yourself short, your low paid profession is also full of incompetent fail children
touched a nerve did i?
uh, please do ask, why does opening a fucking glorified text and image processing app require 1 gigabyte of ram.
Who wrote this software? The guy from the bible who was the model for greed and gluttony? Jesus christ.
I don’t remember those being particularly emphasised traits of his.
deleted by creator
It’s like Moore’s law. The number of bytes for a basic app doubles every 2.5 years.
When I was young, we’d get a few different games games on a single 1.4 Mb floppy disk. The games were simpler, sure, but exactly the same games now would be far bigger in bytes.
At least games make sense, as the graphics get better. Though in some cases, the compression is also better. Like PS5 games are smaller on average than their PS4 versions, even though they have higher resolution textures in most cases, just because the PS5 has better compression/decompression tech.
Like PS5 games are smaller on average than their PS4 versions
My favorite example of this is Subnautica. The system didn’t call on the assets as quickly, or a different way I can’t remember all of the details but essentially they had to put like five copies of every asset on the ps4 version to get it to run properly. The ps5 accesses the assets fast enough it only needs one copy. At least that’s how it was explained to me.
Better than that, the lack of reliance on spinning disks means that asset duplication and data read order is less of a requirement to reduce load times. It can still be argued that there’s just too many polygons, since simply scaling things back would be plenty effective in reducing storage usage and load times.
The other problem for bigger GB games is texture resolution. Games don’t always need 8K or 4K textures. 2K is good enough.
I only notice that the bigger the resolution, the smaller the text when the game in question has poor scaling options for the 2D elements…
My shitty eyes can’t detect any difference past 720p
deleted by creator
Compression is mostly done in software.
uh, bad news for you.
All programming is done in software my guy.
Games is the one example that actually makes sense though. The game code size hasn’t really increased tremendously, but the uncompressed assets have only gotten more detailed and more numerous.
There’s lots of valid reasons for this.
Imo the biggest one people don’t account for is this: Dev salaries are incredibly high. if you want fast performance the most optimal way would be to target the platform and use low level native code, so C++ or Swift.
It would cost you like 20x more than just using electron and it will cost you bigly if you have multiple platforms to maintain.
So it turns out having 1 team crunching out an app on electron with hundreds of dependencies is cheaper, naturally that’s what most companies will do.
Don’t want to use electron ? Then it’s kind of the same issue except this time you’re using Java and C# and you have to handle platform specific things on your own (think audio libraries for example). It’s definitely doable but will be more costly than using a cross platform chromium app.
Technically there is no “most optimal”. Optimal is basically best.
The hp printer app says it needs your location to connect to WiFi. It says it needs your location all the time when not using the app, again to connect to WiFi
I think that’s to do with how permissions work.
Having wi-fi access can technically tell the app where you’re located so you need to give it location access
Which is stupid because it then also gets GPS access.
Can confirm.
Now, I just need to know why my calculator needs access to my contacts.
That’s because it gets lonely and needs someone to text.
It’s just that we have to make space for our 5,358 partners and the telemetry data they need.
That still wouldn’t account for it. The code to collect this is tiny and the data isn’t stored locally. The whole point is for them to suck it up into their massive dataset.
* legitimate telemetry data
Legitimate interest to train AI
I just updated Epic Games Launcher. BEHOLD:
1st update
2nd update
Almost a gigabyte for a mostly blank interface, wtf.
i have a better one, corsair ICUE. 4gb for a fucking png simulator.
God, I hate Corsair. Not only do you need to download their garbage software to fucking turn off the RGB on a headset, you have to have it running or the RGB will turn on again!
OpenRGB was my solution to almost all my RBG woes. It doesn’t work for everything but they have a compatibility page and it’s like 5-10mb.
Thanks for sharing that. My device isn’t listed, but I’d be surprised if Corsair changed how their shit works that much between devices. I’ll give it a try (it supposedly even works on Linux <3)