<?xml version="1.0" encoding="UTF-8"?> <rss
version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
> <channel><title>False Positives</title> <atom:link href="http://www.falsepositives.com/index.php/feed/" rel="self" type="application/rss+xml" /><link>http://www.falsepositives.com</link> <description>Ian Irving&#039;s Code and Culture from Toronto</description> <lastBuildDate>Mon, 14 May 2012 14:53:14 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <cloud
domain='www.falsepositives.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' /> <item><title>Kwai Lan Tam, 1916 &#8211; 2012</title><link>http://www.falsepositives.com/index.php/2012/04/25/kwai-lan-tam-1916-2012/</link> <comments>http://www.falsepositives.com/index.php/2012/04/25/kwai-lan-tam-1916-2012/#comments</comments> <pubDate>Thu, 26 Apr 2012 03:35:50 +0000</pubDate> <dc:creator>Ian</dc:creator> <category><![CDATA[Life]]></category> <guid
isPermaLink="false">http://www.falsepositives.com/?p=3068</guid> <description><![CDATA[Mother, grandmother, and great grandmother, Kwai Lan Tam passed away peacefully surrounded by family on April 24th 2012 at the venerable age of 96. She was very much loved by her children and their partners : Gallan (Lynda), Stella, Denise (John), Elicia (Ian) and Tam (Ted); grandchildren and their partners: Carolyn (Cliff), Jeffery (Nicole), Jeananne<p><a
href="http://www.falsepositives.com/index.php/2012/04/25/kwai-lan-tam-1916-2012/">Read more <span
class="more-meta-nav">&#187;</span></a></p><p>Post from: <a
href="http://www.falsepositives.com">False Positives</a><br/><br/><a
href="http://www.falsepositives.com/index.php/2012/04/25/kwai-lan-tam-1916-2012/">Kwai Lan Tam, 1916 &#8211; 2012</a></p> ]]></description> <content:encoded><![CDATA[<p><a
href="http://www.falsepositives.com/wp-content/uploads/2012/04/Myee-on-Trip.png" rel="lightbox"><img
class="alignleft size-medium wp-image-3071" title="Myee on Trip" src="http://www.falsepositives.com/wp-content/uploads/2012/04/Myee-on-Trip-300x233.png" alt="" width="300" height="233" /></a></p><p>Mother, grandmother, and great grandmother, Kwai Lan Tam passed away peacefully surrounded by family on April 24th 2012 at the venerable age of 96.</p><p>She was very much loved by her children and their partners : Gallan (Lynda), Stella, Denise (John), Elicia (Ian) and Tam (Ted); grandchildren and their partners: Carolyn (Cliff), Jeffery (Nicole), Jeananne (Scott), Jaclyn, Joyce (Rob), Jason (Amber) and Jonathan ; as well as wonderful great grandchildren Ella, Cohen and Bruno.</p><p>Born 1916 in Hong Kong, she immigrated with her husband Chung Lok in 1977 to join their children in Canada where they made Toronto&#8217;s Kensington Market their home.</p><p><img
class="size-medium wp-image-3072 alignright" title="with Her Grand Childern" src="http://www.falsepositives.com/wp-content/uploads/2012/04/photo-300x199.jpg" alt="" width="300" height="199" /></p><p>With a deep love for learning, she did everything she could to make sure her children were educated under the most difficult circumstances in Hong Kong. (Her granddaughter, Carolyn Ji Jong Goossen, a writer with New America Media, interviewed her for the article : <a
href="http://news.newamericamedia.org/news/view_article.html?article_id=0130e713b04e532dc44c6c40c3949064">Celebrating Lunar New Year and Long Life.</a>)</p><p>After moving to Toronto, as a loving grandmother she helped raise her grandchildren. Kwai Lan was also a long time active participant and volunteer with the <a
href="http://www.ststephenshouse.com/">St Stephen’s Community House</a> Senior program and a keen student of ESL and Tai Chi classes.</p><p><img
class="size-medium wp-image-3073 alignleft" title="MyYee and Greats" src="http://www.falsepositives.com/wp-content/uploads/2012/04/MyYee-and-Greats-300x196.png" alt="" width="300" height="196" /></p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>I have been greatly honoured to have her as my Mother-in-Law.</p><p>&nbsp;</p><p>&nbsp;</p><p>UPDATE : The memorial was beautiful. It felt like a real celebration of her life.</p><p>&nbsp;</p><p>Below are some of the comments from the visitation page :</p><p>&nbsp;</p><hr
/><p>Medi and Manny Herrera (Friend)<br
/> Entered 04/29/2012 from USA<br
/> Dearest Elicia and Ian,</p><p>Our thoughts are with you and your family.</p><p>Love and prayers from the Herreras always.</p><p>&nbsp;</p><hr
/><p>Ashley McFarlane (Other)<br
/> Entered 04/29/2012 from Toronto<br
/> Dear Tam and Family,</p><p>I would like to offer my condolences during this time. I never met your mother, but I&#8217;m sure I met her through you. She has raised a marvellous women and mentor to me. My thoughts and wishes are with go out to you and yours.</p><hr
/><p>Ashley<br
/> Miu Lin (Friend)<br
/> Entered 04/28/2012 from Toronto<br
/> Dear Tam&#8217;s family,<br
/> I had the honor to know Auntie Tam when I arrived in Toronto 18 years ago.  Her forceful and clear voice as well as her sharp mind always impressed me.  My mom Sally admired Auntie Tam&#8217;s intelligence and reading abilities and said, &#8220;I wish I could read newspaper like her!&#8221; Auntie Tam had possessed wisdom in reading people&#8217;s mind and their heart and would not be shy in sharing her opinions.  I believe her wealth of wisdom, assertiveness and strong will had inspired excellence and dedication to everyone around her.  She lived an enjoyable long life and successfully brought up a big family with great grandchildren.  What a great blessing! You will be missed Auntie Tam!</p><p>&nbsp;</p><hr
/><p>Wendy Leung (Friend)<br
/> Entered 04/27/2012<br
/> I knew Tam for 5 years. she is our day program participant. Her cheerful smiles, her active participation and involvement in our program, her stories about raising up her children, her strong view on &#8220;knowledge is the king&#8221; and more &#8230; all are very impressive and inspirating. at her later stage, i truthly understand why she is so proud of her children.</p><p>&nbsp;</p><hr
/><p>Carol Wolkove (Friend)<br
/> Entered 04/27/2012<br
/> Dear Gallan Lynda and family</p><p>May her memory be for a blessing, (as we say in Hebrew).</p><p>I send you my condolences on your loss.</p><hr
/><p>Carol</p><p>&nbsp;</p><p>Rose &amp; Louis Ma (Friend)<br
/> Entered 04/26/2012 from Charlotte, NC USA<br
/> Dear Tammy and Tam family,</p><p>We&#8217;re sadden to hear that Ah-yee is gone.  Her sweet smile and kind voice will remain in our heart for ever.  It is comforting to know that she left in peace and was surrounded by love ones.</p><p>Our deepest condolences to you all.</p><p>Love,<br
/> Rose &amp; Louis</p><hr
/><p>&nbsp;</p><p>Jenny Poon (Other)<br
/> Entered 04/26/2012 from Toronto<br
/> Tam is an active Adult Day Service member &amp; positive life attitude will be missed.  With deepest sympathy to Tam&#8217;s Family.          Jenny Poon</p><hr
/><p>&nbsp;</p><p>Suyin Sancho (Friend)<br
/> Entered 04/26/2012 from New York City<br
/> Dearest Elicia,</p><p>I was so sorry to hear from Medi about your mother&#8217;s passing.  I know you were devoted to her.  You and your family are in the Sancho sisters&#8217; thoughts and prayers.</p><p>With deepest sympathy,</p><p>Suyin</p><hr
/><p>&nbsp;</p><p>David Cheng (Other)<br
/> Entered 04/26/2012 from Toronto, ON.<br
/> Her smile&#8230;.. will be missed. Tam will be in my memory forever.<br
/> Blessings,<br
/> David Cheng, Senior Services Worker at St. Stephen&#8217;s</p><hr
/><p>&nbsp;</p><p>Irene Tsang (Friend)<br
/> Entered 04/26/2012 from Toronto<br
/> Tam will be missed by our staff and seniors at St. Stephen&#8217;s Community House.  She was known to us as &#8220;Scholar Tam&#8221; because she was always knowledgeable about the news and sharing her views of life and politics.   Our warmest thoughts are with the family.</p><hr
/><p>&nbsp;</p><p>Maria Serrano (Friend)<br
/> Entered 04/26/2012 from Toronto<br
/> May your memories bring you comfort at this difficult time.  My thoughts are with the family.<br
/> Maria Serrano</p><hr
/><p>&nbsp;</p><p>Anshula (Friend)<br
/> Entered 04/26/2012<br
/> Dear Tam, I am thinking of you knowing how much you loved your mother, and how much you will miss her now. My thoughts and prayers are with your mum, yourself and your family. Please take care.<br
/> With Best Regards,<br
/> Anshula</p><hr
/><p>&nbsp;</p><p>Maria Sancho (Friend)<br
/> Entered 04/26/2012<br
/> Dear Elicia,<br
/> With sympathy and love, in behalf of the Sancho family (Medi, Suyin, Rubi, Nen), I would like you to know that you are very much in our thoughts and prayers.<br
/> Love,<br
/> Beng</p><hr
/><div
class="plus-one-wrap"><g:plusone href="http://www.falsepositives.com/index.php/2012/04/25/kwai-lan-tam-1916-2012/"></g:plusone></div><p>Post from: <a
href="http://www.falsepositives.com">False Positives</a><br/><br/><a
href="http://www.falsepositives.com/index.php/2012/04/25/kwai-lan-tam-1916-2012/">Kwai Lan Tam, 1916 &#8211; 2012</a></p> ]]></content:encoded> <wfw:commentRss>http://www.falsepositives.com/index.php/2012/04/25/kwai-lan-tam-1916-2012/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Twendr and Twitter Trends – Now in 41 more Locations for 152 places</title><link>http://www.falsepositives.com/index.php/2012/03/23/twendr-and-twitter-trends-now-in-41-more-locations-for-152-places/</link> <comments>http://www.falsepositives.com/index.php/2012/03/23/twendr-and-twitter-trends-now-in-41-more-locations-for-152-places/#comments</comments> <pubDate>Fri, 23 Mar 2012 23:42:33 +0000</pubDate> <dc:creator>Ian</dc:creator> <category><![CDATA[Social Networking]]></category> <category><![CDATA[Web]]></category> <guid
isPermaLink="false">http://www.falsepositives.com/?p=3058</guid> <description><![CDATA[Twitter has just rolled out (very quietly this month) new trend locations for a total of 152, up from the previous 111. That&#8217;s the &#8220;World&#8221;, 34 Countries and 117 Cities! This is all up on the Twendr Global Trend Dashboard, a big change from a year and a half ago and 11 locations! There are<p><a
href="http://www.falsepositives.com/index.php/2012/03/23/twendr-and-twitter-trends-now-in-41-more-locations-for-152-places/">Read more <span
class="more-meta-nav">&#187;</span></a></p><p>Post from: <a
href="http://www.falsepositives.com">False Positives</a><br/><br/><a
href="http://www.falsepositives.com/index.php/2012/03/23/twendr-and-twitter-trends-now-in-41-more-locations-for-152-places/">Twendr and Twitter Trends – Now in 41 more Locations for 152 places</a></p> ]]></description> <content:encoded><![CDATA[<p>Twitter has just rolled out (very quietly this month) new trend locations for a total of 152, up from the previous 111.  That&#8217;s the &#8220;World&#8221;, 34 Countries and 117 Cities!  This is all up on the <a
href="http://twendr.com">Twendr Global Trend Dashboard</a>, a big change from a year and a half ago and 11 locations!</p><p>There are 3 new countries are Pakistan, Guatemala and Russia ( with the cities of Saint Petersburg, Moscow, and Novosibirsk)</p><p>In Japan, Tokyo has been joined by Takamatsu, Okinawa, Fukuoka, Sendai, Kyoto, Sapporo, Nagoya, Osaka, for a total of 9 cities.</p><p>and India went from just Mumbai to include 5 more cities: Delhi, Bangalore, Hyderabad, Ahmedabad, Chennai</p><p>Brazil went from 2 to 4 cities  : Manaus, Brasília, Fortaleza, Salvador</p><p>and Indonesia went from 2 to 4 cities with Bandung and Jakarta joined by Surabaya and Bekasi</p><p>France now has 3 cities : Lyon, Marseille, Paris</p><p>as does Germany : Munich, Hamburg, Berlin</p><p>and Netherlands in : Rotterdam, Den Haag, Amsterdam</p><p>in Venezuela we have the cities of Barquisimeto, Maracaibo, Valencia joining Caracas</p><p>Spain includes Barcelona and Madrid</p><p>the Philippines now has Manila and Quezon City</p><p>for Turkey we have the 3 cities of Istanbul, Ankara, and Izmir</p><p>Sweden now has Stockholm</p><p>Mexico now has Monterrey joining Mexico City</p><p>in Malaysia we have Kuala Lumpur and Klang</p><p>in Nigeria we have Lagos</p><p>Ireland has Dublin</p><p>and in South Africa we have Johannesburg</p><p>You can see all the glory on <a
href="http://twendr.com">Twendr.com</a>.</p><p>This is a cross post from the <a
href="https://twendr.wordpress.com/2012/03/23/twendr-and-twitter-trends-now-in-41-more-locations-for-152-places/">Twendr Blog</a></p><div
class="plus-one-wrap"><g:plusone href="http://www.falsepositives.com/index.php/2012/03/23/twendr-and-twitter-trends-now-in-41-more-locations-for-152-places/"></g:plusone></div><p>Post from: <a
href="http://www.falsepositives.com">False Positives</a><br/><br/><a
href="http://www.falsepositives.com/index.php/2012/03/23/twendr-and-twitter-trends-now-in-41-more-locations-for-152-places/">Twendr and Twitter Trends – Now in 41 more Locations for 152 places</a></p> ]]></content:encoded> <wfw:commentRss>http://www.falsepositives.com/index.php/2012/03/23/twendr-and-twitter-trends-now-in-41-more-locations-for-152-places/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>The tripPad&#8482; arrives in Madrid</title><link>http://www.falsepositives.com/index.php/2012/03/09/the-trippad-arrives-in-madrids/</link> <comments>http://www.falsepositives.com/index.php/2012/03/09/the-trippad-arrives-in-madrids/#comments</comments> <pubDate>Sat, 10 Mar 2012 00:47:45 +0000</pubDate> <dc:creator>Ian</dc:creator> <category><![CDATA[Brain Farts]]></category> <category><![CDATA[Business]]></category> <category><![CDATA[travel]]></category> <guid
isPermaLink="false">http://www.falsepositives.com/?p=3041</guid> <description><![CDATA[Via TUAW comes news that Madrid&#8217;s visitors can rent tourist-friendly iPads from a business called Pad In The City, preloaded with a collection of Apps geared towards visitors to that Spanish city. Back in 2009, after traveling in Europe, I wrote on my ideas about using an iPod as a travel device and the what<p><a
href="http://www.falsepositives.com/index.php/2012/03/09/the-trippad-arrives-in-madrids/">Read more <span
class="more-meta-nav">&#187;</span></a></p><p>Post from: <a
href="http://www.falsepositives.com">False Positives</a><br/><br/><a
href="http://www.falsepositives.com/index.php/2012/03/09/the-trippad-arrives-in-madrids/">The tripPad&trade; arrives in Madrid</a></p> ]]></description> <content:encoded><![CDATA[<p>Via <a
href="http://www.tuaw.com/2012/03/08/madrids-visitors-can-rent-tourist-friendly-ipads/">TUAW</a> comes news that Madrid&#8217;s visitors can rent tourist-friendly iPads from a business called <a
href="http://padinthecity.com/">Pad In The City</a>, preloaded with a collection of Apps geared towards visitors to that Spanish city.</p><p>Back in 2009, after traveling in Europe, I wrote on my ideas about <a
href="http://www.falsepositives.com/index.php/2009/12/06/using-an-ipod-as-a-travel-device-and-the-what-could-be-aka-the-tpad/">using an iPod as a travel device and the what could be (aka the tripPad™)</a>.  (Note: this was several months before the 2010 iPad announcement.)</p><p>Now, I have heard of boutique Hotels giving guests a per-loaded iPhone for their guest, so this isn&#8217;t the first move in this direction.</p><p>So, I am pleased to see a steps towards my vision, with several caveats :</p><p>The 9&#8243; inch size of the current iPad is not pocket friendly, nor makes it easy to be taking out every 5 minuets to help with navigation, read up on a sight, or use in augmented reality mode.  Until Apple has a 7&#8243; version of the iPad, the iPod or an iPhone remains a better option.  Android devices in the 7&#8243; size are also a currently a very viable option.  My though was something the you could hang on a lanyard, around your neck.</p><p>The daily price is reasonable, but the deposit is steep (although understandable), and the fear of losing it &#8211; by accident or not &#8211; will be a disincentive.</p><p>I do understand why did go with the current iPad.  They use the version of the iPad that comes with 3G Data cellular connectivity, which is not an option on a iPod.  By sticking with the iOS platform, the most well know mobile operating system, they reduce training issues.</p><p>Pad In The City&#8217;s reservation system is a simpler way to get this in the hands of travelers, and easier to get started as a business.</p><p>Nonetheless, and despite my issues, this does look to be a nice test of this kind of device and business and a big step towards my LWR (lazy web request).  First Madrid, next Paris, London, New York and Tokyo. (and the World!)</p><div
class="plus-one-wrap"><g:plusone href="http://www.falsepositives.com/index.php/2012/03/09/the-trippad-arrives-in-madrids/"></g:plusone></div><p>Post from: <a
href="http://www.falsepositives.com">False Positives</a><br/><br/><a
href="http://www.falsepositives.com/index.php/2012/03/09/the-trippad-arrives-in-madrids/">The tripPad&trade; arrives in Madrid</a></p> ]]></content:encoded> <wfw:commentRss>http://www.falsepositives.com/index.php/2012/03/09/the-trippad-arrives-in-madrids/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Doing Conditional Comments for your Internet Explorer css fixes better, with HTML top tag classes</title><link>http://www.falsepositives.com/index.php/2012/03/05/conditional-html-tag-classes-for-your-internet-explorer-css-fixes/</link> <comments>http://www.falsepositives.com/index.php/2012/03/05/conditional-html-tag-classes-for-your-internet-explorer-css-fixes/#comments</comments> <pubDate>Mon, 05 Mar 2012 18:07:56 +0000</pubDate> <dc:creator>Ian</dc:creator> <category><![CDATA[Code]]></category> <category><![CDATA[css]]></category> <category><![CDATA[Ruby and Rails]]></category> <guid
isPermaLink="false">http://www.falsepositives.com/?p=3009</guid> <description><![CDATA[Now browser sniffing is basically a bad thing but there is still a need to fix / hack issues on older browsers, in particular Internet Explorer. Okay, almost entirely in Internet Explorer. IE6 may be -mostly- dead, but IE8 will be around for a long time given that there is no IE9 for WinXP. The<p><a
href="http://www.falsepositives.com/index.php/2012/03/05/conditional-html-tag-classes-for-your-internet-explorer-css-fixes/">Read more <span
class="more-meta-nav">&#187;</span></a></p><p>Post from: <a
href="http://www.falsepositives.com">False Positives</a><br/><br/><a
href="http://www.falsepositives.com/index.php/2012/03/05/conditional-html-tag-classes-for-your-internet-explorer-css-fixes/">Doing Conditional Comments for your Internet Explorer css fixes better, with HTML top tag classes</a></p> ]]></description> <content:encoded><![CDATA[<p><a
href="http://www.falsepositives.com/wp-content/uploads/2010/03/ie6_logo_small.jpg" rel="lightbox"><img
class="alignleft size-full wp-image-2467" title="ie6_logo_small" src="http://www.falsepositives.com/wp-content/uploads/2010/03/ie6_logo_small.jpg" alt="" width="119" height="128" /></a>Now browser sniffing is basically a bad thing but there is still a need to fix / hack issues on older browsers, in particular Internet Explorer. Okay, almost entirely in Internet Explorer. IE6 may be -mostly- dead, but IE8 will be around for a long time given that there is no IE9 for WinXP.</p><p>The &#8220;traditional way&#8221; to correct IE issues is using a conditional css style sheet (in the head section ) to load an additional style sheet after the default styles specific to that browser version and take advantage of the cascading part of Cascading Style Sheets (CSS) like so:</p><div
class="codecolorer-container html4strict default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table
cellspacing="0" cellpadding="0"><tbody><tr><td
style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br
/></div></td><td><div
class="html4strict codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span
style="color: #808080; font-style: italic;">&lt;!--[if lt IE 8]&gt; &nbsp; &nbsp; &nbsp; &lt;link rel=&quot;stylesheet&quot; href=&quot;/css/ie.css&quot; media=&quot;screen&quot; /&gt;&lt; ![endif]--&gt;</span></div></td></tr></tbody></table></div><p>The <a
href="http://www.quirksmode.org/css/condcom.html">conditional comments tag</a> is a proprietary IE tag, introduced in IE5, and only works in IE, and &#8220;are thus excellently suited to give special instructions meant only for IE&#8221;. (IE10 will not support this tag, because it will render perfect HTML5. No ,really.)</p><p>I have become aware of a slightly different way to do this via the new hotness of doing feature sniffing ( or Object Detection ) via <a
href="http://www.modernizr.com/">Modernizer</a>. Modernizer&#8217;s trick of loading (or over loading <img
src='http://www.falsepositives.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ) classes on the tag can be used not only be used for its JavaScript-driven feature detection for html5, but also for creating a top-level class that apply styling to that an individual page or type of page. For a more general description see <a
href="http://css-tricks.com/why-use-classes-or-ids-on-the-html-element/">Why use Classes or IDs on the HTML element?</a></p><p>So technique of &#8220;Classes on the HTML tag&#8221; was demonstrated by <a
href="http://paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/">Paul Irish&#8217;s</a> back in 2008 (lots of good updates and info there) and a a variation of it is used in <a
href="http://html5boilerplate.com/docs/html/#ie-html-tag-classes">Html5 Boilerplate</a> :</p><div
class="codecolorer-container html4strict default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table
cellspacing="0" cellpadding="0"><tbody><tr><td
style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br
/>2<br
/>3<br
/>4<br
/>5<br
/>6<br
/></div></td><td><div
class="html4strict codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span
style="color: #808080; font-style: italic;">&lt;!--[if lt IE 7 ]&gt; &lt;html class=&quot;ie6&quot;&gt; &lt; ![endif]--&gt;</span><br
/> <span
style="color: #808080; font-style: italic;">&lt;!--[if IE 7 ]&gt; &nbsp; &nbsp;&lt;/html&gt;&lt;html class=&quot;ie7&quot;&gt; &lt; ![endif]--&gt;</span><br
/> <span
style="color: #808080; font-style: italic;">&lt;!--[if IE 8 ]&gt; &nbsp; &nbsp;&lt;/html&gt;&lt;html class=&quot;ie8&quot;&gt; &lt; ![endif]--&gt;</span><br
/> <span
style="color: #808080; font-style: italic;">&lt;!--[if IE 9 ]&gt; &nbsp; &nbsp;&lt;/html&gt;&lt;html class=&quot;ie9&quot;&gt; &lt; ![endif]--&gt;</span><br
/> <span
style="color: #808080; font-style: italic;">&lt;!--[if (gt IE 9)|!(IE)]&gt;&lt;!--&gt;</span> <span
style="color: #808080; font-style: italic;">&lt;!--&lt;![endif]--&gt;</span><br
/> <span
style="color: #009900;">&lt;<span
style="color: #66cc66;">/</span><a
href="http://december.com/html/4/element/html.html"><span
style="color: #000000; font-weight: bold;">html</span></a>&gt;</span></div></td></tr></tbody></table></div><p>This will allow you to make your corrections close to the original place in your css (or sass) files, general reduce the number of files to maintain and load, and as a bonus it appears to fix problems where the IE conditionals around css files for IE6 can slow down your page load time in IE8!</p><p>Note that when this technique was first used, the classes were added on the body tag not the html tag, but best practice suggests the body tag for more dynamic classes (after the page is loaded), although (for example) WordPress does use classes specific to the page being loaded on the body tag.</p><p>Extra bonus : If you are using HAML and Rails/Padrino, then Toronto&#8217;s Gianni Chiappetta (aka gf3) created a <a
href="http://gf3.ca/2011/02/12/conditional-html-tag-haml">Conditional HTML tag with HAM helper</a> which can also be found in his <a
href="https://github.com/gf3/gf3.ca-content/tree/master/pages/2011-02-12-conditional-html-tag-haml"> github</a> repo:</p><div
class="codecolorer-container ruby default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table
cellspacing="0" cellpadding="0"><tbody><tr><td
style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br
/>2<br
/>3<br
/>4<br
/>5<br
/>6<br
/>7<br
/>8<br
/>9<br
/>10<br
/></div></td><td><div
class="ruby codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span
style="color:#9966CC; font-weight:bold;">def</span> conditional_html<span
style="color:#006600; font-weight:bold;">&#40;</span> lang = <span
style="color:#996600;">&quot;en&quot;</span>, <span
style="color:#006600; font-weight:bold;">&amp;</span>amp;block <span
style="color:#006600; font-weight:bold;">&#41;</span><br
/> haml_concat <span
style="color:#6666ff; font-weight:bold;">Haml::Util</span>::html_safe <span
style="color:#006600; font-weight:bold;">&amp;</span>lt; <span
style="color:#006600; font-weight:bold;">&lt;</span>!<span
style="color:#006600; font-weight:bold;">--</span><span
style="color:#006600; font-weight:bold;">&#91;</span><span
style="color:#9966CC; font-weight:bold;">if</span> lt IE <span
style="color:#006666;">7</span> <span
style="color:#006600; font-weight:bold;">&#93;</span><span
style="color:#006600; font-weight:bold;">&gt;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span
style="color:#006600; font-weight:bold;">&lt;</span>html lang=<span
style="color:#996600;">&quot;#{lang}&quot;</span> <span
style="color:#9966CC; font-weight:bold;">class</span>=<span
style="color:#996600;">&quot;no-js ie6&quot;</span><span
style="color:#006600; font-weight:bold;">&gt;</span> <span
style="color:#006600; font-weight:bold;">&lt;</span> !<span
style="color:#006600; font-weight:bold;">&#91;</span>endif<span
style="color:#006600; font-weight:bold;">&#93;</span><span
style="color:#006600; font-weight:bold;">--&gt;</span><br
/> <span
style="color:#006600; font-weight:bold;">&lt;</span>!<span
style="color:#006600; font-weight:bold;">--</span><span
style="color:#006600; font-weight:bold;">&#91;</span><span
style="color:#9966CC; font-weight:bold;">if</span> IE <span
style="color:#006666;">7</span> <span
style="color:#006600; font-weight:bold;">&#93;</span><span
style="color:#006600; font-weight:bold;">&gt;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span
style="color:#006600; font-weight:bold;">&lt;/</span>html<span
style="color:#006600; font-weight:bold;">&gt;&lt;</span>html lang=<span
style="color:#996600;">&quot;#{lang}&quot;</span> <span
style="color:#9966CC; font-weight:bold;">class</span>=<span
style="color:#996600;">&quot;no-js ie7&quot;</span><span
style="color:#006600; font-weight:bold;">&gt;</span> <span
style="color:#006600; font-weight:bold;">&lt;</span> !<span
style="color:#006600; font-weight:bold;">&#91;</span>endif<span
style="color:#006600; font-weight:bold;">&#93;</span><span
style="color:#006600; font-weight:bold;">--&gt;</span><br
/> <span
style="color:#006600; font-weight:bold;">&lt;</span>!<span
style="color:#006600; font-weight:bold;">--</span><span
style="color:#006600; font-weight:bold;">&#91;</span><span
style="color:#9966CC; font-weight:bold;">if</span> IE <span
style="color:#006666;">8</span> <span
style="color:#006600; font-weight:bold;">&#93;</span><span
style="color:#006600; font-weight:bold;">&gt;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span
style="color:#006600; font-weight:bold;">&lt;/</span>html<span
style="color:#006600; font-weight:bold;">&gt;&lt;</span>html lang=<span
style="color:#996600;">&quot;#{lang}&quot;</span> <span
style="color:#9966CC; font-weight:bold;">class</span>=<span
style="color:#996600;">&quot;no-js ie8&quot;</span><span
style="color:#006600; font-weight:bold;">&gt;</span> <span
style="color:#006600; font-weight:bold;">&lt;</span> !<span
style="color:#006600; font-weight:bold;">&#91;</span>endif<span
style="color:#006600; font-weight:bold;">&#93;</span><span
style="color:#006600; font-weight:bold;">--&gt;</span><br
/> <span
style="color:#006600; font-weight:bold;">&lt;</span>!<span
style="color:#006600; font-weight:bold;">--</span><span
style="color:#006600; font-weight:bold;">&#91;</span><span
style="color:#9966CC; font-weight:bold;">if</span> IE <span
style="color:#006666;">9</span> <span
style="color:#006600; font-weight:bold;">&#93;</span><span
style="color:#006600; font-weight:bold;">&gt;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span
style="color:#006600; font-weight:bold;">&lt;/</span>html<span
style="color:#006600; font-weight:bold;">&gt;&lt;</span>html lang=<span
style="color:#996600;">&quot;#{lang}&quot;</span> <span
style="color:#9966CC; font-weight:bold;">class</span>=<span
style="color:#996600;">&quot;no-js ie9&quot;</span><span
style="color:#006600; font-weight:bold;">&gt;</span> <span
style="color:#006600; font-weight:bold;">&lt;</span> !<span
style="color:#006600; font-weight:bold;">&#91;</span>endif<span
style="color:#006600; font-weight:bold;">&#93;</span><span
style="color:#006600; font-weight:bold;">--&gt;</span><br
/> <span
style="color:#006600; font-weight:bold;">&lt;</span>!<span
style="color:#006600; font-weight:bold;">--</span><span
style="color:#006600; font-weight:bold;">&#91;</span><span
style="color:#9966CC; font-weight:bold;">if</span> <span
style="color:#006600; font-weight:bold;">&#40;</span>gte IE <span
style="color:#006666;">9</span><span
style="color:#006600; font-weight:bold;">&#41;</span><span
style="color:#006600; font-weight:bold;">|</span>!<span
style="color:#006600; font-weight:bold;">&#40;</span>IE<span
style="color:#006600; font-weight:bold;">&#41;</span><span
style="color:#006600; font-weight:bold;">&#93;</span><span
style="color:#006600; font-weight:bold;">&gt;&lt;</span>!<span
style="color:#006600; font-weight:bold;">--&gt;</span> <span
style="color:#006600; font-weight:bold;">&lt;</span>!<span
style="color:#006600; font-weight:bold;">--&lt;</span>!<span
style="color:#006600; font-weight:bold;">&#91;</span>endif<span
style="color:#006600; font-weight:bold;">&#93;</span><span
style="color:#006600; font-weight:bold;">--&gt;</span><br
/> HTML<br
/> haml_concat capture<span
style="color:#006600; font-weight:bold;">&#40;</span> <span
style="color:#006600; font-weight:bold;">&amp;</span>amp;block <span
style="color:#006600; font-weight:bold;">&#41;</span> <span
style="color:#006600; font-weight:bold;">&amp;</span>lt; <span
style="color:#006600; font-weight:bold;">&amp;</span>lt; <span
style="color:#6666ff; font-weight:bold;">Haml::Util</span>::html_safe<span
style="color:#006600; font-weight:bold;">&#40;</span> <span
style="color:#996600;">&quot;<span
style="color:#000099;">\n</span>&quot;</span> <span
style="color:#006600; font-weight:bold;">&#41;</span> <span
style="color:#9966CC; font-weight:bold;">if</span> block_given?<br
/> <span
style="color:#9966CC; font-weight:bold;">end</span><br
/> <span
style="color:#006600; font-weight:bold;">&lt;/</span>html<span
style="color:#006600; font-weight:bold;">&gt;</span></div></td></tr></tbody></table></div><p>used thusly:</p><div
class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table
cellspacing="0" cellpadding="0"><tbody><tr><td
style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br
/>2<br
/>3<br
/>4<br
/>5<br
/>6<br
/>7<br
/></div></td><td><div
class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">!!! 5<br
/> <br
/> - conditional_html 'en-CA'<br
/> %head<br
/> &nbsp; %title Website<br
/> %body<br
/> &nbsp; = yield</div></td></tr></tbody></table></div><div
class="plus-one-wrap"><g:plusone href="http://www.falsepositives.com/index.php/2012/03/05/conditional-html-tag-classes-for-your-internet-explorer-css-fixes/"></g:plusone></div><p>Post from: <a
href="http://www.falsepositives.com">False Positives</a><br/><br/><a
href="http://www.falsepositives.com/index.php/2012/03/05/conditional-html-tag-classes-for-your-internet-explorer-css-fixes/">Doing Conditional Comments for your Internet Explorer css fixes better, with HTML top tag classes</a></p> ]]></content:encoded> <wfw:commentRss>http://www.falsepositives.com/index.php/2012/03/05/conditional-html-tag-classes-for-your-internet-explorer-css-fixes/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Detecting a Mobile Browser on the Server in your Rails app</title><link>http://www.falsepositives.com/index.php/2011/09/16/detecting-a-mobile-browser-on-the-server-in-your-rails-app/</link> <comments>http://www.falsepositives.com/index.php/2011/09/16/detecting-a-mobile-browser-on-the-server-in-your-rails-app/#comments</comments> <pubDate>Fri, 16 Sep 2011 12:54:34 +0000</pubDate> <dc:creator>Ian</dc:creator> <category><![CDATA[Code]]></category> <category><![CDATA[Mobile]]></category> <category><![CDATA[Ruby and Rails]]></category> <category><![CDATA[Web]]></category> <guid
isPermaLink="false">http://www.falsepositives.com/?p=2991</guid> <description><![CDATA[the following code was extracted from my Mobile Ruby on Rails Web App Demo, which was intended as a very simple Mobile Ruby on Rails Web Application (Web App) which uses Ruby 1.9.2, Ruby on Rails 3.0.7 and jQuery Mobile (specifically the jQuery Mobile 1 Alpha 4.1 maintenance release in May 2011.) The code does<p><a
href="http://www.falsepositives.com/index.php/2011/09/16/detecting-a-mobile-browser-on-the-server-in-your-rails-app/">Read more <span
class="more-meta-nav">&#187;</span></a></p><p>Post from: <a
href="http://www.falsepositives.com">False Positives</a><br/><br/><a
href="http://www.falsepositives.com/index.php/2011/09/16/detecting-a-mobile-browser-on-the-server-in-your-rails-app/">Detecting a Mobile Browser on the Server in your Rails app</a></p> ]]></description> <content:encoded><![CDATA[<p>the following code was extracted from my <a
href="http://mobror.heroku.com/">Mobile Ruby on Rails Web App Demo</a>, which was intended as a very simple Mobile Ruby on Rails Web Application (Web App) which uses Ruby 1.9.2, Ruby on Rails 3.0.7 and jQuery Mobile (specifically the jQuery Mobile 1 Alpha 4.1 maintenance release in May 2011.)</p><p>The code does a mobile client detection, server side, in the Application Controller by parsing the HTTP_USER_AGENT, or <a
href="http://en.wikipedia.org/wiki/User_agent">&#8220;User-Agent&#8221; HTTP header</a>.  This is sometimes called “UA sniffing&#8221; or User Agent Sniffing.</p><div
class="codecolorer-container ruby default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table
cellspacing="0" cellpadding="0"><tbody><tr><td
style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br
/>2<br
/>3<br
/>4<br
/>5<br
/>6<br
/>7<br
/>8<br
/>9<br
/>10<br
/>11<br
/>12<br
/>13<br
/>14<br
/>15<br
/>16<br
/>17<br
/>18<br
/>19<br
/>20<br
/>21<br
/>22<br
/>23<br
/>24<br
/></div></td><td><div
class="ruby codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span
style="color:#9966CC; font-weight:bold;">class</span> ApplicationController <span
style="color:#006600; font-weight:bold;">&lt;</span> <span
style="color:#6666ff; font-weight:bold;">ActionController::Base</span><br
/> &nbsp; protect_from_forgery<br
/> &nbsp; <br
/> &nbsp; &nbsp; before_filter <span
style="color:#ff3333; font-weight:bold;">:set_browser_type</span><br
/> &nbsp; <br
/> &nbsp;<span
style="color:#9966CC; font-weight:bold;">def</span> set_browser_type<br
/> &nbsp; &nbsp;<span
style="color:#0066ff; font-weight:bold;">@browser_type</span> = detect_browser<br
/> &nbsp;<span
style="color:#9966CC; font-weight:bold;">end</span><br
/> &nbsp; <br
/> &nbsp; private<br
/> &nbsp; &nbsp; <br
/> &nbsp; MOBILE_BROWSERS = <span
style="color:#006600; font-weight:bold;">&#91;</span><span
style="color:#996600;">&quot;playbook&quot;</span>, <span
style="color:#996600;">&quot;windows phone&quot;</span>, <span
style="color:#996600;">&quot;android&quot;</span>, <span
style="color:#996600;">&quot;ipod&quot;</span>, <span
style="color:#996600;">&quot;iphone&quot;</span>, <span
style="color:#996600;">&quot;opera mini&quot;</span>, <span
style="color:#996600;">&quot;blackberry&quot;</span>, <span
style="color:#996600;">&quot;palm&quot;</span>,<span
style="color:#996600;">&quot;hiptop&quot;</span>,<span
style="color:#996600;">&quot;avantgo&quot;</span>,<span
style="color:#996600;">&quot;plucker&quot;</span>, <span
style="color:#996600;">&quot;xiino&quot;</span>,<span
style="color:#996600;">&quot;blazer&quot;</span>,<span
style="color:#996600;">&quot;elaine&quot;</span>, <span
style="color:#996600;">&quot;windows ce; ppc;&quot;</span>, <span
style="color:#996600;">&quot;windows ce; smartphone;&quot;</span>,<span
style="color:#996600;">&quot;windows ce; iemobile&quot;</span>, <span
style="color:#996600;">&quot;up.browser&quot;</span>,<span
style="color:#996600;">&quot;up.link&quot;</span>,<span
style="color:#996600;">&quot;mmp&quot;</span>,<span
style="color:#996600;">&quot;symbian&quot;</span>,<span
style="color:#996600;">&quot;smartphone&quot;</span>, <span
style="color:#996600;">&quot;midp&quot;</span>,<span
style="color:#996600;">&quot;wap&quot;</span>,<span
style="color:#996600;">&quot;vodafone&quot;</span>,<span
style="color:#996600;">&quot;o2&quot;</span>,<span
style="color:#996600;">&quot;pocket&quot;</span>,<span
style="color:#996600;">&quot;kindle&quot;</span>, <span
style="color:#996600;">&quot;mobile&quot;</span>,<span
style="color:#996600;">&quot;pda&quot;</span>,<span
style="color:#996600;">&quot;psp&quot;</span>,<span
style="color:#996600;">&quot;treo&quot;</span><span
style="color:#006600; font-weight:bold;">&#93;</span><br
/> <br
/> &nbsp; <span
style="color:#9966CC; font-weight:bold;">def</span> detect_browser<br
/> &nbsp; &nbsp; agent = request.<span
style="color:#9900CC;">headers</span><span
style="color:#006600; font-weight:bold;">&#91;</span><span
style="color:#996600;">&quot;HTTP_USER_AGENT&quot;</span><span
style="color:#006600; font-weight:bold;">&#93;</span>.<span
style="color:#9900CC;">downcase</span><br
/> &nbsp; <br
/> &nbsp; &nbsp; MOBILE_BROWSERS.<span
style="color:#9900CC;">each</span> <span
style="color:#9966CC; font-weight:bold;">do</span> <span
style="color:#006600; font-weight:bold;">|</span>m<span
style="color:#006600; font-weight:bold;">|</span><br
/> &nbsp; &nbsp; &nbsp; <span
style="color:#0000FF; font-weight:bold;">return</span> <span
style="color:#996600;">&quot;mobile&quot;</span> <span
style="color:#9966CC; font-weight:bold;">if</span> agent.<span
style="color:#9900CC;">match</span><span
style="color:#006600; font-weight:bold;">&#40;</span>m<span
style="color:#006600; font-weight:bold;">&#41;</span><br
/> &nbsp; &nbsp; <span
style="color:#9966CC; font-weight:bold;">end</span><br
/> &nbsp; &nbsp; <span
style="color:#0000FF; font-weight:bold;">return</span> <span
style="color:#996600;">&quot;desktop&quot;</span><br
/> &nbsp; <span
style="color:#9966CC; font-weight:bold;">end</span><br
/> &nbsp; <br
/> &nbsp; <br
/> <span
style="color:#9966CC; font-weight:bold;">end</span></div></td></tr></tbody></table></div><p>The hard part is the Mobile browser user agent list.  Sadly I dont remember where I got the original list and then added in the several more recent agent names, but the nature of such things is that it is always out of date! ZYTRAX has a good list of <a
href="http://www.zytrax.com/tech/web/mobile_ids.html">Mobile Browser ID (User-Agent) Strings</a>.</p><p>It is used in a ERB view like this :<br
/> </code></p><div
class="codecolorer-container ruby default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table
cellspacing="0" cellpadding="0"><tbody><tr><td
style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br
/></div></td><td><div
class="ruby codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span
style="color:#006600; font-weight:bold;">&lt;</span> <span
style="color:#006600; font-weight:bold;">%</span>= <span
style="color:#996600;">&quot;You don't Look like a Moblie Client :(&quot;</span> <span
style="color:#9966CC; font-weight:bold;">if</span> <span
style="color:#0066ff; font-weight:bold;">@browser_type</span> != <span
style="color:#996600;">&quot;mobile&quot;</span> &nbsp;<span
style="color:#006600; font-weight:bold;">%&gt;</span></div></td></tr></tbody></table></div><p>You could also use similar code to control whether to add or change the javascript and css being used, the size of images to use, or additional page elements on the view.  In the controller such code could redirect users to the mobile views, if the non mobile views are very different.</p><p>If you needed more detailed parsing of the Agent string then Kevin Elliott's <a
href="https://github.com/kevinelliott/agent_orange">Agent Orange</a> looks really good, and goes beyond just mobile browser detection.</p><div
class="plus-one-wrap"><g:plusone href="http://www.falsepositives.com/index.php/2011/09/16/detecting-a-mobile-browser-on-the-server-in-your-rails-app/"></g:plusone></div><p>Post from: <a
href="http://www.falsepositives.com">False Positives</a><br/><br/><a
href="http://www.falsepositives.com/index.php/2011/09/16/detecting-a-mobile-browser-on-the-server-in-your-rails-app/">Detecting a Mobile Browser on the Server in your Rails app</a></p> ]]></content:encoded> <wfw:commentRss>http://www.falsepositives.com/index.php/2011/09/16/detecting-a-mobile-browser-on-the-server-in-your-rails-app/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>West End Toronto Festivals this Weekend,Sept 2011: Bloor West Ukrainian Festival &amp; Roncesvalles Polish Festival</title><link>http://www.falsepositives.com/index.php/2011/09/15/west-end-toronto-festivals-bloor-west-ukrainian-festival-roncesvalles-polish-festival/</link> <comments>http://www.falsepositives.com/index.php/2011/09/15/west-end-toronto-festivals-bloor-west-ukrainian-festival-roncesvalles-polish-festival/#comments</comments> <pubDate>Thu, 15 Sep 2011 15:51:26 +0000</pubDate> <dc:creator>Ian</dc:creator> <category><![CDATA[Culture]]></category> <category><![CDATA[Food]]></category> <category><![CDATA[Music]]></category> <category><![CDATA[Toronto]]></category> <guid
isPermaLink="false">http://www.falsepositives.com/?p=2983</guid> <description><![CDATA[This is the weekend of dueling festivals in west end Toronto : Ukrainian &#38; Polish Festivals. One in Bloor West Village and one in Roncesvalles Village, only 3 kilometers, that&#8217;s 3 subway stops, apart. The Bloor West Toronto Ukrainian Festival bills itself as &#8220;North America&#8217;s Largest Ukrainian Street Festival&#8221; and runs from Friday, Sept 15,<p><a
href="http://www.falsepositives.com/index.php/2011/09/15/west-end-toronto-festivals-bloor-west-ukrainian-festival-roncesvalles-polish-festival/">Read more <span
class="more-meta-nav">&#187;</span></a></p><p>Post from: <a
href="http://www.falsepositives.com">False Positives</a><br/><br/><a
href="http://www.falsepositives.com/index.php/2011/09/15/west-end-toronto-festivals-bloor-west-ukrainian-festival-roncesvalles-polish-festival/">West End Toronto Festivals this Weekend,Sept 2011: Bloor West Ukrainian Festival &#038; Roncesvalles Polish Festival</a></p> ]]></description> <content:encoded><![CDATA[<p>This is the weekend of dueling festivals in west end Toronto : Ukrainian &amp; Polish Festivals.</p><p>One in Bloor West Village and one in Roncesvalles Village, only 3 kilometers, that&#8217;s 3 subway stops, apart.</p><p>The <a
href="http://www.ukrainianfestival.com/">Bloor West Toronto Ukrainian Festival</a> bills itself as &#8220;North America&#8217;s Largest Ukrainian Street Festival&#8221; and runs from Friday, Sept 15, Saturday Sept 16, and Sunday Sept 17, on Bloor Street between Runnymede and Jane.</p><p>The <a
href="http://polishfestival.ca/">Roncesvalles Polish Festival</a> &#8220;North America&#8217;s Larget Celebration of Polish Culture&#8221; and also runs from Friday, Sept 15, Saturday Sept 16, and Sunday Sept 17 and takes place on the whole of Roncesvalles Avenue, from Queen St. West to Dundas St. West.</p><p>Taking transit to both is highly recommend.</p><p>Both promise much fun, music, dancing, and food for all (you don’t have to be Ukrainian or Polish).</p><p>Of course there is another small festival happing in Toronto : the <a
href="http://tiff.net/">TIFF</a> or <a
href="http://tiff.net/">Toronto International Film Festival</a>. Maybe Brad Pitt and Angelina Jolie will pop out to the west end?</p><div
class="plus-one-wrap"><g:plusone href="http://www.falsepositives.com/index.php/2011/09/15/west-end-toronto-festivals-bloor-west-ukrainian-festival-roncesvalles-polish-festival/"></g:plusone></div><p>Post from: <a
href="http://www.falsepositives.com">False Positives</a><br/><br/><a
href="http://www.falsepositives.com/index.php/2011/09/15/west-end-toronto-festivals-bloor-west-ukrainian-festival-roncesvalles-polish-festival/">West End Toronto Festivals this Weekend,Sept 2011: Bloor West Ukrainian Festival &#038; Roncesvalles Polish Festival</a></p> ]]></content:encoded> <wfw:commentRss>http://www.falsepositives.com/index.php/2011/09/15/west-end-toronto-festivals-bloor-west-ukrainian-festival-roncesvalles-polish-festival/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>2011 Trends in Computing : Extreme Mobile</title><link>http://www.falsepositives.com/index.php/2011/05/30/2011-trends-in-computing-extreme-mobile/</link> <comments>http://www.falsepositives.com/index.php/2011/05/30/2011-trends-in-computing-extreme-mobile/#comments</comments> <pubDate>Mon, 30 May 2011 21:23:17 +0000</pubDate> <dc:creator>Ian</dc:creator> <category><![CDATA[Mobile]]></category> <guid
isPermaLink="false">http://www.falsepositives.com/?p=2960</guid> <description><![CDATA[That Mobile is a trend should be a surprise to no one, but Mobile in 2011 looks a lot different from what it looked like in 2000. It&#8217;s going to look even more different in 2015. In 2000 mobile was occasionally connected very expensive Laptops (seeking the rare Wifi connection or a privileged Ethernet port)<p><a
href="http://www.falsepositives.com/index.php/2011/05/30/2011-trends-in-computing-extreme-mobile/">Read more <span
class="more-meta-nav">&#187;</span></a></p><p>Post from: <a
href="http://www.falsepositives.com">False Positives</a><br/><br/><a
href="http://www.falsepositives.com/index.php/2011/05/30/2011-trends-in-computing-extreme-mobile/">2011 Trends in Computing : Extreme Mobile</a></p> ]]></description> <content:encoded><![CDATA[<p><a
href="http://www.falsepositives.com/wp-content/uploads/2011/05/brick.jpeg"><img
class="alignleft size-full wp-image-2970" style="margin-top: 5px; margin-bottom: 5px; margin-left: 10px; margin-right: 10px;" title="brick" src="http://www.falsepositives.com/wp-content/uploads/2011/05/brick.jpeg" alt="" width="150" height="280" /></a>That Mobile is a trend should be a surprise to no one, but Mobile in 2011 looks a lot different from what it looked like in 2000. It&#8217;s going to look even more different in 2015. In 2000 mobile was occasionally connected very expensive Laptops (seeking the rare Wifi connection or a privileged Ethernet port) and a very few unconnected PalmPilots, and BlackBerry&#8217;s &#8211; if you were very special &#8211; for email.  Now in 2010, Wifi is common and often open, Laptops are cheap, iPhones are the new norm and iPads are the lusted after device, Amazon&#8217;s Kindle E-Reader will let you read for a month without recharging, plus Android&#8217;s are a mainstream alternative for smart phones and soon -but not yet &#8211; for tablets.</p><p>But things have changed beyond the just having new devices.</p><p>Your Laptop easily has more power than your desktop did in 2000, or it&#8217;s a lot cheaper.  The new Smart Devices have the power of a Laptop in 2000, at a lower price.  Both of these trends have made computing much more widespread then they have ever been.</p><p>Smart Devices (Smart Phones, Pads and Tablets, touch iPods) all have capabilities that even todays Laptops do not (yet) have :</p><ul><li>they are location aware via GPS or Wifi-location triangulation, and they are orientation aware in that they know which why they are pointing</li><li>they have back and front facing cameras allowing video or still photo&#8217;s</li><li>they have Touch interfaces</li><li>they are always connected via Cellular Data with Wifi as a backup.</li></ul><p>So it is now almost common to always have with you a decent GPS, Camera, and Video Phone; that you can always check something on a pocket encyclopedia or do an instant price compare; and you can play all a games or music or videos or read books all day long.  And that&#8217;s without considering Augmented Reality (AR) applications that may also leverage access to information and / or processing power on the internet, that can allow for only perviously imaged applications of image and location awareness- answering questions like: where is a thai restaurant near here; It that poison ivy i just stepped in; am I having a heart attack.</p><p>So what change is this having on the all of computing?</p><p>The number of devices in the market place is changing the economics of computing.  It used to be that hardware / software was done for the Military, Government or Big Business, and Consumer hardware / software was adapted from the obsolete leftovers.  That has flip over to its reverse.  The huge consumer market drives demand, and the Mil / Gov / Big Biz sectors of the  economy adapt from the consumer marketplace or struggle to keep up with the speed of inovation.  Near Field Communication (NFC) is one example of this that is about to land on the doorstep with a big thump.</p><p>Amongst the things that have changed is that the Application Store model (or App Store to use the generic slang) is changing now people find and buy their software, on all their computer planetforms.  The Discoverability in the App Store is still weak, but is an vast improvement for non expert users.  I expect to see the App Store model to be used soon to deploy and provision applications inside the corporation environment.</p><p>There is now also strong need to design for all of those multiple display sizes.  Just when we got a handle on working with laptop and desktop monitors with sizes from 15&#8243; to 24&#8243;, we now have to consider: Handhelds 3&#8243; to 4&#8243;; Tablets 5&#8243; to 7&#8243;; Pads or Slates 9&#8243; to 11&#8243;;  plus &#8211; very soon &#8211; Wall Units (what used to be called TV&#8217;s) 30&#8243; to 70&#8243;.  HTML5 + CSS3 + Javascript is the best way to fill these needs, but native apps have a place as well.</p><p>There is still lots of room at the bottom.  &#8220;Feature phones&#8221; aka &#8220;Dumb phones&#8221; aka &#8220;phone that you use to make phone calls on&#8221; are still the vast majority of the market place, especially outside the &#8220;West&#8221;.  The next billion devices will be used in China and India,  Nigeria and Brazil.  But costs for the device will have to go down dramatically to reach people not in the upper and upper middle class (in the &#8220;West&#8221; as well).  iPods and Android devices are going to address this market.  I&#8217;m waiting for a Android version of a touch iPod, or a Android with a voice connect and wifi only for Data, or a iPod device with Cellular Data with no voice.  The One Laptop per Child (OLPC) project is also a great model for the next 1 billion of computing devices, as is ChromeBooks.  Another kind of &#8220;room at the bottom&#8221; might be single purpose devices that work with WiFi or BlueTooth that work with a smart enough phone.</p><p>Also, having a fast secure connection, means there is less need for large local storage, since you can store in the cloud and cache locally.  This will happen with processing as well.</p><p>Mobile is now the default.  It&#8217;s the tail that wags the Dog.  Everyone will soon have some kind of  connected computing device with them, always.  Everything will be Mobile or Cloud (or explain why you are a special case).   The expectation is to be able to access information on demand, anywhere, on any device, anytime, in a secure manner.  All organizations need to rethink how they can be mobile with their customers and with their employees if they are going to be relevant over the next 10 years.</p><div
class="plus-one-wrap"><g:plusone href="http://www.falsepositives.com/index.php/2011/05/30/2011-trends-in-computing-extreme-mobile/"></g:plusone></div><p>Post from: <a
href="http://www.falsepositives.com">False Positives</a><br/><br/><a
href="http://www.falsepositives.com/index.php/2011/05/30/2011-trends-in-computing-extreme-mobile/">2011 Trends in Computing : Extreme Mobile</a></p> ]]></content:encoded> <wfw:commentRss>http://www.falsepositives.com/index.php/2011/05/30/2011-trends-in-computing-extreme-mobile/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Rails Migration Rollback with compound indexes fail and fix</title><link>http://www.falsepositives.com/index.php/2011/05/18/rails-migration-rollback-with-compound-indexes-fail-and-fix/</link> <comments>http://www.falsepositives.com/index.php/2011/05/18/rails-migration-rollback-with-compound-indexes-fail-and-fix/#comments</comments> <pubDate>Wed, 18 May 2011 15:28:58 +0000</pubDate> <dc:creator>Ian</dc:creator> <category><![CDATA[Code]]></category> <category><![CDATA[Ruby and Rails]]></category> <category><![CDATA[SQL]]></category> <guid
isPermaLink="false">http://www.falsepositives.com/?p=2928</guid> <description><![CDATA[This is for Ruby on Rails 2.5.x, and MySQL 5, and the MySQL2 gem (there is a problem with mysql2-0.3.2. and rails 3.0.x, but using 0.2.7 for Ruby 2.5.x and 3.0.x is good). I do hope to test some of this with other versions of Rails and gems and DB&#8217;s. (I expect the problem is<p><a
href="http://www.falsepositives.com/index.php/2011/05/18/rails-migration-rollback-with-compound-indexes-fail-and-fix/">Read more <span
class="more-meta-nav">&#187;</span></a></p><p>Post from: <a
href="http://www.falsepositives.com">False Positives</a><br/><br/><a
href="http://www.falsepositives.com/index.php/2011/05/18/rails-migration-rollback-with-compound-indexes-fail-and-fix/">Rails Migration Rollback with compound indexes fail and fix</a></p> ]]></description> <content:encoded><![CDATA[<p><a
title="Tokyo Train by False Positives, on Flickr" href="http://www.flickr.com/photos/falsepositives/5734981170/"><img
class="alignleft" style="margin-top: 5px; margin-bottom: 5px; margin-left: 10px; margin-right: 10px;" title="Tokyo Subway Train" src="http://farm6.static.flickr.com/5150/5734981170_488bb733ce_m.jpg" alt="Tokyo Train" width="240" height="180" /></a> This is for Ruby on Rails 2.5.x, and MySQL 5, and the MySQL2 gem (there is a problem with mysql2-0.3.2. and rails 3.0.x, but using 0.2.7 for Ruby 2.5.x and 3.0.x is good). I do hope to test some of this with other versions of Rails and gems and DB&#8217;s. (I expect the problem is in guts of ActiveRecord)</p><p>Ruby on Rails best practices calls for adding indexes to your databases, and of course the place to do that is in your migrations (see <a
href="http://rails-bestpractices.com/posts/21-always-add-db-index">Always add DB index</a>). Why? Performance!</p><p>A related SQL Ninja trick is to create indexes based on fields you filter on (where clauses), or sort on (order by, group by) in your code, not just on the fields you join on (with is what the above link is referring to with reject to foreign keys). The next next level is compound indexes! Compound indexes are called composite keys in some database systems.</p><p>If you&#8217;re new to this stuff look at <a
href="http://robots.thoughtbot.com/post/163627511/a-grand-piano-for-your-violin">A grand piano for your violin</a> on the Giant Robots Smashing Into Other Giant Robots blog, and also <a
href="http://railsperformance.blogspot.com/2010/09/mysql-performance-analysis-improve.html">Mysql Performance analysis Improve performance by removing unused indexes from the database</a> (on John McCaffrey blog) before you index all the columns &#8211; which is almost as bad as no indexes!</p><p>The basic syntax for adding a compound composite key index is at it most simplest (you can also require that the compound is unique, or has a certain name) looks like this</p><div
class="codecolorer-container ruby default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table
cellspacing="0" cellpadding="0"><tbody><tr><td
style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br
/></div></td><td><div
class="ruby codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">add_index <span
style="color:#ff3333; font-weight:bold;">:accounts</span>, <span
style="color:#006600; font-weight:bold;">&#91;</span><span
style="color:#ff3333; font-weight:bold;">:branch_id</span>, <span
style="color:#ff3333; font-weight:bold;">:party_id</span><span
style="color:#006600; font-weight:bold;">&#93;</span></div></td></tr></tbody></table></div><p>The issue comes in when you do a rollback and then rake db:migrate, the migrate complains that a index with that name already exists!</p><div
class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table
cellspacing="0" cellpadding="0"><tbody><tr><td
style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br
/></div></td><td><div
class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">Mysql2::Error: Duplicate key name 'index_accounts_on_branch_id_and_party_id':</div></td></tr></tbody></table></div><p>Bummer <img
src='http://www.falsepositives.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /></p><p>For regular &#8211; single column &#8211; indexes, when you drop the column, it&#8217;s dropping the indexes for that single column and up don&#8217;t have to do anything more that drop that column in the normal Rails migration automagical way:</p><div
class="codecolorer-container ruby default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table
cellspacing="0" cellpadding="0"><tbody><tr><td
style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br
/>2<br
/>3<br
/></div></td><td><div
class="ruby codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span
style="color:#9966CC; font-weight:bold;">def</span> <span
style="color:#0000FF; font-weight:bold;">self</span>.<span
style="color:#9900CC;">down</span><br
/> remove_column <span
style="color:#ff3333; font-weight:bold;">:accounts</span>, <span
style="color:#ff3333; font-weight:bold;">:branch_id</span><br
/> <span
style="color:#9966CC; font-weight:bold;">end</span></div></td></tr></tbody></table></div><p>but for these fancy dancy compound composite key index thingyes you need to explicitly remove the indexes</p><div
class="codecolorer-container ruby default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table
cellspacing="0" cellpadding="0"><tbody><tr><td
style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br
/>2<br
/>3<br
/>4<br
/></div></td><td><div
class="ruby codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span
style="color:#9966CC; font-weight:bold;">def</span> <span
style="color:#0000FF; font-weight:bold;">self</span>.<span
style="color:#9900CC;">down</span><br
/> remove_index <span
style="color:#ff3333; font-weight:bold;">:accounts</span>, <span
style="color:#006600; font-weight:bold;">&#91;</span><span
style="color:#ff3333; font-weight:bold;">:branch_id</span>, <span
style="color:#ff3333; font-weight:bold;">:party_id</span><span
style="color:#006600; font-weight:bold;">&#93;</span><br
/> remove_column <span
style="color:#ff3333; font-weight:bold;">:accounts</span>, <span
style="color:#ff3333; font-weight:bold;">:branch_id</span><br
/> <span
style="color:#9966CC; font-weight:bold;">end</span></div></td></tr></tbody></table></div><p>So the lessons from this are:</p><ol><li>index</li><li>explicitly remove those indexes</li><li>test your migrations and rollback, before you need them</li></ol><p>that way when you have to do a rollback or do a &#8220;rake db:migrate:redo&#8221; you&#8217;ll won&#8217;t lose any (more) hair/sleep over this <img
src='http://www.falsepositives.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><div
class="plus-one-wrap"><g:plusone href="http://www.falsepositives.com/index.php/2011/05/18/rails-migration-rollback-with-compound-indexes-fail-and-fix/"></g:plusone></div><p>Post from: <a
href="http://www.falsepositives.com">False Positives</a><br/><br/><a
href="http://www.falsepositives.com/index.php/2011/05/18/rails-migration-rollback-with-compound-indexes-fail-and-fix/">Rails Migration Rollback with compound indexes fail and fix</a></p> ]]></content:encoded> <wfw:commentRss>http://www.falsepositives.com/index.php/2011/05/18/rails-migration-rollback-with-compound-indexes-fail-and-fix/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Twendr &#8211; Now in 70 more Locations</title><link>http://www.falsepositives.com/index.php/2011/04/20/twendr-now-in-70-more-locations/</link> <comments>http://www.falsepositives.com/index.php/2011/04/20/twendr-now-in-70-more-locations/#comments</comments> <pubDate>Wed, 20 Apr 2011 21:01:04 +0000</pubDate> <dc:creator>Ian</dc:creator> <category><![CDATA[Social Networking]]></category> <guid
isPermaLink="false">http://www.falsepositives.com/?p=2922</guid> <description><![CDATA[on Monday April 11 Twitter rolled out 70 more locations to the previous 42 location (the “World”, 20 Counties and 21 Cities) . Thankfully I had planed for this and it was trivial to to import and support the new locations. But still, OMG!! We now have 111 locations : the &#8220;World&#8221;, 31 Counties and<p><a
href="http://www.falsepositives.com/index.php/2011/04/20/twendr-now-in-70-more-locations/">Read more <span
class="more-meta-nav">&#187;</span></a></p><p>Post from: <a
href="http://www.falsepositives.com">False Positives</a><br/><br/><a
href="http://www.falsepositives.com/index.php/2011/04/20/twendr-now-in-70-more-locations/">Twendr &#8211; Now in 70 more Locations</a></p> ]]></description> <content:encoded><![CDATA[<p>on Monday April 11 <a
href="http://blog.twitter.com/2011/04/trends-now-in-70-more-locations.html">Twitter rolled out 70 more locations</a> to the previous  42 location (the “World”, 20 Counties and 21 Cities) .</p><p>Thankfully I had planed for this and it was trivial to to import and support the new locations.  But still, OMG!! We now have 111 locations : the &#8220;World&#8221;, 31 Counties and 79 cities .</p><p>The United States now has 48 cities.  Only 12 counties do not have any cities.  The UK has 4 cites; Canada has 3 (Montreal and Vancouver join Toronto, so we can see Stanley Cup buzz : ) Japan (and Tokyo) are new, as are United Arab Emirates (UAE), Nigeria and South Africa.</p><p>poor hamster <img
src='http://www.falsepositives.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><p>this post has been crossposted from the Twendr blog : <a
href="http://twendr.wordpress.com/2011/04/20/twendr-now-in-70-more-locations/">http://twendr.wordpress.com/2011/04/20/twendr-now-in-70-more-locations/</a></p><p>Also of note : French Web Site “Around The Rézo” or Autour du Rezo has a nice write up on TwendR (post 70 plus) TwendR : un outil en ligne pour connaître les tweets qui enflamment chaque pays.  Details and links on the Twendr Blog <a
href="http://twendr.wordpress.com/2011/04/20/twendr-around-the-rezo/">Twendr : Around The Rézo</a></p><p>April 28th Update : Mashable&#8217;s story <a
href="http://on.mash.to/knHD64">Social Media Reacts to Marrakesh Bombing</a> links to Twendr!</p><blockquote><p>As we’ve seen during other major events and disasters, people turn to social media channels to share information, prayers and images. And today people have again turned to Twitter, YouTube and other social sites to share news out of Morocco. Marrakesh (or Marrakech) is a trending Twitter topic in Spain, France and the Netherlands, according to Twendr.</p></blockquote><p>Awesome traffic results!  I wish it had been a happier event.</p><div
class="plus-one-wrap"><g:plusone href="http://www.falsepositives.com/index.php/2011/04/20/twendr-now-in-70-more-locations/"></g:plusone></div><p>Post from: <a
href="http://www.falsepositives.com">False Positives</a><br/><br/><a
href="http://www.falsepositives.com/index.php/2011/04/20/twendr-now-in-70-more-locations/">Twendr &#8211; Now in 70 more Locations</a></p> ]]></content:encoded> <wfw:commentRss>http://www.falsepositives.com/index.php/2011/04/20/twendr-now-in-70-more-locations/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>How to block visits to your site in Google Analytics</title><link>http://www.falsepositives.com/index.php/2011/04/07/how-to-block-your-visits-to-your-site-in-google-analytics/</link> <comments>http://www.falsepositives.com/index.php/2011/04/07/how-to-block-your-visits-to-your-site-in-google-analytics/#comments</comments> <pubDate>Fri, 08 Apr 2011 00:00:16 +0000</pubDate> <dc:creator>Ian</dc:creator> <category><![CDATA[Uncategorized]]></category> <guid
isPermaLink="false">http://www.falsepositives.com/?p=2911</guid> <description><![CDATA[Tracking visits to a given website is a necessary SEO (Search Engine Optimization) function for many projects in order to determine &#8220;How I&#8217;m I doing&#8221; (for ROI) and &#8220;Where is everyone coming from&#8221; (for url referral and keyword). A common problem is how not to track the visits of the developer team or the client<p><a
href="http://www.falsepositives.com/index.php/2011/04/07/how-to-block-your-visits-to-your-site-in-google-analytics/">Read more <span
class="more-meta-nav">&#187;</span></a></p><p>Post from: <a
href="http://www.falsepositives.com">False Positives</a><br/><br/><a
href="http://www.falsepositives.com/index.php/2011/04/07/how-to-block-your-visits-to-your-site-in-google-analytics/">How to block visits to your site in Google Analytics</a></p> ]]></description> <content:encoded><![CDATA[<p>Tracking visits to a given website is a necessary SEO (Search Engine Optimization) function for many projects in order to determine &#8220;How I&#8217;m I doing&#8221; (for ROI) and &#8220;Where is everyone coming from&#8221; (for url referral and keyword).</p><p>A common problem is how not to track the visits of the developer team or the client themselves since these are are not the (generally) the people who interested in. (&#8220;Not the droids you&#8217;re look for&#8221;?)  For this purpose, these would not be valid visitors to the web site.</p><p>Stopping tracking is usually implemented by either blocking a static IP addresses or by using a cookie.  I also have a programming trick to provide a third solution.</p><p>One of the most popular products for <a
href="http://en.wikipedia.org/wiki/Web_analytics">tracking web traffic software</a> is the free Google Analytics tool.</p><p>So how do you go about configure Google Analytics to filter out unwanted visitors from the traffic logs?  Google Analytics does this by filtering on a static IP addresses.</p><p>1) First you need to know what your static IP address is (or get the static ip address is at the place your wish to block).  Googlling &#8220;what is my ip address&#8221; will bring up many sites that will help you, but I&#8217;m going to use <a
href="http://whatismyipaddress.com/">http://whatismyipaddress.com</a>.  Make a note of what that number is.</p><p>2) Next go to the Website Profiles page of your website in Google Analytics and edit the profile.</p><p>3) Next your going to &#8220;Add a Filter&#8221; to the profile.  Your are okay to keep the &#8220;Add <strong>new</strong> Filter for Profile&#8221; option.  The &#8220;Apply existing&#8221; lets you reuse filters (very handy if you are administrating many web sites).  Give it a name that identifies the company or group who use that ip address. and then change the filter type to &#8220;Traffic from the IP addresses&#8221;, and enter the ip address you got in step 1. Then save the changes and Done!</p><p><a
href="http://www.falsepositives.com/wp-content/uploads/2011/04/new_filter.png"><img
class="alignleft size-full wp-image-2912" style="border: 1px solid black; margin: 5px;" title="new_filter" src="http://www.falsepositives.com/wp-content/uploads/2011/04/new_filter.png" alt="" width="640" height="400" /></a></p><p>IP blocking in Google Analytics will only work if you have a <a
href="http://en.wikipedia.org/wiki/IP_address#Uses_of_static_addressing">static ip address</a>, but if your are not using a business grade internet connection, i.e. it a consumer account, your ISP usually does not guarantee a static address but assigns you a <a
href="http://en.wikipedia.org/wiki/IP_address#Sticky_dynamic_IP_address">sticky dynamic address</a> instead.</p><p>The other common method that third party (hosted) web traffic analytic software sometimes use is dropping a blocking cookie.  This method has the major flaw that it must be done on every machine and every browser that might be used.  And as a developer I often have multiple type of browsers open and every browser (and versions) installed.</p><p>Google does allow you as an advanced alternative to filter traffic by cookie, by using a javascript function to set a cookie on the computer &#038; browser and using that information to create a customer user defined filter.  Ugly details in Google Analytics help under <a
href="https://www.google.com/support/googleanalytics/bin/answer.py?answer=55481&#038;hl=en_US&#038;utm_id=ad">How do I exclude my internal traffic from reports?</a>.  I told you they where ugly.</p><p>I said I had a third method, didn&#8217;t I?  Because I allow system users to log into the administrative back end system, I can check in my code to see if the are logged in (or authenticated) and not serve up the Google Analytics javasctipt code to them, when they are viewing the public side.  No GA tracking.  WordPress uses a similar method to disallow the trackng of logged in users.  I have also used a similar approach to not serve up the tracking code in development mode, based on the host being either Local Host or the address of my staging box. <img
src='http://www.falsepositives.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><div
class="plus-one-wrap"><g:plusone href="http://www.falsepositives.com/index.php/2011/04/07/how-to-block-your-visits-to-your-site-in-google-analytics/"></g:plusone></div><p>Post from: <a
href="http://www.falsepositives.com">False Positives</a><br/><br/><a
href="http://www.falsepositives.com/index.php/2011/04/07/how-to-block-your-visits-to-your-site-in-google-analytics/">How to block visits to your site in Google Analytics</a></p> ]]></content:encoded> <wfw:commentRss>http://www.falsepositives.com/index.php/2011/04/07/how-to-block-your-visits-to-your-site-in-google-analytics/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> </channel> </rss>
<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk: basic
Page Caching using disk: enhanced (Requested URI is rejected)
Database Caching 17/116 queries in 0.968 seconds using disk: basic

Served from: www.falsepositives.com @ 2012-05-17 16:08:08 -->
