<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8347357443757451337</id><updated>2010-05-09T20:25:54.295-07:00</updated><title type='text'>Stuck On Why</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://www.stuckonwhy.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8347357443757451337/posts/default'/><link rel='alternate' type='text/html' href='http://www.stuckonwhy.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Dilan Jayawardane</name><uri>http://www.blogger.com/profile/00240711380788679185</uri><email>noreply@blogger.com</email></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>4</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8347357443757451337.post-3385883613573884585</id><published>2009-06-28T19:39:00.000-07:00</published><updated>2009-07-15T07:27:04.958-07:00</updated><title type='text'>My most powerful Michael Jackson memory</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_8H68E0fovw8/Ski1nSw0ROI/AAAAAAAAAmA/dQl0VnbFMWs/s1600-h/mj.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 171px; height: 278px;" src="http://4.bp.blogspot.com/_8H68E0fovw8/Ski1nSw0ROI/AAAAAAAAAmA/dQl0VnbFMWs/s320/mj.jpg" alt="" id="BLOGGER_PHOTO_ID_5352727843785950434" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;We were walking along a footpath, Math classes had just ended and the bus stop was about a mile away. The path led across paddy fields; the cool breeze smelled of hay and the canopy shielded us from the bright Colombo sun.&lt;br /&gt;&lt;br /&gt;A friend of mine started humming a familiar tune that brought a smile to my face.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Me: “Dude, that’s like my favorite song!”&lt;br /&gt;Friend: “Oh yeah? can you sing it?”&lt;br /&gt;Me: “Not really, can you?”&lt;br /&gt;Friend: “Yeah, all of it!”&lt;br /&gt;&lt;br /&gt;With that he begins singing aloud 'Heal the World'. All of it too, as he promised. Quite impressive for a guy who does not speak English.&lt;br /&gt;&lt;br /&gt;Yes, my friend who was educated at a substandard public school in Sinhala language did not speak English at all. He knew the meaning of none of the words he had memorized so well (I know because I asked him). Yet there he was, a fan of the legendary Michael Jackson, inspired by the spectacular music video of the Earth Song, pleading to “make the world a better place” in a language that was Greek to him. Perhaps more importantly all of us, a group of teenagers living as far as you can get from any liberal tree-huggers, had learned for the first time in a compassionate way that the earth ought to be cared for.&lt;br /&gt;&lt;br /&gt;Good artists please. Great artists inspire. Then there is the rare phenomenon with limitless power of expression that those otherwise indomitable barriers of culture, language and distance are wiped out when confronted by their creation. Sure Elvis was big, bigger were The Beatles. Yet you would be fool to seek for Elvis or Beatles fans in any third-world country outside of a few urban communities.&lt;br /&gt;&lt;br /&gt;The King of Pop though is instantly recognized at whatever corner of the world where Coca-Cola is sold. A kid with a poster promoting ‘Thriller’ or ‘Bad’ on his wall I’m sure can be found wherever the radio has reached. Jesus, I bet, is much less popular.&lt;br /&gt;&lt;br /&gt;Perhaps it was his intentionally simple yet powerful lyrics, or perhaps it was the ever creative dance moves. Perhaps even the extremely idiosyncratic personality helped. At the end though with very little doubt, the fifty year old who just departed is the most universally loved artist there ever was.&lt;br /&gt;&lt;br /&gt;Maybe he was aware of it deep down, when in 2001 he named "Heal the World" (which fared poorly in his home country) as his greatest work, or when he climbed up the roof of an SUV following the 2005 trials and frailly attempted to dance for his fans. At least I really hope he did know, because if a tenth of the gratitude expressed today was there an year ago MJ probably would still have been alive and rehearsing for his UK comeback, which of-course would have been mind-blowing, as usual that is.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8347357443757451337-3385883613573884585?l=www.stuckonwhy.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.stuckonwhy.com/feeds/3385883613573884585/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8347357443757451337&amp;postID=3385883613573884585' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8347357443757451337/posts/default/3385883613573884585'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8347357443757451337/posts/default/3385883613573884585'/><link rel='alternate' type='text/html' href='http://www.stuckonwhy.com/2009/06/my-most-powerful-michael-jackson-memory.html' title='My most powerful Michael Jackson memory'/><author><name>Dilan Jayawardane</name><uri>http://www.blogger.com/profile/00240711380788679185</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='07411632308255584403'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_8H68E0fovw8/Ski1nSw0ROI/AAAAAAAAAmA/dQl0VnbFMWs/s72-c/mj.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8347357443757451337.post-3241937449639838982</id><published>2009-02-12T10:06:00.000-08:00</published><updated>2009-02-12T10:42:23.442-08:00</updated><title type='text'>Twitter "Don't Click" hack explained</title><content type='html'>The 'hack' that is spreading through twitter like wildfire right now is pretty simple. The idea is when you click on the url http://tinyurl.com/amgzs6 a page that looks like this is loaded:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_8H68E0fovw8/SZRmEVU_TdI/AAAAAAAAAjE/FwxsDOxBnPw/s1600-h/Picture+28.png"&gt;&lt;img style="cursor: pointer; width: 200px; height: 134px;" src="http://3.bp.blogspot.com/_8H68E0fovw8/SZRmEVU_TdI/AAAAAAAAAjE/FwxsDOxBnPw/s200/Picture+28.png" alt="" id="BLOGGER_PHOTO_ID_5301974885952605650" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;When a user clicks on the "Don't Click" button a tweet containing the same link 'automagically' gets posted to his or her twitter.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_8H68E0fovw8/SZRrJcjIy5I/AAAAAAAAAjs/PleOPIe_1ww/s1600-h/Picture+29.png"&gt;&lt;img style="cursor: pointer; width: 320px; height: 60px;" src="http://4.bp.blogspot.com/_8H68E0fovw8/SZRrJcjIy5I/AAAAAAAAAjs/PleOPIe_1ww/s320/Picture+29.png" alt="" id="BLOGGER_PHOTO_ID_5301980471348480914" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;How does this work? The trick is fairly simple, the 'Don't click' button is actually loaded beneath the regular twitter page. This is accomplished by loading twitter in an iframe and setting the CSS z-index property of that iframe to something lower than the z-index of the button.&lt;br /&gt;&lt;br /&gt;But the twitter page is also set to transparent. Using CSS, the twitter page is moved so that the now invisible 'Update' button on Twitter is exactly on top of the visible "Don't Click" button. So when you think you are clicking on the latter, you are actually clicking on the former.&lt;br /&gt;&lt;br /&gt;This only works if the user is logged in though becuase Twitter allowes posting right from a url:&lt;br /&gt;&lt;br /&gt;http://twitter.com/home?status=XXXX&lt;br /&gt;where XXXX is the tweet.&lt;br /&gt;&lt;br /&gt;CSS used to accomplish this:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_8H68E0fovw8/SZRp3v1CJ6I/AAAAAAAAAjc/oidfxbcjUqU/s1600-h/untitled.html-1.jpg"&gt;&lt;img style="cursor: pointer; width: 400px; height: 222px;" src="http://3.bp.blogspot.com/_8H68E0fovw8/SZRp3v1CJ6I/AAAAAAAAAjc/oidfxbcjUqU/s400/untitled.html-1.jpg" alt="" id="BLOGGER_PHOTO_ID_5301979067774543778" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Finally, if we set the iframe to only partially transparent, we can actually see how the two buttons are placed on top of each other:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_8H68E0fovw8/SZRqsRkFqoI/AAAAAAAAAjk/wfyU-qfnEpQ/s1600-h/Mozilla+Firefox.jpg"&gt;&lt;img style="cursor: pointer; width: 286px; height: 191px;" src="http://1.bp.blogspot.com/_8H68E0fovw8/SZRqsRkFqoI/AAAAAAAAAjk/wfyU-qfnEpQ/s400/Mozilla+Firefox.jpg" alt="" id="BLOGGER_PHOTO_ID_5301979970183473794" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;What an example of the use of reverse psycology and virality!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8347357443757451337-3241937449639838982?l=www.stuckonwhy.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.stuckonwhy.com/feeds/3241937449639838982/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8347357443757451337&amp;postID=3241937449639838982' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8347357443757451337/posts/default/3241937449639838982'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8347357443757451337/posts/default/3241937449639838982'/><link rel='alternate' type='text/html' href='http://www.stuckonwhy.com/2009/02/twitter-dont-click-hack-explained.html' title='Twitter &quot;Don&apos;t Click&quot; hack explained'/><author><name>Dilan Jayawardane</name><uri>http://www.blogger.com/profile/00240711380788679185</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='07411632308255584403'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_8H68E0fovw8/SZRmEVU_TdI/AAAAAAAAAjE/FwxsDOxBnPw/s72-c/Picture+28.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8347357443757451337.post-715488371981069626</id><published>2008-10-02T16:32:00.000-07:00</published><updated>2008-10-02T16:36:14.831-07:00</updated><title type='text'>Pandora for the Englishman</title><content type='html'>The easiest way to access Pandora from outside the US is Hotspotshield, a free ad supported VPN. But no self respecting geek would want his whole internet connection hijacked for this, right?&lt;br /&gt;&lt;br /&gt;SSH tunneling is the solution. Clearly everybody has access to a server or three in the US. (Ok if you don't, there are loads of free proxy services and they generally suck balls)&lt;br /&gt;&lt;br /&gt;Just do,&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;ssh -D 9999 username@your-server-in-the-US&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;at the terminal. Then install the &lt;a href="http://foxyproxy.mozdev.org/"&gt;FoxyProxy&lt;/a&gt; firefox extention. After restarting FF, go to FoxyProxy settings and create a new SOCKS v5 proxy connection, just go&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;FoxyProxy Options -&gt; Proxies -&gt; Add New Proxy -&gt; Proxy Details&lt;/span&gt;&lt;br /&gt;and select ‘Manual configuration’.&lt;br /&gt;&lt;br /&gt;Foxy proxy is awesome cos you can set just the sites you need to be loaded through proxy. Just go to &lt;span style="font-weight: bold;"&gt;URL Patterns -&gt; Add New Pattern&lt;/span&gt; and add&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;*pandora.*&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Thats it, pandora should load. Pandora algorithms are impressive, the way it changes btw genres, tempo and even the sex of the vocalist suites my mood/taste much better than say LastFM.&lt;br /&gt;&lt;br /&gt;Now all thats left is set up openvpn so that I can access hulu as well.&lt;br /&gt;&lt;br /&gt;ps. Hulu doesn’t work through proxy cos the the flash media stream that doesn’t go through of Firefox is also subjected to location filtering.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8347357443757451337-715488371981069626?l=www.stuckonwhy.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.stuckonwhy.com/feeds/715488371981069626/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8347357443757451337&amp;postID=715488371981069626' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8347357443757451337/posts/default/715488371981069626'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8347357443757451337/posts/default/715488371981069626'/><link rel='alternate' type='text/html' href='http://www.stuckonwhy.com/2008/10/pandora-for-englishman.html' title='Pandora for the Englishman'/><author><name>Dilan Jayawardane</name><uri>http://www.blogger.com/profile/00240711380788679185</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='07411632308255584403'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8347357443757451337.post-8616252683898066932</id><published>2008-07-19T13:48:00.000-07:00</published><updated>2009-06-29T12:09:55.055-07:00</updated><title type='text'>Switch Caps lock and Escape keys on a Macbook</title><content type='html'>Textmate has fantastic word completion at hitting Esc key. On Macbook Pros though the key has the worst placement as opposed to the caps lock, which is massive in size and completely useless. I couldn’t find a way in TM to change the shortcut.&lt;br /&gt;fKeys came to rescue, now I have my caps lock as esc so that I can code much faster, hardly ever needing to type the full words on TM editor.&lt;br /&gt;&lt;br /&gt;Download fkeys latest beta (fKeys 0.2.1 BETA) at: http://www.kodachi.com/software/fKeys/download.html&lt;br /&gt;This is my plist file (sort of the config file to specify how to switch keys): http://dilanj.googlepages.com/kodachi-macbook-my.plist&lt;br /&gt;My configuration does: 1. Switch the caps lock key and esc key, 2. Turn the ‘Enter’ key in to another Option key. Edit it as you pease, its super simple and easy to understand.&lt;br /&gt;&lt;br /&gt;Navigate to /opt/kodachi/fKeys/ in finder. Click on ‘CompileTranslation’ and select the .plist file you download above. This will create a .fkk file that the program can read.&lt;br /&gt;Open ‘ChooseConfiig’, click on ‘Default’ and select the .fkk file you just created.&lt;br /&gt;Open ‘Activate’ and let it do it’s thing.&lt;br /&gt;&lt;br /&gt;Thats it, you’ll be coding much much faster on TM. (That is once you stop tripping over the newly place Esc key. Disabling Command+Esc shortcut for Front Row on Os X Prefs might help)&lt;br /&gt;&lt;br /&gt;Ps. Esc key word completion is generally universal to OS X.&lt;br /&gt;&lt;br /&gt;Thanks Kodachi!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8347357443757451337-8616252683898066932?l=www.stuckonwhy.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://www.stuckonwhy.com/feeds/8616252683898066932/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='https://www.blogger.com/comment.g?blogID=8347357443757451337&amp;postID=8616252683898066932' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8347357443757451337/posts/default/8616252683898066932'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8347357443757451337/posts/default/8616252683898066932'/><link rel='alternate' type='text/html' href='http://www.stuckonwhy.com/2008/07/switch-caps-lock-and-escape-keys-on.html' title='Switch Caps lock and Escape keys on a Macbook'/><author><name>Dilan Jayawardane</name><uri>http://www.blogger.com/profile/00240711380788679185</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='OpenSocialUserId' value='07411632308255584403'/></author><thr:total>0</thr:total></entry></feed>