one example of retarded modern software development


So, lets see, this is kind of a rant ive been wanting to write for a few years and finally got pissed enough to do so. so weve all been using this browser from the goog for some years now.. in some ways it seems a great improvement over firefox, in other ways not so much, but today i want to rant about a way in which it's got to be doing about the most retarded possible thing, as the only viable explanation . Suppose you have a page with a bunch of text, it coudl be anything, from a page full of the xml or json or key-value pair data dumps that a lot of software exposes on some port for monitoring, it might just be a text file with a short story or a letter to grandma, it doesnt really matter, just that it be text. And not necessarily a whole lot of it either. 50K of text will already visibly aggravate the browser. What happens is that chrome starts burning an ungodly amount of cpu doing _something_ with this text. Any operations on that tab become slow- scrolling, selecting, navigation of the cursor, and forget about searching. If you get a megabyte or so of data, the thing might seem to freeze up, and 10-20 solid seconds later might again respond to your inputs - which it will do so very slowly with more freezing up. A seriously large text file, will just crach the tab altogether. Now, this cannot be a matter of running out of memory. With, say 5 megabytes of text, this is 5 megabytes of staic content. no scripts, no doodads, no graphics, no network connections open and pushing bits, just a static blob of the most basic data format in the world.. I can see that gmail tab hogging half a gig or more of memory, constantly hitting the network, constantly re-updating something, constantly ticking away a percentage of cpu, i can open up a dozen tabs and play _video_ in them all simultaneously without a hiccup, but 5 megs of plain old _text_ will bring chrome to its knees. WTF are you doing in there? The only things that come top mind are that you're rendering a bazillion different views and zoom levels and hoarding those in some enormous stash of memory, or perhaps indexing every n-gram and substring in the whole thing just in case i wanted to search for 'xyzzy' in there without warning. Perhaps youre running a whole emulator to handle my text file on a suitable (virtual) retro platform to pay proper respect to the data format. perhaps you're translating it on the fly to every language you know of. but really what the fuck? it's just some fricking text! i want to scroll through it and possibly search for a string! i'm only even viewing it in your stupid browser to begin with, because i got to it by way of some other clicks on other pages and it might be something that isnt going to easily be accessed from some other mechanism (say i'm looking at logs on some server, where i have to be authenticated to view them, and , well, sorry the people who wrote the server only support authentication and access over https..) and saving the data to a text file to view with something sensible might be impractical, like, say, i'm on some page that's tailing a log as it's being written (say this morning i was trying to debug a jenkins build this way) what the hell are you doing with a couple megabytes of text? Rendering it on screen as visible characters cannot be difficult, weve been doing that for decades with cpu's less powerful that the chip that adjusts the led brightness on this string of christmas lights here... but youre telling me that modern software on some quad core 16 gigs of memory machine, cannot scroll through a few megs of text without bogging down to the point of freezing or crashing? what the fuck are you doing in there?
This file and all other content on the VAXpower.org site copyright 2008 by G. Economou