Google To Promote Web Speed On New Dev Site 106
CWmike writes "Google has created a Web site for developers that is focused exclusively on making Web applications, sites and browsers faster. The site will allow developers to submit ideas, suggestions and questions via a discussion forum and by using Google's Moderator tool. Google hopes developers will join it in improving core online technologies such as HTML and TCP/IP. For Google, a prime example of how Web performance can be enhanced is the development of HTML 5, which provides a major improvement in how Web applications process Javascript, Google believes. 'We're hoping the community will spend some time on the basic protocols of the Internet,' Google product manager Richard Rabbat said. 'There's quite a bit of optimization that can be done [in that area].'"
Re:Why Do They Ignore Their Own Advice? (Score:5, Informative)
What you really need is a system to 'compile' the source pages to something less readable, but significantly smaller - removing comments, replacing the unneeded end tags, shortening the variable names. If that was automated...
Something like gzip compression [apache.org] perhaps?
Re:Why Do They Ignore Their Own Advice? (Score:3, Informative)
This is what's called mod_deflate on Apache 2
I'm using it on a couple small sites I maintain. The text portions of those sites get compressed to less than 50% of their original site. Obviously it does not compress images, pdfs,...
Obviously there is no need to compress those as they are already properly prepared before they are available online.
Comment removed (Score:2, Informative)
Re:Why Do They Ignore Their Own Advice? (Score:5, Informative)
> The price of downloading html and javascript source is peanuts compared to images and
> flash animations
That may or may not be true... Last I checked, a number of popular portal sites (things like cnn.com) included scripts totaling several hundred kilobytes as part of the page. The problem is that unlike images those scripts prevent the browser from doing certain things while the script is downloading (because you never know when that 200kb script you're waiting on will decide to do a document.write and compeletely change what you're supposed to do with all the HTML that follows it). So the cost of downloading scripts is _very_ palpable...
Yahoo has a good page, too (Score:2, Informative)
Yahoo! has a handy page (http://developer.yahoo.com/performance/ [yahoo.com]) with lots of good info. It includes YSlow (a Firefox add-on), a set of "Best Practices," and some good research. Also references a couple of O'Reilly books (which, to be fair, I haven't read).
More specifically, CSS sprites (see http://www.alistapart.com/articles/sprites/ [alistapart.com]) and consolidating Javascript may be back (reducing HTTP requests), and a few other things that may surprise or inform.
Yslow vs. Speed (Score:3, Informative)
For those who are into web site performance, like me, the standard tool for everyone was Yslow [yahoo.com], which is a Firefox extension that measured front end (browser) page loading speed, assigned a score to your site/page and then gave a set of recommendations on improving the user experience.
Now Google has the similar Page speed [google.com] Firefox extension.
However, when I tried it, with 5+ windows and 100+ tabs open, Firefox kept eating away memory, and then the laptop swapped and swapped and I had to kill Firefox, and go in its configuration files by hand and disable Page Speed. I have Yslow on the same configuration with no ill effects.
Re:What's that sound? (Score:1, Informative)
It does.
From Chapter 2.3.4. Garbage Collection in Orelly'S Programming PHP:
PHP uses reference counting and copy-on-write to manage memory. Copy-on-write ensures that memory isn't wasted when you copy values between variables, and reference counting ensures that memory is returned to the operating system when it is no longer needed.
To understand memory management in PHP, you must first understand the idea of a symbol table . There are two parts to a variable--its name (e.g., $name), and its value (e.g., "Fred"). A symbol table is an array that maps variable names to the positions of their values in memory.
When you copy a value from one variable to another, PHP doesn't get more memory for a copy of the value. Instead, it updates the symbol table to say "both of these variables are names for the same chunk of memory." So the following code doesn't actually create a new array:
$worker = array("Fred", 35, "Wilma"); // array isn't copied
$other = $worker;
[... snip ...]
http://docstore.mik.ua/orelly/webprog/php/ch02_03.htm [docstore.mik.ua]