16

Must nearly every recently-made piece of software be terrible?

Firefox runs terribly slowly on a four-core 1.6GHz processor when given eight (8) gigabytes of RAM. Discord's user interface is awfully slow and uses unnecessary animations. Google's stuff is just falling apart; a toaster notification regarding MRO stock was recently pushed such that some markup elements of this notification were visible in the notification, the download links which are generated by Google Drive have sometimes returned error 404, and Google's software is overall sluggish and somewhat unstable. Today, an Android phone failed to update the Google Drive application... and failed to return a meaningful error message. Comprehensive manuals appear to be increasingly often not provided. Microsoft began to digest Windows after Windows XP was released.

Laziness is not virtuous.

For all computer programs, a computer program should be written such that this computer program performs well on reasonably terrible hardware... and kept simple. The UNIX philosophy is woefully underappreciated.

Comments
  • 23
    "The most amazing achievement of the computer software industry is its continuing cancellation of the steady and staggering gains made by the computer hardware industry."
    — Henry Petroski
  • 18
    The problem is that too many SW devs have no idea what they're doing because they neither know nor care what's going on under the hood.
  • 19
    We flood the industry with people who don't care about the math, and only care about an easy paycheck and how fast they can get work done. And then we act surprised when every piece of software is shit.
  • 8
    @SortOfTested and @Fast-Nop: Stiff educational requirements are probably not helping things, either; for all men, for all subjects, that a man passes a class regarding a subject does not imply that this man understands ths subject.
  • 6
    @varikvalefor
    I don't have stiff educational requirements. I have stiff knowledge and fundamentals requirements, however you meet them.
  • 2
    @SortOfTested: Demanding competence is only reasonable.
  • 8
    We've traded execution speed for fast and cheap development. I also wish apps were more performant, but that takes time and money to do right... Maybe it's not an excuse for programs as big as firefox and companies as big as google, but I don't think we can blame a solo developer or small company for using electron instead of qt if it gets their projects off the ground.
  • 1
    Which cpu are we talking about?
  • 2
    The word “terrible” sounds so pleasant if you think about it. It’s like petting a cat and they purrs, like terrrrrible. Forget the meaning and focus on how it sounds. Also it’s perfectly balanced visually, that small saw-like pattern with that rr bottom and the same pattern with that ibl top. It’s just so beautiful
  • 0
    @uyouthe I think you're pronouncing it wrong...
  • 2
    @neeno
    I'm going to be mildly salacious here and present the following article as an argument:

    https://theatlantic.com/article/...

    Just replace the words "trash" and "waste" with code, and the words "streets," "rivers" and "dumps" with your user's computers.
  • 1
    @neeno Russian r
  • 5
    I wanted to create a small backlight control widget for my clevo laptop (tuxedo-backlight-control) and learnt Python Tkinter in order not to require a 40MB electron download.

    However I realised how much easier and more expressive the web stack is in the process. Not to mention the insanely time-consuming requirements that some Linux distro's have for making a pkg available in a contrib repo.

    Yet there are some first-in-class electron apps (Typora markdown editor), so I conclude the webstack is too forgiving for undisciplined devs
  • 4
    @webketje
    Typora might not be the best example. I like it, but it uses more ram and threads at idle with nothing open than my production APIs.
  • 3
    I'm using Discord, VLC with a Youtube stream (bcuz chrome/firefox rendering is too demanding), firefox with 2 active, 20~ passive tabs and ATMEL Studio 7.

    Dual core 2.3GHz, APU, 4GB ddr4. OEM profile throttles in 60°C and still, I don't reach that temp in that said working environment.

    Also, discord-> settings-> appearence-> disable Sync with Computer and enable Reduced Motion.

    Oh btw, whatever you do, don't choose gifs in discord's popup box. IT LAGS HELLA MUCH. AND IT LAGS WHEN DISCORD IS THE ONLY PROGRAM RUNNING

    FUCK EMBEDDED TENOR GIFS

    Also, replace thermals and dust the dust off. Clean your computer.
  • 2
    For Google of the thing doesn't work, yeah their universal catch is...to just do nothing, as company policy it feels like...
  • 0
    @neeno: I agree; the extent to which I am willing to pardon small teams for creating slow programs is greater than the extent to which I am willing to pardon large teams for creating slow programs.
  • 1
    @melezorus34: Shit. My terminal has no fans.

    I have already enabled the "reduced motion" thing in Discord's settings. The problem persists.
  • 0
    @electrineer: The terminal on which I run Discord uses an Intel i5-2520M.
  • 0
    @varikvalefor that's a dual core with a base frequency of 2.50 GHz
  • 1
    @SortOfTested I don't really see how this article is relevant or a counter-argument to my argument, could you elaborate?

    I'm just saying there's currently a trade-off of app speed for quantity, which makes possible the existence of millions of apps for all sorts of stuff, but it doesn't excuse big companies having slow apps.

    I'd rather be able to find an app that does what I want while being a bit slow than having performant apps but none that do what I want.
  • 4
    @neeno

    I recall reading a story written by a dev and founder. They toiled away for years with some very patient investors. They picked up some customers but really wanted to get it 'right' before opening up and really perusing new customers.

    One day this other company scooped up all their customers within a few months. They got to see their competition and were shocked how bad it was...

    The competition was Salseforce who had just shown up ...

    The founder later lamented that he felt the real difference was that he hung on to some ideals about code quality and etc... while his competition actually just released their product regardless.

    Now my handful of encounters with Salseforce were horrific, but other dude closed shop... not so much Salseforce.
  • 7
    @neeno
    The vast majority of devs are small teams or solo devs churning out fast, cheap code. If everyone assumes quality, performance and resource utilization is not their problem, but the problem of people who have attributes they don't possess, you eventually end up living in giant piles of garbage.

    Eventually people grow used to the garbage and come to accept it, and then think that's just how it has to be. They train people to make garbage software, and everyone begins to laugh at the very idea of quality.
  • 1
    @SortOfTested oh I see, you have a good point and I agree with you.

    I think there is a sweet spot between good software and development speed. Small companies can't afford to make well engineered/optimized applications (like the company @N00bPancakes mentioned), unless it's critical to the product (a cloud service for example), but once you hit the point at which tech debt is greater than the benefit of dev speed, it's not worth it anymore (and it might even slow down dev speed). Also, I think only the initial version should be "crappy", after the company has established itself it would be very beneficial (both to the company and the users) rewriting the thing in clean code.

    Side note: I think we have changed the subject here a bit, the original discussion was performance or UX, not code quality.
  • 1
    @neeno
    Yep, I've been trying it short for that reason. I type fast, so I can bury topics in books if I'm not careful.
  • 0
    @Root Wonderful quote. I hope that such affirmation will keep running our jobs openings 😂
  • 1
    And I couldn't agree more with your post. My laptop has 8 cores and 16GB RAM yet Ubuntu's Gnome 3 can't make be fluid with 9 open windows. Spotify, Brave browser, Slack, and bunch of terminals. Terminals. Freaking terminals. 8 cores. 16GB RAM. Freaking terminals.
  • 2
    A while ago I was ranting with a person while I was videochatting, the quality was super crappy, lots of frames loss, it was not a conversation at all. I thought...

    The first time I did videoconferencing was with Windows Netmeeting (remember that shit?) Over a 56K modem with a real connection of 34K. And I could talk (video and audio) with my Uncle on the other side of the ocean. Yes, 320x240 resolution. But we were having a conversation.

    2020 - 200Mb/s symmetrical fibber, damn WiFi. Better networking equipments in general, no noisy copper lines.

    And my phone struggled to make video call. It was like 1 frame every 2/3 seconds. Not to mention the audio lagging.

    WHAT THE FUCK WENT WRONG???

    I guess what somebody here says... they don't care about the math anymore.
  • 1
    I have been facing the Google Drive issue for quite some time on my new Samsung Phone. I maintain a Drive which requires view permission. Every time someone requests I get a notification to allow. Every time I click that, Drive crashes. I can only accept via mail.
    Another thing I observed, if you use Google Meet and if someone switches on the camera or switches off you can see 2 videos of someone else with different names on it.

    For example A,B,C and D are in a video call and C switches on his video, for a few seconds you can see D's video with C's name and at the same time D's video with D's name on it. It's a bug I have witnessed as well as my colleagues.

    Instead of trying to introduce new stuff Google should work to improving them
  • 4
    It gets only worse once web shit is involved because devs are so incompetent that they think bandwidth can address latency. Only that they actually don't even know what latency is.
  • 3
    @Fast-Nop A while ago I worked remote in Cuba. The best internet you can get there is ADSL 1mbps. Yes. And thank whatever deity you believe in they have that.

    I couldn't believe the amount of web services that crashed or didn't worked at all. Because effectively they were designed by people with blazing fast internet connections (and sure.. powerful PCs)

    Few people take into account just what you say, latency, LOTS of packet loss (Hello UDP apps), government-proxy-in-the-middle, closed ports (that should be open in any other damn country) and a plethora bullshit happens in a very crappy internet connection.

    Don't even mention what happens when that whole shit needs to be encapsulated in VPN packets.

    The beach after work was nice tough.

    Fun fact: I setup an Iodine server for avoiding some censorship with IPoverDNS... boy.. they even have a limit for subdomains length. Didn't work in everyplace the damn IPoDNS.

    If I had a company and wanted a real optimized app I'd send'em to Cuba.
  • 2
    @N00bPancakes this is very true.

    Its basically the customers that drive this.

    They want tomorrow’s tech today.

    As long as first to market is more important to customers than quality, integrity and security, good software will be a niche thing.

    Firefox strived for maximum compliance and due to microsoft dragging their feet with IE6 they succeeded.

    Then came google that prioritized speed over memory, more or less leaving all old hardware behind, and they ran past FF so fast that FF had the option to either try to catch up or close shop.

    And with the intention to keep offering an alternative to avoid one browser getting to dictate the web again they put the high gear in and yes, this means really old or weak computers can have a problem.

    But thats the way customers drive the market :/

    Of cause you could make faster less resource hogging software, but there will not be much market left.

    Also ;) both FF and Chrome of today is many orders of magnitude faster and less memory hungry than just a few years ago, but the pages more than makes up for that by cramming so much more into each page :P

    Thats google current focus, using their search engine algorithm penalize pages that are to heavy.

    I am not sure I really like to have one browser company driving that effort even if it helps out sometimes.
  • 2
    I find my 6c6t 3.3Ghz cpu with 24Gb RAM and SSD, just enough to do basic tasks..

    But I have to remember I can't open more than, oh something like 66 picture tabs, or the picture browser crashes..

    And is it the 64bit version of Firefox, stops opening more tabs if you try and open more than 4Gb is it of tabs..

    I@m reminded of a social media site whose management (even though its changed a few times!) refuse to fix various bugs, even though they could, but can't be arsed to.

    Instead, they keep releasing new features that are buggy..

    Fix the old features first !!!

    This company has been not doing this for 30+ years..

    Even though, during that time, the software has been transferred to different platforms, so surely they had the chance to fix the old bugs then !

    But of course, they don't call them bugs, they call them unintended features that only appear if you use their software incorrectly..

    I beg to disagree !

    I call them scaling issues..
  • 0
    @electrineer: Thanks to simultaneous multithreading, the i5-2520M is effectively a four-core processor.
  • 0
    @varikvalefor but it's not a four-core cpu.
  • 1
    @electrineer: Of our claims, both claims are correct; you are referring to #{PHYSICAL CORE : PROCESSOR HAS PHYSICAL CORE}, and I am referring to #{LOGICAL CORE : PROCESSOR HAS LOGICAL CORE}, i.e., the amount of threads which can be executed in parallel. However, I could have written my post such that the clarity of my post would be greater than the current clarity of my post; as such, I appreciate your nitpicking and shall attempt to avoid causing this confusion in the future.
  • 2
    @varikvalefor Btw., I dunno how good SMT is on your CPU; my 3400G has 4C8T. When counting threads 1-4 as 100% each, threads 5-8 are worth 50% each. So it's like having 6 real cores without SMT.

    If it's similar on your end, then we have a third perspective just to add up to the confusion: you have the performance of a triple core. ^^
  • 0
    @SortOfTested gah thats when I think to myself: they might have overdone this multithreading thing
Add Comment