<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10frenchfull.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:idx="urn:atom-extension:indexing" xmlns:gr="http://www.google.com/schemas/reader/atom/" xmlns:media="http://search.yahoo.com/mrss/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" idx:index="no"><!--
Content-type: Preventing XSRF in IE.

--><generator uri="http://www.google.com/reader">Google Reader</generator><id>tag:google.com,2005:reader/user/13971487921358602333/state/com.google/broadcast</id><link rel="hub" href="http://pubsubhubbub.appspot.com/" /><title>Oncle Tom's shared items in Google Reader</title><gr:continuation>CLPwrevv4Z0C</gr:continuation><author><name>Oncle Tom</name></author><updated>2009-11-08T09:06:46Z</updated><link rel="self" href="http://feeds.feedburner.com/LaCaseDeLoncTomLectures" type="application/atom+xml" /><feedburner:emailServiceId>LaCaseDeLoncTomLectures</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><feedburner:feedFlare href="http://www.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2FLaCaseDeLoncTomLectures" src="http://www.newsgator.com/images/ngsub1.gif">Subscribe with NewsGator</feedburner:feedFlare><feedburner:feedFlare href="http://www.bloglines.com/sub/http://feeds.feedburner.com/LaCaseDeLoncTomLectures" src="http://www.bloglines.com/images/sub_modern11.gif">Subscribe with Bloglines</feedburner:feedFlare><feedburner:feedFlare href="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Ffeeds.feedburner.com%2FLaCaseDeLoncTomLectures" src="http://www.netvibes.com/img/add2netvibes.gif">Subscribe with Netvibes</feedburner:feedFlare><feedburner:feedFlare href="http://fusion.google.com/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2FLaCaseDeLoncTomLectures" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare href="http://www.pageflakes.com/subscribe.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2FLaCaseDeLoncTomLectures" src="http://www.pageflakes.com/ImageFile.ashx?instanceId=Static_4&amp;fileName=ATP_blu_91x17.gif">Subscribe with Pageflakes</feedburner:feedFlare><feedburner:feedFlare href="http://www.live.com/?add=http%3A%2F%2Ffeeds.feedburner.com%2FLaCaseDeLoncTomLectures" src="http://tkfiles.storage.msn.com/x1piYkpqHC_35nIp1gLE68-wvzLZO8iXl_JMledmJQXP-XTBOLfmQv4zhj4MhcWEJh_GtoBIiAl1Mjh-ndp9k47If7hTaFno0mxW9_i3p_5qQw">Subscribe with Live.com</feedburner:feedFlare><feedburner:feedFlare href="http://add.my.yahoo.com/content?lg=fr&amp;url=http%3A%2F%2Ffeeds.feedburner.com%2FLaCaseDeLoncTomLectures" src="http://us.i1.yimg.com/us.yimg.com/i/us/my/bn/intatm_fr_1.gif">Subscribe with Mon Yahoo!</feedburner:feedFlare><feedburner:feedFlare href="http://www.webwag.com/wwgthis.php?url=http%3A%2F%2Ffeeds.feedburner.com%2FLaCaseDeLoncTomLectures" src="http://www.webwag.com/images/wwgthis.gif">Subscribe with Webwag</feedburner:feedFlare><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><entry gr:crawl-timestamp-msec="1257671206471"><id gr:original-id="http://www.mysqlperformanceblog.com/?p=1616">tag:google.com,2005:reader/item/4b75bd1cd64e407c</id><category term="Innodb" /><category term="mysql" /><title type="html">InnoDB: look after fragmentation</title><published>2009-11-05T19:01:54Z</published><updated>2009-11-05T19:01:54Z</updated><link rel="alternate" href="http://feedproxy.google.com/~r/LaCaseDeLoncTomLectures/~3/sz5A4zf4Rz4/" type="text/html" /><content xml:base="http://www.mysqlperformanceblog.com/" type="html">&lt;p&gt;One problem made me puzzled for couple hours, but it was really interesting to figure out what's going on. &lt;/p&gt;
&lt;p&gt;So let me introduce problem at first. The table is&lt;/p&gt;
&lt;div&gt;&lt;span&gt;&lt;a href="http://www.mysqlperformanceblog.com/#"&gt;PLAIN TEXT&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;CODE:&lt;/span&gt;
&lt;div&gt;
&lt;div&gt;
&lt;ol&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;CREATE TABLE `c` &lt;span style="color:#006600;font-weight:bold"&gt;(&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;  `tracker_id` int&lt;span style="color:#006600;font-weight:bold"&gt;(&lt;/span&gt;&lt;span style="color:#800000;color:#800000"&gt;10&lt;/span&gt;&lt;span style="color:#006600;font-weight:bold"&gt;)&lt;/span&gt; unsigned NOT NULL,&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;  `username` char&lt;span style="color:#006600;font-weight:bold"&gt;(&lt;/span&gt;&lt;span style="color:#800000;color:#800000"&gt;20&lt;/span&gt;&lt;span style="color:#006600;font-weight:bold"&gt;)&lt;/span&gt; character set latin1 collate latin1_bin NOT NULL,&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;  `time_id` date NOT NULL,&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;  `block_id` int&lt;span style="color:#006600;font-weight:bold"&gt;(&lt;/span&gt;&lt;span style="color:#800000;color:#800000"&gt;10&lt;/span&gt;&lt;span style="color:#006600;font-weight:bold"&gt;)&lt;/span&gt; unsigned default NULL,&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;  PRIMARY KEY  &lt;span style="color:#006600;font-weight:bold"&gt;(&lt;/span&gt;`tracker_id`,`username`,`time_id`&lt;span style="color:#006600;font-weight:bold"&gt;)&lt;/span&gt;,&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;  KEY `block_id` &lt;span style="color:#006600;font-weight:bold"&gt;(&lt;/span&gt;`block_id`&lt;span style="color:#006600;font-weight:bold"&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;&lt;span style="color:#006600;font-weight:bold"&gt;)&lt;/span&gt; ENGINE=InnoDB &lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Table has 11864696 rows and takes Data_length: 698,351,616 bytes on disk&lt;/p&gt;
&lt;p&gt;The problem is that after restoring table from mysqldump, the query that scans data by primary key was slow. How slow ? Let me show.&lt;/p&gt;
&lt;p&gt;The query in question is (Q1):&lt;/p&gt;
&lt;p&gt;&lt;code&gt;SELECT count(distinct username) FROM  tracker where TIME_ID &amp;gt;= &amp;#39;2009-07-20 00:00:00&amp;#39; AND TIME_ID &amp;lt;= &amp;#39;2009-10-21 00:00:00&amp;#39; AND (tracker_id=437)&lt;br&gt;
&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;On cold buffer_pool, it took:&lt;/p&gt;
&lt;div&gt;&lt;span&gt;&lt;a href="http://www.mysqlperformanceblog.com/#"&gt;PLAIN TEXT&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;CODE:&lt;/span&gt;
&lt;div&gt;
&lt;div&gt;
&lt;ol&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+---------------------------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;| count&lt;span style="color:#006600;font-weight:bold"&gt;(&lt;/span&gt;distinct username&lt;span style="color:#006600;font-weight:bold"&gt;)&lt;/span&gt; |&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+---------------------------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;|                   &lt;span style="color:#800000;color:#800000"&gt;5856156&lt;/span&gt; | &lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+---------------------------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;&lt;span style="color:#800000;color:#800000"&gt;1&lt;/span&gt; row in set &lt;span style="color:#006600;font-weight:bold"&gt;(&lt;/span&gt;&lt;span style="color:#800000;color:#800000"&gt;4&lt;/span&gt; min &lt;span style="color:#800000;color:#800000"&gt;13&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;61&lt;/span&gt; sec&lt;span style="color:#006600;font-weight:bold"&gt;)&lt;/span&gt; &lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;However the query (again on cold buffer_pool) (Q2)&lt;/p&gt;
&lt;p&gt;&lt;code&gt;SELECT count(distinct username) FROM  tracker where TIME_ID &amp;gt;= &amp;#39;2009-07-20 00:00:00&amp;#39; AND TIME_ID &amp;lt;= &amp;#39;2009-10-21 00:00:00&amp;#39;&lt;br&gt;
&lt;/code&gt;&lt;/p&gt;
&lt;div&gt;&lt;span&gt;&lt;a href="http://www.mysqlperformanceblog.com/#"&gt;PLAIN TEXT&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;CODE:&lt;/span&gt;
&lt;div&gt;
&lt;div&gt;
&lt;ol&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+---------------------------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;| count&lt;span style="color:#006600;font-weight:bold"&gt;(&lt;/span&gt;distinct username&lt;span style="color:#006600;font-weight:bold"&gt;)&lt;/span&gt; |&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+---------------------------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;|                   &lt;span style="color:#800000;color:#800000"&gt;5903053&lt;/span&gt; | &lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+---------------------------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;&lt;span style="color:#800000;color:#800000"&gt;1&lt;/span&gt; row in set &lt;span style="color:#006600;font-weight:bold"&gt;(&lt;/span&gt;&lt;span style="color:#800000;color:#800000"&gt;18&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;81&lt;/span&gt; sec&lt;span style="color:#006600;font-weight:bold"&gt;)&lt;/span&gt; &lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Difference is impressive. &lt;strong&gt;4 min 13.61 sec&lt;/strong&gt; vs &lt;strong&gt;18.81 sec&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;If you want EXPLAIN plain, here it is:&lt;/p&gt;
&lt;p&gt;For Q1:&lt;/p&gt;
&lt;div&gt;&lt;span&gt;&lt;a href="http://www.mysqlperformanceblog.com/#"&gt;PLAIN TEXT&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;CODE:&lt;/span&gt;
&lt;div&gt;
&lt;div&gt;
&lt;ol&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+----+-------------+-------------------------+------+---------------+---------+---------+-------+---------+--------------------------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;| id | select_type | table                   | type | possible_keys | key     | key_len | ref   | rows    | Extra                    |&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+----+-------------+-------------------------+------+---------------+---------+---------+-------+---------+--------------------------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;|  &lt;span style="color:#800000;color:#800000"&gt;1&lt;/span&gt; | SIMPLE      | tracker  | ref  | PRIMARY       | PRIMARY | &lt;span style="color:#800000;color:#800000"&gt;4&lt;/span&gt;       | const | &lt;span style="color:#800000;color:#800000"&gt;6880241&lt;/span&gt; | Using where; Using index | &lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+----+-------------+-------------------------+------+---------------+---------+---------+-------+---------+--------------------------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;&lt;span style="color:#800000;color:#800000"&gt;1&lt;/span&gt; row in set &lt;span style="color:#006600;font-weight:bold"&gt;(&lt;/span&gt;&lt;span style="color:#800000;color:#800000"&gt;0&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;02&lt;/span&gt; sec&lt;span style="color:#006600;font-weight:bold"&gt;)&lt;/span&gt; &lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;For Q2:&lt;/p&gt;
&lt;div&gt;&lt;span&gt;&lt;a href="http://www.mysqlperformanceblog.com/#"&gt;PLAIN TEXT&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;CODE:&lt;/span&gt;
&lt;div&gt;
&lt;div&gt;
&lt;ol&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+----+-------------+-------------------------+-------+---------------+-------------------------------------+---------+------+----------+--------------------------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;| id | select_type | table                   | type  | possible_keys | key                                 | key_len | ref  | rows     | Extra                    |&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+----+-------------+-------------------------+-------+---------------+-------------------------------------+---------+------+----------+--------------------------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;|  &lt;span style="color:#800000;color:#800000"&gt;1&lt;/span&gt; | SIMPLE      | tracker | index | NULL          | block_id | &lt;span style="color:#800000;color:#800000"&gt;5&lt;/span&gt;       | NULL | &lt;span style="color:#800000;color:#800000"&gt;13760483&lt;/span&gt; | Using where; Using index | &lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+----+-------------+-------------------------+-------+---------------+-------------------------------------+---------+------+----------+--------------------------+ &lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Query Q1 is executed using Primary Key, and Query Q2 is using block_id key.&lt;/p&gt;
&lt;p&gt;To get more details I ran both queries with our extended stats in slow.log (available in 5.0-percona releases)&lt;/p&gt;
&lt;p&gt;So for query Q1:&lt;/p&gt;
&lt;div&gt;&lt;span&gt;&lt;a href="http://www.mysqlperformanceblog.com/#"&gt;PLAIN TEXT&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;CODE:&lt;/span&gt;
&lt;div&gt;
&lt;div&gt;
&lt;ol&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;# Query_time: &lt;span style="color:#800000;color:#800000"&gt;253&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;643162&lt;/span&gt;  Lock_time: &lt;span style="color:#800000;color:#800000"&gt;0&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;000137&lt;/span&gt;  Rows_sent: &lt;span style="color:#800000;color:#800000"&gt;1&lt;/span&gt;  Rows_examined: &lt;span style="color:#800000;color:#800000"&gt;11569733&lt;/span&gt;  Rows_affected: &lt;span style="color:#800000;color:#800000"&gt;0&lt;/span&gt;  Rows_read: &lt;span style="color:#800000;color:#800000"&gt;11569733&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;#   InnoDB_IO_r_ops: &lt;span style="color:#800000;color:#800000"&gt;73916&lt;/span&gt;  InnoDB_IO_r_bytes: &lt;span style="color:#800000;color:#800000"&gt;1211039744&lt;/span&gt;  InnoDB_IO_r_wait: &lt;span style="color:#800000;color:#800000"&gt;236&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;149003&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;#   InnoDB_rec_lock_wait: &lt;span style="color:#800000;color:#800000"&gt;0&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;000000&lt;/span&gt;  InnoDB_queue_wait: &lt;span style="color:#800000;color:#800000"&gt;0&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;000000&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;#   InnoDB_pages_distinct: &lt;span style="color:#800000;color:#800000"&gt;54838&lt;/span&gt; &lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;And for query Q2:&lt;/p&gt;
&lt;div&gt;&lt;span&gt;&lt;a href="http://www.mysqlperformanceblog.com/#"&gt;PLAIN TEXT&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;CODE:&lt;/span&gt;
&lt;div&gt;
&lt;div&gt;
&lt;ol&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;# Query_time: &lt;span style="color:#800000;color:#800000"&gt;18&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;846855&lt;/span&gt;  Lock_time: &lt;span style="color:#800000;color:#800000"&gt;0&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;000123&lt;/span&gt;  Rows_sent: &lt;span style="color:#800000;color:#800000"&gt;1&lt;/span&gt;  Rows_examined: &lt;span style="color:#800000;color:#800000"&gt;11864696&lt;/span&gt;  Rows_affected: &lt;span style="color:#800000;color:#800000"&gt;0&lt;/span&gt;  Rows_read: &lt;span style="color:#800000;color:#800000"&gt;11864696&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;#   InnoDB_IO_r_ops: &lt;span style="color:#800000;color:#800000"&gt;27510&lt;/span&gt;  InnoDB_IO_r_bytes: &lt;span style="color:#800000;color:#800000"&gt;450723840&lt;/span&gt;  InnoDB_IO_r_wait: &lt;span style="color:#800000;color:#800000"&gt;0&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;165124&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;#   InnoDB_rec_lock_wait: &lt;span style="color:#800000;color:#800000"&gt;0&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;000000&lt;/span&gt;  InnoDB_queue_wait: &lt;span style="color:#800000;color:#800000"&gt;0&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;000000&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;#   InnoDB_pages_distinct: &lt;span style="color:#800000;color:#800000"&gt;24687&lt;/span&gt; &lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;As you see for Q1 IO read took &lt;strong&gt;236.149003 sec&lt;/strong&gt; vs &lt;strong&gt;0.165124&lt;/strong&gt; for Q2.  But Q1 is scan by primary key, which supposed to be&lt;br&gt;
sequential!&lt;/p&gt;
&lt;p&gt;Let's see on another statistic, which available in innodb_check_fragmentation patch:&lt;/p&gt;
&lt;p&gt;for Q1:&lt;/p&gt;
&lt;div&gt;&lt;span&gt;&lt;a href="http://www.mysqlperformanceblog.com/#"&gt;PLAIN TEXT&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;CODE:&lt;/span&gt;
&lt;div&gt;
&lt;div&gt;
&lt;ol&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;SHOW STATUS LIKE &lt;span style="color:#CC0000"&gt;'Innodb_scan_pages%'&lt;/span&gt;;&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+------------------------------+-------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;| Variable_name                | Value |&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+------------------------------+-------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;| Innodb_scan_pages_contiguous | &lt;span style="color:#800000;color:#800000"&gt;88&lt;/span&gt;    | &lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;| Innodb_scan_pages_jumpy      | &lt;span style="color:#800000;color:#800000"&gt;73789&lt;/span&gt; | &lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+------------------------------+-------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;&lt;span style="color:#800000;color:#800000"&gt;2&lt;/span&gt; rows in set &lt;span style="color:#006600;font-weight:bold"&gt;(&lt;/span&gt;&lt;span style="color:#800000;color:#800000"&gt;0&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;00&lt;/span&gt; sec&lt;span style="color:#006600;font-weight:bold"&gt;)&lt;/span&gt; &lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;and for Q2:&lt;/p&gt;
&lt;div&gt;&lt;span&gt;&lt;a href="http://www.mysqlperformanceblog.com/#"&gt;PLAIN TEXT&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;CODE:&lt;/span&gt;
&lt;div&gt;
&lt;div&gt;
&lt;ol&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;mysql&amp;gt; SHOW STATUS LIKE &lt;span style="color:#CC0000"&gt;'Innodb_scan_pages%'&lt;/span&gt;;        &lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+------------------------------+-------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;| Variable_name                | Value |&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+------------------------------+-------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;| Innodb_scan_pages_contiguous | &lt;span style="color:#800000;color:#800000"&gt;26959&lt;/span&gt; | &lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;| Innodb_scan_pages_jumpy      | &lt;span style="color:#800000;color:#800000"&gt;442&lt;/span&gt;   | &lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+------------------------------+-------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;&lt;span style="color:#800000;color:#800000"&gt;2&lt;/span&gt; rows in set &lt;span style="color:#006600;font-weight:bold"&gt;(&lt;/span&gt;&lt;span style="color:#800000;color:#800000"&gt;0&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;00&lt;/span&gt; sec&lt;span style="color:#006600;font-weight:bold"&gt;)&lt;/span&gt; &lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;So you see for Q1 it was not sequential scan, even it is primary key, but it is sequential for Q2.&lt;/p&gt;
&lt;p&gt;So what's the answer ? It's &lt;strong&gt;fragmentation&lt;/strong&gt; of primary key (and whole data table, as InnoDB data == primary key). But how it could happen with&lt;br&gt;
primary key after mysqldump ? The answer here if we look on &lt;/p&gt;
&lt;p&gt;EXPLAIN SELECT * FROM tracker;&lt;/p&gt;
&lt;div&gt;&lt;span&gt;&lt;a href="http://www.mysqlperformanceblog.com/#"&gt;PLAIN TEXT&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;CODE:&lt;/span&gt;
&lt;div&gt;
&lt;div&gt;
&lt;ol&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+----+-------------+-------------------------+-------+---------------+-------------------------------------+---------+------+----------+-------------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;| id | select_type | table                   | type  | possible_keys | key                                 | key_len | ref  | rows     | Extra       |&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+----+-------------+-------------------------+-------+---------------+-------------------------------------+---------+------+----------+-------------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;|  &lt;span style="color:#800000;color:#800000"&gt;1&lt;/span&gt; | SIMPLE      | tracker | index | NULL          | block_id | &lt;span style="color:#800000;color:#800000"&gt;5&lt;/span&gt;       | NULL | &lt;span style="color:#800000;color:#800000"&gt;13760483&lt;/span&gt; | Using index | &lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+----+-------------+-------------------------+-------+---------------+-------------------------------------+---------+------+----------+-------------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;&lt;span style="color:#800000;color:#800000"&gt;1&lt;/span&gt; row in set &lt;span style="color:#006600;font-weight:bold"&gt;(&lt;/span&gt;&lt;span style="color:#800000;color:#800000"&gt;0&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;00&lt;/span&gt; sec&lt;span style="color:#006600;font-weight:bold"&gt;)&lt;/span&gt; &lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;We see that dump is taken in key "block_id" order, not in primary key order. And later when we load this table, INSERTS into primary key happens in random order, and that gives us the fragmentation we see here.&lt;/p&gt;
&lt;p&gt;How to fix it in our case. It's easy: &lt;code&gt;ALTER TABLE tracker ENGINE=InnoDB&lt;/code&gt;, it will force InnoDB to rebuild table in primary key order.&lt;/p&gt;
&lt;p&gt;After that Q1:&lt;/p&gt;
&lt;div&gt;&lt;span&gt;&lt;a href="http://www.mysqlperformanceblog.com/#"&gt;PLAIN TEXT&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;CODE:&lt;/span&gt;
&lt;div&gt;
&lt;div&gt;
&lt;ol&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+---------------------------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;| count&lt;span style="color:#006600;font-weight:bold"&gt;(&lt;/span&gt;distinct username&lt;span style="color:#006600;font-weight:bold"&gt;)&lt;/span&gt; |&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+---------------------------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;|                   &lt;span style="color:#800000;color:#800000"&gt;5856156&lt;/span&gt; | &lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+---------------------------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;&lt;span style="color:#800000;color:#800000"&gt;1&lt;/span&gt; row in set &lt;span style="color:#006600;font-weight:bold"&gt;(&lt;/span&gt;&lt;span style="color:#800000;color:#800000"&gt;17&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;72&lt;/span&gt; sec&lt;span style="color:#006600;font-weight:bold"&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt; &lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;mysql&amp;gt; SHOW STATUS LIKE &lt;span style="color:#CC0000"&gt;'Innodb_scan_pages%'&lt;/span&gt;;&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+------------------------------+-------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;| Variable_name                | Value |&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+------------------------------+-------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;| Innodb_scan_pages_contiguous | &lt;span style="color:#800000;color:#800000"&gt;37864&lt;/span&gt; | &lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;| Innodb_scan_pages_jumpy      | &lt;span style="color:#800000;color:#800000"&gt;574&lt;/span&gt;   | &lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+------------------------------+-------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;&lt;span style="color:#800000;color:#800000"&gt;2&lt;/span&gt; rows in set &lt;span style="color:#006600;font-weight:bold"&gt;(&lt;/span&gt;&lt;span style="color:#800000;color:#800000"&gt;0&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;00&lt;/span&gt; sec&lt;span style="color:#006600;font-weight:bold"&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt; &lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;and extended stats:&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;# Query_time: &lt;span style="color:#800000;color:#800000"&gt;17&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;765369&lt;/span&gt;  Lock_time: &lt;span style="color:#800000;color:#800000"&gt;0&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;000137&lt;/span&gt;  Rows_sent: &lt;span style="color:#800000;color:#800000"&gt;1&lt;/span&gt;  Rows_examined: &lt;span style="color:#800000;color:#800000"&gt;11569733&lt;/span&gt;  Rows_affected: &lt;span style="color:#800000;color:#800000"&gt;0&lt;/span&gt;  Rows_read: &lt;span style="color:#800000;color:#800000"&gt;11569733&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;#   InnoDB_IO_r_ops: &lt;span style="color:#800000;color:#800000"&gt;38530&lt;/span&gt;  InnoDB_IO_r_bytes: &lt;span style="color:#800000;color:#800000"&gt;631275520&lt;/span&gt;  InnoDB_IO_r_wait: &lt;span style="color:#800000;color:#800000"&gt;0&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;204893&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;#   InnoDB_rec_lock_wait: &lt;span style="color:#800000;color:#800000"&gt;0&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;000000&lt;/span&gt;  InnoDB_queue_wait: &lt;span style="color:#800000;color:#800000"&gt;0&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;000000&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;#   InnoDB_pages_distinct: &lt;span style="color:#800000;color:#800000"&gt;35584&lt;/span&gt; &lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;You see that time returned to appropriate &lt;strong&gt;17.72 sec&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;You may ask what happens now with Q2 ? yes, it's getting slow now, as we made key "block_id" inserted not in order. &lt;/p&gt;
&lt;div&gt;&lt;span&gt;&lt;a href="http://www.mysqlperformanceblog.com/#"&gt;PLAIN TEXT&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;CODE:&lt;/span&gt;
&lt;div&gt;
&lt;div&gt;
&lt;ol&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+---------------------------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;| count&lt;span style="color:#006600;font-weight:bold"&gt;(&lt;/span&gt;distinct username&lt;span style="color:#006600;font-weight:bold"&gt;)&lt;/span&gt; |&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+---------------------------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;|                   &lt;span style="color:#800000;color:#800000"&gt;5903053&lt;/span&gt; |&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+---------------------------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;&lt;span style="color:#800000;color:#800000"&gt;1&lt;/span&gt; row in set &lt;span style="color:#006600;font-weight:bold"&gt;(&lt;/span&gt;&lt;span style="color:#800000;color:#800000"&gt;2&lt;/span&gt; min &lt;span style="color:#800000;color:#800000"&gt;8&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;92&lt;/span&gt; sec&lt;span style="color:#006600;font-weight:bold"&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;mysql&amp;gt; SHOW STATUS LIKE &lt;span style="color:#CC0000"&gt;'Innodb_scan_pages%'&lt;/span&gt;;&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+------------------------------+-------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;| Variable_name                | Value |&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+------------------------------+-------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;| Innodb_scan_pages_contiguous | &lt;span style="color:#800000;color:#800000"&gt;45&lt;/span&gt;    | &lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;| Innodb_scan_pages_jumpy      | &lt;span style="color:#800000;color:#800000"&gt;35904&lt;/span&gt; | &lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;color:black;font-weight:normal;font-style:normal;color:#3A6A8B"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;+------------------------------+-------+&lt;/div&gt;
&lt;/li&gt;
&lt;li style="font-weight:bold;color:#26536A"&gt;
&lt;div style="font-family:&amp;#39;Courier New&amp;#39;, Courier, monospace;font-weight:normal"&gt;&lt;span style="color:#800000;color:#800000"&gt;2&lt;/span&gt; rows in set &lt;span style="color:#006600;font-weight:bold"&gt;(&lt;/span&gt;&lt;span style="color:#800000;color:#800000"&gt;0&lt;/span&gt;.&lt;span style="color:#800000;color:#800000"&gt;00&lt;/span&gt; sec&lt;span style="color:#006600;font-weight:bold"&gt;)&lt;/span&gt; &lt;/div&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;As for mysqldump you may use &lt;code&gt;--order-by-primary&lt;/code&gt;  options to force dump in primary key order.&lt;/p&gt;
&lt;p&gt;So notes to &lt;strong&gt;highlight&lt;/strong&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;InnoDB fragmentation may hurt your query significantly, especially when data is not in buffer_pool and execution goes to read from disk&lt;/li&gt;
&lt;li&gt;Fragmentation by secondary key is much more likely than by primary key, and you cannot really control it (tough it is possible in XtraDB / InnoDB-plugin with FAST INDEX creation) so be careful with queries scan many records by secondary key&lt;/li&gt;
&lt;li&gt;To check if you query affected by fragmentation you can use  &lt;code&gt;Innodb_scan_pages_contiguous ; Innodb_scan_pages_jumpy&lt;/code&gt; statistics in 5.0-percona releases (coming to 5.1-XtraDB soon)&lt;/li&gt;
&lt;/ul&gt;
    &lt;hr noshade style="margin:0;height:1px"&gt;
    &lt;p&gt;Entry posted by Vadim |
      &lt;a href="http://www.mysqlperformanceblog.com/2009/11/05/innodb-look-after-fragmentation/#comments"&gt;7 comments&lt;/a&gt;&lt;/p&gt;
    &lt;p&gt;Add to: &lt;a href="http://del.icio.us/post?url=http://www.mysqlperformanceblog.com/2009/11/05/innodb-look-after-fragmentation/&amp;amp;title=InnoDB:%20look%20after%20fragmentation" title="Bookmark this post on del.icio.us"&gt;&lt;img src="http://www.mysqlperformanceblog.com/wp-content/themes/boxy-but-gold/images/delicious.png" alt="delicious"&gt;&lt;/a&gt; | &lt;a href="http://digg.com/submit?phase=2&amp;amp;url=http://www.mysqlperformanceblog.com/2009/11/05/innodb-look-after-fragmentation/&amp;amp;title=InnoDB:%20look%20after%20fragmentation" title="Digg this post on Digg.com"&gt;&lt;img src="http://www.mysqlperformanceblog.com/wp-content/themes/boxy-but-gold/images/digg.png" alt="digg"&gt;&lt;/a&gt; | &lt;a href="http://reddit.com/submit?url=http://www.mysqlperformanceblog.com/2009/11/05/innodb-look-after-fragmentation/&amp;amp;title=InnoDB:%20look%20after%20fragmentation" title="Submit this post on reddit.com"&gt;&lt;img src="http://www.mysqlperformanceblog.com/wp-content/themes/boxy-but-gold/images/reddit.png" alt="reddit"&gt;&lt;/a&gt; | &lt;a href="http://www.netscape.com/submit/?U=http://www.mysqlperformanceblog.com/2009/11/05/innodb-look-after-fragmentation/&amp;amp;T=InnoDB:%20look%20after%20fragmentation" title="Vote for this article on Netscape"&gt;&lt;img src="http://www.mysqlperformanceblog.com/wp-content/themes/boxy-but-gold/images/netscape.gif" alt="netscape"&gt;&lt;/a&gt; | &lt;a href="http://www.google.com/bookmarks/mark?op=add&amp;amp;bkmk=http://www.mysqlperformanceblog.com/2009/11/05/innodb-look-after-fragmentation/&amp;amp;title=InnoDB:%20look%20after%20fragmentation" title="Add to Google Bookmarks"&gt;&lt;img src="http://www.mysqlperformanceblog.com/wp-content/themes/boxy-but-gold/images/google.png" alt="Google Bookmarks"&gt;&lt;/a&gt;&lt;/p&gt;</content><author><name>Vadim</name></author><gr:likingUser>09029975024654367860</gr:likingUser><gr:likingUser>06764635194694291826</gr:likingUser><gr:likingUser>10118192789424228359</gr:likingUser><gr:likingUser>00606760471676690516</gr:likingUser><gr:likingUser>01014446539998601099</gr:likingUser><gr:likingUser>03148324899192509193</gr:likingUser><gr:likingUser>11067853532291698348</gr:likingUser><gr:likingUser>09135605583225676806</gr:likingUser><source gr:stream-id="feed/http://www.mysqlperformanceblog.com/feed/"><id>tag:google.com,2005:reader/feed/http://www.mysqlperformanceblog.com/feed/</id><title type="html">MySQL Performance Blog</title><link rel="alternate" href="http://www.mysqlperformanceblog.com" type="text/html" /></source><feedburner:origLink>http://www.mysqlperformanceblog.com/2009/11/05/innodb-look-after-fragmentation/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1257671007548"><id gr:original-id="http://blogoscoped.com/archive/2009-11-07-n67.html">tag:google.com,2005:reader/item/b613e632e312c68f</id><category term="Technology" /><category term="Internet" /><category term="Google" /><category term="Search" /><title type="html">Brad Fitzpatrick (of LiveJournal, now at Google) Talks About Programming</title><published>2009-11-07T00:57:51Z</published><updated>2009-11-07T00:57:51Z</updated><link rel="alternate" href="http://feedproxy.google.com/~r/LaCaseDeLoncTomLectures/~3/gXn4m5mjXVQ/2009-11-07-n67.html" type="text/html" /><content xml:base="http://blogoscoped.com/" type="html">&lt;p style="margin-bottom:28px"&gt;
&lt;a href="http://www.flickr.com/photos/farber/1643092917/"&gt;&lt;img src="http://blogoscoped.com/files/brad-fitzpatrick.jpg" alt="" style="float:right;margin-left:10px;margin-bottom:10px;border:1px solid black"&gt;&lt;/a&gt;

&lt;em&gt;Brad Fitzpatrick, born in 1980, started to learn programming at the age of 5. In high school he went on to create a voting booth script called FreeVote, which he says earned him as much as 27 cent per click on banner ads back then (making for 25, 27 grand per month). He went on to create blogging platform LiveJournal, thinking and implementing a lot to scale this to the traffic needs, and is currently working at Google. &lt;strong&gt;The following excerpt is from the book &lt;a href="http://www.amazon.com/Coders-at-Work-Peter-Seibel/dp/1430219483/"&gt;Coders at Work&lt;/a&gt;&lt;/strong&gt;, in which Peter Seibel – himself a programmer – interviews many interesting programmers (some of them working at Google), asking a whole lot of interesting questions.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Seibel: You’ve done a lot of work in Perl, which is a pretty high-level language. How low do you think programmers need to go – do programmers still need to know assembly and how chips work?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Fitzpatrick: I don’t know. I see people that are really smart – I would say they’re good programmers – but say they only know Java. The way they think about solving things is always within the space they know. They don’t think ends-to-ends as much. I think it’s really important to know the whole stack even if you don’t operate within the whole stack.&lt;/p&gt;

&lt;p&gt;When I was doing stuff on LiveJournal, I was thinking about things from JavaScript to how things were interacting in the kernel. I was reading Linux kernel code about epoll and I was like, “Well, what if we have all these long TCP connections that are going to this load balancer?” I was trying to think of how much memory is in each structure here. That’s still somewhat high-level, but then we were thinking about things like, we’re getting so many interrupts on the Ethernet card – do we switch to this NAPI thing in the kernel where rather than the NIC sending an interrupt on every incoming packet it coalesces them to boundaries that were equivalent to 100 megabits speed even though it was a gigabit NIC. We were collecting numbers to see at what point this made sense and freed up the processor.&lt;/p&gt;

&lt;p&gt;We were getting a lot of wins for really low-level stuff. I had somebody recently tell me about something: “Java takes care of that; we don’t have to deal with that.” I was like: “No, Java can’t take care of this because I know what kernel version you’re using and the kernel doesn’t support it. Your virtual machine may be hiding that from you and giving you some abstraction that makes it look like that’s efficient, but it’s only efficient when you’re running on this kernel.” (...)&lt;/p&gt;

&lt;p&gt;In practice, nothing works. There are all these beautiful abstractions that are backed by shit. The implementations of libraries that look like they could be beautiful are shit. And so if you’re the one responsible for the cost of buying servers, or reliability – if you’re on call for pages – it helps to actually know what’s going on under the covers and not trust everyone else’s library, and code, and interfaces. (...)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Seibel: Do you have any advice for self-taught programmers?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Fitzpatrick: Always try to do something a little harder, that’s outside your reach. Read code. I heard this a lot, but it didn’t really sink in until later. (...)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Seibel: What about code ownership? Is it important for people to own code individually or is it better for a team to share ownership?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Fitzpatrick: I don’t think code should be owned. I don’t think anyone really thinks that. The way it works within Google is that it’s one massive source tree, one root, and one unified build system across all of it. And so anyone can go and change anything. But there are code reviews, and directories have owners, always at least two people, just in case someone quits or is on vacation.&lt;/p&gt;

&lt;p&gt;To check in you need three conditions met: You need someone to review it and say it looks good. You need to be certified in the language – basically, you’ve proven you know the style of this language – called “readability.” And then you also need the approval from somebody in the owner’s file in that directory. So in the case that you already are an owner of that directory and you have readability in that language, you just need someone to say, “Yeah, it looks good.” And it’s a pretty good system, because there tends to be a minimum of two, up to twenty, thirty owners. Once you work on a code base for a while, someone just adds you to owners. I think it’s a great system.&lt;/p&gt;

&lt;p&gt;[Photo &lt;a href="http://creativecommons.org/licenses/by-nc/2.0/deed.en"&gt;CC licensed&lt;/a&gt; by &lt;a href="http://www.flickr.com/photos/farber/"&gt;Dan Farber&lt;/a&gt;. I embolded the questions from the interview.]&lt;/p&gt; &lt;p&gt;&lt;strong&gt;[By Philipp Lenssen | Origin: &lt;a href="http://blogoscoped.com/archive/2009-11-07-n67.html"&gt;Brad Fitzpatrick (of LiveJournal, now at Goog ...&lt;/a&gt; | &lt;a href="http://blogoscoped.com/forum/find/?postId=8849"&gt;Comments&lt;/a&gt;]&lt;/strong&gt;&lt;/p&gt;&lt;br&gt;&lt;em&gt;[Advertisement] &lt;a href="http://blogoscoped.com/ad/?id=21&amp;amp;isFeed=1" rel="nofollow"&gt;Google books on Amazon&lt;/a&gt;&lt;/em&gt;</content><author><name>Philipp Lenssen</name></author><gr:likingUser>11876410036939485505</gr:likingUser><gr:likingUser>16124079332823773647</gr:likingUser><gr:likingUser>14901849046130717151</gr:likingUser><gr:likingUser>17537281340019235765</gr:likingUser><gr:likingUser>11313715401375862926</gr:likingUser><gr:likingUser>00363647479470519434</gr:likingUser><gr:likingUser>06906822859514570696</gr:likingUser><gr:likingUser>04096018279312203611</gr:likingUser><gr:likingUser>02667455816617337325</gr:likingUser><gr:likingUser>03817764388127445535</gr:likingUser><gr:likingUser>10604136799631899910</gr:likingUser><gr:likingUser>01014446539998601099</gr:likingUser><gr:likingUser>17309312148310888709</gr:likingUser><gr:likingUser>05194708142186511130</gr:likingUser><gr:likingUser>13548314165699659286</gr:likingUser><gr:likingUser>07377444046971953367</gr:likingUser><gr:likingUser>15695902145925691564</gr:likingUser><gr:likingUser>12292917012105263037</gr:likingUser><gr:likingUser>16094501596620897636</gr:likingUser><gr:likingUser>12202267164955829645</gr:likingUser><gr:likingUser>04512564523618018340</gr:likingUser><source gr:stream-id="feed/http://blogoscoped.com/rss.xml"><id>tag:google.com,2005:reader/feed/http://blogoscoped.com/rss.xml</id><title type="html">Google Blogoscoped</title><link rel="alternate" href="http://blogoscoped.com" type="text/html" /></source><feedburner:origLink>http://blogoscoped.com/archive/2009-11-07-n67.html</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1257551002732"><id gr:original-id="tag:blogger.com,1999:blog-8843503.post-2201166816656036130">tag:google.com,2005:reader/item/af63d9739cf419cf</id><title type="html">Blogs: Déclin de la High-Tech ?</title><published>2009-11-06T07:11:00Z</published><updated>2009-11-06T13:58:54Z</updated><link rel="alternate" href="http://feedproxy.google.com/~r/LaCaseDeLoncTomLectures/~3/OVS1gRfgU-g/blogs-declin-de-la-high-tech.html" type="text/html" /><content xml:base="http://aixtal.blogspot.com/" type="html">Vous avez sans doute remarqué que je me sers de ces colonnes pour vous parler de temps à autre de &lt;span style="font-weight:bold"&gt;l'évolution des &lt;/span&gt;&lt;span style="font-weight:bold"&gt;blogs&lt;/span&gt;, de leurs relations, de la structure du réseau qu'ils forment. Que voulez-vous ? certains s'intéressent aux papillons, moi c'est plutôt à la recherche d'informations, aux réseaux sociaux et tutti quanti, et j'ai trouvé avec Wikio un terrain de jeu assez fantastique -- et surtout une mine inépuisable de données. Je me permets donc de vous faire partager mes réflexions du matin.&lt;br&gt;&lt;br&gt;Il y a un an, le &lt;a href="http://www.wikio.fr/blogs/top"&gt;top 100&lt;/a&gt; des blogs Wikio (donc les plus liés par les autres) ressemblait à ceci (Mr. Xhark de Blogmotion avait eu la gentillesse de publier ce camembert -- &lt;a href="http://blogmotion.fr/internet/exclusif-classement-wikio-du-mois-doctobre-1324"&gt;voir son billet&lt;/a&gt; -- mais je vous le redonne ici par commodité).&lt;br&gt;&lt;br&gt;&lt;a href="http://3.bp.blogspot.com/_J6yMAuMJ-Wc/SvPSjcSoP-I/AAAAAAAAAY0/mykUmyuE0EM/s1600-h/Image+1.png"&gt;&lt;img style="margin:0px auto 10px;display:block;text-align:center;width:320px;height:274px" src="http://3.bp.blogspot.com/_J6yMAuMJ-Wc/SvPSjcSoP-I/AAAAAAAAAY0/mykUmyuE0EM/s320/Image+1.png" alt="" border="0"&gt;&lt;/a&gt;Voici l'allure qu'il a ce mois-ci :&lt;br&gt;&lt;br&gt;&lt;a href="http://2.bp.blogspot.com/_J6yMAuMJ-Wc/SvPS4cSjmcI/AAAAAAAAAY8/Mb8EigfHJKY/s1600-h/Image+2.png"&gt;&lt;img style="margin:0px auto 10px;display:block;text-align:center;width:320px;height:274px" src="http://2.bp.blogspot.com/_J6yMAuMJ-Wc/SvPS4cSjmcI/AAAAAAAAAY8/Mb8EigfHJKY/s320/Image+2.png" alt="" border="0"&gt;&lt;/a&gt;Le plus frappant, en un an, c'est la &lt;span style="font-weight:bold"&gt;diminution importante de la high-tech&lt;/span&gt;. Le déclin avait commencé avant, d'ailleurs. La high-tech représentait 40% du top 100 début novembre 2008, mais vous verrez sur le &lt;a href="http://blogmotion.fr/internet/exclusif-classement-wikio-du-mois-doctobre-1324"&gt;billet de Mr. Xhark&lt;/a&gt; qu'elle était à 52% le mois précédent (classement publié début octobre 2008).&lt;br&gt;&lt;br&gt;Comme vous le voyez sur le diagramme du bas, la high-tech n'est plus qu'à 11% du top 100. Autre élément : l'indéboulonnable premier du classement High-Tech, notre ami Eric Dupin de &lt;a href="http://www.presse-citron.net/"&gt;Presse Citron&lt;/a&gt; (que je salue au passage), était aussi premier au classement général, mais il n'est plus que 8e ces temps-ci.&lt;br&gt;&lt;br&gt;L'évolution s'est surtout faite à la faveur des &lt;span style="font-weight:bold"&gt;blogs de loisirs&lt;/span&gt; (essentiellement féminins), ce qui n'a pas forcément été du goût des blogogeeks (plutôt masculins dans l'ensemble !), vous vous souvenez sans doute des &lt;a href="http://aixtal.blogspot.com/2009/04/lexique-la-revolution-des-tricoteuses.html"&gt;réactions houleuses&lt;/a&gt; à ce sujet. Mais j'ai vu monter au fil des derniers mois une autre catégorie, celle des &lt;span style="font-weight:bold"&gt;blogs politiques&lt;/span&gt;, dont la présence a plus que doublé en un an, et qui représentent désormais près du tiers du top 100. &lt;a href="http://jegpol.blogspot.com/"&gt;Partageons mon avis&lt;/a&gt; a même pris la tête du classement général depuis le mois dernier. Comme le fait remarquer &lt;a href="http://blog.plafonddeverre.fr/post/Wikio-de-novembre"&gt;Olympe&lt;/a&gt;, il n'y a quatre femmes (&lt;a href="http://hyposblog.info/"&gt;Hypos&lt;/a&gt;, &lt;a href="http://blog.plafonddeverre.fr/"&gt;Olympe&lt;/a&gt;, &lt;a href="http://www.bahbycc.com/"&gt;Bah&lt;/a&gt;, &lt;a href="http://trublyonnevoitlavieenrouge.blogspot.com/"&gt;Trublyonne&lt;/a&gt;) dans le top 20 politique. C'est bien peu ! (Alors, Mesdames, on reste sur le cliché "Maman tricote pendant que papa se tripote l'iPhone ?")&lt;br&gt;&lt;br&gt;Pourquoi ce déclin relatif de la blogosphère high-tech ? Les blogueurs high-tech étaient les "early adopters" des blogs, et on peut imaginer que plusieurs années après une certain fatigue se soit installée. Quand on a fait le tour de l'outil, on passe à autre chose (les points d'attraction ne manquent pas: on Twitte peut-être plus qu'on ne blogue ces temps-ci ?). Et l'intérêt des lecteurs s'émousse peut-être à force de voir les mêmes news sur l'iPhone, Chrome ou Android sur des dizaines de blogs. C'est dur de garder la même fraîcheur, la même originalité dans la durée. Le copier-coller guette, et fait du mal. Sans parler bien sûr des essais plus ou moins heureux de monétisation qui pourraient finir de tuer la poule aux oeufs d'or (voir le débat chez &lt;a href="http://gonzague.me/un-petit-billet-contre-un-gros-cheque"&gt;Gonzague&lt;/a&gt;).&lt;br&gt;&lt;br&gt;Un certain nombre de blogueurs de la première génération ont jeté l'éponge ; de véritables institutions, comme &lt;a href="http://fr.techcrunch.com/"&gt;Techcrunch&lt;/a&gt;, sont même tombées aux oubliettes...&lt;br&gt;&lt;br&gt;Alors, y aura-t-il un sursaut ? Une nouvelle génération de blogueurs high-tech va-t-elle émerger ?&lt;div&gt;&lt;img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/8843503-2201166816656036130?l=aixtal.blogspot.com"&gt;&lt;/div&gt;</content><author><name>Jean Véronis</name></author><gr:likingUser>14238639521668728383</gr:likingUser><source gr:stream-id="feed/http://aixtal.blogspot.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://aixtal.blogspot.com/atom.xml</id><title type="html">Technologies du Langage</title><link rel="alternate" href="http://aixtal.blogspot.com/" type="text/html" /></source><feedburner:origLink>http://aixtal.blogspot.com/2009/11/blogs-declin-de-la-high-tech.html</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1257550988077"><id gr:original-id="http://ajaxian.com/?p=7878">tag:google.com,2005:reader/item/5b85dfbc5e0df41e</id><category term="Front Page" /><category term="JavaScript" /><category term="Library" /><title type="html">Google releases Closure, the tools behind the JS geniuses</title><published>2009-11-05T20:08:02Z</published><updated>2009-11-05T20:08:02Z</updated><link rel="alternate" href="http://feedproxy.google.com/~r/LaCaseDeLoncTomLectures/~3/SrCFXO1j_lg/google-releases-closure-the-tools-behind-the-js-geniuses" type="text/html" /><content xml:base="http://ajaxian.com/" type="html">&lt;p&gt;I remember when the whole Ajax thing kicked in and JavaScript developers looked at Gmail, Gmaps, and the like and thought “I wonder what powers that?”&lt;/p&gt;
&lt;p&gt;Well, the power comes from &lt;a href="http://googlecode.blogspot.com/2009/11/introducing-closure-tools.html"&gt;Closure&lt;/a&gt; a library and set of tools that the great JS hackers built over time as they created the applications at scale.&lt;/p&gt;
&lt;p&gt;As soon as I joined Google I wanted to check out this code, and talked to a bunch of folks who were interested in open sourcing it. Well, these things take time, but now we are fortunate enough to have &lt;a href="http://code.google.com/closure/"&gt;everything out there&lt;/a&gt; (interestingly, a lot of the code was open due to it being used in Google Doc).&lt;/p&gt;
&lt;p&gt;What are the pieces?&lt;/p&gt;
&lt;blockquote&gt;
&lt;h3&gt;A JavaScript optimizer&lt;/h3&gt;
&lt;p&gt;
 The &lt;a href="http://code.google.com/closure/compiler/"&gt;Closure Compiler&lt;/a&gt; compiles JavaScript into&lt;br&gt;
 compact, high-performance code. The compiler removes dead code and&lt;br&gt;
 rewrites and minimizes what’s left so that it downloads and runs&lt;br&gt;
 quickly. It also also checks syntax, variable references, and&lt;br&gt;
 types, and warns about common JavaScript pitfalls. These checks and&lt;br&gt;
 optimizations help you write apps that are less buggy and easier to&lt;br&gt;
 maintain. You can use the compiler with Closure Inspector, a Firebug&lt;br&gt;
 extension that makes debugging the obfuscated code almost as easy as&lt;br&gt;
 debugging the human-readable source.&lt;/p&gt;
&lt;div&gt;
&lt;h3&gt;A comprehensive JavaScript&lt;br&gt;
  library&lt;/h3&gt;
&lt;p&gt;
    The &lt;a href="http://code.google.com/closure/library/"&gt;Closure Library&lt;/a&gt; is a broad,&lt;br&gt;
    well-tested, modular, and cross-browser JavaScript library. You&lt;br&gt;
    can pull just what you need from a large set of reusable UI&lt;br&gt;
    widgets and controls, and from lower-level utilities for&lt;br&gt;
    DOM manipulation, server communication, animation, data structures, unit&lt;br&gt;
    testing, rich-text editing, and more.
  &lt;/p&gt;
&lt;p&gt;
    The Closure Library is server-agnostic, and is intended for use&lt;br&gt;
    with the Closure Compiler.
  &lt;/p&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;h3&gt;An easy templating system for both Java &amp;amp; JavaScript&lt;/h3&gt;
&lt;p&gt;
    &lt;a href="http://code.google.com/closure/templates/"&gt;Closure Templates&lt;/a&gt; simplify the task of&lt;br&gt;
    dynamically generating HTML. They have a simple syntax that is&lt;br&gt;
    natural for programmers. In contrast to traditional templating&lt;br&gt;
    systems, in which you use one big template per page, you can&lt;br&gt;
    think of Closure Templates as small components that you compose to&lt;br&gt;
    form your user interface.
  &lt;/p&gt;
&lt;p&gt;
    Closure Templates are implemented for both JavaScript and Java, so&lt;br&gt;
    that you can use the same templates on both the server and client&lt;br&gt;
    side. For the client side, Closure Templates are precompiled into&lt;br&gt;
    efficient JavaScript.
  &lt;/p&gt;
&lt;/div&gt;
&lt;/blockquote&gt;
&lt;p&gt;Check it out. It is a little like an inside out Dojo in some ways. There are years of lessons hidden in this code too (especially around good practices for scalable code, cross browser issues, and perf).&lt;/p&gt;
&lt;p&gt;Congrats to the people that made this happen. What do you think of Closure?&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Update&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Erik has &lt;a href="http://erik.eae.net/archives/2009/11/05/22.27.29/"&gt;posted on the history of Closure&lt;/a&gt; and also talks about the future a bit:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;
I hope we can see more code being shared among the different open source JS libraries out there. We would love to be able to goog.require some Dojo code (especially their data model code) and I’m sure they would love to be able to dojo.require our data structures and i18n code.
&lt;/p&gt;&lt;/blockquote&gt;
&lt;div&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ajaxian?a=9g-TIYxmX10:VUhmLkxlcNc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ajaxian?d=yIl2AUoC8zA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ajaxian?a=9g-TIYxmX10:VUhmLkxlcNc:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ajaxian?d=7Q72WNTAKBA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ajaxian?a=9g-TIYxmX10:VUhmLkxlcNc:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ajaxian?i=9g-TIYxmX10:VUhmLkxlcNc:D7DqB2pKExk" border="0"&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>Dion Almaer</name></author><gr:likingUser>09809877579610780847</gr:likingUser><gr:likingUser>08602044486859994302</gr:likingUser><gr:likingUser>09921541564548104649</gr:likingUser><gr:likingUser>15659348724500106942</gr:likingUser><gr:likingUser>06836422528150126485</gr:likingUser><gr:likingUser>01358458184534316570</gr:likingUser><gr:likingUser>08175612960993182203</gr:likingUser><gr:likingUser>17299071476841576200</gr:likingUser><gr:likingUser>04806670183589435297</gr:likingUser><gr:likingUser>03468099077291463273</gr:likingUser><gr:likingUser>16518033472857499873</gr:likingUser><gr:likingUser>06523682564925251611</gr:likingUser><gr:likingUser>05809848992495237152</gr:likingUser><gr:likingUser>10090370862584155260</gr:likingUser><gr:likingUser>12708994317497318377</gr:likingUser><gr:likingUser>16522323185046624204</gr:likingUser><gr:likingUser>07371492927129105898</gr:likingUser><gr:likingUser>09861010378999536985</gr:likingUser><gr:likingUser>00382685449146407278</gr:likingUser><gr:likingUser>03870846693843269396</gr:likingUser><gr:likingUser>06932101998658463777</gr:likingUser><gr:likingUser>11007069504355972270</gr:likingUser><gr:likingUser>07495681942225768375</gr:likingUser><gr:likingUser>03862491739720274032</gr:likingUser><gr:likingUser>00140563535682910421</gr:likingUser><gr:likingUser>10440297436336528410</gr:likingUser><gr:likingUser>16637973791736943545</gr:likingUser><gr:likingUser>08640665652505351828</gr:likingUser><gr:likingUser>12767926396777964101</gr:likingUser><gr:likingUser>17652796828996869293</gr:likingUser><gr:likingUser>09001021195358874434</gr:likingUser><gr:likingUser>09542211465219411072</gr:likingUser><gr:likingUser>05794905883295048130</gr:likingUser><gr:likingUser>00964421015043614741</gr:likingUser><gr:likingUser>14884578987521207248</gr:likingUser><gr:likingUser>17549044440746072317</gr:likingUser><gr:likingUser>02065842703742873576</gr:likingUser><gr:likingUser>09636061077715733523</gr:likingUser><gr:likingUser>07175052666167554373</gr:likingUser><gr:likingUser>00403270660914485178</gr:likingUser><gr:likingUser>14867361778730086200</gr:likingUser><gr:likingUser>08459735462794166102</gr:likingUser><gr:likingUser>05728361994178227277</gr:likingUser><gr:likingUser>12960342761950556145</gr:likingUser><gr:likingUser>17397620436009970955</gr:likingUser><gr:likingUser>02807883170221060046</gr:likingUser><gr:likingUser>07566286909271643619</gr:likingUser><gr:likingUser>05100917033963081081</gr:likingUser><gr:likingUser>15503397226561782478</gr:likingUser><gr:likingUser>06304654915342936937</gr:likingUser><gr:likingUser>12987853135385200959</gr:likingUser><gr:likingUser>03801655977637027022</gr:likingUser><gr:likingUser>02154838240142105701</gr:likingUser><gr:likingUser>16845895418964258835</gr:likingUser><gr:likingUser>13818729232887425322</gr:likingUser><gr:likingUser>12110844665667580945</gr:likingUser><gr:likingUser>07630011447534239431</gr:likingUser><gr:likingUser>13607290874558823759</gr:likingUser><gr:likingUser>00466970057736691712</gr:likingUser><gr:likingUser>00786861931136817563</gr:likingUser><gr:likingUser>10911209541005670174</gr:likingUser><gr:likingUser>00984816423953961220</gr:likingUser><gr:likingUser>17598201816432214135</gr:likingUser><gr:likingUser>18113001231339247850</gr:likingUser><gr:likingUser>03647295969831490601</gr:likingUser><gr:likingUser>08385267741910982514</gr:likingUser><gr:likingUser>11929026422634863420</gr:likingUser><gr:likingUser>09580525158088530282</gr:likingUser><gr:likingUser>12354904098222589169</gr:likingUser><gr:likingUser>11364658987488258139</gr:likingUser><gr:likingUser>16998353338301229520</gr:likingUser><source gr:stream-id="feed/http://feeds.feedburner.com/ajaxian"><id>tag:google.com,2005:reader/feed/http://feeds.feedburner.com/ajaxian</id><title type="html">Ajaxian » Front Page</title><link rel="alternate" href="http://ajaxian.com" type="text/html" /></source><feedburner:origLink>http://feedproxy.google.com/~r/ajaxian/~3/9g-TIYxmX10/google-releases-closure-the-tools-behind-the-js-geniuses</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1257519083776"><id gr:original-id="http://xkcd.com/659/">tag:google.com,2005:reader/item/9407e41dbe0f7087</id><title type="html">Lego</title><published>2009-11-06T00:00:00Z</published><updated>2009-11-06T00:00:00Z</updated><link rel="alternate" href="http://feedproxy.google.com/~r/LaCaseDeLoncTomLectures/~3/fxLnw1h3WaU/" type="text/html" /><summary xml:base="http://xkcd.com/" xml:lang="en" type="html">&lt;img src="http://imgs.xkcd.com/comics/lego.png" title="Dad, where is Grandpa right now?" alt="Dad, where is Grandpa right now?"&gt;</summary><author gr:unknown-author="true"><name>(author unknown)</name></author><gr:likingUser>00183092056149658736</gr:likingUser><gr:likingUser>18393202505479625592</gr:likingUser><gr:likingUser>09484105601691284920</gr:likingUser><gr:likingUser>17264770633416053185</gr:likingUser><gr:likingUser>02229757710438706599</gr:likingUser><gr:likingUser>01610692450773911497</gr:likingUser><gr:likingUser>15914271637247215322</gr:likingUser><gr:likingUser>03752742703354212151</gr:likingUser><gr:likingUser>09879977286868249236</gr:likingUser><gr:likingUser>13970200089567918680</gr:likingUser><gr:likingUser>06553185534282423144</gr:likingUser><gr:likingUser>03883334651421922267</gr:likingUser><gr:likingUser>11581356320720943583</gr:likingUser><gr:likingUser>15287009611748534585</gr:likingUser><gr:likingUser>12143789145453314359</gr:likingUser><gr:likingUser>06902072281597637603</gr:likingUser><gr:likingUser>05855388355200318357</gr:likingUser><gr:likingUser>13504701212363872306</gr:likingUser><gr:likingUser>14298926834408922932</gr:likingUser><gr:likingUser>09720016278322637162</gr:likingUser><gr:likingUser>13971487921358602333</gr:likingUser><gr:likingUser>06294111919047060995</gr:likingUser><gr:likingUser>14628806662419495879</gr:likingUser><gr:likingUser>10068978682744933023</gr:likingUser><gr:likingUser>15307725180950884118</gr:likingUser><gr:likingUser>12447715471119539850</gr:likingUser><gr:likingUser>11543758731783206248</gr:likingUser><gr:likingUser>15281830993807946198</gr:likingUser><gr:likingUser>11763108107664945945</gr:likingUser><gr:likingUser>10573671736040644655</gr:likingUser><gr:likingUser>09444729050735196497</gr:likingUser><gr:likingUser>13833541379917089398</gr:likingUser><gr:likingUser>12295815605974439867</gr:likingUser><gr:likingUser>04034693958115222640</gr:likingUser><gr:likingUser>01645990349807019320</gr:likingUser><gr:likingUser>01203381594436541811</gr:likingUser><gr:likingUser>02140582176975980369</gr:likingUser><gr:likingUser>12645385736742843008</gr:likingUser><gr:likingUser>06390797569189598614</gr:likingUser><gr:likingUser>02162966995621007394</gr:likingUser><gr:likingUser>18223969597386586730</gr:likingUser><gr:likingUser>06827179356399282332</gr:likingUser><gr:likingUser>12453516974710401454</gr:likingUser><gr:likingUser>00582767017425395942</gr:likingUser><gr:likingUser>10330003038496637867</gr:likingUser><gr:likingUser>12803824672049255281</gr:likingUser><gr:likingUser>08271699557386644455</gr:likingUser><gr:likingUser>16432006758401055108</gr:likingUser><gr:likingUser>05691961944525800370</gr:likingUser><gr:likingUser>02354910241553068710</gr:likingUser><gr:likingUser>11989330076473944979</gr:likingUser><gr:likingUser>10712142036515380945</gr:likingUser><gr:likingUser>12826199623031041334</gr:likingUser><gr:likingUser>06807477187724584730</gr:likingUser><gr:likingUser>06829810330245804743</gr:likingUser><gr:likingUser>12795050337580345585</gr:likingUser><gr:likingUser>11736177705523944964</gr:likingUser><gr:likingUser>09541715178582831889</gr:likingUser><gr:likingUser>11746070708584310475</gr:likingUser><gr:likingUser>11608113328977755634</gr:likingUser><gr:likingUser>02212140063439038604</gr:likingUser><gr:likingUser>01918962413905762862</gr:likingUser><gr:likingUser>09019909424975088928</gr:likingUser><gr:likingUser>08408436717300787241</gr:likingUser><gr:likingUser>05901462161846903471</gr:likingUser><gr:likingUser>03919633952826122090</gr:likingUser><gr:likingUser>12996566837594970732</gr:likingUser><gr:likingUser>02012649808320118905</gr:likingUser><gr:likingUser>01480522927401020533</gr:likingUser><gr:likingUser>06875828262697486939</gr:likingUser><gr:likingUser>05002694771050427044</gr:likingUser><gr:likingUser>10822634149885101406</gr:likingUser><gr:likingUser>02760940318859734550</gr:likingUser><gr:likingUser>12155370115932090900</gr:likingUser><gr:likingUser>08952765810193777179</gr:likingUser><gr:likingUser>00065726678754344776</gr:likingUser><gr:likingUser>00796819211123213791</gr:likingUser><gr:likingUser>16345332595561515577</gr:likingUser><gr:likingUser>06706159115186728365</gr:likingUser><gr:likingUser>10031754984055793971</gr:likingUser><gr:likingUser>17467819176998041696</gr:likingUser><gr:likingUser>17221028441459558479</gr:likingUser><gr:likingUser>13582654838937248507</gr:likingUser><gr:likingUser>05201216660755720244</gr:likingUser><gr:likingUser>07440970344288160930</gr:likingUser><gr:likingUser>07632072163746362340</gr:likingUser><gr:likingUser>16397708710238144934</gr:likingUser><gr:likingUser>00262262994440072415</gr:likingUser><gr:likingUser>17850580268965480487</gr:likingUser><gr:likingUser>05823332778272687233</gr:likingUser><gr:likingUser>09578002575324794462</gr:likingUser><gr:likingUser>15587460195403900234</gr:likingUser><gr:likingUser>13511606807779537129</gr:likingUser><gr:likingUser>02074694055026610119</gr:likingUser><gr:likingUser>11574472189404891947</gr:likingUser><gr:likingUser>06186079292721862678</gr:likingUser><gr:likingUser>09076610436764470438</gr:likingUser><gr:likingUser>07940493048842114843</gr:likingUser><gr:likingUser>06320741736890180708</gr:likingUser><gr:likingUser>12521659974785620406</gr:likingUser><source gr:stream-id="feed/http://xkcd.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://xkcd.com/atom.xml</id><title type="html">xkcd.com</title><link rel="alternate" href="http://xkcd.com/" type="text/html" /></source><feedburner:origLink>http://xkcd.com/659/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1257298162485"><id gr:original-id="http://www.readwriteweb.com/archives/facebook_announces_roadmap_for_developers.php">tag:google.com,2005:reader/item/be4b018253b9186d</id><category term="Facebook" /><title type="html">Facebook Announces Roadmap for Developers</title><published>2009-10-29T01:39:49Z</published><updated>2009-10-29T01:39:49Z</updated><link rel="alternate" href="http://feedproxy.google.com/~r/LaCaseDeLoncTomLectures/~3/wt6zEqyW50o/facebook_announces_roadmap_for_developers.php" type="text/html" /><summary xml:base="http://www.readwriteweb.com/" type="html">&lt;p&gt;&lt;img src="http://www.readwriteweb.com/images/facebook_logo_mar09.png"&gt;Today, Facebook has published a &lt;a href="http://wiki.developers.facebook.com/index.php/Developer_Roadmap"&gt;developer roadmap&lt;/a&gt; outlinining upcoming relevant changes and a rough timeline for each.&lt;/p&gt;

&lt;p&gt;Changes include developer access to user emails, more prominent app displays on user profiles, all-new homepage dashboards for apps and games, and improvements to Open Graph and Analytics APIs. Facebook Connect libraries will be "smaller, clearer, and faster," and app policies and principles will be streamlined and uniformly enforced. Read on for details and screenshots of the new faces of Facebook apps.&lt;/p&gt;
&lt;p align="right"&gt;&lt;em&gt;Sponsor&lt;/em&gt;&lt;br&gt;&lt;a href="http://d1.openx.org/ck.php?n=16932&amp;amp;cb=16932"&gt;&lt;img src="http://d1.openx.org/avw.php?zoneid=11205&amp;amp;cb=16932&amp;amp;n=16932" border="0" alt="" align="right"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;"These updates are designed to simplify communication for users and developers, improve app discovery and engagement, and provide you with more comprehensive tools for building or expanding your business with Facebook," writes Facebook product head Ethan Beard on the Facebooks Developer blog &lt;a href="http://developers.facebook.com/news.php?blog=1&amp;amp;story=326"&gt;post&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;"Through these new APIs and tools, we are giving all developers building with Facebook and those in our largest application category - gaming - new ways to attract and engage users."&lt;/p&gt;

&lt;h2&gt;Look &amp;amp; Feel Changes&lt;/h2&gt;

&lt;p&gt;Indeed, Facebook seems to regard gaming as its own monster - something that has taken off to the extent of taking over the platform, and not something that was necessarily anticipated. For that reason, we see of the most interesting changes as drawing a line in the sand between social games and "real" apps.&lt;/p&gt;

&lt;p&gt;In this bit of new hotness, you can see Apps displayed on the homepage left-hand menu for easier user discovery that will likely be less dependent on recommendations or invitations from one's Facebook friends. And Games are now just games, no longer grouped under the general apps umbrella.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://www.readwriteweb.com/facebook-roadmap.jpg"&gt;&lt;/p&gt;

&lt;p&gt;The Games Dashboard will also give developers a new communication channel, called "News", for sending personalized text updates to their users.&lt;/p&gt;

&lt;p&gt;One of the more interesting changes that will drive adoption and interaction virally is letting usersfeature their favorite apps on their home pages with bookmarks and new dashboards. "In addition, users will be able to better represent applications on their profile following short-term changes that include focusing profile integration on application tabs, as well as removing profile boxes, the info section of boxes, and the Boxes tab," writes Beard. Also, the apps that are bookmarked into a user's homepage menu will have counters, just like Facebook's own features, to prompt user actions.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://www.readwriteweb.com/facebook-roadmap2.jpg"&gt;&lt;/p&gt;

&lt;p&gt;Apps are also getting a new canvas layout, "a format that increases brand association with users," writes Beard.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://www.readwriteweb.com/facebook-roadmap1.jpg"&gt;&lt;/p&gt;

&lt;h2&gt;Communication Changes&lt;/h2&gt;

&lt;p&gt;App-user communication is rather busted in its current state. Beard acknowledges this fact and presents a preliminary solution. "Application communication in channels like notifications and requests aren't effectively serving their original purpose. There is a significant opportunity to improve the user experience and reduce spam by replacing them with better features."&lt;/p&gt;

&lt;p&gt;Moving forward, Facebook developers will also be able to interact with users in several different ways. First of all, user-user communication via the platform will be consolidated into streams and inboxes and will have new features to help users remain engaged with apps. User-to-user communications commonly in the notifications and requests channels will be moved to the inbox, as well.&lt;/p&gt;

&lt;p&gt;Also, developers will have access to user email addresses. Using the domain @facebookappmail.com, devs will be able to contact users via email through what Beard says will be a safe, secure channel for users.&lt;/p&gt;

&lt;p&gt;&lt;img src="http://www.readwriteweb.com/facebook-roadmap3.jpg"&gt;&lt;/p&gt;

&lt;h2&gt;Developer Product Changes&lt;/h2&gt;

&lt;p&gt;Beard also highlighted two APIs set to change. The Open Graph API will allow any page on any website to integrate Facebook Page features. This means that users can become Facebook fans of any site or page on the Internet; that page would then appear on the user's profile and in Facebook search results; and the page will be able to publish stories to the user's stream. Although this change in itself doesn't open any Facebook data to the rest of the world, it does significantly increase the boundaries of the walled garden.&lt;/p&gt;

&lt;p&gt;Beard also writes that an improved Application Insights Page and new Analytics API are on the way. He promises improved tools, more robust data, and better management capabilities for apps and Facebook Connect-enabled websites.&lt;/p&gt;

&lt;p&gt;And speaking of Facebook Connect, those libraries are set to become smaller and faster. Other boons to devs include the public &lt;a href="http://wiki.developers.facebook.com/index.php/Developer_Roadmap"&gt;roadmap&lt;/a&gt;, a new &lt;a href="http://developers.facebook.com"&gt;website&lt;/a&gt; for developers, and Platform Live Status, "a central dashboard to view the health of various integration points, bugs, and Platform uptime as well as detail about upcoming changes and improvements to Platform." The developer blog and status feed will also be available via email subscriptions.&lt;/p&gt;

&lt;p&gt;Finally, Facebook's &lt;a href="http://developers.facebook.com/policy/"&gt;Developer Principles and Policies&lt;/a&gt; have been streamlined and will now be applied across the platform. "In addition," Beard notes, "we're retiring the formerly optional Application Verification brand, submission process, fees and badge; the program's higher standards will be required and applications will be subject to review at any time."&lt;/p&gt;

&lt;p&gt;&lt;img src="http://www.readwriteweb.com/facebook-roadmap4.jpg"&gt;&lt;/p&gt;

&lt;p&gt;In terms of reducing the platform's complexity and increasing its power and speed, Beard concludes, "We are focused on designing Platform in a way that we can run core Facebook applications on the same set of APIs you're building on. If our technologies aren't fast, robust, and simple, we will feel the same pains that you do."&lt;/p&gt;

&lt;p&gt;What do our developer friends have to say about Facebook's proposed changes and attempts at communicating them?  Is it helpful to have some idea of what will be happening to the platform, when changes will occur, and why Facebook is making those adjustments?&lt;/p&gt;

&lt;p&gt;Another question that interests us is that of cross-platform development: From what other companies would you also like to see developer roadmaps?&lt;/p&gt;

&lt;p&gt;Let us know your thoughts in the comments.&lt;/p&gt;
&lt;strong&gt;&lt;a href="http://www.readwriteweb.com/archives/facebook_announces_roadmap_for_developers.php#comments-open"&gt;Discuss&lt;/a&gt;&lt;/strong&gt;&lt;p&gt;&lt;iframe src="http://feedads.g.doubleclick.net/~ah/f/bh8m03d07dnj95a0qa1ma5k32c/300/250?ca=1&amp;amp;fh=280#http%3A%2F%2Fwww.readwriteweb.com%2Farchives%2Ffacebook_announces_roadmap_for_developers.php" width="100%" height="280" frameborder="0" scrolling="no" marginwidth="0" marginheight="0"&gt;&lt;/iframe&gt;&lt;/p&gt;&lt;div&gt;
&lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=7O07Ksf0OdE:K-gjlrnZgJQ:FFnlKYwJmN0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?d=FFnlKYwJmN0" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=7O07Ksf0OdE:K-gjlrnZgJQ:Ij26kaj3iuU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?d=Ij26kaj3iuU" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=7O07Ksf0OdE:K-gjlrnZgJQ:C2pbw5bZMiI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?d=C2pbw5bZMiI" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=7O07Ksf0OdE:K-gjlrnZgJQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?d=yIl2AUoC8zA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=7O07Ksf0OdE:K-gjlrnZgJQ:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?i=7O07Ksf0OdE:K-gjlrnZgJQ:V_sGLiPBpWU" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=7O07Ksf0OdE:K-gjlrnZgJQ:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?i=7O07Ksf0OdE:K-gjlrnZgJQ:gIN9vFwOqvQ" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=7O07Ksf0OdE:K-gjlrnZgJQ:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?i=7O07Ksf0OdE:K-gjlrnZgJQ:F7zBnMyn0Lo" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=7O07Ksf0OdE:K-gjlrnZgJQ:OqabYuBsmOY"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?d=OqabYuBsmOY" border="0"&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/readwriteweb/~4/7O07Ksf0OdE" height="1" width="1"&gt;</summary><author><name>Jolie O'Dell</name></author><gr:likingUser>14867707515221810903</gr:likingUser><gr:likingUser>15034337984017630405</gr:likingUser><gr:likingUser>01608318545280180518</gr:likingUser><gr:likingUser>01217029180896657039</gr:likingUser><gr:likingUser>09307508893812570289</gr:likingUser><gr:likingUser>05775626418551449951</gr:likingUser><gr:likingUser>15605347615714220536</gr:likingUser><gr:likingUser>04312520149080442530</gr:likingUser><source gr:stream-id="feed/http://www.readwriteweb.com/rss.xml"><id>tag:google.com,2005:reader/feed/http://www.readwriteweb.com/rss.xml</id><title type="html">ReadWriteWeb</title><link rel="alternate" href="http://www.readwriteweb.com/" type="text/html" /></source><feedburner:origLink>http://feedproxy.google.com/~r/readwriteweb/~3/7O07Ksf0OdE/facebook_announces_roadmap_for_developers.php</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1257298094442"><id gr:original-id="http://www.readwriteweb.com/archives/amazon_speeds_checkout_with_new_payphrase_technology.php">tag:google.com,2005:reader/item/03244236efc3bd76</id><category term="Amazon" /><title type="html">Amazon Speeds Checkout with New PayPhrase Technology</title><published>2009-10-29T13:53:26Z</published><updated>2009-10-29T13:53:26Z</updated><link rel="alternate" href="http://feedproxy.google.com/~r/LaCaseDeLoncTomLectures/~3/e0cUsoQIbBs/amazon_speeds_checkout_with_new_payphrase_technology.php" type="text/html" /><summary xml:base="http://www.readwriteweb.com/" type="html">&lt;p&gt;&lt;img src="http://www.readwriteweb.com/images/amazon-logo.jpg"&gt;Online retailer &lt;a href="http://amazon.com"&gt;Amazon.com&lt;/a&gt; has just announced a new checkout system called "&lt;a href="http://www.amazon.com/gp/payphrase/claim/whats-this.html"&gt;PayPhrase&lt;/a&gt;" which speeds up the process of making online purchases by allowing shoppers to enter a unique phrase and 4-digit PIN number to complete their transaction. Both the phrase and PIN are created in advance and are linked to a shipping address and preferred method of payment. After the initial set up, PayPhrase users are no longer required to sign in or fill out credit card information when shopping online. &lt;/p&gt;
&lt;p align="right"&gt;&lt;em&gt;Sponsor&lt;/em&gt;&lt;br&gt;&lt;a href="http://d1.openx.org/ck.php?n=16937&amp;amp;cb=16937"&gt;&lt;img src="http://d1.openx.org/avw.php?zoneid=11205&amp;amp;cb=16937&amp;amp;n=16937" border="0" alt="" align="right"&gt;&lt;/a&gt;&lt;/p&gt;


&lt;h2&gt;Why PayPhrase Beats 1-Click&lt;/h2&gt;

&lt;p&gt;Amazon already has a similar speedy checkout system known as "1-Click." When activated, customers can associate payment methods with a frequently used shipping address, such as a home address, to quickly complete purchases without having to fill out their name, address, and credit card details. &lt;/p&gt;

&lt;p&gt;Although not designed to replace 1-Click, the new PayPhrase system is even easier to use and more flexible. Using this system, shoppers don't have to be signed in to the site with an Amazon account as is necessary with 1-Click. That saves an extra step and could lead to more impulse buys as there's no "cooling down" time, however brief, between seeing something you want to purchase and then finalizing the transaction. &lt;/p&gt;

&lt;p&gt;&lt;img src="http://www.readwriteweb.com/images/payphrase.png" align="right"&gt;The PayPhrase system also allows for the creation of multiple PayPhrases and PINs so you can associate different addresses and methods of payment with each other. For example, you could additionally have a corporate credit card tied to your office address or a pre-paid credit card your children use tied to your home address. 1-Click checkout, on the other hand, only allows for the combination of one address and one method of payment. &lt;/p&gt;

&lt;p&gt;The PayPhrase technology will go live across all of Amazon.com as well as on several third-party sites that use &amp;quot;Checkout by Amazon,&amp;quot; a service that lets other retailers checkout customers by using their personal and payment information saved on Amazon&amp;#39;s servers. At this time, DKNY, Jockey, Patagonia, Buy.com, J&amp;amp;R, and Car-Toys have announced they will add the PayPhrase system on their sites, too. &lt;/p&gt;

&lt;h2&gt;Is PayPhrase the Future of Mobile Transactions?&lt;/h2&gt;

&lt;p&gt;Clearly, the new PayPhrase technology has been designed to make online checkout easier, but could there be more to it than that? Earlier this month, &lt;a href="http://www.readwriteweb.com/archives/amazon_announces_mobile_payments_service.php"&gt;the company launched a mobile payments service&lt;/a&gt; which allows mobile application developers to integrate Amazon's checkout system into their mobile software and mobile websites. The mobile payments system also allows for the integration of the 1-Click checkout process, so there's no reason to doubt that the PayPhrase technology will now also be added to the payments platform as well. &lt;/p&gt;

&lt;p&gt;With PayPhrase, the process of making an online purchase takes far less steps than any other checkout system today. Even PayPal forces you to sign in, choose payment methods, and complete your transaction before being redirected back to the retailer's website. While a few extra steps aren't a big deal on the web, when you're on a mobile phone, every delay makes it that much harder thanks to slower internet connection speeds, tiny keyboards, and, more often than not, a lack of time to get involved in any long process. If you can't checkout in a minute or so, it's generally not even worth bothering until you're back at home on your broadband-connected PC. But with PayPhrase, you can checkout incredibly fast - only two steps are required: one to enter your special phrase and another to enter your PIN. Although Amazon hasn't made any formal announcements about integrating PayPhrase into their mobile platform just yet, they must have had it in mind when they designed this technology. &lt;/p&gt;
&lt;strong&gt;&lt;a href="http://www.readwriteweb.com/archives/amazon_speeds_checkout_with_new_payphrase_technology.php#comments-open"&gt;Discuss&lt;/a&gt;&lt;/strong&gt;&lt;p&gt;&lt;iframe src="http://feedads.g.doubleclick.net/~ah/f/bh8m03d07dnj95a0qa1ma5k32c/300/250?ca=1&amp;amp;fh=280#http%3A%2F%2Fwww.readwriteweb.com%2Farchives%2Famazon_speeds_checkout_with_new_payphrase_technology.php" width="100%" height="280" frameborder="0" scrolling="no" marginwidth="0" marginheight="0"&gt;&lt;/iframe&gt;&lt;/p&gt;&lt;div&gt;
&lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=oHMDt0Ztk4E:E-dc_jxErKM:FFnlKYwJmN0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?d=FFnlKYwJmN0" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=oHMDt0Ztk4E:E-dc_jxErKM:Ij26kaj3iuU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?d=Ij26kaj3iuU" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=oHMDt0Ztk4E:E-dc_jxErKM:C2pbw5bZMiI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?d=C2pbw5bZMiI" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=oHMDt0Ztk4E:E-dc_jxErKM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?d=yIl2AUoC8zA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=oHMDt0Ztk4E:E-dc_jxErKM:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?i=oHMDt0Ztk4E:E-dc_jxErKM:V_sGLiPBpWU" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=oHMDt0Ztk4E:E-dc_jxErKM:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?i=oHMDt0Ztk4E:E-dc_jxErKM:gIN9vFwOqvQ" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=oHMDt0Ztk4E:E-dc_jxErKM:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?i=oHMDt0Ztk4E:E-dc_jxErKM:F7zBnMyn0Lo" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=oHMDt0Ztk4E:E-dc_jxErKM:OqabYuBsmOY"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?d=OqabYuBsmOY" border="0"&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/readwriteweb/~4/oHMDt0Ztk4E" height="1" width="1"&gt;</summary><author><name>Sarah Perez</name></author><gr:likingUser>11822496793097396577</gr:likingUser><gr:likingUser>13010673013779995938</gr:likingUser><gr:likingUser>09556099084421364964</gr:likingUser><gr:likingUser>04784046626119762346</gr:likingUser><gr:likingUser>00908162041245689695</gr:likingUser><gr:likingUser>00363647479470519434</gr:likingUser><gr:likingUser>02068280166281718425</gr:likingUser><gr:likingUser>10318612623988826104</gr:likingUser><gr:likingUser>05726242027858807400</gr:likingUser><gr:likingUser>13135514339489751935</gr:likingUser><gr:likingUser>15927763213682958723</gr:likingUser><gr:likingUser>06911511727124347930</gr:likingUser><gr:likingUser>11831940829634522440</gr:likingUser><gr:likingUser>09602503874890341544</gr:likingUser><gr:likingUser>14077125222473972971</gr:likingUser><source gr:stream-id="feed/http://www.readwriteweb.com/rss.xml"><id>tag:google.com,2005:reader/feed/http://www.readwriteweb.com/rss.xml</id><title type="html">ReadWriteWeb</title><link rel="alternate" href="http://www.readwriteweb.com/" type="text/html" /></source><feedburner:origLink>http://feedproxy.google.com/~r/readwriteweb/~3/oHMDt0Ztk4E/amazon_speeds_checkout_with_new_payphrase_technology.php</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1257298012627"><id gr:original-id="http://www.readwriteweb.com/archives/google_now_scanning_rss_atom_feeds.php">tag:google.com,2005:reader/item/501782809c2448da</id><category term="Google" /><title type="html">Google Now Scanning RSS, Atom Feeds, May Experiment with Real-Time Protocols in Future</title><published>2009-10-30T14:44:01Z</published><updated>2009-10-30T14:44:01Z</updated><link rel="alternate" href="http://feedproxy.google.com/~r/LaCaseDeLoncTomLectures/~3/YaJEJx6-yeI/google_now_scanning_rss_atom_feeds.php" type="text/html" /><summary xml:base="http://www.readwriteweb.com/" type="html">&lt;p&gt;&lt;img src="http://www.readwriteweb.com/images/google_logo.gif"&gt;According to a post on &lt;a href="http://googlewebmastercentral.blogspot.com/2009/10/using-rssatom-feeds-to-discover-new.html"&gt;Google's Webmaster Central blog&lt;/a&gt;, Google is now discovering web sites by automatically scanning RSS and Atom feeds. This new process will help Google more quickly identify web pages and will allow users to find new content in search results as soon as it goes live. While not exactly "real-time," using feeds to identify updates to websites is an arguably faster method than the traditional crawling techniques Google has used in the past. And Google may get &lt;em&gt;even faster&lt;/em&gt; in the near future - the post also notes that the company may soon explore using mechanisms like the real-time protocol &lt;a href="http://code.google.com/p/pubsubhubbub/"&gt;PubSubHubbub&lt;/a&gt; to identify updated items going forward. &lt;/p&gt;
&lt;p align="right"&gt;&lt;em&gt;Sponsor&lt;/em&gt;&lt;br&gt;&lt;a href="http://d.ads.readwriteweb.com/ck.php?n=16953&amp;amp;cb=16953"&gt;&lt;img src="http://d.ads.readwriteweb.com/avw.php?zoneid=14&amp;amp;cb=16953&amp;amp;n=16953" border="0" alt="" align="right"&gt;&lt;/a&gt;&lt;/p&gt;


&lt;p&gt;The blog post doesn't say whether or not RSS and Atom discovery is displacing traditional web crawling for sites that are feed-enabled, but it's likely that, if given the choice, Google will opt for the faster method if available. As Vanessa Fox notes on the &lt;a href="http://searchengineland.com/googles-additional-discovery-method-rss-and-atom-feeds-28828"&gt;SearchEngineLand blog&lt;/a&gt;, since it's unknown at this time whether Google is using the feeds in place of traditional web crawling, it may make sense to use full feeds rather than partial ones in order to get your content indexed faster by Google's search engine. &lt;/p&gt;

&lt;h2&gt;Real-Time Web Crawling in the Future?&lt;/h2&gt;

&lt;p&gt;Although only briefly mentioned in the post, Google hinted that they may begin looking into other mechanisms such as &lt;a href="http://code.google.com/p/pubsubhubbub/"&gt;PubSubHubbub&lt;/a&gt;, an open protocol that provides near-instant notifications of change updates. No further details were provided beyond the one sentence, but the announcement clearly shows that Google has seen the writing on the wall and knows that the real-time web is the future. This is one trend the company isn't planning to ignore.&lt;/p&gt;

&lt;p&gt;The real-time web, heavily influenced by the speed of Twitter and other other rapid-fire social networking updates, has created a desire among internet users for faster access to information. This desire has, in turn, led to the creation of new real-time protocols such as the above mentioned &lt;a href="http://code.google.com/p/pubsubhubbub/"&gt;PubSubHubbub&lt;/a&gt; and its counterpart &lt;a href="http://rsscloud.org/"&gt;RSSCloud&lt;/a&gt;. If Google began to use these technologies for scanning the web, their search results wouldn't just be updated &lt;em&gt;faster&lt;/em&gt; - they would be updated in real-time. That means information would become available in the search results listings as soon as it was published to the web. &lt;/p&gt;

&lt;a href="http://www.readwriteweb.com/reports/real-time-web.php"&gt;&lt;img src="http://www.readwriteweb.com/images/300x100rtwreportad.png" align="right" hspace="5px" vspace="5px"&gt;&lt;/a&gt;&lt;p&gt;That, of course, would lead to a whole new series of challenges for the search engine - most notably, how to rank the real-time results? Given that Google's search algorithm has been built on top of the concept of PageRank, a way to determine the relevance of a website by what other sites link to it, ranking search results that are so fresh that there is an absence of links could prove a difficult feat. However, Google is already doing this to some extent now. Over time, the PageRank algorithm has evolved and can now reward sites with fresher, more fitting content and rank them higher than sites with more links on some occasions. And if anyone can figure out the proper algorithm for mixing in real-time content and ranking it appropriately along with static pages, it's got to be Google. In fact, we'll probably soon see exactly how they plan on addressing this issue, when they &lt;a href="http://www.readwriteweb.com/archives/google_indexes_twitter.php"&gt;incorporate Twitter search results&lt;/a&gt; into their index, as announced last week. &lt;/p&gt;

&lt;h2&gt;...But Until Then, Google Delivering Faster, Fresher Results Instead&lt;/h2&gt;

&lt;p&gt;Although the PubSubHubbub mention may have been the most exiting part of the announcement, real-time search results aren't here just yet. In the meantime, we have to just be content with &lt;em&gt;sped up&lt;/em&gt; results instead. The post advises website owners who are blocking Google's search bot software known as Googlebot from crawling their RSS/Atom feeds to unblock it via their robots.txt file. If unsure, webmasters can test their feed URLs with the &lt;a href="http://www.google.com/support/webmasters/bin/answer.py?answer=156449"&gt;robots.txt tester in Google Webmaster Tools&lt;/a&gt;, as the post recommends. &lt;/p&gt;
&lt;strong&gt;&lt;a href="http://www.readwriteweb.com/archives/google_now_scanning_rss_atom_feeds.php#comments-open"&gt;Discuss&lt;/a&gt;&lt;/strong&gt;&lt;p&gt;&lt;iframe src="http://feedads.g.doubleclick.net/~ah/f/bh8m03d07dnj95a0qa1ma5k32c/300/250?ca=1&amp;amp;fh=280#http%3A%2F%2Fwww.readwriteweb.com%2Farchives%2Fgoogle_now_scanning_rss_atom_feeds.php" width="100%" height="280" frameborder="0" scrolling="no" marginwidth="0" marginheight="0"&gt;&lt;/iframe&gt;&lt;/p&gt;&lt;div&gt;
&lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=LnngyTwk5QA:hnSdRsLdXeg:FFnlKYwJmN0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?d=FFnlKYwJmN0" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=LnngyTwk5QA:hnSdRsLdXeg:Ij26kaj3iuU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?d=Ij26kaj3iuU" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=LnngyTwk5QA:hnSdRsLdXeg:C2pbw5bZMiI"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?d=C2pbw5bZMiI" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=LnngyTwk5QA:hnSdRsLdXeg:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?d=yIl2AUoC8zA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=LnngyTwk5QA:hnSdRsLdXeg:V_sGLiPBpWU"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?i=LnngyTwk5QA:hnSdRsLdXeg:V_sGLiPBpWU" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=LnngyTwk5QA:hnSdRsLdXeg:gIN9vFwOqvQ"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?i=LnngyTwk5QA:hnSdRsLdXeg:gIN9vFwOqvQ" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=LnngyTwk5QA:hnSdRsLdXeg:F7zBnMyn0Lo"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?i=LnngyTwk5QA:hnSdRsLdXeg:F7zBnMyn0Lo" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/readwriteweb?a=LnngyTwk5QA:hnSdRsLdXeg:OqabYuBsmOY"&gt;&lt;img src="http://feeds.feedburner.com/~ff/readwriteweb?d=OqabYuBsmOY" border="0"&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/readwriteweb/~4/LnngyTwk5QA" height="1" width="1"&gt;</summary><author><name>Sarah Perez</name></author><gr:likingUser>03710303363093483267</gr:likingUser><gr:likingUser>02332031960587794882</gr:likingUser><gr:likingUser>13728892934868253397</gr:likingUser><gr:likingUser>05564531778043609869</gr:likingUser><gr:likingUser>09413895889909808995</gr:likingUser><gr:likingUser>01608318545280180518</gr:likingUser><gr:likingUser>00363647479470519434</gr:likingUser><gr:likingUser>02068280166281718425</gr:likingUser><gr:likingUser>05901874963049303938</gr:likingUser><gr:likingUser>00288104054227093269</gr:likingUser><gr:likingUser>00695627749485711684</gr:likingUser><gr:likingUser>10706732425910878417</gr:likingUser><gr:likingUser>00114987802970034934</gr:likingUser><gr:likingUser>12960342761950556145</gr:likingUser><gr:likingUser>06160232354365572846</gr:likingUser><gr:likingUser>01014446539998601099</gr:likingUser><gr:likingUser>03260704204525734252</gr:likingUser><gr:likingUser>17042575778671160987</gr:likingUser><gr:likingUser>09307508893812570289</gr:likingUser><gr:likingUser>12483820037207609845</gr:likingUser><gr:likingUser>04816926377971815335</gr:likingUser><gr:likingUser>14261226687169365124</gr:likingUser><gr:likingUser>09228660293930066575</gr:likingUser><gr:likingUser>14398251055235947827</gr:likingUser><gr:likingUser>01463086754225766827</gr:likingUser><gr:likingUser>01642098318840233313</gr:likingUser><gr:likingUser>05428043634140538159</gr:likingUser><gr:likingUser>02885637465183941878</gr:likingUser><source gr:stream-id="feed/http://www.readwriteweb.com/rss.xml"><id>tag:google.com,2005:reader/feed/http://www.readwriteweb.com/rss.xml</id><title type="html">ReadWriteWeb</title><link rel="alternate" href="http://www.readwriteweb.com/" type="text/html" /></source><feedburner:origLink>http://feedproxy.google.com/~r/readwriteweb/~3/LnngyTwk5QA/google_now_scanning_rss_atom_feeds.php</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1257297852581"><id gr:original-id="http://blog.zedroot.org/?p=991">tag:google.com,2005:reader/item/86f2990f58902e02</id><title type="html">ZedTux : add-apt-repository: Ajouter simplement un repo PPA à APT !</title><published>2009-11-02T17:58:57Z</published><updated>2009-11-02T17:58:57Z</updated><link rel="alternate" href="http://feedproxy.google.com/~r/LaCaseDeLoncTomLectures/~3/PCtBpusNjZ4/" type="text/html" /><content xml:base="http://www.planet-libre.org/" type="html">&lt;p&gt;&lt;a href="http://blog.zedroot.org/wp-content/uploads/2009/11/deb.png"&gt;&lt;img title="deb" src="http://blog.zedroot.org/wp-content/uploads/2009/11/deb.png" alt="deb" width="128" height="128"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Je vient tout juste de découvrir cette magnifique commande, donc je partage ! &lt;img src="http://blog.zedroot.org/wp-includes/images/smilies/icon_smile.gif" alt=":)"&gt; &lt;/p&gt;
&lt;h2&gt;add-apt-repository&lt;/h2&gt;
&lt;p&gt;Pas la peine d’écrire des kilomètres d’article !&lt;br&gt;
Cette commande permet d’ajouter un dépôt &lt;a href="https://help.launchpad.net/Packaging/PPA?action=show&amp;amp;redirect=PPAQuickStart"&gt;PPA (Personal Package Archive)&lt;/a&gt; au fichier source.list d’&lt;a href="http://fr.wikipedia.org/wiki/Advanced_Packaging_Tool"&gt;apt (le gestionnaire de paquet deb)&lt;/a&gt; !&lt;br&gt;
Elle est disponible depuis la version &lt;a href="http://doc.ubuntu-fr.org/karmic"&gt;9.10 (Karmic Koala)&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;C’est à dire qu’il ajoute les célèbre lignes « deb http://ppa.launchpad.net/… » mais il télécharge et installe aussi les certificats GPG !&lt;/p&gt;
&lt;p&gt;Elle est pas belle la vie !? &lt;img src="http://blog.zedroot.org/wp-includes/images/smilies/icon_cool.gif" alt="8)"&gt; &lt;/p&gt;
&lt;h2&gt;Petit exemple ?&lt;/h2&gt;
&lt;p&gt;Ok, voici un petit exemple !&lt;/p&gt;
&lt;p&gt;Je désire installer les drivers Nvidia patché avec vdpau (pour utiliser le GPU plus tot que le CPU pour décoder les vidéo HD) :&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;sudo add-apt-repository ppa:nvidia-vdpau&lt;br&gt;
[sudo] password for zedtux:&lt;br&gt;
Executing: gpg –ignore-time-conflict –no-options –no-default-keyring –secret-keyring /etc/apt/secring.gpg –trustdb-name /etc/apt/trustdb.gpg –keyring /etc/apt/trusted.gpg –keyserver keyserver.ubuntu.com –recv 71609D4D2F1518FA9C5DC0FB1DABDBB4CEC06767&lt;br&gt;
gpg: requête de la clé CEC06767 du serveur hkp keyserver.ubuntu.com&lt;br&gt;
gpg: clé CEC06767: clé publique « Launchpad Nvidia Vdpau Team PPA » importée&lt;br&gt;
gpg: Quantité totale traitée: 1&lt;br&gt;
gpg:               importée: 1  (RSA: 1)&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Ensuite, il ne reste plus qu’à faire l’habituel&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;sudo apt-get update&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Et les nouveaux paquets sont prêt à être installé !&lt;/p&gt;
&lt;h4&gt;Ubuntu…. c’est trop fort !&lt;/h4&gt;&lt;p&gt;&lt;img src="http://www.gravatar.com/avatar.php?gravatar_id=609b69cbb09257883a4e32d7d5aff098&amp;amp;default=http%3A%2F%2Fwww.planet-libre.orgthemes%2Fprincipal%2Fimages%2Fgravatar.png&amp;amp;size=40" alt="Gravatar de ZedTux"&gt;&lt;br&gt;&lt;i&gt;Billet original de &lt;a href="http://blog.zedroot.org/?p=991" title="Visiter la source"&gt;ZedTux&lt;/a&gt;.&lt;br&gt;Votez pour cet article sur le &lt;a href="http://www.planet-libre.org" title="Se rendre sur le Planet"&gt;Planet Libre&lt;/a&gt;.&lt;/i&gt;&lt;/p&gt;</content><author><name>ZedTux</name></author><gr:likingUser>13971487921358602333</gr:likingUser><source gr:stream-id="feed/http://www.planet-libre.org/atom10.php"><id>tag:google.com,2005:reader/feed/http://www.planet-libre.org/atom10.php</id><title type="html">Planet Libre</title><link rel="alternate" href="http://www.planet-libre.org" type="text/html" /></source><feedburner:origLink>http://blog.zedroot.org/?p=991</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1257297704321"><id gr:original-id="http://blogoscoped.com/archive/2009-11-03-n86.html">tag:google.com,2005:reader/item/603548f6df9fe052</id><category term="Technology" /><category term="Internet" /><category term="Google" /><category term="Search" /><title type="html">Google Chrome Bookmarks Syncing Live in Beta</title><published>2009-11-03T13:20:50Z</published><updated>2009-11-03T13:20:50Z</updated><link rel="alternate" href="http://feedproxy.google.com/~r/LaCaseDeLoncTomLectures/~3/0btDYLizE_Y/2009-11-03-n86.html" type="text/html" /><content xml:base="http://blogoscoped.com/" type="html">&lt;p&gt;&lt;a href="http://blogoscoped.com/files/google-sync-my-bookmarks-large.png"&gt;&lt;img src="http://blogoscoped.com/files/google-sync-my-bookmarks.png" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you’re using the &lt;a href="http://www.google.com/chrome/eula.html?extra=betachannel"&gt;Beta version&lt;/a&gt; of Google Chrome, you’re now able to synchronize your bookmarks across Chrome browsers on different computers, by using your Google account credentials. &lt;em&gt;Wrench → Synchronize my bookmarks&lt;/em&gt; will get you going (if your browser version reads something like 4.0.223.16). &lt;span&gt;[Thanks Mbegin!]&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;[By Philipp Lenssen | Origin: &lt;a href="http://blogoscoped.com/archive/2009-11-03-n86.html"&gt;Google Chrome Bookmarks Syncing Live in Beta&lt;/a&gt; | &lt;a href="http://blogoscoped.com/forum/find/?postId=8843"&gt;Comments&lt;/a&gt;]&lt;/strong&gt;&lt;/p&gt;&lt;br&gt;&lt;em&gt;[Advertisement] &lt;a href="http://blogoscoped.com/ad/?id=5&amp;amp;isFeed=1" rel="nofollow"&gt;Google books at eBay&lt;/a&gt;: background info on Google, AdWords, AdSense, Blogger and more...&lt;/em&gt;</content><author><name>Philipp Lenssen</name></author><gr:likingUser>04910571926708635259</gr:likingUser><gr:likingUser>13837274790097513820</gr:likingUser><gr:likingUser>03793173458691650005</gr:likingUser><gr:likingUser>11958762696911427920</gr:likingUser><gr:likingUser>15139269915624172215</gr:likingUser><gr:likingUser>08122946027060256448</gr:likingUser><gr:likingUser>00858283058836263510</gr:likingUser><gr:likingUser>14340218146023383537</gr:likingUser><gr:likingUser>09556099084421364964</gr:likingUser><gr:likingUser>05176158623096190565</gr:likingUser><gr:likingUser>01576739165438783294</gr:likingUser><gr:likingUser>17143658295997411148</gr:likingUser><gr:likingUser>16629023284858398108</gr:likingUser><gr:likingUser>03558746107930569411</gr:likingUser><gr:likingUser>02437729796138025383</gr:likingUser><gr:likingUser>16850349013661785311</gr:likingUser><gr:likingUser>15124814612127766635</gr:likingUser><gr:likingUser>10487038504643362172</gr:likingUser><gr:likingUser>05588638682809946214</gr:likingUser><gr:likingUser>00150844475812098025</gr:likingUser><gr:likingUser>01321626217105420125</gr:likingUser><gr:likingUser>05785299148809782175</gr:likingUser><gr:likingUser>05977624677034018525</gr:likingUser><gr:likingUser>07081807577201385912</gr:likingUser><gr:likingUser>06626738893509433721</gr:likingUser><gr:likingUser>04361404603598256964</gr:likingUser><gr:likingUser>12553186619348018132</gr:likingUser><gr:likingUser>18337587010578927439</gr:likingUser><gr:likingUser>00320933387269203904</gr:likingUser><gr:likingUser>07258185307310295054</gr:likingUser><source gr:stream-id="feed/http://blog.outer-court.com/rss.xml"><id>tag:google.com,2005:reader/feed/http://blog.outer-court.com/rss.xml</id><title type="html">Google Blogoscoped</title><link rel="alternate" href="http://blogoscoped.com" type="text/html" /></source><feedburner:origLink>http://blogoscoped.com/archive/2009-11-03-n86.html</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1257297638654"><id gr:original-id="http://www.stevesouders.com/blog/?p=677">tag:google.com,2005:reader/item/5600e1a0da8f370c</id><category term="Firebug" scheme="http://www.stevesouders.com/blog" /><category term="Firefox" scheme="http://www.stevesouders.com/blog" /><category term="Performance" scheme="http://www.stevesouders.com/blog" /><category term="Tools" scheme="http://www.stevesouders.com/blog" /><category term="Web Development" scheme="http://www.stevesouders.com/blog" /><category term="honza" scheme="http://www.stevesouders.com/blog" /><category term="HTTP" scheme="http://www.stevesouders.com/blog" /><category term="net panel" scheme="http://www.stevesouders.com/blog" /><category term="packet sniffer" scheme="http://www.stevesouders.com/blog" /><title type="html">Firebug Net Panel: more accurate timing</title><published>2009-11-03T23:28:37Z</published><updated>2009-11-04T08:39:31Z</updated><link rel="alternate" href="http://feedproxy.google.com/~r/LaCaseDeLoncTomLectures/~3/F-z8TE73hKY/" type="text/html" /><content xml:base="http://www.stevesouders.com/blog/2009/11/03/firebug-net-panel-more-accurate-timing/" xml:lang="en" type="html">&lt;p&gt;There’s a lot of work that transpires before I can recommend a performance tool. I have to do a large amount of testing to verify the tool’s accuracy, and frequently (more often than not) that testing reveals inaccuracies.&lt;/p&gt;
&lt;p&gt;Like many web developers, I love &lt;a href="http://getfirebug.com/"&gt;Firebug&lt;/a&gt; and have been using it since it first came out. Firebug’s Net Panel, thanks to &lt;a href="http://www.softwareishard.com/blog/about/"&gt;Jan (”Honza”) Odvarko&lt;/a&gt;, has seen huge improvements over the last year or so: &lt;a href="http://www.softwareishard.com/blog/firebug/firebug-net-panel-column-customization/"&gt;customized columns&lt;/a&gt;, avoiding confusion between real requests vs. cache reads, new (more colorful!) UI, and the recent support of &lt;a href="http://www.stevesouders.com/blog/2009/10/19/http-archive-specification-firebug-and-httpwatch/"&gt;export&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Until now,  Net Panel suffered from an accuracy problem: because Net Panel reads network events in the same JavaScript thread as the main page, it’s possible for network events to be blocked resulting in inaccurate time measurements. &lt;a href="http://stevesouders.com/cuzillion/"&gt;Cuzillion&lt;/a&gt; is helpful here to create a test case. This &lt;a href="http://stevesouders.com/cuzillion/?c0=bi1hfff1_0&amp;amp;c1=bb0hfff0_5&amp;amp;c2=bi1hfff1_0"&gt;example&lt;/a&gt; has an image that takes 1 second to download, followed by an inline script that takes 5 seconds to execute, and finally another 1 second image. Even though the first image is only 1 second, the “done” network event is blocked for 5 seconds while the inline script executes. In Firebug 1.4’s Net Panel, this image incorrectly appears to take 5 seconds to download, instead of just 1 second:&lt;/p&gt;
&lt;p&gt;&lt;img title="Firebug 1.4 Net Panel" src="http://stevesouders.com/images/firebug-net-panel-1.4.png" alt="" width="471" height="90"&gt;&lt;/p&gt;
&lt;p&gt;Honza has come through again, delivering a fix to this problem in Firebug 1.5 (currently in beta as &lt;a href="http://getfirebug.com/releases/firebug/1.5X/"&gt;firebug-1.5X.0b1&lt;/a&gt; which requires &lt;a href="http://www.mozilla.com/en-US/firefox/all-beta.html"&gt;Firefox 3.6 beta&lt;/a&gt;). The fix included help from the Firefox team to add the actual time to each network event. The results are clearly more accurate:&lt;/p&gt;
&lt;p&gt;&lt;img title="Firebug Net Panel 1.5" src="http://stevesouders.com/images/firebug-net-panel-1.5.png" alt="" width="466" height="96"&gt;&lt;/p&gt;
&lt;p&gt;A few other nice features to point out: Firebug Net Panel is the only packet sniffer I’m aware of that displays the DOMContentLoaded and onload events (blue and red vertical line). Firebug 1.5 Net Panel has multiple columns available, and the ability to customize which columns you want to display:&lt;/p&gt;
&lt;p&gt;&lt;img title="Firebug 1.5 Net Panel with columns" src="http://stevesouders.com/images/firebug-net-panel-1.5-columns.png" alt="" width="466" height="145"&gt;&lt;/p&gt;
&lt;p&gt;With these new features and improved timing accuracy, Firebug Net Panel is a great choice for analyzing HTTP traffic in your web pages. If you’re not subscribed to Honza’s blog, I recommend you &lt;a href="http://www.softwareishard.com/blog/feed/"&gt;sign up&lt;/a&gt;. He’s always working on something new that’s helpful to web developers and especially to Firebug users.&lt;/p&gt;
&lt;p&gt;Note 1: Remember, you need both &lt;a href="http://www.mozilla.com/en-US/firefox/all-beta.html"&gt;Firefox 3.6 beta&lt;/a&gt; and  &lt;a href="http://getfirebug.com/releases/firebug/1.5X/"&gt;firebug-1.5X.0b1&lt;/a&gt; to see the new Net Panel.&lt;/p&gt;
&lt;p&gt;Note 2: This is being sent from Malmö, Sweden where I’m attending &lt;a href="http://oredev.org/"&gt;Øredev&lt;/a&gt;.&lt;/p&gt;</content><author><name>Steve Souders</name></author><gr:likingUser>13258541176501862786</gr:likingUser><gr:likingUser>12996006324666661986</gr:likingUser><gr:likingUser>07585571004934482625</gr:likingUser><gr:likingUser>16195270557446526681</gr:likingUser><gr:likingUser>11081723316065234536</gr:likingUser><gr:likingUser>01795872381745695845</gr:likingUser><gr:likingUser>00227207032985276951</gr:likingUser><gr:likingUser>05346096936687954128</gr:likingUser><source gr:stream-id="feed/http://www.stevesouders.com/blog/feed/atom/"><id>tag:google.com,2005:reader/feed/http://www.stevesouders.com/blog/feed/atom/</id><title type="html">High Performance Web Sites</title><link rel="alternate" href="http://www.stevesouders.com/blog" type="text/html" /></source><feedburner:origLink>http://www.stevesouders.com/blog/2009/11/03/firebug-net-panel-more-accurate-timing/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1257297550267"><id gr:original-id="http://code.flickr.com/blog/?p=1141">tag:google.com,2005:reader/item/ae1eb850ede75a9d</id><category term="Uncategorized" /><title type="html">Introducing The App Garden</title><published>2009-11-03T19:59:30Z</published><updated>2009-11-03T19:59:30Z</updated><link rel="alternate" href="http://feedproxy.google.com/~r/LaCaseDeLoncTomLectures/~3/c32ALHE2AbY/" type="text/html" /><content xml:base="http://code.flickr.com/blog" type="html">&lt;p&gt;Flickr has long had an extensive, well-documented API. Over the years, thousands of developers have taken advantage of it, coming up with some awesome apps. We love that.&lt;/p&gt;
&lt;p&gt;We love it so much, we’ve revamped the /services/ section of Flickr, replacing it with The App Garden. What is it, you say? It’s a place for developers to promote their apps, right here on Flickr. We hope that it will make it easier for Flickr users to find the awesome apps that the Flickr API hackers have been building.&lt;/p&gt;
&lt;p&gt;You will see that The App Garden already has some apps in it, and you might think “OOOH SHINY!!” You might also wonder how to get your app into the App Garden. I will show you!&lt;/p&gt;
&lt;h3&gt;Getting Started&lt;/h3&gt;
&lt;p&gt;We’ve tried to make things as simple and straight-forward as possible. You will find all of your API Keys under the &lt;a href="http://www.flickr.com/services/apps/by/me"&gt;Apps By Me&lt;/a&gt; page, which replaces the old API Key list. You will notice that they are all labeled as “Private” – we leave it up to you to decide when your app page is ready to be made public.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://farm3.static.flickr.com/2618/4072925558_3dcecdd433.jpg" alt="" width="500" height="375"&gt;&lt;/p&gt;
&lt;p&gt;When you click on one of your apps, you will be taken to the owner view of your app page. This page is where you tell the world about your app – provide a description, link to a website, set screenshots, and add tags. When you’re ready, change the privacy setting to public. That will make your app visible to other users and allow it to show up in &lt;a href="http://www.flickr.com/services/apps/search/"&gt;searches&lt;/a&gt;.&lt;/p&gt;
&lt;h3&gt;Managing Your Apps&lt;/h3&gt;
&lt;p&gt;Below the privacy settings, you will find the Admin section of the sidebar – your own little command center. You will find a link to a page with statistics for the app’s API Key (largely unchanged, though developers with higher user counts may notice a considerate speed up), as well as pages for disabling the key, editing the authentication flow for the key, and deleting the app altogether.&lt;/p&gt;
&lt;p&gt;We love our API hackers and are happy to embrace them in a whole new way. We hope you like it.&lt;/p&gt;
&lt;h3&gt;More Info&lt;/h3&gt;
&lt;p&gt;&lt;a href="http://www.flickr.com/help/appgarden/"&gt;App Garden FAQ&lt;/a&gt;&lt;br&gt;
&lt;a href="http://www.flickr.com/services/apps/about"&gt;What is the App Garden?&lt;/a&gt;&lt;/p&gt;</content><author><name>mikhailp</name></author><gr:likingUser>13971487921358602333</gr:likingUser><gr:likingUser>09560815947096551135</gr:likingUser><gr:likingUser>00121084851366648445</gr:likingUser><gr:likingUser>00627952885218951119</gr:likingUser><gr:likingUser>07803237709052972366</gr:likingUser><gr:likingUser>15019703710478282944</gr:likingUser><gr:likingUser>15535601161120899336</gr:likingUser><gr:likingUser>11802387444847095109</gr:likingUser><gr:likingUser>13269553628081609113</gr:likingUser><gr:likingUser>14110759606233380510</gr:likingUser><gr:likingUser>07524272730661097951</gr:likingUser><gr:likingUser>07180297575475698830</gr:likingUser><source gr:stream-id="feed/http://code.flickr.com/blog/feed/"><id>tag:google.com,2005:reader/feed/http://code.flickr.com/blog/feed/</id><title type="html">Code: Flickr Developer Blog</title><link rel="alternate" href="http://code.flickr.com/blog" type="text/html" /></source><feedburner:origLink>http://code.flickr.com/blog/2009/11/03/introducing-the-app-garden/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1257297385429"><id gr:original-id="http://ajaxian.com/?p=7794">tag:google.com,2005:reader/item/f55b06f47054f2c3</id><category term="Debugging" /><category term="Front Page" /><category term="Safari" /><category term="Utility" /><title type="html">Web Inspector gets major improvements</title><published>2009-11-03T11:21:14Z</published><updated>2009-11-03T11:21:14Z</updated><link rel="alternate" href="http://feedproxy.google.com/~r/LaCaseDeLoncTomLectures/~3/_0mnKef9Mkk/web-inspector-gets-major-improvements" type="text/html" /><content xml:base="http://ajaxian.com/" type="html">&lt;p&gt;&lt;img src="http://blog.bogojoker.com/wp-content/uploads/2009/10/colors.png"&gt;&lt;/p&gt;
&lt;p&gt;Joseph Pecoraro has made &lt;a href="http://blog.bogojoker.com/2009/10/improving-the-web-inspector/"&gt;some major improvements to Web Inspector&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;It is now much easier to create and much around with the content. Create new CSS selectors with ease; Add content in-line with elements; see color representations of any value.&lt;/p&gt;
&lt;p&gt;And, there is more:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;b&gt;DOM Storage&lt;/b&gt;&lt;br&gt;
The DOM Storage DataGrids now displays live updates. You don’t need to manually refresh every time something changes. Also you can create, edit, and tab through the keys/values. Double click any open space to start creating a new value. Catching on to a theme with my updates? Overall this makes working with DOM Storage just a little more developer friendly.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Cookies&lt;/b&gt;&lt;br&gt;
This was the first feature that required me really digging into WebKit’s source, including touching all platforms. With the help of WebKit developers I eventually added support for viewing all cookie information (secure, httpOnly, etc) and deleting cookies for the Mac. All other platforms were able to display basic cookie information available through document.cookie.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Event Listeners&lt;/b&gt;&lt;br&gt;
Not having the ability to enumerate the Event Listeners via JavaScript has plagued me, and most likely plenty of other developers, for a very long time. This made viewing Event Listeners an excellent candidate for an Inspector feature.&lt;/p&gt;
&lt;p&gt;The implementation as it stands now has some great functionality. There is a new sidebar pane when you inspect an element in the Elements Tree Hierarchy. If the current Node has registered event listeners there is a separate section for each type of event registered (click, mouseover, etc). Within each of these lists is a display of all of the event listeners in the entire event flow for that type. That means you see all the Capturing Event Listeners followed by the Bubbling Event Listeners in the exact order that they execute and on which nodes they are registered.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Natural Sorting of Properties&lt;/b&gt;&lt;br&gt;
Who counts “1?, “11?, “12?, “2?, “3?, etc. Certainly nobody I know! So, I implemented a variant of the alphanumerical sorting algorithm for properties when they are displayed in the console. Now you get a much more natural ordering!&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Syntax Highlighting&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;JSON and CSS syntax highlighting is now there.&lt;/p&gt;
&lt;p&gt;These are not nearly all of the new features in the Web Inspector. These are just the ones that I worked on and contributed to. To name some other features there are Scope Bars for the Console and Resources Panel, the ability to view Request and Response HTTP Parameters for Resources (great for debugging AJAX), Resource Status Code indicators, complete Serialization between the inspected page and the inspector, and more.
&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Thanks Joe!&lt;/p&gt;
&lt;div&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ajaxian?a=9K6jM5uXyPQ:xSplAHqwT_g:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ajaxian?d=yIl2AUoC8zA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ajaxian?a=9K6jM5uXyPQ:xSplAHqwT_g:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ajaxian?d=7Q72WNTAKBA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ajaxian?a=9K6jM5uXyPQ:xSplAHqwT_g:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ajaxian?i=9K6jM5uXyPQ:xSplAHqwT_g:D7DqB2pKExk" border="0"&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>Dion Almaer</name></author><gr:likingUser>13971487921358602333</gr:likingUser><gr:likingUser>02589564564089038333</gr:likingUser><gr:likingUser>13931693304364814941</gr:likingUser><gr:likingUser>13698475904441306862</gr:likingUser><gr:likingUser>00964421015043614741</gr:likingUser><gr:likingUser>11101694698275061722</gr:likingUser><gr:likingUser>00430277383901087989</gr:likingUser><gr:likingUser>06726058663998486120</gr:likingUser><gr:likingUser>17326394529154329588</gr:likingUser><source gr:stream-id="feed/http://feeds.feedburner.com/ajaxian"><id>tag:google.com,2005:reader/feed/http://feeds.feedburner.com/ajaxian</id><title type="html">Ajaxian » Front Page</title><link rel="alternate" href="http://ajaxian.com" type="text/html" /></source><feedburner:origLink>http://feedproxy.google.com/~r/ajaxian/~3/9K6jM5uXyPQ/web-inspector-gets-major-improvements</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1257297335650"><id gr:original-id="http://ajaxian.com/?p=7832">tag:google.com,2005:reader/item/8b0e86893cd7c2cb</id><category term="Announcements" /><category term="Front Page" /><category term="Toolkit" /><category term="UI" /><title type="html">Ample SDK Goes Open Source!</title><published>2009-11-03T13:15:32Z</published><updated>2009-11-03T13:15:32Z</updated><link rel="alternate" href="http://feedproxy.google.com/~r/LaCaseDeLoncTomLectures/~3/JylC8tKLyDs/ample-sdk-goes-open-source" type="text/html" /><content xml:base="http://ajaxian.com/" type="html">&lt;p&gt;&lt;img title="ample_small" src="http://ajaxian.com/wp-content/images/ample_small.png" alt="ample_small" width="470" height="231"&gt;&lt;/p&gt;
&lt;p&gt;The &lt;a href="http://www.amplesdk.com/"&gt;Ample SDK&lt;/a&gt;, a unique GUI toolkit working to create a cross-browser abstraction backed by open standards, has gone open source! With the new 0.8.9 release the GUI framework is now an open-source project licensed under GPL/MIT and &lt;a href="http://github.com/clientside/amplesdk/"&gt;hosted on GitHub&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;More about the Ample SDK:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;The Ample SDK makes it easy to create &lt;a href="http://www.amplesdk.com/examples/svg/worldmap_interactive/"&gt;interactive vector graphics&lt;/a&gt; in the browser, including on Internet Explorer, and create powerful web forms and GUIs. Even better, it supports all of this with a standard API that is the same across all browsers. You don't even need to learn anything new; the API itself is simply web standards such as SVG, XUL, DOM, the Selectors API etc.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;img title="ample_worldmap" src="http://ajaxian.com/wp-content/images/ample_worldmap.png" alt="ample_worldmap" width="470" height="246"&gt;Make sure to check out the &lt;a href="http://www.amplesdk.com/tutorials/adg/"&gt;Application Development Guide&lt;/a&gt; and &lt;a href="http://www.amplesdk.com/tutorials/edg/"&gt;Extension Development Guide&lt;/a&gt; tutorials which feature multiple aspects of client-side development. There is also a detailed &lt;a href="http://www.amplesdk.com/reference/"&gt;reference API&lt;/a&gt; accompanying.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.ilinsky.com/"&gt;Sergey Ilinsky&lt;/a&gt;, one of the leaders of the project, reports that there is still a long way to 1.0, including polishing XUL components and implementing new visual themes and charts, but that he is targeting to have a 1.0 by the end of the year. Keep up the great work Sergey!&lt;/p&gt;
&lt;div&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ajaxian?a=VziIJPGYoEA:HFlswVS86nI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ajaxian?d=yIl2AUoC8zA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ajaxian?a=VziIJPGYoEA:HFlswVS86nI:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ajaxian?d=7Q72WNTAKBA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ajaxian?a=VziIJPGYoEA:HFlswVS86nI:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ajaxian?i=VziIJPGYoEA:HFlswVS86nI:D7DqB2pKExk" border="0"&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>Brad Neuberg</name></author><gr:likingUser>09809877579610780847</gr:likingUser><gr:likingUser>13587985847209488520</gr:likingUser><gr:likingUser>03936784920662607101</gr:likingUser><gr:likingUser>04880795431721690211</gr:likingUser><gr:likingUser>04265716175865010550</gr:likingUser><gr:likingUser>07903867122182284978</gr:likingUser><gr:likingUser>09542211465219411072</gr:likingUser><gr:likingUser>00862331896938612861</gr:likingUser><gr:likingUser>17326394529154329588</gr:likingUser><source gr:stream-id="feed/http://feeds.feedburner.com/ajaxian"><id>tag:google.com,2005:reader/feed/http://feeds.feedburner.com/ajaxian</id><title type="html">Ajaxian » Front Page</title><link rel="alternate" href="http://ajaxian.com" type="text/html" /></source><feedburner:origLink>http://feedproxy.google.com/~r/ajaxian/~3/VziIJPGYoEA/ample-sdk-goes-open-source</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1257297248887"><id gr:original-id="http://blog.netvibes.com/?p=743">tag:google.com,2005:reader/item/dc832a4258b1e760</id><category term="Uncategorized" scheme="http://blog.netvibes.com" /><title type="html">Twitter widget with conversations</title><published>2009-11-03T14:41:02Z</published><updated>2009-11-04T14:30:31Z</updated><link rel="alternate" href="http://feedproxy.google.com/~r/LaCaseDeLoncTomLectures/~3/KFTDtx9zSNw/" type="text/html" /><content xml:base="http://blog.netvibes.com/twitter-widget-with-conversations/" xml:lang="en" type="html">&lt;p&gt;As you may have noticed, we just updated the Twitter widget. This time, we went for incremental improvements to make your daily use of twitter more enjoyable.&lt;/p&gt;
&lt;p&gt;&lt;img title="200911-twitter-widget" src="http://blog.netvibes.com/wp-content/uploads/2009/11/200911-twitter-widget.png" alt="200911-twitter-widget" width="360" height="426"&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;Here’s a short list of what’s new:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Global redesign&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;the header now matches the facebook widget&lt;/li&gt;
&lt;li&gt;tweets are displayed as bubbles&lt;/li&gt;
&lt;li&gt;your tweets are emphasized with by putting your avatar on the opposite side&lt;/li&gt;
&lt;li&gt;the widget is globally more compact&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Conversations&lt;/strong&gt;: you can now see which tweets a reply is referring to. Simply click on “in reply to username” to expand the conversation.&lt;br&gt;
&lt;img title="200911-twitter-conversation" src="http://blog.netvibes.com/wp-content/uploads/2009/11/200911-twitter-conversation.png" alt="200911-twitter-conversation" width="354" height="132"&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Real names&lt;/strong&gt;: usernames can now be replaced by the real names of your contacts&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Message soft limit&lt;/strong&gt;: messages are no longer truncated when reaching the 140 characters limit. The counter will just show that your message is too long so you can shorten it by yourself&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;We also fixed some of the bugs you reported to us and made the widget refresh more often, among other things. Let us know what you think by &lt;a href="http://www.netvibes.com/static.php?show=feedback"&gt;sending us an e-mail&lt;/a&gt; or by sending a message to &lt;a href="http://twitter.com/netvibes"&gt;@netvibes&lt;/a&gt;!&lt;/p&gt;
&lt;div style="float:right;margin-left:10px"&gt;&lt;a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.netvibes.com%2Ftwitter-widget-with-conversations%2F"&gt;&lt;img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.netvibes.com%2Ftwitter-widget-with-conversations%2F" height="61" width="51"&gt;&lt;/a&gt;&lt;/div&gt;

&lt;p&gt;Related posts:&lt;ol&gt;&lt;li&gt;&lt;a href="http://blog.netvibes.com/twitter-widget-update/" rel="bookmark" title="Permanent Link: Twitter widget update"&gt;Twitter widget update&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://blog.netvibes.com/twitter-dashboard/" rel="bookmark" title="Permanent Link: Build a Twitter Dashboard–All From a Single Twitter Widget!"&gt;Build a Twitter Dashboard–All From a Single Twitter Widget!&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://blog.netvibes.com/drag-and-follow-facebook-myspace-and-twitter-widget/" rel="bookmark" title="Permanent Link: Netvibes Introduces New Drag-and-Follow Facebook, MySpace and Twitter Widget"&gt;Netvibes Introduces New Drag-and-Follow Facebook, MySpace and Twitter Widget&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/NetvibesDevBlog/~4/q-Jn8OSnEf0" height="1" width="1"&gt;</content><author><name>Maurice</name></author><gr:likingUser>13971487921358602333</gr:likingUser><gr:likingUser>08601229405771126030</gr:likingUser><gr:likingUser>14539414522094354710</gr:likingUser><source gr:stream-id="feed/http://feeds.feedburner.com/NetvibesDevBlog"><id>tag:google.com,2005:reader/feed/http://feeds.feedburner.com/NetvibesDevBlog</id><title type="html">Netvibes Blog</title><link rel="alternate" href="http://blog.netvibes.com/" type="text/html" /></source><feedburner:origLink>http://feedproxy.google.com/~r/NetvibesDevBlog/~3/q-Jn8OSnEf0/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1257179438845"><id gr:original-id="http://xkcd.com/657/">tag:google.com,2005:reader/item/2416b749bce5df13</id><title type="html">Movie Narrative Charts</title><published>2009-11-02T00:00:00Z</published><updated>2009-11-02T00:00:00Z</updated><link rel="alternate" href="http://feedproxy.google.com/~r/LaCaseDeLoncTomLectures/~3/yLcRqkFGR30/" type="text/html" /><summary xml:base="http://xkcd.com/" xml:lang="en" type="html">&lt;img src="http://imgs.xkcd.com/comics/movie_narrative_charts.png" title="In the LotR map, up and down correspond LOOSELY to northwest and southeast respectively." alt="In the LotR map, up and down correspond LOOSELY to northwest and southeast respectively."&gt;</summary><author gr:unknown-author="true"><name>(author unknown)</name></author><gr:likingUser>03578203681434200812</gr:likingUser><gr:likingUser>00249362911802403115</gr:likingUser><gr:likingUser>00462074421023924863</gr:likingUser><gr:likingUser>10537360327111514820</gr:likingUser><gr:likingUser>17507537187654644112</gr:likingUser><gr:likingUser>06938467780021726935</gr:likingUser><gr:likingUser>04233202207072129518</gr:likingUser><gr:likingUser>13357446330491563718</gr:likingUser><gr:likingUser>10291116897330041586</gr:likingUser><gr:likingUser>17264770633416053185</gr:likingUser><gr:likingUser>17540943444822231002</gr:likingUser><gr:likingUser>13364996419006953000</gr:likingUser><gr:likingUser>02229757710438706599</gr:likingUser><gr:likingUser>14199321615215003569</gr:likingUser><gr:likingUser>01610692450773911497</gr:likingUser><gr:likingUser>04217421000326360675</gr:likingUser><gr:likingUser>17998768937545976746</gr:likingUser><gr:likingUser>15607410260413789715</gr:likingUser><gr:likingUser>16626260345644378071</gr:likingUser><gr:likingUser>07509482784790039073</gr:likingUser><gr:likingUser>15163807370703049501</gr:likingUser><gr:likingUser>09279202243175704875</gr:likingUser><gr:likingUser>00923107675334125147</gr:likingUser><gr:likingUser>16533730545038567742</gr:likingUser><gr:likingUser>08178141419296508184</gr:likingUser><gr:likingUser>13822596021302225321</gr:likingUser><gr:likingUser>13970200089567918680</gr:likingUser><gr:likingUser>09787554556941619056</gr:likingUser><gr:likingUser>05896675343287304471</gr:likingUser><gr:likingUser>03699290184511480278</gr:likingUser><gr:likingUser>15869302811952953957</gr:likingUser><gr:likingUser>05474873817743730686</gr:likingUser><gr:likingUser>04603607502933300923</gr:likingUser><gr:likingUser>03883334651421922267</gr:likingUser><gr:likingUser>10324133255130462944</gr:likingUser><gr:likingUser>17284135952628510959</gr:likingUser><gr:likingUser>02482657627595320545</gr:likingUser><gr:likingUser>05546734395555749513</gr:likingUser><gr:likingUser>05980304026054142936</gr:likingUser><gr:likingUser>10521790847453996311</gr:likingUser><gr:likingUser>00493147371113573670</gr:likingUser><gr:likingUser>08839107563742158685</gr:likingUser><gr:likingUser>04254993664570400382</gr:likingUser><gr:likingUser>13260277775620871579</gr:likingUser><gr:likingUser>18158899507117698729</gr:likingUser><gr:likingUser>04230199160563664454</gr:likingUser><gr:likingUser>18211832123274587028</gr:likingUser><gr:likingUser>04221709397503559845</gr:likingUser><gr:likingUser>03272713088664660589</gr:likingUser><gr:likingUser>11416045147796024510</gr:likingUser><gr:likingUser>17051128227097507700</gr:likingUser><gr:likingUser>15581407310368936308</gr:likingUser><gr:likingUser>06781663934021660720</gr:likingUser><gr:likingUser>07211360324504465932</gr:likingUser><gr:likingUser>08466607206752283112</gr:likingUser><gr:likingUser>04352931134973900628</gr:likingUser><gr:likingUser>14821331170089160244</gr:likingUser><gr:likingUser>13309790459947015234</gr:likingUser><gr:likingUser>17783816001287951149</gr:likingUser><gr:likingUser>12765937716445759381</gr:likingUser><gr:likingUser>11729903247390969824</gr:likingUser><gr:likingUser>12143789145453314359</gr:likingUser><gr:likingUser>15305127545760886033</gr:likingUser><gr:likingUser>00157776708107928874</gr:likingUser><gr:likingUser>13236873246142890834</gr:likingUser><gr:likingUser>06902072281597637603</gr:likingUser><gr:likingUser>10921439269220692446</gr:likingUser><gr:likingUser>09208908581159548630</gr:likingUser><gr:likingUser>08369666806498117475</gr:likingUser><gr:likingUser>06823717934873363980</gr:likingUser><gr:likingUser>09720016278322637162</gr:likingUser><gr:likingUser>13495111332951055109</gr:likingUser><gr:likingUser>15915765742773211874</gr:likingUser><gr:likingUser>07407245339850168871</gr:likingUser><gr:likingUser>09217379723190971834</gr:likingUser><gr:likingUser>17104299531932790972</gr:likingUser><gr:likingUser>06294111919047060995</gr:likingUser><gr:likingUser>10068978682744933023</gr:likingUser><gr:likingUser>15307725180950884118</gr:likingUser><gr:likingUser>10231697078470315796</gr:likingUser><gr:likingUser>12670994083234418348</gr:likingUser><gr:likingUser>07530407460198589242</gr:likingUser><gr:likingUser>14450156691765387115</gr:likingUser><gr:likingUser>06474186491320287288</gr:likingUser><gr:likingUser>15281830993807946198</gr:likingUser><gr:likingUser>05563924790028363141</gr:likingUser><gr:likingUser>08706569086802254172</gr:likingUser><gr:likingUser>14367358900780589231</gr:likingUser><gr:likingUser>15131853250148277818</gr:likingUser><gr:likingUser>16831662400615222047</gr:likingUser><gr:likingUser>00599937306941328633</gr:likingUser><gr:likingUser>02978276116081062142</gr:likingUser><gr:likingUser>03902883598893070641</gr:likingUser><gr:likingUser>00824263458792695219</gr:likingUser><gr:likingUser>00642447644544360407</gr:likingUser><gr:likingUser>11763108107664945945</gr:likingUser><gr:likingUser>07753216095665996846</gr:likingUser><gr:likingUser>04372609172705522422</gr:likingUser><gr:likingUser>09050712368329626660</gr:likingUser><gr:likingUser>03878093119969550947</gr:likingUser><source gr:stream-id="feed/http://xkcd.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://xkcd.com/atom.xml</id><title type="html">xkcd.com</title><link rel="alternate" href="http://xkcd.com/" type="text/html" /></source><feedburner:origLink>http://xkcd.com/657/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1257058238311"><id gr:original-id="http://lacot.org/blog/2009/10/31/firefox-a-5-ans.html">tag:google.com,2005:reader/item/8a86a862837b48e9</id><title type="html">Firefox a 5 ans</title><published>2009-10-31T10:04:39Z</published><updated>2009-10-31T10:04:39Z</updated><link rel="alternate" href="http://feedproxy.google.com/~r/LaCaseDeLoncTomLectures/~3/kiGCbiQ-5cY/firefox-a-5-ans.html" type="text/html" /><content xml:base="http://lacot.org/blog" type="html">&lt;p&gt;C'est fou comme le temps passe vite. Il y a 5 ans, &lt;a href="http://lacot.org/blog/2004/11/11/le-petit-renard-ne-quittera-pas-mon-pc-de-si-tot.html"&gt;j'écrivais au sujet de la sortie de Firefox 1.0&lt;/a&gt;. A l'époque, les navigateurs de la famille Mozilla peinaient avec seulement 7% de parts de marché selon les estimations les plus optimistes. Dur de faire comprendre à un client le besoin de respect des standards, et dur d'évangéliser les développeurs pour qu'ils cessent de ne développeur qu'avec Internet Explorer en tête. Ces jours-ci, Firefox fête donc son 5e anniversaire.&lt;/p&gt;

&lt;p&gt;Le &lt;a href="http://fr.wikipedia.org/wiki/Petit_panda"&gt;panda roux&lt;/a&gt; oscille entre 25 et 35% de parts de marché, et l'objectif affiché à l'époque &lt;q&gt;relancer l'innovation Web&lt;/q&gt;, est en passe d'être pleinement rempli. Plus important encore, de nombreuses alternatives viables ont vu le jour ou ont consolidé leur position : &lt;a href="http://www.opera.com/" hreflang="en"&gt;Opéra&lt;/a&gt;, toujours présent, mais également Safari et sa déclinaison sauce Google, &lt;a href="http://www.google.fr/chrome"&gt;Chrome&lt;/a&gt;, sont des plateformes modernes, participant à l'effort d'innovation sur le Web initié par Mozilla, et grâce auquel on parle aujourd'hui de navigateurs mobiles (&lt;a href="http://www.opera.com/mobile/"&gt;Opéra Mobile&lt;/a&gt;, &lt;a href="https://wiki.mozilla.org/Projects/Mobile" hreflang="en"&gt;Mozilla Fennec&lt;/a&gt; et &lt;a href="http://www.apple.com/iphone/features/safari.html" hreflang="en"&gt;Safari Mobile&lt;/a&gt;), de &lt;a href="http://www.w3.org/TR/webstorage/#dom-localstorage" hreflang="en"&gt;mode offline&lt;/a&gt;, de &lt;a href="https://wiki.mozilla.org/JavaScript:TraceMonkey" hreflang="en"&gt;compilation à la volée du code javascript&lt;/a&gt;, de HTML5, du &lt;a href="http://www.squarefree.com/burningedge/2009/10/23/2009-10-23-trunk-builds/" hreflang="en"&gt;support de SMIL&lt;/a&gt; et de canvas, des &lt;a href="http://www.w3.org/TR/css3-fonts/" hreflang="en"&gt;CSS3 fonts&lt;/a&gt;, de milliers d'&lt;a href="https://addons.mozilla.org/fr/firefox/"&gt;extensions&lt;/a&gt; &lt;a href="http://www.opera.com/docs/plugins/" hreflang="en"&gt;aux&lt;/a&gt; &lt;a href="http://pimpmysafari.com/" hreflang="en"&gt;navigateurs&lt;/a&gt; - dont même &lt;a href="http://lacot.org/blog/2006/05/09/firefox-most-useless-extensions.html" hreflang="en"&gt;certaines inutiles&lt;/a&gt; - et d'outils pour les développeurs. Et c'est en partie grâce à ces outils que les développeurs Web peuvent proposer des sites plus aboutis, plus riches en fonctionnalités, plus rapides et plus efficaces.&lt;/p&gt;

&lt;p&gt;Je serai présent à la &lt;a href="http://www.soireefirefoxparis.org/"&gt;soirée d'anniversaire des 5 ans de Firefox&lt;/a&gt;, organisée le 9 novembre prochain par le Conseil général d'Île de France et &lt;a href="http://www.mozilla-europe.org/fr/"&gt;Mozilla Europe&lt;/a&gt;, afin de partager avec d'autres amateurs de Firefox le plaisir de voir avancer un Web plus ouvert, plus riche, plus &lt;em&gt;libre&lt;/em&gt; !&lt;/p&gt;</content><author><name>xavier@lacot.org (Xavier Lacot)</name></author><source gr:stream-id="feed/http://lacot.org/syndication/blog.rss"><id>tag:google.com,2005:reader/feed/http://lacot.org/syndication/blog.rss</id><title type="html">Chez Xavier - Thoughts</title><link rel="alternate" href="http://lacot.org/blog" type="text/html" /></source><feedburner:origLink>http://lacot.org/blog/2009/10/31/firefox-a-5-ans.html</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1256986903206"><id gr:original-id="http://xkcd.com/656/">tag:google.com,2005:reader/item/67f92d4ee5570685</id><title type="html">October 30th</title><published>2009-10-30T00:00:00Z</published><updated>2009-10-30T00:00:00Z</updated><link rel="alternate" href="http://feedproxy.google.com/~r/LaCaseDeLoncTomLectures/~3/3kbVke2cfXg/" type="text/html" /><summary xml:base="http://xkcd.com/" xml:lang="en" type="html">&lt;img src="http://imgs.xkcd.com/comics/october_30th.png" title="Not enough houses on your block?  Just hit them at 30-year intervals from here to 2300 and get 10x the candy." alt="Not enough houses on your block?  Just hit them at 30-year intervals from here to 2300 and get 10x the candy."&gt;</summary><author gr:unknown-author="true"><name>(author unknown)</name></author><gr:likingUser>00183092056149658736</gr:likingUser><gr:likingUser>17264770633416053185</gr:likingUser><gr:likingUser>18080113267764925608</gr:likingUser><gr:likingUser>12070932697074768028</gr:likingUser><gr:likingUser>09879977286868249236</gr:likingUser><gr:likingUser>02712444986237937347</gr:likingUser><gr:likingUser>04230199160563664454</gr:likingUser><gr:likingUser>06531827316391250428</gr:likingUser><gr:likingUser>12530685786367594997</gr:likingUser><gr:likingUser>14298926834408922932</gr:likingUser><gr:likingUser>13971487921358602333</gr:likingUser><gr:likingUser>15915765742773211874</gr:likingUser><gr:likingUser>06294111919047060995</gr:likingUser><gr:likingUser>15307725180950884118</gr:likingUser><gr:likingUser>12447715471119539850</gr:likingUser><gr:likingUser>16506180655402060689</gr:likingUser><gr:likingUser>08113214517674878844</gr:likingUser><gr:likingUser>06668684035014133768</gr:likingUser><gr:likingUser>04034693958115222640</gr:likingUser><gr:likingUser>02140582176975980369</gr:likingUser><gr:likingUser>05419494867840400378</gr:likingUser><gr:likingUser>15055607753298022420</gr:likingUser><gr:likingUser>03724595113213068450</gr:likingUser><gr:likingUser>02175411561917442871</gr:likingUser><gr:likingUser>15931484430838356844</gr:likingUser><gr:likingUser>06629955579244932573</gr:likingUser><gr:likingUser>04572915388677012050</gr:likingUser><gr:likingUser>03107259109777044223</gr:likingUser><gr:likingUser>06227625273643383993</gr:likingUser><gr:likingUser>11941213889293181912</gr:likingUser><gr:likingUser>09967810422263806658</gr:likingUser><gr:likingUser>13282452908366396279</gr:likingUser><gr:likingUser>02012649808320118905</gr:likingUser><gr:likingUser>10822634149885101406</gr:likingUser><gr:likingUser>03542632143310250580</gr:likingUser><gr:likingUser>02857204492825532436</gr:likingUser><gr:likingUser>04390695941393189679</gr:likingUser><gr:likingUser>00065726678754344776</gr:likingUser><gr:likingUser>17045861395326647352</gr:likingUser><gr:likingUser>09981096297171657732</gr:likingUser><gr:likingUser>17221028441459558479</gr:likingUser><gr:likingUser>08713618780391230199</gr:likingUser><gr:likingUser>04465464357620282968</gr:likingUser><gr:likingUser>05823332778272687233</gr:likingUser><gr:likingUser>13491094888389168229</gr:likingUser><gr:likingUser>05339518585245743097</gr:likingUser><gr:likingUser>00432151659594440582</gr:likingUser><gr:likingUser>16521661894318420836</gr:likingUser><gr:likingUser>10444269477590826441</gr:likingUser><gr:likingUser>03240848373720847187</gr:likingUser><gr:likingUser>16003461996842189176</gr:likingUser><gr:likingUser>14612090235626481265</gr:likingUser><gr:likingUser>10789110594219876156</gr:likingUser><gr:likingUser>07567013037191687950</gr:likingUser><gr:likingUser>03252462732860330284</gr:likingUser><gr:likingUser>13793432143444254475</gr:likingUser><gr:likingUser>04900086624346795035</gr:likingUser><gr:likingUser>12489330388166952912</gr:likingUser><gr:likingUser>13815687102483081584</gr:likingUser><gr:likingUser>06759752043549455134</gr:likingUser><gr:likingUser>03335238600212292913</gr:likingUser><gr:likingUser>18281796513282919429</gr:likingUser><gr:likingUser>05979608432730590670</gr:likingUser><gr:likingUser>16748934067746912511</gr:likingUser><gr:likingUser>16548591112260682539</gr:likingUser><gr:likingUser>10727500399040985150</gr:likingUser><gr:likingUser>16579652210819218848</gr:likingUser><gr:likingUser>09065108568796795058</gr:likingUser><gr:likingUser>04544576188347020159</gr:likingUser><gr:likingUser>18445507711127283317</gr:likingUser><gr:likingUser>11371700579623976702</gr:likingUser><gr:likingUser>08267351479920161071</gr:likingUser><gr:likingUser>03213259974717832805</gr:likingUser><gr:likingUser>02818161012133932591</gr:likingUser><gr:likingUser>13920607513105732455</gr:likingUser><gr:likingUser>13251047053220982734</gr:likingUser><gr:likingUser>02079476264541397586</gr:likingUser><gr:likingUser>06985591194773961021</gr:likingUser><gr:likingUser>05501224948723412396</gr:likingUser><gr:likingUser>10348726101537100805</gr:likingUser><gr:likingUser>10329759863138660596</gr:likingUser><gr:likingUser>11465631116051422376</gr:likingUser><gr:likingUser>09877648047424315772</gr:likingUser><gr:likingUser>11663516304471643580</gr:likingUser><gr:likingUser>00600691085772593591</gr:likingUser><gr:likingUser>01004436876879306304</gr:likingUser><gr:likingUser>09694583984904704147</gr:likingUser><gr:likingUser>07912968932834507540</gr:likingUser><gr:likingUser>15050259117278514425</gr:likingUser><gr:likingUser>08048388266361636315</gr:likingUser><gr:likingUser>07350264119097819554</gr:likingUser><gr:likingUser>16107104186251759001</gr:likingUser><gr:likingUser>14473011113972483644</gr:likingUser><gr:likingUser>14045597134448544228</gr:likingUser><gr:likingUser>11136078055553484642</gr:likingUser><gr:likingUser>12128191025857796531</gr:likingUser><gr:likingUser>16347064808714303281</gr:likingUser><gr:likingUser>17444709644959344971</gr:likingUser><gr:likingUser>15459051290849698949</gr:likingUser><gr:likingUser>12708994317497318377</gr:likingUser><source gr:stream-id="feed/http://xkcd.com/atom.xml"><id>tag:google.com,2005:reader/feed/http://xkcd.com/atom.xml</id><title type="html">xkcd.com</title><link rel="alternate" href="http://xkcd.com/" type="text/html" /></source><feedburner:origLink>http://xkcd.com/656/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1256986324602"><id gr:original-id="http://noblog.fr/?p=685">tag:google.com,2005:reader/item/84040cb7fb716820</id><category term="Formation en Communication" /><category term="% de réussite au BTS Communication des entreprises" /><category term="Bien choisir ses études en communication" /><category term="BTS Communication des entreprises" /><category term="DUT Information - Communication" /><category term="ESP" /><category term="formation" /><category term="Iscom" /><category term="IUT Communication" /><category term="Licence communication" /><category term="Licence ou BTS" /><category term="Master 2 communication numérique" /><category term="Master communication" /><category term="Paris 3" /><category term="Paris 8" /><category term="pièges" /><category term="prix d'un école privée" /><category term="Réussite au BTS Communication des entreprises" /><category term="Sup de Pub" /><title type="html">Bien choisir ses études en Communication</title><published>2009-10-30T18:40:04Z</published><updated>2009-10-30T18:40:04Z</updated><link rel="alternate" href="http://feedproxy.google.com/~r/LaCaseDeLoncTomLectures/~3/MepxKc9GAZo/" type="text/html" /><content xml:base="http://noblog.fr/" type="html">&lt;p&gt;&lt;/p&gt;
&lt;p style="text-align:justify"&gt;Voilà, c’est fait, vous vous êtes questionné sur ce que vous alliez faire plus tard et vous avez peut-être trouvé un début de réponse. Et ce début de réponse c’est la communication… c’est bien mais attention au piège d’une discipline et d’une formation professionnelle semée d’embûche. Ou comment bien choisir ses études en communication ?&lt;/p&gt;
&lt;p style="text-align:justify"&gt;
&lt;p style="text-align:justify"&gt;&lt;a style="text-decoration:none" title="2642649210_370210593c_o de powanono, sur Flickr" href="http://www.flickr.com/photos/powanono/4051289814/"&gt;&lt;img src="http://farm3.static.flickr.com/2426/4051289814_9dfca16a0a.jpg" alt="2642649210_370210593c_o" width="293" height="500"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p style="text-align:justify"&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="text-align:justify"&gt;&lt;strong&gt;Les études me saoulent, je veux être sur le marché du travail :&lt;/strong&gt;&lt;/p&gt;
&lt;p style="text-align:justify"&gt;Vous sortez du lycée, ou retapez pour la sixième fois votre première année de psychologie à la fac et vous sentez que les études ce n’est pas pour vous.&lt;/p&gt;
&lt;p style="text-align:justify"&gt;Recherchez du côté du &lt;span style="text-decoration:underline"&gt;BTS Communication des entreprises.&lt;/span&gt;&lt;/p&gt;
&lt;p style="text-align:justify"&gt;BTS public ou dans le privé ?&lt;/p&gt;
&lt;p&gt;&lt;br&gt;
&lt;/p&gt;
&lt;p style="text-align:justify"&gt;Ne tombez pas dans le piège. Un BTS dans le public vaut autant qu’un BTS dans le privé. Sachez-le !&lt;/p&gt;
&lt;p style="text-align:justify"&gt;
&lt;p style="text-align:justify"&gt;&lt;em&gt;Oui mais les écoles privées de communication affichent  des scores (98%, 97%,96,5%…) ?&lt;/em&gt;&lt;/p&gt;
&lt;p style="text-align:justify"&gt;Sachez encore que les écoles privées n’ont pas pour obligation, au contraire des lycées et écoles publiques, de présenter tous leurs élèves du BTS au nom de l’école.&lt;/p&gt;
&lt;blockquote style="text-align:justify"&gt;
&lt;p&gt;Exemple :&lt;/p&gt;
&lt;p&gt;C’est à dire qu’une école privée a une classe de 20 élèves. Pendant l’année, 12 des élèves ont en dessous de 12 de moyenne. L’école privée fait alors le choix de présenter ces 12 élèves en candidat libre, c’est à dire qu’elle ne présente pas ces mauvais élèves à son nom. Ainsi, administrativement, elle présente que les 8 bons élèves à son nom et peut afficher glorieusement 98% de réussite. Le tour est joué.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p style="text-align:justify"&gt;En gros, pensez-y à deux fois avant de faire une école privée… voire un BTS.&lt;/p&gt;
&lt;p style="text-align:justify"&gt;&lt;span style="text-decoration:underline"&gt;ou du DUT Information – Communication&lt;/span&gt;&lt;/p&gt;
&lt;p style="text-align:justify"&gt;Pensez aussi qu’il existe l’IUT, certains sont parfois très professionnalisant et de qualité. De plus ce diplôme est un diplôme au caractère plus « universitaire » que le BTS, bien qu’il apporte le même bagage professionnel. Ce qui permet à un possesseur d’un DUT (diplôme délivré dans un IUT) d’avoir des passerelles plus importantes entre sa formation bac+2 et l’université. Toutefois il n’est pas impossible de venir de BTS et d’attaquer après coup un parcours universitaire en licence professionnelle ou générale.&lt;/p&gt;
&lt;p style="text-align:justify"&gt;Cherchez donc du côté des IUT et du DUT dans vos régions.&lt;/p&gt;
&lt;p style="text-align:justify"&gt;Attention : Il existe une forte sélection pour entrer dans un IUT !&lt;/p&gt;
&lt;p style="text-align:center"&gt;&lt;a href="http://noblog.fr/wp-content/uploads/2009/10/argent.jpg"&gt;&lt;/a&gt;&lt;a href="http://noblog.fr/wp-content/uploads/2009/10/z_universite2.jpg"&gt;&lt;img title="z_universite2" src="http://noblog.fr/wp-content/uploads/2009/10/z_universite2-195x155.jpg" alt="" width="195" height="155"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p style="text-align:justify"&gt;&lt;strong&gt;L’université m’attire mais j’ai peur…&lt;/strong&gt;&lt;/p&gt;
&lt;p style="text-align:justify"&gt;L’université… un grand mot qui fait peur à beaucoup d’étudiants et de parents d’étudiant. Oui l’université c’est dur, oui l’université c’est sélectif officieusement mais oui l’université c’est passionnant.&lt;/p&gt;
&lt;p style="text-align:justify"&gt;Vouloir travailler dans la communication, c’est mobiliser différents savoirs. D’où l’intérêt de ne pas se cantonner à un parcours communication. Il faut savoir que l’université permet des passerelles entre les différentes années d’études, particulièrement en sciences humaines. Alors n’hésitez pas ! Tentez votre chance.&lt;/p&gt;
&lt;p style="text-align:justify"&gt;
&lt;p style="text-align:justify"&gt;&lt;em&gt;Une licence dans les sciences humaines puis un master en communication&lt;/em&gt;&lt;/p&gt;
&lt;p style="text-align:justify"&gt;Pourquoi ne pas faire une licence de psychologie, de sociologie, LLCE ou histoire de l’art  avant de vous lancer dans un master communication ou une troisième année de licence. À vous de voir selon vos goûts et couleurs ! Pensez aussi que ces sortes de cursus où l’étudiant a plusieurs spécialisations est un plus sur votre CV ;-).&lt;/p&gt;
&lt;p style="text-align:justify"&gt;&lt;em&gt;Une licence lettre/langue option communication&lt;/em&gt;&lt;/p&gt;
&lt;p style="text-align:justify"&gt;Toutefois il est à noter qu’il est plus judicieux de choisir certaines filières comme les langues et les lettres avec une option communication. Cela vous permet la maitrise d’une langue (française ou étrangère) avant de rentrer dans un master communication, et dans la communication en général. Le secteur de la Communication demande la plupart du temps une bonne compréhension d’une langue étrangère et/ou une bonne rédaction et esprit de synthèse.&lt;/p&gt;
&lt;p style="text-align:justify"&gt;&lt;em&gt;Licence, master, tout dans la communication &lt;/em&gt;&lt;/p&gt;
&lt;p style="text-align:justify"&gt;Mais vous vous dites que la communication c’est pour vous et vous voulez en manger pendant 5 ans (ou plus si vous retapez). Pensez alors à la lassitude de la chose. 5 ans de formation universitaire en communication c’est lourd, et 2 ans en com’ au niveau bac+4 ou bac+5 souvent suffisent. À vous de voir ;-)&lt;/p&gt;
&lt;p style="text-align:justify"&gt;&lt;em&gt;La question de la recherche ou du pro ?&lt;/em&gt;&lt;/p&gt;
&lt;p style="text-align:justify"&gt;À l’université se pose cette fameuse question, est-ce que je dois choisir le master pro ou le master recherche ? Nombre de personnes pensent encore qu’il existe une dichotomie entre la recherche et le pro, que la recherche mène à la fonction publique ou au chômage et le professionnel au privé et au chômage. Détrompez-vous ! Dans beaucoup d’université il existe des passerelles entre la recherche et le professionnel. Par exemple à l’Université Paris 8, le master pro’ vous permet de faire une thèse et les étudiants dans le master recherche travaillent avec, et sur, le lab-orange (et plein d’autres intervenants : ingénieurs, informaticien, grandes entreprises des télécoms). De même, les masters recherche à Paris 3&lt;span&gt; &lt;/span&gt;sont aussi efficaces que leurs masters pro’, voire plus si vous vous destinez aux métiers du consulting.&lt;/p&gt;
&lt;p style="text-align:justify"&gt;Dernier mot, dans de nombreuses formations en rapport avec la communication à l’université, ce choix peut se faire assez tard. ainsi c’est au niveau bac+4 ou bac+5 que les étudiants choisissent pro ou recherche &lt;img src="http://noblog.fr/wp-includes/images/smilies/icon_wink.gif" alt=";-)"&gt; .&lt;/p&gt;
&lt;p style="text-align:justify"&gt;
&lt;p style="text-align:justify"&gt;Quelques universités proposant des formations en communication : Université Paris 8, Université Paris 13, Université Paris 3, le Celsa (à partir du Bac+2 ou Bac+3), Université de Bordeaux, Lille 3…etc.&lt;/p&gt;
&lt;p style="text-align:justify"&gt;&lt;strong&gt;L’enseignement supérieur privé dans la communication&lt;/strong&gt;&lt;/p&gt;
&lt;p style="text-align:justify"&gt;Et la com’ dans le privé au delà&lt;span&gt; &lt;/span&gt;du BTS ? Ici aussi, gare au piège…&lt;/p&gt;
&lt;p style="text-align:justify"&gt;A éviter :&lt;/p&gt;
&lt;p style="text-align:justify"&gt;&lt;span&gt; &lt;/span&gt;Simple, toutes les écoles aux noms comprenant “communication”et aux titres assez pompant, longuet ou tout simplement un peu idiot. Sup de Pub – Groupe Inseec (école supérieure de marketing et de publicité) , Iscom (école supérieure de Communication et Publicité), ESP (école supérieure de publicité). Soyez très méfiant envers ces écoles se vantant de leurs réussites et de celles de leurs élèves.&lt;/p&gt;
&lt;p&gt;&lt;br&gt;
&lt;/p&gt;
&lt;p style="text-align:justify"&gt;Pourquoi ? Par exemple, ce genre d’école se vante souvent d’un réseau entreprise très important. Il en est souvent rien. La plupart des étudiants ont des parents aisés pouvant se targuer de payer aux environs de 6000 euros l’année. Ces parents ont donc un appui dans le milieu professionnel assez important et les étudiants peuvent donc compter sur leurs réseaux personnels et les réseaux de leurs parents pour trouver un stage à Publicis, Havas, grande boîte média et consorts.&lt;/p&gt;
&lt;p style="text-align:justify"&gt;L’école a le plus souvent à passer derrière pour récolter les noms de société accueillant leurs élèves et vous faire croire à un grand réseau d’entreprise efficace au sein de son école. Pensez-y.&lt;/p&gt;
&lt;p style="text-align:justify"&gt;A Privilégier&lt;/p&gt;
&lt;p style="text-align:justify"&gt;Mais le milieu de l’éducation privée est un milieu bien inégal ( comme l’université d’ailleurs ). Il existe donc de très bonnes formations en communication mais pas où on le croit. Si votre objectif est la communication commerciale et marketing, pensez plutôt aux formations marketing avec option communication dans certaines écoles de commerce. Ainsi même si le groupe INSEEC a quelques mauvaises écoles de com’, elle a aussi de très bonne formation en commerce, marketing et communication. Regardez de ce côté-là et regardez aussi la plupart des écoles de commerce réputées ou encore la bien célèbre HEC ;-).&lt;/p&gt;
&lt;p&gt;&lt;br&gt;
&lt;/p&gt;
&lt;p style="text-align:justify"&gt;Quelques bonnes écoles privées et grandes écoles : INSEEC l’école, HEC…etc&lt;/p&gt;
&lt;p style="text-align:justify"&gt;&lt;a href="http://noblog.fr/wp-content/uploads/2009/10/argent.jpg"&gt;&lt;img title="argent" src="http://noblog.fr/wp-content/uploads/2009/10/argent-195x155.jpg" alt="" width="195" height="155"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p style="text-align:justify"&gt;&lt;strong&gt;Budget des études :&lt;/strong&gt;&lt;/p&gt;
&lt;p style="text-align:justify"&gt;&lt;em&gt;En université :&lt;/em&gt;&lt;/p&gt;
&lt;p style="text-align:justify"&gt;Les frais de dossier vont de 0 euros (si vous êtes boursier) à 400 euros. Attention certaines formations à l’université coûtent beaucoup plus cher (jusqu’à 4000euros) mais ce prix est rare et concerne des formations très spécifiques.&lt;/p&gt;
&lt;p style="text-align:justify"&gt;&lt;em&gt;Dans le privée :&lt;/em&gt;&lt;/p&gt;
&lt;p style="text-align:justify"&gt;Le privé peut être gratuit dans le cas d’une formation en alternance. Dans ce cas c’est l’entreprise qui paye votre école. Toutefois il est difficile de trouver une entreprise voulant financer vos études.&lt;/p&gt;
&lt;p style="text-align:justify"&gt;Le prix d’une année dans le privé peut s’échelonner de 1000 euros à 9000 euros (voire plus pour certaines). D’où l’intérêt de bien se renseigner sur l’école et sur son potentiel  (envoyez des mails aux étudiants de cette école pour demander des informations, regarder les forums, voir ce que sont devenu les anciens élèves…etc). Méfiez-vous aussi des fameux classements publiés dans la presse papier. Ces classements sont pour la plupart du temps payés par les dites écoles ou tout simplement la résultante d’effet de réseautage.&lt;/p&gt;
&lt;p style="text-align:justify"&gt;
&lt;p style="text-align:justify"&gt;&lt;span style="text-decoration:underline"&gt;Dans tous les cas, vos études dans le supérieur ont un coût très important, mais c’est une des clés essentielles pour votre avenir, alors réfléchissez bien à votre choix d’étude ! &lt;/span&gt;&lt;/p&gt;
&lt;p style="text-align:justify"&gt;
&lt;p style="text-align:justify"&gt;Bonne recherche dans votre parcours. Pour ma part j’ai fait :&lt;/p&gt;
&lt;p style="text-align:justify"&gt;Sup de Pub&lt;span&gt; &lt;/span&gt;pour mon BTS communication des entreprises (choix que je regrette) puis Université Paris 3 Sorbonne Nouvelle pour ma licence 3 en Information et Communication et mon Master 1 Communication. Puis l’Université Paris 8 pour mon Master 2 Communication numérique et veille stratégique.&lt;/p&gt;
&lt;p&gt;&lt;br&gt;
&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.facebook.com/share.php?u=http://noblog.fr/2009/10/bien-choisir-ses-etudes-en-communication/"&gt;&lt;img src="http://noblog.fr/wp-content/plugins/add-to-facebook-plugin/facebook_share_icon.gif" alt="Share on Facebook" title="Share on Facebook"&gt;&lt;/a&gt;&lt;a href="http://www.facebook.com/share.php?u=http://noblog.fr/2009/10/bien-choisir-ses-etudes-en-communication/" title="Share on Facebook"&gt;Partager ce billet sur Facebook&lt;/a&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;&lt;/p&gt;</content><author><name>Powanono</name></author><source gr:stream-id="feed/http://powanono.free.fr/dotclear/rss.php"><id>tag:google.com,2005:reader/feed/http://powanono.free.fr/dotclear/rss.php</id><title type="html">No(no)&amp;#39;s Blog</title><link rel="alternate" href="http://noblog.fr" type="text/html" /></source><feedburner:origLink>http://noblog.fr/2009/10/bien-choisir-ses-etudes-en-communication/</feedburner:origLink></entry><entry gr:crawl-timestamp-msec="1256806221190"><id gr:original-id="http://ajaxian.com/?p=7759">tag:google.com,2005:reader/item/ab8c2e0b00a9790d</id><category term="Firefox" /><category term="Front Page" /><category term="Showcase" /><category term="Typography" /><title type="html">Be a CSS Ninja with your Font Dragr</title><published>2009-10-26T11:34:01Z</published><updated>2009-10-26T11:34:01Z</updated><link rel="alternate" href="http://feedproxy.google.com/~r/LaCaseDeLoncTomLectures/~3/WmfwylO1PwY/font-dragr" type="text/html" /><content xml:base="http://ajaxian.com/" type="html">&lt;p&gt;The CSS Ninja has created a &lt;a href="http://www.thecssninja.com/javascript/font-dragr"&gt;Font Dragr&lt;/a&gt; drag and drop font tester:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;
Font dragr is an experimental web app that uses HTML5 &amp;amp; CSS3 to create a useful standalone web based application for testing custom fonts, once you visit it for the first time you don’t need to be online to use it after the initial visit. It allows you, in Firefox 3.6+, to drag and drop font files from your file system into the drop area. The browser will then create a data URL encoded copy to use in the page and render the content in the dropped font.&lt;/p&gt;
&lt;p&gt;Used in the app:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;HTML5
&lt;ul&gt;
&lt;li&gt;Offline access applicationCache
&lt;/li&gt;
&lt;li&gt;Drag and drop API
&lt;/li&gt;
&lt;li&gt;File API
&lt;/li&gt;
&lt;li&gt;contenteditable attribute set to true so the text can be edited.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;CSS3
&lt;ul&gt;
&lt;li&gt;Custom fonts with @font-face
&lt;/li&gt;
&lt;li&gt;Gradients
&lt;/li&gt;
&lt;li&gt;Rounded corners using border-radius
&lt;/li&gt;
&lt;li&gt;Drop shadows with text-shadow &amp;amp; box-shadow
&lt;/li&gt;
&lt;li&gt;Attribute and pseudo selectors
&lt;/li&gt;
&lt;li&gt;Multiple border colours
&lt;/li&gt;
&lt;li&gt;Box model adjust using box-sizing
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;See it in action:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;/blockquote&gt;
&lt;div&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ajaxian?a=cqOmQ-KCTbI:IcgdlgmtueQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ajaxian?d=yIl2AUoC8zA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ajaxian?a=cqOmQ-KCTbI:IcgdlgmtueQ:7Q72WNTAKBA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ajaxian?d=7Q72WNTAKBA" border="0"&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ajaxian?a=cqOmQ-KCTbI:IcgdlgmtueQ:D7DqB2pKExk"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ajaxian?i=cqOmQ-KCTbI:IcgdlgmtueQ:D7DqB2pKExk" border="0"&gt;&lt;/a&gt;
&lt;/div&gt;</content><author><name>Dion Almaer</name></author><gr:likingUser>17286088772454075957</gr:likingUser><gr:likingUser>04962949143461368811</gr:likingUser><gr:likingUser>07473722672288884090</gr:likingUser><gr:likingUser>06879994997847346936</gr:likingUser><gr:likingUser>00140563535682910421</gr:likingUser><gr:likingUser>18385338218504819643</gr:likingUser><gr:likingUser>08371486760213834654</gr:likingUser><gr:likingUser>17377819251160374934</gr:likingUser><gr:likingUser>11364658987488258139</gr:likingUser><source gr:stream-id="feed/http://feeds.feedburner.com/ajaxian"><id>tag:google.com,2005:reader/feed/http://feeds.feedburner.com/ajaxian</id><title type="html">Ajaxian » Front Page</title><link rel="alternate" href="http://ajaxian.com" type="text/html" /></source><feedburner:origLink>http://feedproxy.google.com/~r/ajaxian/~3/cqOmQ-KCTbI/font-dragr</feedburner:origLink></entry></feed>
