MIT Creates Algorithm That Speeds Up Page Load Time By 34% (softpedia.com) 169
An anonymous reader writes: MIT researchers have created an algorithm that analyzes web pages and creates dependency graphs for all network resources that need to be loaded (CSS, JS, images, etc.). The algorithm, called Polaris, will be presented this week at the USENIX Symposium on Networked Systems Design and Implementation conference, and is said to be able to cut down page load times by 34%, on average. The larger and more resources a web page contains, the better the algorithm's efficiency gets -- which should be useful on today's JavaScript-heavy sites.
So fast (Score:5, Funny)
I got first post!
Re: (Score:2)
Re:So fast (Score:4, Funny)
In other news, most websites announced they are upgrading to new larger graphics and javascript libraries, as a necessary first step in ensuring their pages don't load too fast.
Not So fast (Score:2)
Re: (Score:2)
Now the next step (Score:5, Funny)
Now, the next logical step is to have this algorithm analyze the actual scripts and figure out a way to convince the various malwares that they've been loaded satisfactorily even though they haven't. That way you could avoid downloading almost 99% of modern web pages.
Re:Now the next step (Score:5, Insightful)
Now, the next logical step is to have this algorithm analyze the actual scripts and figure out a way to convince the various malwares that they've been loaded satisfactorily even though they haven't. That way you could avoid downloading almost 99% of modern web pages.
I run the NoScript extension, so I already get all of those benefits without any need for fancy page analysis.
Re: (Score:2)
Two things... I prefer uMatrix, it's awesome. It is better than NoScript in my opinion and is whitelist-based. It now has a neat feature that lets you sync it across multiple profiles via the same mechanism that lets you sync your tabs. Yes, it is that awesome. You just need to enable the cloud mode. It's an odd name so i didn't notice it until last release.
The other thing is, if they increase the speed by 34% and people start doing that, they'll just cram more shit in their sites so that it ends up actuall
Re: (Score:2)
Dillo is the crazy stupid fast browser, it's fast like running Lynx but is a real graphical browser.
The biggest downside is you can't log in to anything, though that used to be possible a decade ago. (I wish the middle click scrolling worked more like firefox too)
Funnily Slashdot is the site that needs javascript the most out there in my experience. Most pages even dreadful ones are read top to bottom, /. need that javascript/ajax thing to load threaded comments else it's a pain.
Re: (Score:2)
Indeed. It is fast. Ugly as all hell but it compiled nicely enough. It threw a few errors and I needed to get the FLTK as that wasn't installed. Slashdot is somehow uglier than normal.
Re: (Score:2)
Yeah, I have to login manually each time but it's not too bad. It eats the CSS here and doesn't display well at all. It won't load the mobile site but I bet it'd be just fine for a bunch of things.
The trouble is, more and more sites are starting to rely on some scripting if you want full functionality or any functionality at all.
This does, however, bring back some fond memories.
I think it could use some decorative things - like CSS guessing, fit text to width, SSL support, and the likes. By the way, this an
Re: (Score:2)
There is SSL support (or let's say, some HTTPS support), some CSS support.
Best of all the browser is actively developed, changelog for the upcoming/unreleased version has the kinds of improvements you wish for (well I don't know what CSS guessing is, but they mention things that have to do with 'width' and CSS)
Re: (Score:2)
Yeah, I'm going to recompile it with HTTPS support. I'm not sure why I didn't do so the first time. I should probably ask 'em what kind of other switches are available. Who knows? Maybe there's something I can do to help. Probably not but it's an idea. I've got a ton of stuff on my plate at the moment so it's hard telling. Maybe I'll just send 'em a few bucks - they can get together and have pizza and beer on me.
It does look like an interesting project and like it has some good potential. I should ask about
Re: (Score:2)
I did use elinks, I even found a good use for it : set up CUPS on a remote host (accessing the web interface from localhost).
Some routers can be accessed but not all
Re: (Score:2)
Alright, now I'm curious... Why elinks for that?
Sorry if I'm bugging you - I'm always trying to learn new things and to get additional opinions. If it helps, I only ask for such from people who seem intelligent and I value their opinions greatly. Contrary to popular opinion, I do not know everything and there's opinions other than my own that are quite valuable.
Re: (Score:2)
Because with the default configuration the web interface is available only from localhost I think, not the LAN. So I thought it woud be fun to ssh in and do it from the terminal, although I had other options. :)
As for a browser for daily use (any uses) a buddy asked me what to do. My opinion was that a "lightweight browser" that is full-featured still (such as Midori or other) can't be an answer anymore, because the web itself is monstrously bloated. I left it at that, and he went with NoScript
Re: (Score:2)
If your buddy has a technical bent, there's a small learning curve, there's something called uMatrix. It's a bit like an old-school software firewall except it's just for the browser and is whitelist based. Yes, yes it is awesome. Once you get up to speed and add your regular sites and configure for least privilege then you're golden and it's trivial to browse the web with reasonable security from browser exploits.
Re: (Score:2)
Er,
Dillo user here. Using dillo right now. I mostly brows using this if I can since it is so damn fast. I get deeply aggravated by the sluggishness of chrome and firefox by comparison. If you go into settings on slashdot and enable classic mode, not only does it work perfectly in dillo, it's like going back to a rose-tinted version of a decade ago, because not only is shit fast, it's REALLY FAST since it's as liughtweight as back then, but your computer and browser are much faster.
Re: (Score:2)
Re: (Score:2)
Or just give them their own temporary/guest account on your computer and not worry about what they do? You could even use a read only VM, or boot off a CD and let them use that.
You don't give people access to your main account on your computer do you? That would be a terrible thing for privacy and security.
Re: (Score:3)
No, the next step is to kill Javascript which has now become a cancer that is destroying the Internet.
Re: (Score:3)
No, the next step is to kill Javascript which has now become a cancer that is destroying the Internet.
I'd agree, but sadly, a huge number of sites won't work at all without Javascript. Even sadder, I actually need to use some of those sites.
And when I say "need", I mean "need", they're not optional for me, I have to use them for work or work-related stuff.
To be honest, I like some of the functionality that Javascript provides (ajax, responsive menus, etc) but yeah, it's wormed its way into even the most basic functions of many sites these days- a lot of sites won't even load a page without it.
Re: (Score:2)
Go one better, implement a php interpreter in JS, then have your page load a JS script containing the interpreter which loads the PHP scripts and runs them client-side and finally renders the html output (which, of course, can contain lots of JS again - so you can even have your php output JS which contains the interpreter and go full inception mode).
Then market it to companies as having all the power of PHP but client side so they don't need such powerful servers to host pages.
Re: (Score:2)
That'd be kind of neat. I've done jack and squat for any web work as of late. I am supposed to be involved on a project with a friend of mine (a competition of sorts) but he's asked for an extension to our start date. I should probably be using this time to pick up some skills and refresh my memory.
Re: (Score:2)
Go one better, implement a php interpreter in JS, then have your page load a JS script containing the interpreter which loads the PHP scripts and runs them client-side and finally renders the html output (which, of course, can contain lots of JS again - so you can even have your php output JS which contains the interpreter and go full inception mode).
Then market it to companies as having all the power of PHP but client side so they don't need such powerful servers to host pages.
Oh dear, I actually almost like this....
(almost)
My current position of a year hired me as a LAMP stack programmer, then revealed they effectively have 0 server access, and need all this junk developed in javascript - Including saving and recovering settings, etc, etc... So for the last year I've been developing in javascript, which I now totally loathe. But the benefit of having PHP (or whatever server side language) is that it.... runs on the server, and (for most websites of appreciable size) work with
Re: (Score:2)
I like your sig. ;-) I write novellas on a very regular basis. (See comment history if curious.)
However, I'll spare you - this once.
My current position of a year hired me as a LAMP stack programmer, then revealed they effectively have 0 server access, and need all this junk developed in javascript
Umm... How the hell does that even happen? A bit more specifically, the "0 server" access part is also intriguing.
Re: (Score:2)
I like your sig. ;-) I write novellas on a very regular basis. (See comment history if curious.)
However, I'll spare you - this once.
My current position of a year hired me as a LAMP stack programmer, then revealed they effectively have 0 server access, and need all this junk developed in javascript
Umm... How the hell does that even happen? A bit more specifically, the "0 server" access part is also intriguing.
I work for a small government department on one of their websites currently. Please don't expect me to be able to explain any of the business practices here, they make my head hurt. :)
As for server access, apparently the hosting (and original development) was contracted out, and any server changes require about a month of communication and meetings. And my boss loves javascript.
Your sig isn't bad too; I love how casual dolphins are
I should update my sig however. At least half the time I manage to keep my
Re: (Score:2)
I modeled traffic and, as such, I worked mostly for municipalities/governments of various sizes including federal and some international work. (Long since sold and retired.) I understand... Just "government" means that I understand that I do not understand, nor do I want to.
That said, anything worth saying is usually too long to fit on a bumper sticker or make a sound-bite for television. (Bite or byte? I have no idea, having seen it both ways and being too lazy to look.) I also hate repeating myself and, t
Re: (Score:2)
Is it called ad block plus? (Score:5, Insightful)
Re: (Score:3)
Re:Is it called ad block plus? (Score:5, Insightful)
The big difference being nothing working.
Re:Is it called ad block plus? (Score:5, Funny)
And nothing of value was lost.
Re:Is it called ad block plus? (Score:4, Interesting)
Adblock plus does not accept any money to exclude any sites.
It uses the exact same blocklists every adblocking service uses, from adblocking at dd-wrt level router plugin to Alternative-DNS a free dns servers that block ads at the dns level:
http://www.alternate-dns.com/ [alternate-dns.com]
the only thing adblock plus added was a checkbox that defaults to unchecked. But if you do check it the only ad it will allow is adsense. Yet noone checks the exlude.
I have 7 blocklists in my adblock plug, from peter lowe's list to the "Adblock Detector blocker" list.
with adblock detector blocker, you no longer get sites that say "We detected you are running adblock, blah blah blah"
also by not allowing the detection of adblock you can now easily block ads on sites that have embedded ads in video like Hulu. :P
There is also a greasemonkey script to hide and block the detection of adblocking plugins.
Anti-Adblock killer: http://userscripts-mirror.org/... [userscripts-mirror.org]
Adblock plus does not get paid to exclude any sites. that's a false statement as the code is open source. you can allow adsense if you want to support some dumbass youtuber begging for sheckels or just leave it off as it is by default.
And never run just 1 blocklist, get the ad blocking list, then get the peter lowe malware, social media like, plus, share, all social media embeds. And block statistic gathering like Statcounter and Alexia from measuring your visits.
Re: (Score:2)
I repeat myself but you can save a lot of time and effort just by using uMatrix. Seriously, it does all that and it's tiny as all hell. It's like an old-school software firewall except it's just for your browser. And it is awesome. Err... I've collected a bunch of people who've tried it and claimed to like it. I'm on a mission!
Actually, I'm not even remotely affiliated and I don't particularly care what you use but I've seen you post before and you seem reasonably sane. So, I figure you *really* might want
Re: Is it called ad block plus? (Score:2)
I've collected a bunch of people
I guess that's better than collecting just their heads or something...
Re: (Score:2)
I don't know about better. A bunch of shrunken heads would be kind of awesome. And, if you've never tried uMatrix, give it a spin. *nods*
I'm actually really, really satisfied with it. Sometimes I don't even bother with uBlock. I just use a live USB OS and keep things in RAM. I do that a lot, oddly. I don't really store any data locally so it's maybe five minutes to get things up to a good browsing experience. I should probably do a few roll-my owns with persistent storage.
Re: (Score:2)
Re: (Score:2)
But why bother with AdBlock when uBlock is faster, more open, doesn't take any money for any reason and provides even more features?
Yeah, but (Score:3)
would still be cooler if there was no 'dependency graph' of dynamically loaded resources behind my every HTTP request.
Re: (Score:2)
Re: (Score:2)
What you're suggesting is all of that page data be included in a single response?
No. Please think harder.
Re: (Score:2)
What you're suggesting is all of that page data be included in a single response?
No. Please think harder.
Care to enlighten? Or are you just going to keep to short comments with no real content in them and leave people guessing what you mean?
Re: (Score:2)
My comment was short because I didn't feel like continuing to read yours after
It took my browser 25.5 seconds* to download it all [whereas with a single response] the browser would have to wait 25.5 seconds before it could even start rendering the page?
because it is so obviously flawed reasoning that I had to assume you're trolling.
You can certainly have a full answer:
This page loaded 488KB of data. It took my browser 25.5 seconds* to download it all.
So we agree there's a problem. You do realize (since you're going to mention it) that most of this time is spent traversing the "dependency graph" to pull external resources.
What you're suggesting is all of that page data be included in a single response?
I wasn't suggesting anything particular, but if so I'd be suggesting to do away with most of the junk entirely.
So the browser would have to wait 25.5 seconds before it could even start rendering the page?
I'm startled about how you cou
Re: (Score:2)
would still be cooler if there was no 'dependency graph' of dynamically loaded resources behind my every HTTP request.
Yeah, TANSTAAFL.
Also, always be weary when seeing weasel words like "up to". It's an euphemism for "less than". The overall benefit can even be negative while still satisfying the "up to" claim.
Fix the sites first (Score:4, Insightful)
They would all load a lot freaking faster if they would stop designing them with multiple, stupid, scrolling, 20 megapixel background images and dozens of megabytes of irritating javascript "special effects". Just saying.
Re: (Score:2)
Add more gzip https://en.wikipedia.org/wiki/... [wikipedia.org]?
Give the user the site text or images to get them looking, then load in the ads? Load the ads first, then present the full page?
The problem is all the trackers, ads, super cookies need to be connected. Giving the users a bit of quick up front content to then allow ads to load is fun. Keep the use
Re: (Score:3)
A better solution is just to bake all the advertising and trackers right into the browser itself so that it doesn't need to keep redownloading it for every site.
Re: (Score:2)
What can a site do? Run a script to detect an ad blocker? Suggest a monthly payment and block the page from that user or request the ad block is removed?
Wired http://www.wired.com/ [wired.com] has started doing that and I've started not visiting their site, even though I whitelisted them so I could do it for free. Screw them ...
On the other hand, Stack Overflow https://stackoverflow.com/ [stackoverflow.com] has stated publicly that they are fine with ad blockers. Their reasoning is that if you're running one, you don't want ads, and wouldn't click on any if you saw them.
Re: (Score:2)
...Or Spinning Logos. [youtube.com]
Re: (Score:2)
Came here to say that. "Designers" and most people that create websites are all concerned about style and not about how it functions. Toss in the fact that they are all on well equipped machines and good networks which makes everything load quickly and they never see the problem so it never gets fixed. It would be great if they even just optimized the images for size!
About ten years ago I was on the maintenance group for a bunch of government websites and there was one site on Cold Fusion. It was slow as
Re:Fix the sites first (Score:4, Insightful)
Yeah exactly.
Right here on /. NoScript blocks 7 domains out of 9 and the site looks and loads fine.
It's called AdBlocker (Score:4, Insightful)
It's called AdBlocker
Re: (Score:2)
Ad blockers do more than 34%, especially if you block tracking rather than just visible stuff.
Take it one step further... (Score:1)
Re: (Score:2)
...which is exactly what every popular CMS does...
Re: (Score:2)
...which is exactly what every popular CMS does...
The Joomla! CMS took six seconds or longer to load itself before displaying a dynamically-generated page on one of my websites. After I converted the website to static pages, each page loaded in less than five seconds. More tweaking is needed to reduce the load times. The average Internet user has an attention span of a goldfish (i.e., six seconds or less).
Re: (Score:2)
They may support it but not every site generates static pages and shows them. Many create their content dynamically even if it would be more efficient to use static pages.
Re: (Score:2)
One place I was at was looking at implementing a new CMS and at one meeting we were discussing the options for the architecture of the system. I was from the maintenance group and was there to provide feedback because we would be looking after it long term. I was in favour of having the system generate static HTML pages whenever a change happens (something the software supported and that we saw another department implement) because it would reduce the hardware required for serving the site. Well, we had th
Re: (Score:3)
Also if the CMS goes down the site still is live.
I got tired of hackers beating down the doors of the CMS and occasionally crashing the website. After I converted the website to static pages, the hackers went away because there was nothing to hack.
Re: (Score:2)
OK. http://codepen.io/anon/pen/yOO... [codepen.io]
Re: (Score:2)
But people don't like frames being used.
Frames are so 1990-ish.
Re: Take it one step further... (Score:2)
cut page load times by 90% instantly (Score:3, Insightful)
disable javascript.
Re:cut page load times by 90% instantly (Score:5, Informative)
only an idiot thinks javascript is vital to the usefulness of the internet.
Re: (Score:2)
Re: (Score:3)
I never said that. I said it's not vital.
Re: (Score:2)
what, because I don't agree with you?
How about a rebuttal intead of namecalling?
Re: (Score:2)
I was parroting the parent.
Re: (Score:2)
I'm curious about why you say this.
I'm a computer professional and I've been working full time on the Internet since before it went commercial. I spend eight or more hours a day with a web browser open, and I make enough money to own a home and an acre of productive land, four vehicles, have two children in college, and donate a significant portion of my income to social causes I support. I hope to have a comfortable retirement on my savings, assumin
Re: (Score:2)
That would be an increase to infinity, not a decrease to zero. Literally the exact OPPOSITE of a 100% cut.
You must be using common core math...
Vulcanising and HTTP2 Push are the way to go, IMHO (Score:3)
Vulcanising and HTTP2 Push are the way to go.
Allthough I do wonder if this method then still has a chance of improving a sites performance.
Personally I'd say well and automatically curated HTTP2 Push and automated minifying and compression are probably the best method overall.
I do doubt that this method could improve much more if that were in place.
But I could be wrong.
Does anyone have experience with http-push and perhaps some insights to offer?
Please comment below. Thanks.
Re: (Score:3)
Here is a good example: https://http2.akamai.com/demo [akamai.com]
Re: (Score:2)
Google has been working on a new compression scheme where the dictionary is fixed and stored in the browser. It makes sense since a lot of HTML and Javascript is highly repetitive and would likely be selected for inclusion in the dictionary by gzip anyway. You can even optimize Javascript to be more compressible under this scheme.
There may be more comments in this discussion. (Score:2)
You know what would speed web page loading? (Score:5, Insightful)
Not having 14 scripts be needed to post a comment, not having 8 other scripts clogging the pipes for one advertisement, 6 scripts for tracking you, and multiple other scripts for whatever reason.
Nor having a giant, moving graphic as the base part of your page which can't be turned off, menus which bounce up or down when you hover your mouse over them, or needing to have the latest and greatest browser so you don't miss out on the latest and greatest "features" of a site.
But no, finding an algorithm to speed web page loading is what we should concentrate on.
Re: (Score:2)
Reading TFA (Score:5, Interesting)
I went and actually read TFA. It seems all they've done is create a bastardized version of a less efficient SPDY/HTTP2 protocol fetching system. Essentially, they're trying to solve a problem that is already solved, but the existing solution is already faster, more efficient, and more well thought out in general.
Re:Reading TFA (Score:5, Funny)
> I went and actually read TFA
Thank you brother. Your sacrifice is appreciated by all.
Re: (Score:2, Funny)
I went and actually read TFA. It seems all they've done is create a bastardized version of a less efficient SPDY/HTTP2 protocol fetching system. Essentially, they're trying to solve a problem that is already solved, but the existing solution is already faster, more efficient, and more well thought out in general.
When they get their degrees from MIT, they're already well-prepared to go to work on systemd.
Another Algorithm (Score:2)
Identify the advertisements client side and don't load them. Speeds up loading and rendering pages a lot.
Why not EXI instead of XML and IR instead of JS? (Score:2)
I guess the browser-side performance isn't so much what they're talking about (rather, reducing network round-trips), but still, I have always wondered why we're still sending xml and js, plain or gzipped, rather than sending compact binary formats.
EXI is a W3C standard; it's more compact than gzipped xml and it's more than a dozen times faster to parse.
Rather than coding in JS all the time, lots of people are using javascript as an intermediate representation or bytecode. This is tremendously inefficient.
T
Re: (Score:2)
All I can say from my own experience as a web developer is that I'd much rather have a human readable format (JSON) than a binary format. It is invaluable when debugging problems.
Re: (Score:2)
For binary XML, as well as for the various fledgling binary json or binary yaml formats, the binary representation can be quickly converted to a plaintext one that has basically only minor formatting differences from the original. (I was about to say "to a human-readable one that..." but that's a stretch for a lot of XML.)
An AST / IR / bytecode is decompilable; e.g. from what I understand LLVM can do a good job of translating its IR back to C. Obviously a lot more information that could help with human comp
Sweet (Score:2)
Thanks MIT... (Score:2)
Browsers don't have enough trouble properly dealing with all the JavaScript that web sites shove down out Internet connection now. How nice that you've found a way for web sites lard up their pages with even more of the stuff.
The real result (Score:2)
Not (apparently) having learned anything from the switch to digital tv broadcasting (where the higher bandwidth was not used for better quality, but was co opted to shovel more channels of low quality shit) this "34% faster" algorithm will simply result in web coders programming at least 34% more crap ads and scripts into web pages.
no, 51% more ads! (Score:4, Insightful)
You forget -- those ads would be 34% faster, too ... so you could get 51% more ads in the same time it took to serve the original bloated page.
Re: (Score:2)
Re: (Score:2)
Hey, Spartacus, put your name to this post, it's the most beautiful thing I've ever seen! Fuck scripting, just write the motherfucking content! I've only been saying that for the past twenty fucking YEARS!
Re: (Score:2)
I may be missing the "satire" here but Line-Width, seriously? I shouldn't have to scroll vertically to read your text because you've made a stylistic decision to limit the viewable area to 60-80 characters.
Surely that's the responsibility of a window manager to adjust horizontal width?
*whoosh* ?
Re:It's Needed (Score:4, Insightful)
We are now only discovering the terrible price of web standardisation and brower stability.
Web design was a lot simpler when the lowest common speed was a 56K dial-up. Now that everyone is connected to the Internet with a fire hose on the last mile, most web designers don't even stop to optimize their pages.
Re: (Score:2)
Re: (Score:3)
Re: (Score:2)
I still write for dialup because I want page loads to take 0.01s, not the what 15 SECONDS that Facebook takes on 200Meg wired fucking BROADBAND? It seriously takes the piss, and I'm still trying to figure out what takes fucking Wikipedia so long to load when I run a WM instance on a dual core netbook and with 380GB of content it's still INSTANT.
Re: (Score:2)
Sure they do. Designers now make their pages behave like "apps" with AJAX everywhere, loading content on demand to reduce overall traffic!
Of course, the actual effect is that the "Back" button and all other standard navigation breaks, URLs don't update, scroll bars get fucked up, direct links are impossible, and browser memory usage balloons, making the site feel more like a Flash-based page from the 1990's.
Re: (Score:2)
Oh, that's already well in progress.
Seems like all those IE6-only intranet websites are finally fading from existence.
Re: (Score:2)
We did we do that?
To be fair, those cat pictures were pretty distracting.
Re: (Score:3)
Re: (Score:2)
I only use chrome on PCs. On the phone where chrome doesn't support extensions (like adblockers) - I used FF with ABP instead.