Hacker News new | past | comments | ask | show | jobs | submit login

Everything is now a bloated Electron app where all the features have been deleted. Try comparing Spotify to Amarok/Foobar/Clementine.

Even Firefox seems to just keep stripping out useful functionality for power users for some bizarre reason, no more full themes, limited extension APIs, poor UI customization and less advanced features like "view image", it's like they're trying to alienate their most dedicated fanbase in an attempt to steal some marketshare back from Chrome.

Microsoft Teams runs so poorly on my work laptop that it's barely usable and lacks simple features like Push-to-Talk.




> Everything is now a bloated Electron app where all the features have been deleted

Good cross-platform UI is hard, and web technology is seen as an "easy" way out because you can hire plenty of resources and yes -- it does seem silly to reinvent the wheel when HTML/CSS have implemented something already. Electron is basically the Java Applets/AWT/Swing of our time, because it lets teams prioritize features and delivery speed over great, performant, UX. And to be fair, for simple use cases, it's works well. But when you're at the level of MS Teams, I absolutely agree -- that app could be far better tuned. It actually runs much better inside a browser or in the native iOS app, which is a giant middle finger to Microsoft's platform ambitions -- it's like they're not even incentivizing people to take advantage of Windows.

Deleting or not including features is a separate "thing" though, I feel. Gnome had it with Nautilus, for instance -- it's definitely not solely an Electron thing. It's the "designer knows best" mentality that fails to strike a good balance between simplicity and customizability, and not taking the time to understand what users want.

Interestingly, Zoom (ignoring their various other issues) is a company that seems to do this well. They have a reasonably good UX to start with, but they don't shy away from offering more options and features if you so want. And they try to offer a decent native experience on Windows and iOS [I haven't tried them on macOS], as well as web, although of course the pure web experience could be far better. I think there's a lesson there for Microsoft, which got a good chunk of their lunch eaten by Zoom twice over (Skype and Teams, at least in video-conferencing -- Teams is of course quite successful in team collaboration) and also for browser-based Google Meet: ignoring good UX in favour of a lowest-common-denominator interface just creates space for competitors.


if you miss the old nautilus, just install caja, the MATE fork of it from before they mucked it up. That's the nice thing about open source.


> where all the features have been deleted

We're never going to go back to the old days. Back then desktop computing was 100% of end user computing and everyone assumed all users end up as power users.

Now desktop computing is ~30% of end user computing and shrinking and we realize that most people have absolutely no desire to become power users. It's not that they can't, they don't want to (think other interests, anti-intellectualism, etc).

Also mobile computing by its nature (being on the move, having to pay attention to real life, constrained hardware interfaces) requires simplified UIs.


Then what software is there for us who do wish to be power users? If it gets eliminated through atrophy, that is yet another example of market failure.


Old software, software developed by passionate devs, software developed by small companies.

And, yes, the market is shrinking and you can see the rust spots. Pidgin used to be a top-notch multi-messenger, now it's a ghost town. Just one example.

I don't know what the end state is, but I can't imagine it's pretty, especially since fewer and fewer people will use desktops/laptops, both as absolute numbers and as percentages.


The future is clearly cross platform where you meet the customer where they are...mobile, desktop, web. Maybe the application morphs a bit by including or excluding features for various platforms but there is no way to proclaim that there is one platform you can focus on to the exclusion of others in a general sense.

If I'm writing serious business software the web and desktop are king and quickly becoming synonymous given technologies like xamarin forms, ionic, and electron. I'm building an app in ionic using html/css/JavaScript (angular) that is primarily for desktop (electron) but will deploy to mobile and web, allowing me to meet people where and how they want to work.


Heck, most UI elements aren't even resizable. A standard feature of "obsolete old" UIs is now nowhere to be found as I wrestle trying to fit all the text into sidebars.


Damn Amarok is so good, the Windows app pale in comparison to this. I had a blast while I first installed my Kubuntu machine.


Amarok 1.4 was so good that I switched to linux for it, even bought a t-shirt. Amarok 2 was what made me leave. I've toyed a bit with quodlibet and clementine, but for me 1.4 was the peak music player.


To be honest I wasn't on Linux yet during 1.4 ( had a quick look to Wikipedia ) So I guess I tried it for the first time when it was already in 2.0 The logo is so nice tho, no wonder buying a t-shirt look justified ahah


>Amarok

It was so good that it was the first project i gave some money, then they killed the database connection...i was pretty angry at them, never used it since then.


Spotify is a music streaming service.

These other apps are for curating your own audio files.

Also what does "bloated election app" mean? Because it seems like it's just a meme at this point.

I'm using the desktop app right now. It's using 160mb of ram and it's very responsive.

Teams is just a bad application.

A lot of shitty "enterprise" software is written in Java. If I started saying Java = Bad software. I'm sure many people would disagree.


> Spotify is a music streaming service.

I don't understand this objection. Every time people say "software is slow today: compare Spotify to Winamp/Xmms", the objectiion is that Spotify isn't Xmms, it's a music streaming service. But so what? Why can't a music streaming service be fast to start up? It's already a thick client. My life isn't going to end if I can start playing music within milliseconds but the playlist is a few tracks different compared to a hypothetical playlist that was hypothetically edited on another computer which doesn't exist because I use spotify exclusively on my phone.

There is something about Spotify that means if I play a track for the first time it will have to wait a few seconds to start streaming. But what is it about Spotify that means that it takes several times longer to start playing the same track I was listening to just before it crashed compared to how long Winamp took?

> I'm using the desktop app right now. It's using 160mb of ram and it's very responsive.

This feels a little like it's meant to be irony, except that you clearly mean it seriously. You don't see anything wrong with a webservice client that has local caches using 160 MB ram? And you think that's not bloated, in comparison to a music player that ran on a machine which had 8 MB ram - even for the operating system?

My experience with Spotify is that it's basically a loading symbol. I more or less switch between two playlists (Discover Weekly and Liked Songs, with occasional forreys into the albums of tracks I hear and like). Every time it gets kicked out of memory - which happens extremely fast on my phone with 8 GB ram - it takes ages to get back up to the point it was before. (Compared to my podcast app (Antenna Pod), which only gets kicked out of memory over night when everything seems to, and which is fast and responsive even when just starting.)


You are right. The ways in which it is terrible are obvious, but they have not been fixed. That suggests architectural or legal problems (likely in some song data/song license sync and prefetch model).

Spotify isn't really a song player. It is a song license management system with arbitrary playlists referencing song data whose licensing may change.

You want to access the same data under the same license. Spotify isn't sure the license hasn't changed since it last started streaming to you.

The misery of such a system is exacerbated by buggy client software.

Maybe if the Spotify API was more like the Stripe of music licensing systems, you'd sideload your own client.


The real question is why does a service require a specific program to use it.


As far as I remember you can use Spotify in browser, so it’s not true.

I don’t really understand the rant about Spotify. In my experience it’s one of the “good” modern apps. One of the amazing features that it has is the remote playback control - I can listen to the music from my PS4 and control it from any of my devices that have Spotify installed.

What they could do better is the playlist organizer, the existing one is too simple.

I mostly agree that the overall quality of the modern software is subpar, comparing to the gems from the past (vim, emacs, winamp, vlc, etc), but Spotify is more or less fine.


The Spotify application displays album art as images in a screen.

They are relatively high resolution. That look good on my 4k screen.

How much ram do those decoded assets take up?

Your 8MB ram computer would not handle network streaming, decoding 320kbs/s audio, displaying a high resolution UI, etc.

The comparison is ridiculous.

There's a difference between today where people use 4k displays to back in the days when 1024x768 was high end. That's 10x the amount of pixels.

-

Also your complaints seem to be about the speed of your internet connection.

The average person does not wait multiple seconds to play a song.

Reduce the quality of your streaming if you want it to be more responsive.

--

Also your phone seems to be a bad phone.

Storage speed and CPU power are also factors in how fast a device runs software.

My 3 year old Note 9 works perfectly fine.


> Also what does "bloated election app" mean? Because it seems like it's just a meme at this point.

It means the memory and CPU consumption could be reduced had it was written using more lightweight framework like C#/.NET, C++, or something else, like PWA in browser instead of a full, seperate, single Chromium instance for one app.


The alternative is building a web app that requires the browser anyway. The compiled language route is going to require a tremendous amount of work to accomplish what you get for free (save for extra client resource useage) developing for electron.

You can build or port a web app to electron using mature and productive tools (html/css/boostrap/typescript/angular...god forbid React). What's more to say.

The compiled language ecosphere requires each their own set of tools for each platform. Beside electron the next best cross platform framework (xamarin forms) uses proprietryish UI document description (XAML) requiring the developer to work through another huge learning curve.


Ultimately the performance loss means more productive developers and faster new features for applications.

Especially in a time when smartphones are the main platform for most consumers.


Since we are talking notepad++, it takes up 11mb of disk space, the instance I have open here with 45 documents takes up 6.6mb of memory.

Winamp was already mentioned in another comment. While 160mb is "fine" on 16gb systems, it's still much more than similar apps used to take up and will not be much fun on a 4gb system, which is what many not so technical people still use daily.


Winamp 5.0 worked on a 400 mhz Pentium II with 64 MB of memory (total) and was crazy responsive, while also being capable of much more than the modern Spotify app


You are generalizing too much. Spotify has to cover way more than just playback etc., it's a streaming service, the client is only a small part.

As a whole Spotify includes way more functionality than winamp, they have completely different goals though. Winamp is a player, Spotify is a service. Nobody would use Spotify as a pure music client, you can't really compare them.


Winamp could handle streaming with plugins, hell even the XP era version of Windows Media Player could handle streaming from network sources. Spotify makes it easy to search for music and easy to share playlists with friends, but that's about it for features it has that music player apps from nearly 20 years ago don't. Oh and it has ads too I guess?


That's kinda the point they're trying to make, though: That we had simple stuff that worked fine, now we have complex stuff that often don't.


Worked fine for who? I enjoy Spotify so much more than the good ol' days of foobar2000 and then like.

- I can play any song or podcast that I want without ordering a CD (that I couldn't afford as a kid) or opening up a torrent client.

- Curation is taken care of. Every song I've ever "liked" or added to a playlist is available on any of my devices, without me having to worry about syncing.

- I can discover music similar to an artist or song with Song Radio. I have curated playlists created for me based on my tastes (Discover Weekly).

- I can cast to any other device, like a Sound bar.

- I can run this application on Mac, Linux and Windows and it works without a hitch on all 3. I remember back when native applications simply didn't appear on Linux. Skype was the dominant video calling service and it simply didn't work on Linux. Now you can choose the OS that you want knowing that all software will work, without mucking around with Wine.

There's two kinds of people - those that pretend that Spotify and others don't have any new features compared to Winamp 5.0. The second kind pretend that these features are useless or no one wants them. Nope, I like the status quo just fine. So do tens of millions of others.

All of that software is still available. Download Winamp (https://www.winamp.com) or whatever other "lightweight" players you want. Fact is, people voted with their wallets and they went with the streaming services that use electron for their clients.


I believe this is the important part "I want without ordering a CD (that I couldn't afford as a kid)"

Spotify makes it cheap to use without ownership - like uber basically - and millions do like that.

I blame the greedy music business that really didn't want to sell singles.

They've been forced to change - partially thanks to amazon and apple - but they embraced the change too late, and instead change was forced upon them.

The music biz could of made a version of limewire where people could pay for songs at a fair price and get top quality.. take advantage of the curation people were doing, and more - but they went to courts to block instead.

There's more than 2 kinds of people.

Some people voted with their wallets for MusicMatch Jukebox 7.1 - then yahoo took it, ruined it, then killed it.

Many people are voting with their wallets to borrow music from a fancy playlist company - that's cool -and I'm glad it exists. I prefer to own music that I can put on different devices myself and access anywhere anytime without an internet connection or worrying that my license key is not valid.

FI android did AirDrop I think the tide would be different. Amazon an excellent buy digital audio options (via computer) - sadly they make it very hard to download and own digital mp3s using the android app -

I get that some of these decisions are based on the whole - push them to the subscription /rent to use model where we win having lots of people who use it little.. but I prefer to download to the computer unzip and plugin a cable to transfer.

So while tech of the yesteryear is fine, some of the 'modern tech' is purposefully handicapping in some ways - and sometimes they are doing so to keep people hooked on drip-to-use-not-own-rent-forever models.

The good is that more people can enjoy more music - so yay spotify. The bad is that I don't think it's as good for the bands, and depending on the magic wifi can leave you high and dry when you need tunes the most - but at least you'll have a few dollars in your pocket :)

That rent and never own economy is good for some things, but it's not for everything for everybody.


I remember using and liking Winamp, but I didn't use it for anything other than playing music files. How was/is Winamp more capable than the Spotify app?


Winamp has tons of really powerful plugins. You can use them to play all kinds of strange file formats. One I really like is SNESAmp [1], a plug-in for playing Super Nintendo game music.

Another Winamp plug-in that’s incredibly useful is the disk-writer, included with the application. With it you can use any of the input plugins to transcode files to uncompressed WAV format.

[1] http://alpha-ii.com/Download/Main.html#SNESamp


Thanks for the reply, those features are pretty cool.


The various visualization plugins were cool.

Streamripper.

Others can't remember atm. Good times hunting through the plugins and themes.


And it worked only on Windows


I bet it would work unmodified on Wine.


> It's using 160mb of ram

And that is acceptable for a music player ???.


Maximised on my 4k display I see 26 album arts which look high resolution. How much ram would that take decoded?

There's also the song data for what's playing now and next song.

You don't seem to understand what the application is doing.


Just show and play my music and not drag along the entire Chrome web browser to do that.


The chrome rendering engine plus node js.

Why is that so different from Java or .NET?

Simply because it's an easy meme.


A standard length flac is easily 30mb and presumably the player keeps the current and potentially next in memory. Add in a few high res icons for album art and you can get 100mb before the UI... exists. It's great that Winamp could play your 128k mp3s and show your text only list in the 00s, but it's not like expectations haven't gone up in a way that contributes to memory use


> Also what does "bloated election app" mean?

It means (1) high memory usage (although people are ridiculously oversensitive about this relative to CPU use) (2) long startup times (3) high ambient CPU usage and (4) a high-latency interface (on average machines - anything is snappy on a brand-new $1k M1 Macbook Air).

> and it's very responsive

On what CPU? Will it still be responsive on a 8-year-old Core i5 on one of my Thinkpads?


The problem is that your 8 year old ThinkPad is less powerful than a $300 smartphone.

Electron will be using GPU rendering.

What kind of GPU performance does your 8 year old laptop have?

Probably a minimum of 5x less performance than a smart phone.


> your 8 year old ThinkPad is less powerful than a $300 smartphone

What does "more powerful" even mean? If you mean "better single-threaded CPU performance", I absolutely don't believe you. If you mean "better multi-threaded CPU performance", I might believe you, but would need evidence.

Moreover, that's irrelevant. I, and everyone else who talks about "bloated Electron apps" (including in this thread) is almost exclusively referring to desktop applications. Why would we be talking about running Electron on a smartphone?

> Electron will be using GPU rendering.

Sure. Can you show that CPU usage will still be low? In my experience with Electron applications on a newer laptop with decent graphics (can play Dota 2), CPU usage is still 15% of a single core while literally nothing is happening.


A Samsung A51 is a budget phone:

https://browser.geekbench.com/android_devices/samsung-galaxy...

Similar performance to an average Haswell Laptop CPU.

https://browser.geekbench.com/processors/intel-core-i7-4600u

Also it has the Intel 4000 series. This GPU lagged in rendering the windows desktop on 1080. Let alone with a dual monitor setup.

It's not irrelevant. My point is that your ancient CPU with a horrible GPU is less powerful than a mid range smart phone.

Or a secondhand flagship.

There needs to come a point where you accept that your hardware is crap not the software.

Dota 2 is 7 years old. It wasn't decent graphics back in 2013. You may as well have said that the laptop runs minesweeper with decent graphics.

Go load up Genshin Impact. It runs on smartphones, but I imagine might set your new laptop on fire.

Why is your 15% thing the fault of electron? Microsoft teams is a crap application it's not the frameworks fault.

I'd say the majority of shitty applications I've used is coded in Java.

I've used plenty of enterprise tools that spit out the lovely error message "NullPointerException"

Is it fair to say that all apps coded with Java is shit?

But also where are you getting your 15% from?


Alright, I'll take your benchmarks. Thank you.

However, it doesn't matter.

> It's not irrelevant. My point is that your ancient CPU with a horrible GPU is less powerful than a mid range smart phone.

I literally pointed out exactly why it's irrelevant, and you completely ignored me. I'll point it out again:

> I, and everyone else who talks about "bloated Electron apps" (including in this thread) is almost exclusively referring to desktop applications.

Comparing phones to laptops is an apples-to-oranges comparison. It doesn't matter if a low-end phone might be able to run an Electron app well, because we're not talking about low-end phones - the discussion in this thread, as well as almost every other thread that refers to "bloated Electron applications", is talking exclusively about desktops.

If your "point is that your ancient CPU with a horrible GPU is less powerful than a mid range smart phone", then your point is also irrelevant for the purposes of people talking about bloated Electron apps, because almost none of them are discussing phones.

> There needs to come a point where you accept that your hardware is crap not the software.

Yes, and 7-year-old hardware is not that point for these programs - maybe for ML training, but not chat apps. That point only occurs when hardware is slow enough that the algorithms needed to run the core functionality cannot run quickly on it. Software that does not make efficient use of its hardware is crap. Electron does not make efficient use of its hardware.

Electron is either crap, or makes it so easy to write crap that it might as well be. There's a reason that you see people so often complaining about it, and that's because it's so inefficient that it causes a noticeably poor user experience, even for developers running on mid-range devices (which makes it far worse on low-end devices).

As evidence, Ripcord[1] offers a substantial subset of the features of Discord and Slack[2] with significantly better performance. The fact that it's made by a single person and yet manages to significantly out-perform large teams of (ostensibly) competent engineers while still implementing the core functionality provides strong evidence that it is the framework's fault, because it's clearly not because those features are somehow intrinsically computationally expensive to implement.

> I'd say the majority of shitty applications I've used is coded in Java.

Yes, and I think that Java is a terrible platform, too, speaking from experience with Minecraft, GNU Electric, Netbeans, and Eclipse. That doesn't make Electron any less bad.

> Is it fair to say that all apps coded with Java is shit?

Nobody said that they (or Electron apps) are. All of the complaints that I've seen, including mine, is that Electron generally has terrible performance, strongly encourages bad performance, that all major applications built in it are slow, and while it might be possible to build fast tools in it, we haven't seen them.

> But also where are you getting your 15% from?

...literally the CPU usage of Discord while it's running.

[1] https://cancel.fm/ripcord/ [2] https://dev.cancel.fm/service_features


> Spotify is a music streaming service.

That being said, I stream Spotify music through foobar using an external plugin, mainly because it is so light. Yeah, it isn't perfect, but if there was a demand for a light app, it is perfectly possible.


Can it access Spotify playlists, or just local ones? I've been looking for alternative Spotify desktop clients but I've never found anything I like.


You can put in a Spotify playlist link, and pull in all the songs from that into a local playlist, but it can't directly play a remote playlist (i.e. updating when new songs are added).


right? sure there are a lot of buggy slow electron apps but isn't vscode built on electron too? that's the smoothest program on my pc right now


Electron is Flash for the Desktop.

https://josephg.com/blog/electron-is-flash-for-the-desktop/

While I don't appreciate most of Apples business strategies, I have to admit that Steve Jobs was right about banning Flash. It was eating the battery runtime of MacBooks. And Steve Jobs would have banned[1] Electron probably already years ago, because it is consuming so much memory.

But especially so many big tech companies use Electron? The UI is non native, the JavaScript doesn't offer best performance, the binaries are big and the memory consumption is high. First, because some companies we're in need for a replacement of Flash[2]. Second, web developers are cheap. Third, it reduces time to market. Especially the big tech companies are "monopoly mode" - gather quicker more users than others and dominate.

Who pays? You, at least three times:

* Bad usability, slow execution and awkward UI

* Hardware requirements. You have to buy more RAM. In case of most laptops with soldered RAM you have to buy new laptops.

* Either they take or data or your license fees

I don't claim that platform native developers will code more efficient but developers who can code in C, C++, Rust or even Python can provide you with fast, small and slick applications where you don't have to wait until some JS loads the textblock for some placeholder while your scrolling - their applications aren't even faster necessarily. Likely these developers keep their data locally, update this data when appropriate (keyboard, file or network) and don't launch an entire web-browser. I recommend providing a base foundation and using a native toolkit of the platform, either Gtk or Qt[3]. This is not a new recommendation, the issue is that the industry prefers to ignores well known, recommend practices.

Now. Microsoft Teams?

+ Available on Linux

+ Quick and easy installation via Flatpak

o You can spend a lot of money for integrations

- Quoting is not possible on desktop

- Slow startup

- Fullscreen hidden instead of using "l" or "F11" keys

- Notifications Management is a maze of options

[1] Not fully correct. Electron is forbidden on iOS because it is a full blown webbrowser. Maybe also for less well meant reasons.

[2] History repeats. They refuse to learn?

[3] Actually Google did that. Chrome used on Linux Gtk, on MacOS it used Quartz and on Windows some layer to Win32. It was a fast and lean and the UI was native.


It's really like Groundhog Day, for those who are to young, we had Java-Apps (terrible slow in the early days), then massive web-apps and now electron, in the mean time every professional application stayed at TUI's (banks/insurance/booking-systems), it's the same with os-installers...do i really need a flutter based installer? No it's bullshit, just give me a well structured text installer, no gui needed for that job. Why is the Terminal still a thing when browsers are so much better at everything ;)


TUIs are wonderful. They are easy to grasp, fast and restrict requirements, everyone involved must think about the workflow and efficient usage. Input is focused entirely on the keyboard. Linux overs some modern TUIs e.g. installer, apt-stuff or the kernel config aside from that:

https://invisible-island.net/ncurses/ // classic

https://github.com/willmcgugan/rich // blingbling

https://github.com/dankamongmen/notcurses // hacker

For the old stuff I recommend looking close at airports, savings-banks or part-dealers. When it is influenced by mainframes you will notice likely forwards/backwards is done by F7/F8. How do you depict an plane with seats in TUI? I assume an array, 80 rows and 10 columns ;)

I'm impressed how flawless elderly co-workers work with TUIs. They read the screen, think and type and the work is done. I guess the straight workflow, clean user-interface and similarities to paper forms improve usability. I guess modal dialogs, popup warnings, status icons, right click and the modern long press are not an improvement in usability. And the many tiny icons and bars in modern text processors aren't a help either.

I think we can learn a lot more from old programmers.


>I assume an array, 80 rows and 10 columns

No you just need front, middle, back, window, handicap? and how many seats next to each other for your travel buddy's. That's the cool thing, no need to use your mouse, no need to show more information than needed for the job.


Tried teams on Linux. Its terrible, my machine runs solidly, hardly ever restart it. I open teams, 80% of the time it will start up then the machine starts running slow, teams ui goes unresponsive and then whole machine locks up and i need to power off at the powee button. Only ever happens if I open teams.


I would much rather have a native (and M1 ready) client for Teams and Discord than the Electron apps. Electron is good for end users via Nativefier, though. I can pop together a sandboxed app, invokable like any other program on my computer, for work-related sites that I want absolutely segregated from my daily browsing habits (and thus political, religious, and personal opinions).




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: