<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link rel="hub" href="http://tumblr.superfeedr.com/" xmlns:atom="http://www.w3.org/2005/Atom"/><description>Entrepreneur, Web / Mobile Web Engineer
PASSIONATE about the Web and interested in business / technology / social media / programming / music. 
NYC</description><title>Jean-Pierre Pommet</title><generator>Tumblr (3.0; @jppommet)</generator><link>http://jppommet.tumblr.com/</link><item><title>HTML5 Forms Validation in Firefox 4 - Mounir Lamouri's Blog</title><description>&lt;div class="posterous_autopost"&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;blockquote&gt;&lt;div&gt;  &lt;h3&gt;HTML5 Forms Validation in Firefox 4&lt;/h3&gt;    &lt;p&gt;By Mounir Lamouri    on Wednesday, November 10&amp;#160;2010, 18:00        - &lt;a href="http://blog.oldworld.fr/index.php?post/2010/11/17/HTML5-Forms-Validation-in-Firefox-4" target="_blank"&gt;Permalink&lt;/a&gt;  &lt;/p&gt;          &lt;div&gt;&lt;p&gt;HTML5 Forms specifications introduce some new input types, attributes and other awesome features. One of the transversal features is native browser-side form validation.&lt;br/&gt;  For Firefox 4, we tried to focus on that feature and ship it as complete as possible. All following features descriptions are available with &lt;a href="http://www.mozilla.com/firefox/beta/" target="_blank"&gt;Firefox 4 beta 7&lt;/a&gt; except some which are going to be available in following betas (it&amp;#8217;s clearly specified when that&amp;#8217;s the case).&lt;/p&gt;      &lt;h3&gt;Why browser-side form validation?&lt;/h3&gt;    &lt;p&gt;The idea behind form validation in HTML5 Forms is to prevent using JavaScript to check basic stuff in your forms: Is this email address valid? Is this field filled in? Do passwords match? These are often checked in JavaScript when you click on the submit button. You might write your own javascript code or use a library but that will always be a repetitive, boring and error-prone task. With forms validated by the browser, you no longer have to care about those steps, just write simple HTML.&lt;br/&gt;  For the user, the validation being done by the browser is a guarantee of quality with better accessibility and consistency.&lt;/p&gt;      &lt;h3&gt;How can I make my form using this feature?&lt;/h3&gt;    &lt;p&gt;If you use new attributes related to form validation or new input types with internal validation, you will automatically opt in for form validation by the browser (if supported by the browser). All new input types introduced with HTML5 forms except &lt;em&gt;search&lt;/em&gt; and &lt;em&gt;tel&lt;/em&gt; benefit from internal validation.&lt;br/&gt;  Firefox 4 is going to support &lt;em&gt;email&lt;/em&gt; and &lt;em&gt;url&lt;/em&gt; and the validation will check if the value is a valid email or url respectively.&lt;br/&gt;  In addition, these attributes will provide an automatic validation mechanism:&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;&lt;em&gt;required&lt;/em&gt;: a required form control will be invalid if its value is empty. This is working for &amp;lt;input&amp;gt; and &amp;lt;textarea&amp;gt;. If set on a &amp;lt;input type=&amp;#8217;checkbox&amp;#8217;&amp;gt;, the element will have to be checked. On a group of &amp;lt;input type=&amp;#8217;radio&amp;#8217;&amp;gt;, one of the radio button will have to be selected. If set on a &amp;lt;input type=&amp;#8217;file&amp;#8217;&amp;gt;, a file will have to be selected.&lt;br/&gt;&lt;/li&gt;  &lt;/ul&gt;&lt;p&gt;&amp;lt;select&amp;gt; will accept the &lt;em&gt;required&lt;/em&gt; attribute in Firefox beta 8 (see &lt;em&gt;What&amp;#8217;s next?&lt;/em&gt;).&lt;/p&gt;    &lt;div class="CodeRay"&gt;  &lt;div class="code"&gt;&lt;div class="CodeRay"&gt; &lt;div class="code"&gt;&lt;pre&gt;&amp;lt;input required&amp;gt; &amp;lt;textarea required&amp;gt;&amp;lt;/textarea&amp;gt;&lt;/pre&gt;&lt;/div&gt; &lt;/div&gt; &lt;/div&gt;  &lt;/div&gt;    &lt;ul&gt;&lt;li&gt;&lt;em&gt;pattern&lt;/em&gt;: you can specify a regular expression &lt;sup&gt;[&lt;a href="http://blog.oldworld.fr/index.php?post/2010/11/17/HTML5-Forms-Validation-in-Firefox-4#pnote-16-1" target="_blank"&gt;1&lt;/a&gt;]&lt;/sup&gt; to check the element&amp;#8217;s value. This can be used only on some &amp;lt;input&amp;gt; types (&lt;em&gt;text&lt;/em&gt;, &lt;em&gt;search&lt;/em&gt;, &lt;em&gt;tel&lt;/em&gt;, &lt;em&gt;email&lt;/em&gt; and &lt;em&gt;url&lt;/em&gt;). When you use pattern, it&amp;#8217;s highly recommended to use the &lt;em&gt;title&lt;/em&gt; attribute to describe the pattern.&lt;/li&gt;  &lt;/ul&gt;&lt;div class="CodeRay"&gt;  &lt;div class="code"&gt;&lt;div class="CodeRay"&gt; &lt;div class="code"&gt;&lt;pre&gt;&amp;lt;input type='tel' pattern='\d\d \d\d \d\d \d\d \d\d' title="Write a phone number in the format 'XX XX XX XX XX'"&amp;gt; &amp;lt;input type='email' pattern=".*@company\.com" title="Enter you company email address"&amp;gt;&lt;/pre&gt;&lt;/div&gt; &lt;/div&gt; &lt;/div&gt;  &lt;/div&gt;    &lt;ul&gt;&lt;li&gt;&lt;em&gt;maxlength&lt;/em&gt;: maxlength can already be used with Firefox 3.6 but it will only block the keyboard inputs made by the users on an &amp;lt;input&amp;gt; so they can&amp;#8217;t type more characters than the value specified in the maxlength attribute. In Firefox 4 beta 7, this applies on &amp;lt;textarea&amp;gt; too. In addition, if the value is set via .value, the element will become invalid if the new value has a length bigger than maxlength.&lt;/li&gt;  &lt;/ul&gt;&lt;div class="CodeRay"&gt;  &lt;div class="code"&gt;&lt;div class="CodeRay"&gt; &lt;div class="code"&gt;&lt;pre&gt;&amp;lt;input maxlength='10'&amp;gt; &amp;lt;textarea maxlength='140'&amp;gt;&amp;lt;/textarea&amp;gt;&lt;/pre&gt;&lt;/div&gt; &lt;/div&gt; &lt;/div&gt;  &lt;/div&gt;        &lt;h3&gt;How can I opt out?&lt;/h3&gt;    &lt;p&gt;You should probably think about that twice, If you have your own system for form validation, you should probably try to disable it when the browser can manage form validation instead of disabling the validation by the browser for your own system. However, there might be other reasons why you would want to disable form validation. Good reasons might be if you want to use some new input types but you don&amp;#8217;t care about checking the validity.&lt;br/&gt;  The simplest way to opt out is to add the &lt;em&gt;novalidate&lt;/em&gt; attribute to your &amp;lt;form&amp;gt;. You can also set &lt;em&gt;formnovalidate&lt;/em&gt; on your submit controls. You should prefer &lt;em&gt;formnovalidate&lt;/em&gt; than &lt;em&gt;novalidate&lt;/em&gt; if you want to have one submit control with form validation and another without.&lt;br/&gt;  Detecting this feature is not really easy given that you want to have a message being shown but you can&amp;#8217;t know for sure if the browser is going to show something even if form validation seems to be supported. I will try to write another post about that later.&lt;/p&gt;      &lt;h3&gt;How can I specify my validity rules?&lt;/h3&gt;    &lt;p&gt;You can make an element invalid by calling &lt;em&gt;.setCustomValidity(errorMsg)&lt;/em&gt;. Doing some checks on &lt;em&gt;oninput()&lt;/em&gt; and calling &lt;em&gt;.setCustomValidity()&lt;/em&gt; should be enough in most situations.&lt;br/&gt;&lt;em&gt;.setCustomValidity()&lt;/em&gt; takes in parameter the error message. You can pass the empty string to &lt;em&gt;.setCustomValidity()&lt;/em&gt; if you want to remove the custom error.&lt;br/&gt;  With this method, you can check that two password fields have the same value very easily:&lt;/p&gt;    &lt;div class="CodeRay"&gt;  &lt;div class="code"&gt;&lt;div class="CodeRay"&gt; &lt;div class="code"&gt;&lt;pre&gt;&amp;lt;script&amp;gt; function checkPassword(p1, p2) { if (p1.value != p2.value) { p2.setCustomValidity('passwords do not match'); } else { p2.setCustomValidity(''); } } &amp;lt;/script&amp;gt; &amp;lt;input type='password' id='p1'&amp;gt; &amp;lt;input type='password' onfocus="checkPassword(document.getElementById('p1'), this);" oninput="checkPassword(document.getElementById('p1'), this);"&amp;gt;&lt;/pre&gt;&lt;/div&gt; &lt;/div&gt; &lt;/div&gt;  &lt;/div&gt;        &lt;h3&gt;How can I change the text of the error message?&lt;/h3&gt;    &lt;p&gt;Each error types have a string associated describing the error. For example, if an input element is required and has no value, the message will be &amp;#8220;Please fill out this field&amp;#8221;. Firefox will try to be as clever as possible to show the best error message but you might want to override it in some situations where the rules are very complex. For example:&lt;/p&gt;    &lt;div class="CodeRay"&gt;  &lt;div class="code"&gt;&lt;div class="CodeRay"&gt; &lt;div class="code"&gt;&lt;pre&gt;&amp;lt;input type='email' required pattern='.*@company\.com'&amp;gt;&lt;/pre&gt;&lt;/div&gt; &lt;/div&gt; &lt;/div&gt;  &lt;/div&gt;      &lt;p&gt;You might prefer to have a simple &amp;#8220;Please, enter your corporate email address.&amp;#8221; instead of three generic messages depending of the unfulfilled constraint.&lt;br/&gt;  To help with that, we have introduced a non-standard &lt;em&gt;x-moz-errormessage&lt;/em&gt; &lt;sup&gt;[&lt;a href="http://blog.oldworld.fr/index.php?post/2010/11/17/HTML5-Forms-Validation-in-Firefox-4#pnote-16-2" target="_blank"&gt;2&lt;/a&gt;]&lt;/sup&gt; which let you specify an error message for a given form control. Regardless of the error, if &lt;em&gt;x-moz-errormessage&lt;/em&gt; is present and different from the empty string, its value will be used as the error message instead of the default one.&lt;br/&gt;  This is non-standard so it should be used carefully. See &lt;a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=10923" title="http://www.w3.org/Bugs/Public/show_bug.cgi?id=10923" target="_blank"&gt;&lt;a href="http://www.w3.org/Bugs/Public/show_..." target="_blank"&gt;http://www.w3.org/Bugs/Public/show_&amp;#8230;&lt;/a&gt;&lt;/a&gt;. In addition, you should know that &lt;em&gt;.setCustomValidity()&lt;/em&gt; lets you indirectly set your own error message but we do not really like that because you will let the browser think that the element is suffering from a custom error even if it is not.&lt;/p&gt;      &lt;h3&gt;How can I change the error popup UI?&lt;/h3&gt;    &lt;p&gt;Unfortunately, there is no way to change the UI. The popup is part of the browser and it&amp;#8217;s currently not possible to style the browser from the content. This  might change later but that will not be done for Firefox 4.&lt;br/&gt;  If you think the current popup is ugly, you should know it&amp;#8217;s not final. We will try to enhance that later, see &lt;a href="https://bugzilla.mozilla.org/show_bug.cgi?id=602500" target="_blank"&gt;bug 602500&lt;/a&gt;. All comments are very welcome!&lt;/p&gt;      &lt;h3&gt;New CSS pseudo-classes and default styles&lt;/h3&gt;    &lt;p&gt;&lt;a href="http://www.w3.org/TR/css3-ui/" target="_blank"&gt;CSS3 UI&lt;/a&gt; introduce new pseudo-classes that HTML5 is now using like &lt;em&gt;:invalid&lt;/em&gt;, &lt;em&gt;:valid&lt;/em&gt;, &lt;em&gt;:required&lt;/em&gt; and &lt;em&gt;:optional&lt;/em&gt;. Firefox 4 beta 7 supports all these pseudo-classes and adds a new pseudo-class: &lt;em&gt;:-moz-submit-invalid&lt;/em&gt; which applies on submit controls when a form has an invalid element.&lt;br/&gt;&lt;em&gt;:invalid&lt;/em&gt; has a default style which is a red &lt;em&gt;box-shadow&lt;/em&gt;. This default style is going to be removed when &lt;em&gt;:-moz-ui-invalid&lt;/em&gt; will be added (see &lt;em&gt;What&amp;#8217;s next?&lt;/em&gt;). In the mean time, you can easily remove this default style in your stylesheets:&lt;/p&gt;    &lt;div class="CodeRay"&gt;  &lt;div class="code"&gt;&lt;div class="CodeRay"&gt; &lt;div class="code"&gt;&lt;pre&gt;:invalid {   box-shadow: none;   }&lt;/pre&gt;&lt;/div&gt; &lt;/div&gt; &lt;/div&gt;  &lt;/div&gt;        &lt;h3&gt;What&amp;#8217;s next?&lt;/h3&gt;    &lt;p&gt;It&amp;#8217;s a bit early to say what will be done after Firefox 4 but we already know that a few things will be done in the following betas:&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;&lt;em&gt;required&lt;/em&gt; attribute for &amp;lt;select&amp;gt;. You will be able to specify that a select element is required. This rule will be fulfilled if you select at least one option which has a value different from the empty string. See &lt;a href="https://bugzilla.mozilla.org/show_bug.cgi?id=596511" target="_blank"&gt;bug 596511&lt;/a&gt;. This might be fixed for beta 8.&lt;/li&gt;  &lt;li&gt;Let &amp;lt;output&amp;gt; being subject from constraint validation. Output elements are currently barred from constraint validation but it seems to be too restrictive and &lt;em&gt;.setCustomValidity()&lt;/em&gt; might be useful in some situations. See &lt;a href="https://bugzilla.mozilla.org/show_bug.cgi?id=604673" target="_blank"&gt;bug 604673&lt;/a&gt;. This might be fixed for beta 8.&lt;/li&gt;  &lt;li&gt;Adding &lt;em&gt;:-moz-ui-invalid&lt;/em&gt; and maybe &lt;em&gt;-moz-ui-valid&lt;/em&gt; pseudo-classes. &lt;em&gt;:invalid&lt;/em&gt; and &lt;em&gt;:valid&lt;/em&gt; pseudo-classes are very bad for &lt;acronym title="User Interface"&gt;UI&lt;/acronym&gt; and &lt;acronym title="User eXperience"&gt;UX&lt;/acronym&gt; perspectives. We want to introduce new pseudo-classes which would follow some UX rules. This will probably be the subject of a future blog post. Related bugs: &lt;a href="https://bugzilla.mozilla.org/show_bug.cgi?id=605124" target="_blank"&gt;bug 605124&lt;/a&gt; and &lt;a href="https://bugzilla.mozilla.org/show_bug.cgi?id=605125" target="_blank"&gt;bug 605125&lt;/a&gt;.&lt;/li&gt;  &lt;/ul&gt;&lt;div&gt;&lt;h4&gt;Notes&lt;/h4&gt;  &lt;p&gt;[&lt;a href="http://blog.oldworld.fr/index.php?post/2010/11/17/HTML5-Forms-Validation-in-Firefox-4#rev-pnote-16-1" target="_blank"&gt;1&lt;/a&gt;] The regular expression will follow the JavaScript regular expression rules and will be checked against the entire element&amp;#8217;s value.&lt;/p&gt;  &lt;p&gt;[&lt;a href="http://blog.oldworld.fr/index.php?post/2010/11/17/HTML5-Forms-Validation-in-Firefox-4#rev-pnote-16-2" target="_blank"&gt;2&lt;/a&gt;] The prefix is the new recommendation, see &lt;a href="http://www.w3.org/Bugs/Public/show_bug.cgi?id=9590" title="http://www.w3.org/Bugs/Public/show_bug.cgi?id=9590" target="_blank"&gt;&lt;a href="http://www.w3.org/Bugs/Public/show_..." target="_blank"&gt;http://www.w3.org/Bugs/Public/show_&amp;#8230;&lt;/a&gt;&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;  &lt;/div&gt;    &lt;/div&gt;&lt;/blockquote&gt;&lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://blog.oldworld.fr/index.php?post/2010/11/17/HTML5-Forms-Validation-in-Firefox-4" target="_blank"&gt;blog.oldworld.fr&lt;/a&gt;&lt;/div&gt; &lt;/div&gt;      &lt;p style="font-size: 10px;"&gt;  &lt;a href="http://posterous.com" target="_blank"&gt;Posted via email&lt;/a&gt;   from &lt;a href="http://jppommet.com/html5-forms-validation-in-firefox-4-mounir-la" target="_blank"&gt;Jean-Pierre Pommet&amp;#8217;s Blog&lt;/a&gt; | &lt;a href="http://jppommet.com/html5-forms-validation-in-firefox-4-mounir-la#comment" target="_blank"&gt;&lt;span style="font-size: 11px"&gt;Comment&amp;#160;»&lt;/span&gt;&lt;/a&gt;  &lt;/p&gt;  &lt;/div&gt;</description><link>http://jppommet.tumblr.com/post/1574895414</link><guid>http://jppommet.tumblr.com/post/1574895414</guid><pubDate>Sun, 14 Nov 2010 21:47:47 +0100</pubDate></item><item><title>RockMelt - Your browser. Re-imagined.</title><description>&lt;div class="posterous_autopost"&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;a href="http://posterous.com/getfile/files.posterous.com/jppommet/gmtnuGFqnDtztuirhEoIlEkqbgaIeAmleJghGrmGdwfutAJEydzsfHsDavmp/media_httpd1x0iee65vp_kwylq.jpg.scaled1000.jpg" target="_blank"&gt;&lt;img src="http://posterous.com/getfile/files.posterous.com/jppommet/gmtnuGFqnDtztuirhEoIlEkqbgaIeAmleJghGrmGdwfutAJEydzsfHsDavmp/media_httpd1x0iee65vp_kwylq.jpg.scaled500.jpg" width="500" height="254"/&gt;&lt;/a&gt; &lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://www.rockmelt.com/thanks.html?dl=89a9898c47a8492b0309723ebbc18cda3280fd23" target="_blank"&gt;rockmelt.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;Pretty cool to see the whole RockMelt Team when you download their browser.  &lt;br/&gt;But now time to test it&amp;#160;!&lt;/p&gt;&lt;/div&gt;      &lt;p style="font-size: 10px;"&gt;  &lt;a href="http://posterous.com" target="_blank"&gt;Posted via email&lt;/a&gt;   from &lt;a href="http://jppommet.com/rockmelt-your-browser-re-imagined" target="_blank"&gt;Jean-Pierre Pommet&amp;#8217;s Blog&lt;/a&gt; | &lt;a href="http://jppommet.com/rockmelt-your-browser-re-imagined#comment" target="_blank"&gt;&lt;span style="font-size: 11px"&gt;Comment&amp;#160;»&lt;/span&gt;&lt;/a&gt;  &lt;/p&gt;  &lt;/div&gt;</description><link>http://jppommet.tumblr.com/post/1520852663</link><guid>http://jppommet.tumblr.com/post/1520852663</guid><pubDate>Tue, 09 Nov 2010 02:48:50 +0100</pubDate><category>browser</category><category>rockmelt</category><category>team</category></item><item><title>A Certain Blog (fBta): Adding extra columns in jQuery Datatable</title><description>&lt;a href="http://fbta.tumblr.com/post/1374357393/adding-extra-columns-in-jquery-datatable"&gt;A Certain Blog (fBta): Adding extra columns in jQuery Datatable&lt;/a&gt;: &lt;p&gt;&lt;a href="http://fbta.tumblr.com/post/1374357393/adding-extra-columns-in-jquery-datatable" target="_blank"&gt;fbta&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;JQuery Datatables is an awesome and easy to use plugin for displaying data in a table from almost any source. It is very flexible and easy to use. I however came across a little problem of adding extra columns in a dynamic table. I googled and still could not find a very suitable or easy to…&lt;/p&gt;
&lt;/blockquote&gt;</description><link>http://jppommet.tumblr.com/post/1496973437</link><guid>http://jppommet.tumblr.com/post/1496973437</guid><pubDate>Sat, 06 Nov 2010 16:42:04 +0100</pubDate><category>jquery</category><category>datatables</category><category>php</category></item><item><title>Blog | Graphicpeel: iOS Icons Made in Pure CSS</title><description>&lt;a href="http://blog.graphicpeel.com/post/740928981/ios-icons-made-in-pure-css"&gt;Blog | Graphicpeel: iOS Icons Made in Pure CSS&lt;/a&gt;: &lt;blockquote&gt;
&lt;p&gt;&lt;a href="http://graphicpeel.com/cssiosicons" target="_blank"&gt;&lt;img class="shadow" alt="iOS Icons in Pure CSS" src="http://graphicpeel.com/images/iosicons-header.png"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://graphicpeel.com/cssiosicons" target="_blank"&gt;Click here&lt;/a&gt; to see 11 iOS icons made in only CSS, no images whatsoever.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;NOTE:&lt;/strong&gt; This demo will only work correctly on a webkit browser and has only been tested in Safari 5 and Google Chrome 5. &lt;a href="http://graphicpeel.com/images/cssiosicons-correct" target="_blank"&gt;Here’s how it will look when rendered correctly.&lt;/a&gt; Update: Apparently, there’s a bad bug in…&lt;/p&gt;
&lt;/blockquote&gt;</description><link>http://jppommet.tumblr.com/post/747356187</link><guid>http://jppommet.tumblr.com/post/747356187</guid><pubDate>Tue, 29 Jun 2010 01:37:18 +0200</pubDate></item><item><title>jQTouch and Sencha Touch: Which is right for you?</title><description>&lt;p&gt;&lt;a href="http://9-bits.com/post/723711597/jqtouch-and-sencha-touch" target="_blank"&gt;9-bits&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Recently I had the pleasure of announcing &lt;a href="http://www.sencha.com/products/touch/" target="_blank"&gt;Sencha Touch&lt;/a&gt;, a standards-based mobile app framework which I helped create. As expected, this has raised some questions about &lt;a href="http://www.jqtouch.com/" target="_blank"&gt;jQTouch&lt;/a&gt;, a similar library I created last year. As &lt;a href="http://blog.jqtouch.com/post/701706926/jqtouch-is-now-a-part-of-sencha-labs" target="_blank"&gt;covered before&lt;/a&gt;, jQTouch will remain &lt;strong&gt;separate, maintained, and free&lt;/strong&gt; under the MIT license. This post helps distinguish the similarities and differences between the two libraries for the discerning mobile developer.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://9-bits.com/post/723711597/jqtouch-and-sencha-touch" target="_blank"&gt;Read More&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;</description><link>http://jppommet.tumblr.com/post/725297811</link><guid>http://jppommet.tumblr.com/post/725297811</guid><pubDate>Tue, 22 Jun 2010 15:01:49 +0200</pubDate></item><item><title>senchainc:

In introduction to Sencha Touch’s features and...</title><description>&lt;iframe src="http://player.vimeo.com/video/12636777" width="400" height="311" frameborder="0"&gt;&lt;/iframe&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&lt;a href="http://notes.sencha.com/post/709462805/intro-to-sencha-touch" target="_blank"&gt;senchainc&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;In introduction to Sencha Touch’s features and capabilities from our VP Products, &lt;a href="http://twitter.com/mmullany" target="_blank"&gt;Michael Mullany&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;</description><link>http://jppommet.tumblr.com/post/709513355</link><guid>http://jppommet.tumblr.com/post/709513355</guid><pubDate>Fri, 18 Jun 2010 01:38:40 +0200</pubDate></item><item><title>Ajaxian » WebM: The On2 codec is here, with support from Google, Mozilla, and Opera</title><description>&lt;div class="posterous_autopost"&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;blockquote&gt;&lt;div&gt;    &lt;p&gt;Wednesday, May 19th, 2010&lt;/p&gt;  &lt;h3&gt;&lt;a href="http://ajaxian.com/archives/webm-the-on2-codec-is-here-with-support-from-google-mozilla-and-opera" title="Permanent Link to WebM: The On2 codec is here, with support from Google, Mozilla, and Opera" rel="bookmark" target="_blank"&gt;WebM: The On2 codec is here, with support from Google, Mozilla, and Opera&lt;/a&gt;&lt;/h3&gt;  &lt;p&gt;Category:  &lt;a href="http://ajaxian.com/by/topic/google" title="View all posts in Google" rel="category tag" target="_blank"&gt;Google&lt;/a&gt;,  &lt;a href="http://ajaxian.com/by/topic/video-topic" title="View all posts in Video" rel="category tag" target="_blank"&gt;Video&lt;/a&gt;&lt;/p&gt;  &lt;blockquote&gt;&lt;p&gt;  The &lt;a href="http://www.webmproject.org/" target="_blank"&gt;WebM&lt;/a&gt; project is dedicated to developing a high-quality, open video format for the web that is freely available to everyone.&lt;/p&gt;  &lt;p&gt;The WebM launch is supported by Mozilla, Opera, Google and more than forty other publishers, software and hardware vendors.&lt;/p&gt;  &lt;p&gt;WebM is an open, royalty-free, media file format designed for the web.&lt;/p&gt;  &lt;p&gt;WebM defines the file container structure, video and audio formats. WebM files consist of video streams compressed with the VP8 video codec and audio streams compressed with the &lt;a href="http://xiph.org/vorbis/" target="_blank"&gt;Vorbis&lt;/a&gt; audio codec. The WebM file structure is based on the &lt;a href="http://corecodec.com/products/matroska" target="_blank"&gt;Matroska&lt;/a&gt; container.  &lt;/p&gt;&lt;/blockquote&gt;  &lt;p&gt;&lt;img src="http://www.webmproject.org/media/images/webm-devpreview.png" height="60" width="180" style="float: right; padding: 8px;"/&gt;&lt;/p&gt;  &lt;p&gt;It happened. Today, Google is up on stage at I/O unveiling a new &lt;a href="http://www.webmproject.org/" target="_blank"&gt;WebM&lt;/a&gt; project alongside a slew of partners (notably: Mozilla and Opera on the browser side) that gets the On2 codec out into the open. This is huge news for the fight for Open Video, and everyone will now have eyes on Safari.&lt;/p&gt;  &lt;p&gt;YouTube will be a huge push here, and you can go to their html5 version: &lt;a href="http://www.youtube.com/html5" target="_blank"&gt;&lt;a href="http://www.youtube.com/html5" target="_blank"&gt;http://www.youtube.com/html5&lt;/a&gt;&lt;/a&gt; and check it out. Today it is available in trunk builds on &lt;a href="http://build.chromium.org/buildbot/snapshots" target="_blank"&gt;Chromium&lt;/a&gt; and &lt;a href="http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-trunk/" target="_blank"&gt;Firefox&lt;/a&gt;. Soon, an Opera beta, Chrome dev release, and more.&lt;/p&gt;  &lt;p&gt;The project is going after:&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;  &lt;p&gt;&lt;strong&gt;Openness and innovation.&lt;/strong&gt;  A key factor in the web’s success is&lt;br/&gt;  that its core technologies such as HTML, HTTP, and TCP/IP are open&lt;br/&gt;  for anyone to implement and improve.  With video being core to the&lt;br/&gt;  web experience, a high-quality, open video format choice is needed.&lt;br/&gt;  WebM is 100% free, and open-sourced under a&lt;br/&gt;&lt;a href="http://ajaxian.com/archives/webm-the-on2-codec-is-here-with-support-from-google-mozilla-and-opera?utm_source=feedburner&amp;amp;utm_medium=feed&amp;amp;utm_campaign=Feed%3A+ajaxian+%28Ajaxian+Blog%29#" target="_blank"&gt;BSD-style license&lt;/a&gt;. &lt;/p&gt;  &lt;/li&gt;  &lt;li&gt;  &lt;p&gt;&lt;strong&gt;Optimized for the web.&lt;/strong&gt;  Serving video on the web is different&lt;br/&gt;  from traditional broadcast and offline mediums. Existing video&lt;br/&gt;  formats were designed to serve the needs of these mediums and do&lt;br/&gt;  it very well. WebM is focused on addressing the unique needs of&lt;br/&gt;  serving video on the web. &lt;/p&gt;  &lt;ul&gt;&lt;li&gt;  &lt;p&gt;Low computational footprint to enable playback on any device,&lt;br/&gt;  including low-power netbooks, handhelds, tablets, etc.* &lt;/p&gt;  &lt;/li&gt;  &lt;li&gt;  &lt;p&gt;Simple container format&lt;/p&gt;  &lt;/li&gt;  &lt;li&gt;  &lt;p&gt;Highest quality real-time video delivery&lt;/p&gt;  &lt;/li&gt;  &lt;li&gt;  &lt;p&gt;Click and encode. Minimal codec profiles, sub-options; when&lt;br/&gt;  possible, let the encoder make the tough choices.&lt;/p&gt;  &lt;/li&gt;  &lt;/ul&gt;&lt;/li&gt;  &lt;/ul&gt;&lt;p&gt;* Note: The initial developer preview releases of browsers supporting WebM are not yet fully optimized and therefore have a higher computational footprint for screen rendering than we expect for the general releases. The computational efficiencies of WebM are more accurately measured today using the &lt;a href="http://ajaxian.com/archives/webm-the-on2-codec-is-here-with-support-from-google-mozilla-and-opera?utm_source=feedburner&amp;amp;utm_medium=feed&amp;amp;utm_campaign=Feed%3A+ajaxian+%28Ajaxian+Blog%29#" title="VP8 SDK" target="_blank"&gt;development tools in the VP8 SDKs&lt;/a&gt;. Optimizations of the browser implementations are forthcoming.&lt;/p&gt;  &lt;p&gt;Congrats Open Web.&lt;/p&gt;  &lt;p&gt;&lt;em&gt;Update:&lt;/em&gt; &lt;a href="http://blog.streamingmedia.com/the_business_of_online_vi/2010/05/adobe-announces-flash-player-support-for-googles-vp8-video-codec.html" target="_blank"&gt;Flash will ship VP8&lt;/a&gt;, as will &lt;a href="http://blogs.msdn.com/ie/archive/2010/05/19/another-follow-up-on-html5-video-in-ie9.aspx" target="_blank"&gt;IE9&lt;/a&gt;. Now everyone looks at the Safari team :)&lt;/p&gt;  &lt;p&gt;(One thing though about IE9 support: “In its HTML5 support, IE9 will support playback of H.264 video as well as VP8 video when the user has installed a VP8 codec on Windows.”). That is a bummer.&lt;/p&gt;    &lt;p&gt;  Posted by &lt;cite&gt;Dion Almaer&lt;/cite&gt; at 10:46 am&lt;span style="float: right;"&gt;  &lt;a href="http://ajaxian.com/archives/webm-the-on2-codec-is-here-with-support-from-google-mozilla-and-opera#comments" title="Comment on WebM: The On2 codec is here, with support from Google, Mozilla, and Opera" target="_blank"&gt;8 Comments&lt;/a&gt;&lt;/span&gt;  		    		    &lt;span&gt;&lt;/span&gt;  &lt;/p&gt;        			  &amp;#8212;&amp;gt;  &lt;/div&gt;&lt;/blockquote&gt;&lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://ajaxian.com/archives/webm-the-on2-codec-is-here-with-support-from-google-mozilla-and-opera?utm_source=feedburner&amp;amp;utm_medium=feed&amp;amp;utm_campaign=Feed%3A+ajaxian+%28Ajaxian+Blog%29" target="_blank"&gt;ajaxian.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;I have been working with video for a long time, I am glad there is a new open source video format based on the excellent video codec VP8 video codec, audio codec Vorbis and the container Matroska. it&amp;#8217;s a good news for the Open Web.&lt;/p&gt;&lt;/div&gt;      &lt;p style="font-size: 10px;"&gt;  &lt;a href="http://posterous.com" target="_blank"&gt;Posted via web&lt;/a&gt;   from &lt;a href="http://jppommet.posterous.com/ajaxian-webm-the-on2-codec-is-here-with-suppo" target="_blank"&gt;Jean-Pierre Pommet&amp;#8217;s Blog&lt;/a&gt; | &lt;a href="http://jppommet.posterous.com/ajaxian-webm-the-on2-codec-is-here-with-suppo#comment" target="_blank"&gt;&lt;span style="font-size: 11px"&gt;Comment&amp;#160;»&lt;/span&gt;&lt;/a&gt;  &lt;/p&gt;  &lt;/div&gt;</description><link>http://jppommet.tumblr.com/post/630256929</link><guid>http://jppommet.tumblr.com/post/630256929</guid><pubDate>Tue, 25 May 2010 06:36:05 +0200</pubDate><category>opensource</category><category>video</category><category>webm</category></item><item><title>Chromium Blog: A sneak peek at the Native Client SDK</title><description>&lt;div class="posterous_autopost"&gt;&lt;div class="posterous_bookmarklet_entry"&gt;  &lt;object height="303" width="500"&gt;  &lt;param name="movie" value="http://www.youtube.com/v/nP8Mo0jGQDk&amp;amp;hl=en_US&amp;amp;fs=1&amp;amp;rel=0&amp;amp;hd=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/nP8Mo0jGQDk&amp;amp;hl=en_US&amp;amp;fs=1&amp;amp;rel=0&amp;amp;hd=1" type="application/x-shockwave-flash" height="303" width="500"&gt;&lt;/embed&gt;&lt;/object&gt;  &lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://blog.chromium.org/2010/05/sneak-peek-at-native-client-sdk.html" target="_blank"&gt;blog.chromium.org&lt;/a&gt; &lt;/div&gt;  &lt;p&gt;Write code in js, use the power of C/C++ libraries for web apps&amp;#160;! Works only on Chromium though&amp;#8230;Just imagine what kind of powerful web application you can develop&amp;#160;!!&lt;/p&gt;  &lt;/div&gt;      &lt;p style="font-size: 10px;"&gt;  &lt;a href="http://posterous.com" target="_blank"&gt;Posted via web&lt;/a&gt;   from &lt;a href="http://jppommet.posterous.com/chromium-blog-a-sneak-peek-at-the-native-clie-0" target="_blank"&gt;Jean-Pierre Pommet&amp;#8217;s Blog&lt;/a&gt; | &lt;a href="http://jppommet.posterous.com/chromium-blog-a-sneak-peek-at-the-native-clie-0#comment" target="_blank"&gt;&lt;span style="font-size: 11px"&gt;Comment&amp;#160;»&lt;/span&gt;&lt;/a&gt;  &lt;/p&gt;  &lt;/div&gt;</description><link>http://jppommet.tumblr.com/post/595838022</link><guid>http://jppommet.tumblr.com/post/595838022</guid><pubDate>Thu, 13 May 2010 21:00:17 +0200</pubDate><category>chromium</category><category>NaCi</category><category>native-client</category><category>sdk</category></item><item><title>Multi-Safari</title><description>&lt;div class="posterous_autopost"&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;blockquote&gt;&lt;div&gt;  &lt;h3&gt;Multi-Safari&lt;/h3&gt;    &lt;p&gt;&lt;a href="http://michelf.com/projects/multi-safari#" target="_blank"&gt;Français&lt;/a&gt;&lt;/p&gt;    &lt;div&gt;&lt;a href="http://michelf.com/software/magic-launch/" target="_blank"&gt;&lt;img src="http://michelf.com/promo/magic-launch/ml-promo-big.png" height="151" alt="Magic Launch: Help you files open in the right app." width="195"/&gt;&lt;/a&gt;&lt;/div&gt;    &lt;h3&gt;Introduction&lt;/h3&gt;    &lt;p&gt;Safari normally uses the Web Kit framework found inside Mac OS X to render web pages and execute javascript. This means that if you preserve an old version of Safari to run it on a newer version of Mac OS, it will use the newer Web Kit found in the system and you will get the same results as with the newer version. Thus, you would normally need a separate installation of Mac OS X for each version of Safari you want to test a website into.&lt;/p&gt;    &lt;p&gt;These special versions of Safari use the original Web Kit framework that came with them, bundled inside the application. They will mimic original Safari rendering and javascript behaviours. HTTP requests and cookies however are still handled by the system and may not work exactly the same.&lt;/p&gt;    &lt;h3&gt;Download&lt;/h3&gt;    &lt;p&gt;Thanks to &lt;a href="http://jquery.com/" target="_blank"&gt;the jQuery Project&lt;/a&gt; for hosting these files on their CDN.&lt;/p&gt;    &lt;p&gt;Note: The files only contain English and French localizations to make them smaller.&lt;/p&gt;    &lt;h3&gt;Safari for Leopard (Mac OS X 10.5)&lt;/h3&gt;    &lt;p&gt;Leopard shipped originally with Safari 3.0. Safari 3 for Leopard is not compatible with Mac OS X 10.4 (Tiger) although Safari 3 for Tiger works fine on Leopard.&lt;/p&gt;    &lt;ul&gt;&lt;li&gt;&lt;a href="http://mirror.jquery.com/multi-safari/multi-safari-3.2.1.tbz" target="_blank"&gt;  &lt;img src="http://michelf.com/img/icon/compass-3.2.1.png" height="32" alt="" width="32"/&gt;&lt;/a&gt;&lt;p&gt;  Safari 3.2.1 (Leopard version) &lt;small&gt;(19.2 Mb)&lt;/small&gt;&lt;/p&gt;&lt;/li&gt;  &lt;li&gt;&lt;a href="http://mirror.jquery.com/multi-safari/multi-safari-3.1.2.tbz" target="_blank"&gt;  &lt;img src="http://michelf.com/img/icon/compass-3.1.2.png" height="32" alt="" width="32"/&gt;&lt;/a&gt;&lt;p&gt;  Safari 3.1.2 (Leopard version) &lt;small&gt;(18.7 Mb)&lt;/small&gt;&lt;/p&gt;&lt;/li&gt;  &lt;li&gt;&lt;a href="http://mirror.jquery.com/multi-safari/multi-safari-3.0.4.tbz" target="_blank"&gt;  &lt;img src="http://michelf.com/img/icon/compass-3.0.4.png" height="32" alt="" width="32"/&gt;&lt;/a&gt;&lt;p&gt;  Safari 3.0.4 (Leopard version) &lt;small&gt;(15.8 Mb)&lt;/small&gt;&lt;/p&gt;&lt;/li&gt;  &lt;/ul&gt;&lt;h3&gt;Safari for Tiger (Mac OS X 10.4)&lt;/h3&gt;    &lt;p&gt;Tiger shipped originally with Safari 2.0. All these versions should work fine on Mac OS X 10.4 (Tiger) and 10.5 (Leopard). There’s a small problem when running 2.0.x on Leopard though: the javascript &lt;code&gt;alert&lt;/code&gt; function does not work.&lt;/p&gt;    &lt;ul&gt;&lt;li&gt;&lt;a href="http://mirror.jquery.com/multi-safari/multi-safari-2.0.tbz" target="_blank"&gt;  &lt;img src="http://michelf.com/img/icon/compass-2.0.png" height="32" alt="" width="32"/&gt;&lt;/a&gt;&lt;p&gt;  Safari 2.0&amp;#160;&lt;small&gt;(3.4 Mb)&lt;/small&gt;&lt;/p&gt;&lt;/li&gt;  &lt;li&gt;&lt;a href="http://mirror.jquery.com/multi-safari/multi-safari-2.0.2.tbz" target="_blank"&gt;  &lt;img src="http://michelf.com/img/icon/compass-2.0.2.png" height="32" alt="" width="32"/&gt;&lt;/a&gt;&lt;p&gt;  Safari 2.0.2&amp;#160;&lt;small&gt;(3.2 Mb)&lt;/small&gt;&lt;/p&gt;&lt;/li&gt;  &lt;li&gt;&lt;a href="http://mirror.jquery.com/multi-safari/multi-safari-2.0.3.tbz" target="_blank"&gt;  &lt;img src="http://michelf.com/img/icon/compass-2.0.3.png" height="32" alt="" width="32"/&gt;&lt;/a&gt;&lt;p&gt;  Safari 2.0.3&amp;#160;&lt;small&gt;(3.2 Mb)&lt;/small&gt;&lt;/p&gt;&lt;/li&gt;  &lt;li&gt;&lt;a href="http://mirror.jquery.com/multi-safari/multi-safari-2.0.4.tbz" target="_blank"&gt;  &lt;img src="http://michelf.com/img/icon/compass-2.0.4.png" height="32" alt="" width="32"/&gt;&lt;/a&gt;&lt;p&gt;  Safari 2.0.4&amp;#160;&lt;small&gt;(3,2 Mb)&lt;/small&gt;&lt;/p&gt;&lt;/li&gt;  &lt;li&gt;&lt;a href="http://mirror.jquery.com/multi-safari/multi-safari-3.0.4-tiger.tbz" target="_blank"&gt;  &lt;img src="http://michelf.com/img/icon/compass-3.0.4-tiger.png" height="32" alt="" width="32"/&gt;&lt;/a&gt;&lt;p&gt;  Safari 3.0.4 (Tiger version) &lt;small&gt;(13.2 Mb)&lt;/small&gt;&lt;/p&gt;&lt;/li&gt;  &lt;/ul&gt;&lt;h3&gt;Safari for Panther (Mac OS X 10.3)&lt;/h3&gt;    &lt;p&gt;These versions only run on Mac OS X 10.3. They depend on a few private frameworks and symbols in the operating system which are no longer here in later versions.&lt;/p&gt;    &lt;ul&gt;&lt;li&gt;&lt;a href="http://mirror.jquery.com/multi-safari/multi-safari-1.2.zip" target="_blank"&gt;  &lt;img src="http://michelf.com/img/icon/compass-1.2.png" height="32" alt="" width="32"/&gt;&lt;/a&gt;&lt;p&gt;  Safari 1.2&amp;#160;&lt;small&gt;(2.7 Mb)&lt;/small&gt;&lt;/p&gt;&lt;/li&gt;  &lt;li&gt;&lt;a href="http://mirror.jquery.com/multi-safari/multi-safari-1.2.3.zip" target="_blank"&gt;  &lt;img src="http://michelf.com/img/icon/compass-1.2.3.png" height="32" alt="" width="32"/&gt;&lt;/a&gt;&lt;p&gt;  Safari 1.2.3&amp;#160;&lt;small&gt;(2.2 Mb)&lt;/small&gt;&lt;/p&gt;&lt;/li&gt;  &lt;li&gt;&lt;a href="http://mirror.jquery.com/multi-safari/multi-safari-1.3.zip" target="_blank"&gt;  &lt;img src="http://michelf.com/img/icon/compass-1.3.png" height="32" alt="" width="32"/&gt;&lt;/a&gt;&lt;p&gt;  Safari 1.3&amp;#160;&lt;small&gt;(3.9 Mb)&lt;/small&gt;&lt;/p&gt;&lt;/li&gt;  &lt;li&gt;&lt;a href="http://mirror.jquery.com/multi-safari/multi-safari-1.3.1.zip" target="_blank"&gt;  &lt;img src="http://michelf.com/img/icon/compass-1.3.1.png" height="32" alt="" width="32"/&gt;&lt;/a&gt;&lt;p&gt;  Safari 1.3.1&amp;#160;&lt;small&gt;(4.2 Mb)&lt;/small&gt;&lt;/p&gt;&lt;/li&gt;  &lt;li&gt;&lt;a href="http://mirror.jquery.com/multi-safari/multi-safari-1.3.2.zip" target="_blank"&gt;  &lt;img src="http://michelf.com/img/icon/compass-1.3.2.png" height="32" alt="" width="32"/&gt;&lt;/a&gt;&lt;p&gt;  Safari 1.3.2&amp;#160;&lt;small&gt;(4.1 Mb)&lt;/small&gt;&lt;/p&gt;&lt;/li&gt;  &lt;/ul&gt;&lt;h3&gt;Safari for Jaguar (Mac OS X 10.2)&lt;/h3&gt;    &lt;p&gt;This version of Safari works on Mac OS X 10.2 (Jaguar) through 10.4 (Tiger). Unusable on Leopard.&lt;/p&gt;    &lt;ul&gt;&lt;li&gt;&lt;a href="http://mirror.jquery.com/multi-safari/multi-safari-1.0.zip" target="_blank"&gt;  &lt;img src="http://michelf.com/img/icon/compass-1.0.png" height="32" alt="" width="32"/&gt;&lt;/a&gt;&lt;p&gt;  Safari 1.0&amp;#160;&lt;small&gt;(2.2 Mb)&lt;/small&gt;&lt;/p&gt;&lt;/li&gt;  &lt;/ul&gt;&lt;h3&gt;Compatibility Grid&lt;/h3&gt;    &lt;table&gt;&lt;tr&gt;&lt;th&gt;Version&lt;/th&gt;  &lt;th align="center"&gt;10.2.8 (Jaguar)&lt;/th&gt;  &lt;th align="center"&gt;10.3.9 (Panther)&lt;/th&gt;  &lt;th align="center"&gt;10.4.11 (Tiger)&lt;/th&gt;  &lt;th align="center"&gt;10.5.x (Leopard)&lt;/th&gt;  &lt;/tr&gt;&lt;tr&gt;&lt;td&gt;1.0&lt;/td&gt;  &lt;td align="center"&gt;x&lt;/td&gt;  &lt;td align="center"&gt;x&lt;/td&gt;  &lt;td align="center"&gt;x&lt;sup&gt;&lt;a rel="footnote"&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/td&gt;  &lt;td align="center"&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr&gt;&lt;td&gt;1.2.x&lt;/td&gt;  &lt;td align="center"&gt;&lt;/td&gt;  &lt;td align="center"&gt;x&lt;/td&gt;  &lt;td align="center"&gt;&lt;/td&gt;  &lt;td align="center"&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr&gt;&lt;td&gt;1.3.x&lt;/td&gt;  &lt;td align="center"&gt;&lt;/td&gt;  &lt;td align="center"&gt;x&lt;/td&gt;  &lt;td align="center"&gt;&lt;/td&gt;  &lt;td align="center"&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2.0.x&lt;/td&gt;  &lt;td align="center"&gt;&lt;/td&gt;  &lt;td align="center"&gt;&lt;/td&gt;  &lt;td align="center"&gt;x&lt;/td&gt;  &lt;td align="center"&gt;x&lt;sup&gt;&lt;a rel="footnote"&gt;2&lt;/a&gt;&lt;/sup&gt;&lt;/td&gt;  &lt;/tr&gt;&lt;tr&gt;&lt;td&gt;3.0.x (Tiger)&lt;/td&gt;  &lt;td align="center"&gt;&lt;/td&gt;  &lt;td align="center"&gt;&lt;/td&gt;  &lt;td align="center"&gt;x&lt;/td&gt;  &lt;td align="center"&gt;x&lt;/td&gt;  &lt;/tr&gt;&lt;tr&gt;&lt;td&gt;3.0.x (Leopard)&lt;/td&gt;  &lt;td align="center"&gt;&lt;/td&gt;  &lt;td align="center"&gt;&lt;/td&gt;  &lt;td align="center"&gt;&lt;/td&gt;  &lt;td align="center"&gt;x&lt;/td&gt;  &lt;/tr&gt;&lt;/table&gt;&lt;h3&gt;How I did this&lt;/h3&gt;    &lt;p&gt;I have documented the procedure I use to create the self-contained applications &lt;a href="http://www.michelf.com/weblog/2005/multi-safari/" target="_blank"&gt;on my weblog&lt;/a&gt;. There are two differences however:&lt;/p&gt;    &lt;ol&gt;&lt;li&gt;&lt;p&gt;Added a nice version-number badge on the icon so you can  distinguish different versions when side by side in the dock.&lt;/p&gt;&lt;/li&gt;  &lt;li&gt;&lt;p&gt;Instead of naming the old safari executable “TrueSafari”,  I name it with the appropriate version number and change   the script accordingly. This means that when one Safari  crash, the version number will appear in the error message.&lt;/p&gt;&lt;/li&gt;  &lt;li&gt;&lt;p&gt;The bundle identifier for Safari 2.0 and later is  changed to com.michelf.MultiSafari to avoid a version-check  on Leopard preventing older versions of Safari from launching.  As a consequence, preferences for the modified Safari downloads  are stored separately from the Apple-provided Safari, and  the launcher script has been modified to copy Apple’s Safari  preference on the first run.&lt;/p&gt;&lt;/li&gt;  &lt;/ol&gt;&lt;h3&gt;Notes&lt;/h3&gt;    &lt;p&gt;I’m providing these files free of charge so that web developers can test their website for interoperability within many version of Safari with less hassle. The copyright for these files still belongs to Apple Inc. If Apple asks, I will remove the files.&lt;/p&gt;    &lt;div&gt;    &lt;ol&gt;&lt;li&gt;  &lt;p&gt;Safari 1.0 works on Tiger but you’ll have to create the window in an   unconventional way: either by opening a local file or by choosing Open   Location in the file menu. The “Cannot open file” message at the   application startup can be ignored. &lt;a&gt;↩&lt;/a&gt;&lt;/p&gt;  &lt;/li&gt;    &lt;li&gt;  &lt;p&gt;Safari 2.0.x didn’t work initially on Leopard due to the system blocking   older versions of Safari. The 2.0.x downloads have been updated to use a   different bundle identifier (com.michelf.MultiSafari) and are no   longer affected by this block. &lt;a&gt;↩&lt;/a&gt;&lt;/p&gt;  &lt;/li&gt;    &lt;/ol&gt;&lt;/div&gt;    &lt;/div&gt;&lt;/blockquote&gt;    &lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://michelf.com/projects/multi-safari/" target="_blank"&gt;michelf.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;It is pretty useful if you need older version of Safari for different version of MAC OSX, just download them&amp;#160;!&lt;/p&gt;&lt;/div&gt;      &lt;p style="font-size: 10px;"&gt;  &lt;a href="http://posterous.com" target="_blank"&gt;Posted via web&lt;/a&gt;   from &lt;a href="http://jppommet.posterous.com/multi-safari-2" target="_blank"&gt;Jean-Pierre Pommet&amp;#8217;s Blog&lt;/a&gt; | &lt;a href="http://jppommet.posterous.com/multi-safari-2#comment" target="_blank"&gt;&lt;span style="font-size: 11px"&gt;Comment&amp;#160;»&lt;/span&gt;&lt;/a&gt;  &lt;/p&gt;  &lt;/div&gt;</description><link>http://jppommet.tumblr.com/post/595837781</link><guid>http://jppommet.tumblr.com/post/595837781</guid><pubDate>Thu, 13 May 2010 21:00:11 +0200</pubDate><category>macosx</category><category>safari</category><category>versions</category></item><item><title>Eliot's Ramblings / Streaming Twitter into MongoDB</title><description>&lt;div class="posterous_autopost"&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;blockquote&gt;&lt;div&gt;  			&lt;p&gt;curl &lt;a href="http://stream.twitter.com/1/statuses/sample.json" target="_blank"&gt;&lt;a href="http://stream.twitter.com/1/statuses/sample.json" target="_blank"&gt;http://stream.twitter.com/1/statuses/sample.json&lt;/a&gt;&lt;/a&gt; -u: | mongoimport -c twitter_live&lt;/p&gt;  &lt;p&gt;One thing that you can do with mongo is have 1 streaming master and 1 read/write master&lt;/p&gt;  &lt;p&gt;server A:&lt;/p&gt;  &lt;p&gt;./mongod —master —dbpath /tmp/a&lt;/p&gt;  &lt;p&gt;server B&lt;/p&gt;  &lt;p&gt;./mongod —dbpath /tmp/b —master —slave —source localhost:27017 —port 9999&lt;/p&gt;  &lt;p&gt;You can then pipe the stream into server a, and it will only process the live stream.&lt;/p&gt;  &lt;p&gt;Server B will replicate all changes.  You can also write to it, query on it, etc…  This way you can do operations that block writing on server B, but server A will never backlog.&lt;/p&gt;  			&lt;/div&gt;&lt;/blockquote&gt;    &lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://eliothorowitz.com/post/459890033/streaming-twitter-into-mongodb" target="_blank"&gt;eliothorowitz.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;A super good tip with MongoDB&amp;#160;!!! :D&lt;/p&gt;&lt;/div&gt;      &lt;p style="font-size: 10px;"&gt;  &lt;a href="http://posterous.com" target="_blank"&gt;Posted via web&lt;/a&gt;   from &lt;a href="http://jppommet.posterous.com/eliots-ramblings-streaming-twitter-into-mongo" target="_blank"&gt;Jean-Pierre Pommet&amp;#8217;s Blog&lt;/a&gt; | &lt;a href="http://jppommet.posterous.com/eliots-ramblings-streaming-twitter-into-mongo#comment" target="_blank"&gt;&lt;span style="font-size: 11px"&gt;Comment&amp;#160;»&lt;/span&gt;&lt;/a&gt;  &lt;/p&gt;  &lt;/div&gt;</description><link>http://jppommet.tumblr.com/post/526132996</link><guid>http://jppommet.tumblr.com/post/526132996</guid><pubDate>Fri, 16 Apr 2010 19:04:20 +0200</pubDate><category>mongodb replication twitter</category></item><item><title>Nothing Insightful: Introducing "Aristo", A jQuery UI Theme</title><description>&lt;a href="http://taitems.tumblr.com/post/482577430/introducing-aristo-a-jquery-ui-theme"&gt;Nothing Insightful: Introducing "Aristo", A jQuery UI Theme&lt;/a&gt;: &lt;blockquote&gt;
&lt;p&gt;&lt;a target="_blank" href="http://www.warfuric.com/taitems/aristo-demo.html"&gt;&lt;img src="http://media.tumblr.com/tumblr_kzzl2b9a6x1qawqhu.jpg"/&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;For those that arn’t familiar with &lt;a href="http://jqueryui.com/" target="_blank"&gt;jQuery UI&lt;/a&gt;, it’s essentially a collection of jQuery plugins that try to do for user interaction what &lt;a target="_blank" href="http://www.jquery.com"&gt;jQuery&lt;/a&gt; did for JavaScript. Like it’s parent library, jQuery UI does its very best to remain cross browser compliant. It is easy to implement. It is &lt;em&gt;…&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;</description><link>http://jppommet.tumblr.com/post/482837479</link><guid>http://jppommet.tumblr.com/post/482837479</guid><pubDate>Tue, 30 Mar 2010 02:19:27 +0200</pubDate></item><item><title>Beautiful Motion Graphics Created With Programming: Showcase, Tools and Tutorials - Smashing Magazine</title><description>&lt;div class="posterous_autopost"&gt;&lt;div class="posterous_bookmarklet_entry"&gt; &lt;img src="http://posterous.com/getfile/files.posterous.com/jppommet/knwBofGsqiDCwdwJuyADwlIDphqhqfforuHvFFivDtEBBieiHGfrexspggFb/media_httpmediasmashi_twqmx.png.scaled500.png" width="492" height="230"/&gt;&lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://www.smashingmagazine.com/2010/02/06/beautiful-motion-graphics-created-with-programming-showcase-tools-and-tutorials/" target="_blank"&gt;smashingmagazine.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;A really good article from smashingmagazine which provides informations about how to create fantastic graphic animations with free programming tools&lt;/p&gt;&lt;/div&gt;      &lt;p style="font-size: 10px;"&gt;  &lt;a href="http://posterous.com" target="_blank"&gt;Posted via web&lt;/a&gt;   from &lt;a href="http://jppommet.posterous.com/beautiful-motion-graphics-created-with-progra-2" target="_blank"&gt;jppommet&amp;#8217;s posterous&lt;/a&gt; | &lt;a href="http://jppommet.posterous.com/beautiful-motion-graphics-created-with-progra-2#comment" target="_blank"&gt;&lt;span style="font-size: 11px"&gt;Comment&amp;#160;»&lt;/span&gt;&lt;/a&gt;  &lt;/p&gt;  &lt;/div&gt;</description><link>http://jppommet.tumblr.com/post/384563207</link><guid>http://jppommet.tumblr.com/post/384563207</guid><pubDate>Fri, 12 Feb 2010 01:24:56 +0100</pubDate><category>animation</category><category>graphics</category><category>motion</category><category>processing</category><category>tools</category><category>tutorial</category></item><item><title>Encrypting Passwords with PHP for Storage Using the RSA PBKDF2 Standard</title><description>via &lt;a href="http://www.itnewb.com/v/Encrypting-Passwords-with-PHP-for-Storage-Using-the-RSA-PBKDF2-Standard" target="_blank"&gt;itnewb.com&lt;/a&gt;
&lt;p&gt;A good and straight forward article that provides a solution to hash password in PHP.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://posterous.com" target="_blank"&gt;Posted via web&lt;/a&gt; from &lt;a href="http://jppommet.posterous.com/encrypting-passwords-with-php-for-storage-usi" target="_blank"&gt;jppommet&amp;#8217;s posterous&lt;/a&gt; | &lt;a href="http://jppommet.posterous.com/encrypting-passwords-with-php-for-storage-usi#comment" target="_blank"&gt;Comment&amp;#160;»&lt;/a&gt;&lt;/p&gt;</description><link>http://jppommet.tumblr.com/post/317078186</link><guid>http://jppommet.tumblr.com/post/317078186</guid><pubDate>Tue, 05 Jan 2010 01:24:00 +0100</pubDate><category>encrypt</category><category>hash</category><category>password</category><category>pbkdf2</category><category>php</category><category>rfc2898</category><category>storage</category></item><item><title>danhacker:

New ‘Mass Effect 2’ box art


The game i am waiting...</title><description>&lt;img src="http://24.media.tumblr.com/tumblr_ktacnoCcxD1qz8qfno1_500.jpg"/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&lt;a href="http://danhacker.tumblr.com/post/247992629/new-mass-effect-2-box-art" target="_blank"&gt;danhacker&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;New ‘Mass Effect 2’ box art&lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;br/&gt;&lt;/b&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The game i am waiting for month !! I can’t wait to play this game :)&lt;/p&gt;</description><link>http://jppommet.tumblr.com/post/248618458</link><guid>http://jppommet.tumblr.com/post/248618458</guid><pubDate>Wed, 18 Nov 2009 18:26:12 +0100</pubDate></item><item><title>Fast Updates with MongoDB (update-in-place)</title><description>&lt;p&gt;&lt;a href="http://blog.mongodb.org/post/248614779/fast-updates-with-mongodb-update-in-place" target="_blank"&gt;mongodb&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;One nice feature with MongoDB is that updates can happen “in place” — the database does not have to allocate and write a full new copy of the object.&lt;/p&gt;
&lt;p&gt;This can be highly performant for frequent update use cases.  For example, incrementing a counter is a highly efficient operation.  We need not fetch the document from the server, we can simply send an increment operation over:&lt;/p&gt;
&lt;pre&gt;db.my_collection.update( { _id : ... }, { $inc : { y : 2 } } ); // increment y by 2&lt;/pre&gt;
&lt;p&gt;MongoDB disk writes are lazy.  If we receive 1,000 increments in one second for the object, it will only be written once.  Physical writes occur a couple of seconds after the operation.&lt;/p&gt;
&lt;p&gt;One question is what happens when an object grows.  If the object fits in its previous allocation space, it will update in place.  If it does not, it will be moved to a new location in the datafile, and its index keys must be updated, which is slower.  Because of this, Mongo uses an adaptive algorithm to try to minimize moves on an update.  The database computes a padding factor for each collection based on how often items grow and move.  The more often the objects grow, the larger the padding factor will be; when less frequent, smaller.&lt;/p&gt;
&lt;p&gt;See also:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.mongodb.org/display/DOCS/Updating" target="_blank"&gt;&lt;a href="http://www.mongodb.org/display/DOCS/Updating" target="_blank"&gt;http://www.mongodb.org/display/DOCS/Updating&lt;/a&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blog.mongodb.org/post/171353301/using-mongodb-for-real-time-analytics" target="_blank"&gt;&lt;a href="http://blog.mongodb.org/post/171353301/using-mongodb-for-real-time-analytics" target="_blank"&gt;http://blog.mongodb.org/post/171353301/using-mongodb-for-real-time-analytics&lt;/a&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;</description><link>http://jppommet.tumblr.com/post/248617884</link><guid>http://jppommet.tumblr.com/post/248617884</guid><pubDate>Wed, 18 Nov 2009 18:25:24 +0100</pubDate></item><item><title>bastienlabelle:

soxiam:

Make a better FM (via cvander)

</title><description>&lt;img src="http://25.media.tumblr.com/tumblr_kt2eynYSP91qz4axuo1_500.jpg"/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;&lt;a href="http://bastienlabelle.tumblr.com/post/244235004" target="_blank"&gt;bastienlabelle&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;a href="http://soxiam.com/post/242863700/make-a-better-fm-via-cvander" target="_blank"&gt;soxiam&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Make a better FM (via &lt;a href="http://flickr.com/photos/cvander" target="_blank"&gt;cvander&lt;/a&gt;)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;/blockquote&gt;</description><link>http://jppommet.tumblr.com/post/244573055</link><guid>http://jppommet.tumblr.com/post/244573055</guid><pubDate>Sun, 15 Nov 2009 09:04:29 +0100</pubDate></item><item><title>From Webfaction : A little holiday present: 10,000 reqs/sec with Nginx!</title><description>&lt;div class="posterous_bookmarklet_entry"&gt; &lt;blockquote&gt;&lt;div&gt;    &lt;h3&gt;&lt;b&gt;&lt;a href="#" target="_blank"&gt;A little holiday present: 10,000 reqs/sec with Nginx!&lt;/a&gt;&lt;/b&gt;&lt;/h3&gt;    &lt;p&gt;    Updated Dec 19 at 05:15 CDT (first posted Dec 18 at 06:01 CDT)    by Remi  in &lt;a href="http://blog.webfaction.com/tag/general" target="_blank"&gt;General&lt;/a&gt;   - 11 comment(s)  &lt;/p&gt;    &lt;p&gt;A few weeks ago we quietly started to configure our new machines with Nginx as the front web server instead of Apache (we still run Apache behind Nginx for people who need all the features from Apache).&lt;/p&gt;  &lt;p&gt;Here is a little benchmark that I did to compare Nginx versus Apache (with the worker-MPM) for serving a small static file:&lt;/p&gt;  &lt;p&gt;&lt;img src="http://www.webfaction.com/blog/nginx-apache-reqs-sec.png" height="239" alt="Nginx and Apache requests per second" width="500"/&gt;&lt;/p&gt;  &lt;p&gt;This benchmark is not representative of a real-world application because in my benchmark the web servers were only serving a small static file from localhost (in real life your files would get served to remote machines and some of your requests would be dynamic) but the results are impressive nonetheless. Both servers are capable of serving a huge number of requests per second, but Apache&amp;#8217;s performance start decreasing as you add more concurrent connections whereas Nginx&amp;#8217;s performance almost doesn&amp;#8217;t drop!&lt;/p&gt;  &lt;p&gt;But here comes the best bit: because Nginx is event-based it doesn&amp;#8217;t need to spawn new processes or threads for each request, so its memory usage is very low. Throughout my benchmark it just sat at 2.5MB of memory while Apache was using a lot more:&lt;/p&gt;  &lt;p&gt;&lt;img src="http://www.webfaction.com/blog/nginx-apache-memory.png" height="244" alt="Nginx and Apache memory usage" width="500"/&gt;&lt;/p&gt;  &lt;p&gt;To take advantage of the lightning speed of Nginx we have added two new types of applications to our control panel: the &lt;i&gt;&amp;#8220;static only&amp;#8221;&lt;/i&gt; app and the &lt;i&gt;&amp;#8220;symlink to static-only&amp;#8221;&lt;/i&gt; app. They just work like a normal &lt;i&gt;&amp;#8220;static/cgi/php&amp;#8221;&lt;/i&gt; and &lt;i&gt;&amp;#8220;symlink to static/cgi/php&amp;#8221;&lt;/i&gt; app, except that they can only serve purely static content (no .htaccess support) and they are served directly by the front Nginx server.&lt;/p&gt;  &lt;p&gt;Even if your site is not static you can still serve all your static data (CSS, javascript, images, &amp;#8230;) directly from Nginx and enjoy the speed gain.&lt;/p&gt;  &lt;p&gt;Nginx is only available on Web57 and over. If you&amp;#8217;re on an older server and would like to use Nginx open a ticket and we&amp;#8217;ll give you an extra plan on a new Nginx server and a free week to transfer your data.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Nginx FTW!&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;  [Updated December 19th, 2008 to clarify the fact that we still run Apache behind Nginx for people who need all the Apache features]&lt;/p&gt;      &lt;h3&gt;11 comments:&lt;/h3&gt;  &lt;p&gt;        &lt;/p&gt;&lt;div&gt;    &lt;i&gt;Super Frank said on 2008-12-18&amp;#160;10:28:05:&lt;/i&gt;    &lt;/div&gt;  Awesome! You guys just keep getting better and better!  &lt;p&gt;      &lt;br/&gt;&lt;/p&gt;&lt;div&gt;    &lt;i&gt;Andrew Bates said on 2008-12-18&amp;#160;18:23:04:&lt;/i&gt;    &lt;/div&gt;  Nginx sounds pretty cool. Now I just need to make my app as fast as Nginx&amp;#8230;  &lt;p&gt;      &lt;br/&gt;&lt;/p&gt;&lt;div&gt;    &lt;i&gt;Michael Warkentin said on 2008-12-25&amp;#160;00:29:20:&lt;/i&gt;    &lt;/div&gt;  Nice!  Thought that the static-only apps were new..   &lt;p&gt;      &lt;br/&gt;&lt;/p&gt;&lt;div&gt;    &lt;i&gt;glebk said on 2009-01-13&amp;#160;20:39:52:&lt;/i&gt;    &lt;/div&gt;  That&amp;#8217;s a good beginning.&lt;br/&gt;Btw, have you thought of using lighttpd instead of apache for a Django platform? it can save lots of resources  &lt;p&gt;      &lt;br/&gt;&lt;/p&gt;&lt;div&gt;    &lt;i&gt;Sean said on 2009-01-14&amp;#160;11:53:46:&lt;/i&gt;    &lt;/div&gt;  @glebk - if enough users ask for a Django+lighttpd installer, we&amp;#8217;ll certainly provide one. Until then if anyone wants to run that, they&amp;#8217;re free to run it as a custom app :)  &lt;p&gt;      &lt;br/&gt;&lt;/p&gt;&lt;div&gt;    &lt;i&gt;Jim said on 2009-01-28&amp;#160;22:21:15:&lt;/i&gt;    &lt;/div&gt;  your upgrade brought down my site, ugh  &lt;p&gt;      &lt;br/&gt;&lt;/p&gt;&lt;div&gt;    &lt;i&gt;Sean said on 2009-01-29&amp;#160;08:14:59:&lt;/i&gt;    &lt;/div&gt;  @Jim - Really? That should not have happened. If you&amp;#8217;re having a problem with your site, please log in to the control panel and open a support ticket, we&amp;#8217;ll be happy to take a look.  &lt;p&gt;      &lt;br/&gt;&lt;/p&gt;&lt;div&gt;    &lt;i&gt;Brent said on 2009-02-03&amp;#160;18:23:44:&lt;/i&gt;    &lt;/div&gt;  Is nginx running on top of apache?  or the other way around?  Do any of the apache processes run slower because of this?&lt;p&gt;From your benchmarks it looks awesome.&lt;/p&gt;&lt;p&gt;b r e n t  &lt;/p&gt;&lt;p&gt;      &lt;br/&gt;&lt;/p&gt;&lt;div&gt;    &lt;i&gt;Sean said on 2009-02-04&amp;#160;14:30:39:&lt;/i&gt;    &lt;/div&gt;  @Brent - Apache runs behind nginx. It ran behind another Apache before this change, so there&amp;#8217;s really no difference in the backend Apache&amp;#8217;s performance.  &lt;p&gt;      &lt;br/&gt;&lt;/p&gt;&lt;div&gt;    &lt;i&gt;chusty said on 2009-05-18&amp;#160;09:13:31:&lt;/i&gt;    &lt;/div&gt;  I&amp;#8217;m using nginx for quite a long time now &amp;#8230; and I&amp;#8217;m really happy because of that :).  &lt;p&gt;      &lt;br/&gt;&lt;/p&gt;&lt;div&gt;    &lt;a name="last_comment"&gt;  &lt;i&gt;Bison said on 2009-06-18&amp;#160;05:14:49:&lt;/i&gt;  &lt;/a&gt;    &lt;/div&gt;  Wow, I missed that. I was waiting for this.&lt;br/&gt;I might just switch to one of these servers after my holiday.&lt;br/&gt;The next step would be lighttpd and varnish.&lt;p&gt;Great work!  &lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;h3&gt;&lt;a name="comment"&gt;Leave a new comment:&lt;/a&gt;&lt;/h3&gt;  (Note: comments may be moderated)&lt;/div&gt;&lt;/blockquote&gt;&lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://blog.webfaction.com/a-little-holiday-present" target="_blank"&gt;blog.webfaction.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;A very good benchmark indeed but i am wondering about nginx&amp;#8217;s cpu resource consumption. Does anyone have an idea&amp;#160;?&lt;/p&gt;&lt;/div&gt;      &lt;p style="font-size: 10px;"&gt;  &lt;a href="http://posterous.com" target="_blank"&gt;Posted via web&lt;/a&gt;   from &lt;a href="http://jppommet.posterous.com/from-webfaction-a-little-holiday-present-1000" target="_blank"&gt;jppommet&amp;#8217;s posterous&lt;/a&gt; | &lt;a href="http://jppommet.posterous.com/from-webfaction-a-little-holiday-present-1000#comment" target="_blank"&gt;&lt;span style="font-size: 11px"&gt;Comment&amp;#160;»&lt;/span&gt;&lt;/a&gt;  &lt;/p&gt;</description><link>http://jppommet.tumblr.com/post/242752117</link><guid>http://jppommet.tumblr.com/post/242752117</guid><pubDate>Fri, 13 Nov 2009 19:10:48 +0100</pubDate></item><item><title>"My decision to stop iPhone development has had everything to do with Apple’s policies. I respect..."</title><description>“My decision to stop iPhone development has had everything to do with Apple’s policies. I respect their right to manage their platform however they want, however I am philosophically opposed to the existence of their review process. I am very concerned that they are setting a horrible precedent for other software platforms, and soon gatekeepers will start infesting the lives of every software developer.”&lt;br/&gt;&lt;br/&gt; - &lt;em&gt;&lt;a href="http://www.techcrunch.com/2009/11/11/joe-hewitt-developer-of-facebooks-massively-popular-iphone-app-quits-the-project/" target="_blank"&gt;Joe Hewitt&lt;/a&gt; (via &lt;a href="http://mathieuthouvenin.tumblr.com/" target="_blank"&gt;mathieuthouvenin&lt;/a&gt;)&lt;/em&gt;</description><link>http://jppommet.tumblr.com/post/241320523</link><guid>http://jppommet.tumblr.com/post/241320523</guid><pubDate>Thu, 12 Nov 2009 10:20:00 +0100</pubDate><category>joehewitt</category><category>iphone</category><category>dev</category><category>facebook</category></item><item><title>Brett Domino: Hip-Hop Medley - Stylophone Beatbox</title><description>&lt;div class="posterous_bookmarklet_entry"&gt; &lt;object height="417" width="500"&gt;&lt;param name="movie" value="http://www.youtube.com/v/hELTtsBRie4&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="wmode" value="window"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed allowfullscreen="true" type="application/x-shockwave-flash" src="http://www.youtube.com/v/hELTtsBRie4&amp;amp;hl=en&amp;amp;fs=1" allowscriptaccess="always" height="417" wmode="window" width="500"&gt;&lt;/embed&gt;&lt;/object&gt;    &lt;div class="posterous_quote_citation"&gt;via &lt;a href="http://www.youtube.com/watch?v=hELTtsBRie4" target="_blank"&gt;youtube.com&lt;/a&gt;&lt;/div&gt; &lt;p&gt;They are amazing&amp;#160;!! :D&lt;/p&gt;&lt;/div&gt;      &lt;p style="font-size: 10px;"&gt;  &lt;a href="http://posterous.com" target="_blank"&gt;Posted via web&lt;/a&gt;   from &lt;a href="http://jppommet.posterous.com/brett-domino-hip-hop-medley-stylophone-beatbo-9" target="_blank"&gt;jppommet&amp;#8217;s posterous&lt;/a&gt; | &lt;a href="http://jppommet.posterous.com/brett-domino-hip-hop-medley-stylophone-beatbo-9#comment" target="_blank"&gt;&lt;span style="font-size: 11px"&gt;Comment&amp;#160;»&lt;/span&gt;&lt;/a&gt;  &lt;/p&gt;</description><link>http://jppommet.tumblr.com/post/225309777</link><guid>http://jppommet.tumblr.com/post/225309777</guid><pubDate>Wed, 28 Oct 2009 00:31:35 +0100</pubDate></item><item><title>Let’s make the web faster !</title><description>&lt;iframe width="400" height="236" src="http://www.youtube.com/embed/IWWBnJEsUtU?wmode=transparent&amp;autohide=1&amp;egm=0&amp;hd=1&amp;iv_load_policy=3&amp;modestbranding=1&amp;rel=0&amp;showinfo=0&amp;showsearch=0" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;&lt;br/&gt;&lt;br/&gt;&lt;p&gt;Let’s make the web faster !&lt;/p&gt;</description><link>http://jppommet.tumblr.com/post/129531886</link><guid>http://jppommet.tumblr.com/post/129531886</guid><pubDate>Wed, 24 Jun 2009 21:53:10 +0200</pubDate></item></channel></rss>
