<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-28772186</atom:id><lastBuildDate>Mon, 05 Mar 2018 20:46:45 +0000</lastBuildDate><category>reflexões</category><category>design</category><category>produtividade</category><category>pessoal</category><category>português</category><category>música</category><category>programação</category><category>webdesign</category><category>FEUP</category><category>TEUP</category><category>aborto</category><category>aplicações</category><category>book</category><category>canon</category><category>cron</category><category>educação</category><category>fotografia</category><category>gtd</category><category>livro</category><category>moral</category><category>rails</category><category>referendo</category><category>ruby</category><category>rvm</category><category>sociedade</category><category>sucesso</category><category>webstandards</category><category>whenever</category><title>opapao</title><description>uma mistura de zeros e uns...</description><link>http://opapao.blogspot.com/</link><managingEditor>noreply@blogger.com (Nelson Rocha)</managingEditor><generator>Blogger</generator><openSearch:totalResults>123</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-3318525527275326106</guid><pubDate>Sun, 29 Jan 2012 17:19:00 +0000</pubDate><atom:updated>2012-01-29T17:29:11.171+00:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">cron</category><category domain="http://www.blogger.com/atom/ns#">rails</category><category domain="http://www.blogger.com/atom/ns#">ruby</category><category domain="http://www.blogger.com/atom/ns#">rvm</category><category domain="http://www.blogger.com/atom/ns#">whenever</category><title>Configuring rake tasks with &#39;whenever&#39; and using app specific rvm settings (.rvmrc)</title><description>There&#39;s a thorn waiting for you if you decide to schedule your rake tasks using cron if you chose to manage you ruby and gems installs with rvm on an app by app configuration.&lt;br /&gt;&lt;br /&gt;&#39;Whenever&#39; already does the heavy lifting, but out-of-the-box it still won&#39;t work &#39;cos when cron fires a rake task you&#39;ll get a &quot;Could not find bundler&quot; error. A bit&amp;nbsp;annoying... It sounds as if the rvm environment isn&#39;t set. And it&#39;s not!&lt;br /&gt;&lt;br /&gt;The &lt;a href=&quot;https://github.com/javan/whenever&quot;&gt;&#39;whenever&#39; github project says&lt;/a&gt;:&lt;br /&gt;&lt;br /&gt;&lt;blockquote class=&quot;tr_bq&quot;&gt;&quot;All jobs are by default run with bash -l -c &#39;command...&#39;. Among other things, this allows your cron jobs to play nice with RVM by loading the entire environment instead of cron&#39;s somewhat limited environment.&quot;&lt;/blockquote&gt;&lt;br /&gt;And that&#39;s fine and all, but if it is so, why are we still getting those errors? &lt;br /&gt;&lt;br /&gt;After going through the &lt;a href=&quot;http://www.gnu.org/software/bash/manual/bashref.html#Invoking-Bash&quot;&gt;bash specification&lt;/a&gt; it became clear that the rvm &quot;magic&quot; that loads the gemset when you&#39;re inside your app directory couldn&#39;t happen because running &lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace; font-size: x-small;&quot;&gt;bash -l&lt;/span&gt; gives you a login shell that won&#39;t fire all the bash configuration files you use when you open a terminal. For that you need the &#39;interactive&#39; shell, or in another words you need to run it as &lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace; font-size: x-small;&quot;&gt;bash -l -i&lt;/span&gt;.&lt;br /&gt;But I haven&#39;t yet answered WHY you need it.&lt;br /&gt;&lt;br /&gt;This is why:&lt;br /&gt;&lt;br /&gt;When you install rvm you need to &quot;Load RVM into your shell sessions as a function&quot;, you can see that in the &lt;a href=&quot;http://beginrescueend.com/rvm/install/&quot;&gt;rvm install page&lt;/a&gt;.&lt;br /&gt;What this means is that you need to add a script line to one of you bash configuration files. They recommend .bash_profile and the script is:&lt;br /&gt;&lt;blockquote class=&quot;tr_bq&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace; font-size: x-small;&quot;&gt;[[ -s &quot;$HOME/.rvm/scripts/rvm&quot; ]] &amp;amp;&amp;amp; . &quot;$HOME/.rvm/scripts/rvm&quot;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;So, in order to have this when running a cron task you have 2 choices:&lt;br /&gt;- Include the script on your task list of commands (messy and cumbersome)&lt;br /&gt;- Run bash in interactive mode (clean and transparent, although eventually slower due to the overhead)&lt;br /&gt;&lt;br /&gt;If you don&#39;t want to get your hands dirty on the output of &#39;whenever&#39;, I suggest you define the whenever&#39;s path and job template and place it on the schedule.rb file:&lt;br /&gt;&lt;br /&gt;&lt;blockquote class=&quot;tr_bq&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace; font-size: x-small;&quot;&gt;env &#39;PATH&#39;, ENV[&#39;PATH&#39;]&lt;/span&gt;&lt;/blockquote&gt;&lt;blockquote class=&quot;tr_bq&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace; font-size: x-small;&quot;&gt;set :job_template, &quot;bash -l -i -c &#39;:job&#39;&quot;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;Then run &lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: &#39;Courier New&#39;, Courier, monospace; font-size: x-small;&quot;&gt;whenever --update-crontab&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;And you&#39;re done!</description><link>http://opapao.blogspot.com/2012/01/configuring-rake-tasks-with-whenever.html</link><author>noreply@blogger.com (Nelson Rocha)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-6791110231483936198</guid><pubDate>Wed, 08 Jun 2011 22:55:00 +0000</pubDate><atom:updated>2011-06-09T00:22:51.536+01:00</atom:updated><title>Gimp failing to start in Kubuntu (11.04)</title><description>Although this is no brainer, here&#39;s a solution to a problem I had when I moved to KDE, but first the problem:&lt;div&gt;- GIMP is installed and running under Gnome;&lt;/div&gt;&lt;div&gt;- GIMP fails to start under KDE;&lt;/div&gt;&lt;div&gt;- Problem persists if you remove and re-install it;&lt;/div&gt;&lt;div&gt;- In Konsole, &#39;gimp&#39; shoots a &quot;segmentation fault&quot;:&lt;/div&gt;&lt;div&gt;&lt;div&gt;(gimp:4450): GLib-WARNING **: /build/buildd/glib2.0-2.28.6/./glib/goption.c:2132: ignoring no-arg, optional-arg or filename flags (8) on option of type 0 &lt;/div&gt;&lt;div&gt;Segmentation fault&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;- But... GIMP runs if you &#39;sudo gimp&#39; it... &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Turns out that is a &lt;a href=&quot;http://kubuntuforums.net/forums/index.php?topic=3116721.msg262098#msg262098&quot;&gt;theme related issue&lt;/a&gt;...&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;All you have to do is:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;start &#39;&lt;b&gt;System Settings&lt;/b&gt;&#39; and choose &#39;&lt;b&gt;Application Appearance&lt;/b&gt;&#39; in the &#39;Common Appearance and Behavior&#39; group&lt;/li&gt;&lt;li&gt;choose the &#39;&lt;b&gt;GTK+ Appearance&lt;/b&gt;&#39; tab and select the option &#39;&lt;b&gt;&lt;i&gt;Raleigh&lt;/i&gt;&lt;/b&gt;&#39; in the &#39;&lt;b&gt;Widget style&lt;/b&gt;&#39; drop down list.&lt;/li&gt;&lt;li&gt;click on the &#39;&lt;b&gt;Apply&lt;/b&gt;&#39; button.&lt;/li&gt;&lt;li&gt;start GIMP by clicking on it&#39;s icon (Kmenu&amp;gt;Applications&amp;gt;Graphics). &lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;It should start without any problem and you&#39;re good to go!&lt;/div&gt;&lt;div&gt;You can even go back now and change the GTK+ Appearance to whatever you had before, because it won&#39;t matter.&lt;/div&gt;</description><link>http://opapao.blogspot.com/2011/06/gimp-failing-to-start-in-kubuntu.html</link><author>noreply@blogger.com (Nelson Rocha)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-2169660341700808754</guid><pubDate>Wed, 13 Apr 2011 21:42:00 +0000</pubDate><atom:updated>2011-04-13T23:08:38.920+01:00</atom:updated><title>Access iPad file system using ubunto</title><description>After a few chokes I managed to access the file system of my iPad2 using Ubunto, here are the steps it took to get the job done:&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;b&gt;1 - add this PPA: &lt;/b&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;blockquote&gt;ppa:pmcenery/ppa&lt;/blockquote&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;b&gt;2 - update: &lt;/b&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;blockquote&gt;sudo apt-get update&lt;/blockquote&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;b&gt;3 - install ifuse: &lt;/b&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;blockquote&gt;sudo apt-get install ifuse&lt;/blockquote&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;b&gt;4 - install libimobiledevice: &lt;/b&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;blockquote&gt;sudo apt-get install build-essential automake autoconf libtool libgnutls-dev libglib2.0-dev libxml2-dev libreadline5-dev&lt;/blockquote&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;b&gt;5 - install libimobiledevice1: &lt;/b&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;blockquote&gt;sudo apt-get install libimobiledevice1&lt;/blockquote&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;b&gt;6 - Go to &#39;System » Administration » User and Groups » Advanced settings » User Privileges&#39; and check everything! :)&lt;/b&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;b&gt;7 - Reboot&lt;/b&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;b&gt;8 - Connect ipad&lt;/b&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;b&gt;9 - If not mounted yet, mount it&lt;/b&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;By all means I&#39;m no expert on this matter! Maybe some steps are redundant (who knows? :), maybe even unnecessary, all I&#39;m saying is that these were the steps I had to take to make it work and you know that I&#39;ll just say: &quot;Works on my machine!&quot; :D&lt;/div&gt;&lt;div&gt;Anyway, hope this info will help someone with the same issue.&lt;/div&gt;</description><link>http://opapao.blogspot.com/2011/04/access-ipad-file-system-using-ubunto.html</link><author>noreply@blogger.com (Nelson Rocha)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-2530833159874720561</guid><pubDate>Wed, 30 Mar 2011 22:13:00 +0000</pubDate><atom:updated>2011-03-31T00:01:57.259+01:00</atom:updated><title>Windows 7 VPN problems while browsing</title><description>Having trouble with internet browsing when you&#39;re connected through a VPN are you?&lt;div&gt;And you tried all available browsers also?&lt;/div&gt;&lt;div&gt;Sweat no more!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;It seams that the last update on Microsoft Security Essentials brought with it a poisoned apple!&lt;/div&gt;&lt;div&gt;Here&#39;s what you have to do:&lt;/div&gt;&lt;div&gt;&lt;ol&gt;&lt;li&gt;Please open &lt;b&gt;Microsoft Security Essentials&lt;/b&gt; and click on the &#39;&lt;b&gt;Settings&lt;/b&gt;&#39; tab&lt;/li&gt;&lt;li&gt;Select &#39;&lt;b&gt;Real-time protection&lt;/b&gt;&#39; on the left panel&lt;/li&gt;&lt;li&gt;De-select the option &#39;&lt;b&gt;Enable Network Inspection System&lt;/b&gt;&#39;&lt;/li&gt;&lt;li&gt;Click &#39;Save Changes&#39; :)&lt;/li&gt;&lt;li&gt;Browse away!&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;div&gt;Here&#39;s the visual breadcrumb trail:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align:center&quot;&gt;&lt;br /&gt;&lt;a href=&quot;http://4.bp.blogspot.com/-giPcPRlqUdg/TZO1cANOtBI/AAAAAAAAAS4/tg_z2YkQ3ug/s1600/ms_essentials.png&quot; onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 224px;&quot; src=&quot;http://4.bp.blogspot.com/-giPcPRlqUdg/TZO1cANOtBI/AAAAAAAAAS4/tg_z2YkQ3ug/s320/ms_essentials.png&quot; border=&quot;0&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5590011055193371666&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href=&quot;http://2.bp.blogspot.com/-mB799LE9t1U/TZO1cnUmgaI/AAAAAAAAATA/MjUm1N8SatY/s1600/ms_essentials_2.png&quot; onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot;&gt;&lt;img style=&quot;display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 224px;&quot; src=&quot;http://2.bp.blogspot.com/-mB799LE9t1U/TZO1cnUmgaI/AAAAAAAAATA/MjUm1N8SatY/s320/ms_essentials_2.png&quot; border=&quot;0&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5590011065693274530&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;Hope this will help...&lt;/div&gt;</description><link>http://opapao.blogspot.com/2011/03/windows-7-vpn-problems-while-browsing.html</link><author>noreply@blogger.com (Nelson Rocha)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-giPcPRlqUdg/TZO1cANOtBI/AAAAAAAAAS4/tg_z2YkQ3ug/s72-c/ms_essentials.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-6147389499729248663</guid><pubDate>Sun, 16 Jan 2011 04:25:00 +0000</pubDate><atom:updated>2011-01-16T04:31:45.878+00:00</atom:updated><title>não posso deixar passar em branco</title><description>&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial; font-size: 12px; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; &quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;span&gt;&lt;span&gt;&quot;[...] &lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;Tudo é negro menos os nossos olhos&lt;div&gt;que dardejam luz no estupor da montanha incendiada pelo sol levante&lt;/div&gt;&lt;div&gt;já os nossos risos nervosos&lt;/div&gt;&lt;div&gt;soltos na velocidade da paisagem&lt;/div&gt;&lt;div&gt;desfilam para trás num bater de asas aflito e assustado&lt;/div&gt;&lt;div&gt;e o velho saxofone&lt;/div&gt;&lt;div&gt;como sereia rouca em calores de perdição&lt;/div&gt;&lt;div&gt;num sobressalto de vagas repentinas&lt;/div&gt;&lt;div&gt;abafa o chiar dos pneus&lt;/div&gt;&lt;div&gt;imprimindo correrias loucas ao granito macio da estrada&lt;/div&gt;&lt;div&gt;com que o mar cava a areia até aos nossos pés.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;Vertigem&quot;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;br /&gt;Decididamente, cada vez gosto mais de Mão Morta... como se houvesse ainda mais para gostar.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;[&lt;a href=&quot;http://www.mao-morta.org/letras10.htm&quot;&gt;letra completa no sítio certo&lt;/a&gt;]&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;</description><link>http://opapao.blogspot.com/2011/01/nao-posso-deixar-passar-em-branco.html</link><author>noreply@blogger.com (Nelson Rocha)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-225665014536594585</guid><pubDate>Tue, 04 Jan 2011 09:53:00 +0000</pubDate><atom:updated>2011-01-04T09:57:05.971+00:00</atom:updated><title>Decisões típicas de Ano Novo #1</title><description>Título: Deixar de colocar açúcar no café.&lt;br /&gt;&lt;br /&gt;Estado: Iniciado&lt;br /&gt;&lt;br /&gt;Prognóstico: Vai ser um ano bem amargo...</description><link>http://opapao.blogspot.com/2011/01/decisoes-tipicas-de-ano-novo-1.html</link><author>noreply@blogger.com (Nelson Rocha)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-1324743896030540323</guid><pubDate>Mon, 29 Nov 2010 00:22:00 +0000</pubDate><atom:updated>2010-11-29T00:59:27.968+00:00</atom:updated><title>O meu Windows 7 crasha aleatoriamente e eu não sei porquê - uma solução bizarra mas simples</title><description>Eu sou um bocado céptico em relação à febre dos lançamentos da Microsoft, quanto mais tempo passa mais céptico fico, é curioso... no entanto, e para contrariar esta tendência - ou talvez para fazer jus à excepção que confirma a regra - desde os primeiros rumores que sempre fui um apoiante (quase) incondicional do Windows 7 e até este momento não me tem desiludido... bom, isto dentro dos limites da gestão de expectativas normal para produtos mainstream.&lt;div&gt; &lt;/div&gt;&lt;div&gt;Porém nesta história havia um espinho cravado na sola do pé do desempenho do Windows 7 no meu portátil. Desde o primeiro dia - vá lá, desde a primeira semana - que sem mais nem p&#39;ra quê o portátil resolvia bloquear - ou no linguajar pseudo-técnico a que o democrático reino da informática nos habituou: crashar. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;- Ah e tal... eu devo ter instalado alguma coisa que ele não digeriu bem...&lt;/div&gt;&lt;div&gt;- Ui e o camandro... os drivers do portátil devem andar em pé-de-guerra uns com os outros e agora é isto...&lt;/div&gt;&lt;div&gt;(...)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Mas a água que passa debaixo da ponte conseguiu lá passar por bem mais do que 1 ano e a cena mantinha-se: volta e meia quem me estivesse a ver diria que eu estava a ter espasmos na mão direita [por não perceber porque é que o rato não se mexia...].&lt;/div&gt;&lt;div&gt;Este fim-de-semana dei-me ao trabalho de pesquisar um bocado por este problema &lt;a href=&quot;http://en.wikipedia.org/wiki/Internets&quot;&gt;nas internetes&lt;/a&gt; e lá fui dando com problemas parecidos, uns mais originais do que outros, mas nenhum que fosse textualmente o meu.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Até que, num fórum manhoso, descobri um thread onde se debatia esta questão. Contrariamente ao que é habitual nestes casos, o post foi colocado a oferecer a solução, em jeito de «pshht! olhem lá o que eu fui descobrir!»:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Ao que parece, o Windows 7 64b vem com uma fava e quem a trinca fica à nora sem poder fazer mais nada que não seja mandar o sistema ao ar com um &lt;i&gt;hard reboot&lt;/i&gt;.&lt;/div&gt;&lt;div&gt;Quando uma aplicação funciona em 32 bits e precisa do explorer, o SO passa a chamada para o executável &#39;&lt;i&gt;explorer.exe&lt;/i&gt;&#39; que está na pasta &#39;&lt;i&gt;C:\Windows\SysWOW64&lt;/i&gt;&#39;, o que é giro e atencioso da parte dele, diga-se.&lt;/div&gt;&lt;div&gt;No entanto, há aplicações marotas que julgam que sabem mais do que ele, e vai daí dizem: &lt;/div&gt;&lt;div&gt;- Ó maior, vai mas é à pasta &#39;&lt;i&gt;C:\Windows\System32&lt;/i&gt;&#39; que eu é que sei!&lt;/div&gt;&lt;div&gt;E, claro está, sistema que se prese não alinha numa coisa dessas, e nada de &#39;&lt;i&gt;explorer.exe&lt;/i&gt;&#39; nessa pasta e ficamos nós a ter um momento Zen em frente ao computador.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;h3&gt;SOLUÇÃO&lt;/h3&gt;&lt;span class=&quot;Apple-style-span&quot; &gt;(Porque pode haver gente a quem não interesse a história até aqui :)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Copiar o ficheiro &#39;explorer.exe&#39; da pasta &#39;&lt;i&gt;C:\Windows\SysWOW64&lt;/i&gt;&#39; para a pasta &#39;&lt;i&gt;C:\Windows\System32&lt;/i&gt;&#39;.&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Ainda agora não sei o que pensar disto tudo, do problema e da solução...&lt;/div&gt;</description><link>http://opapao.blogspot.com/2010/11/o-meu-windows-7-crasha-aleatoriamente-e.html</link><author>noreply@blogger.com (Nelson Rocha)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-7420125121979549709</guid><pubDate>Tue, 23 Nov 2010 23:34:00 +0000</pubDate><atom:updated>2010-11-24T00:13:12.344+00:00</atom:updated><title>Remote Desktop do Windows 7 para o Ubunto</title><description>&lt;div&gt;A propósito deste &lt;a href=&quot;http://pplware.sapo.pt/linux/ligue-se-remotamente-do-windows-ao-linux-via-xrdp/&quot;&gt;post no pplware&lt;/a&gt; resolvi fazer a ligação ao Ubunto do Windows 7... e basicamente dei com os burros na água porque o cliente de Remote Desktop do Win 7 dava erro de protocolo. &lt;/div&gt;&lt;div&gt;Lá consegui fazer luz mas, como sempre nestas histórias, a luz arranca com bastante dificuldade e aos soluços. Para que a candeia que vai à frente continue a iluminar 2 vezes, aqui está a minha receita para a utilização com sucesso do protocolo no Ubunto (ou Linux de sabor deb) e do cliente no Windows 7. Sim, porque para o Vista e XP a coisa corre bem à primeira.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1 - Instalar o protocolo no Ubunto&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: monospace; font-size: 13px; white-space: pre; &quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: monospace; font-size: 13px; white-space: pre; &quot;&gt;sudo apt-get install xrdp&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Isto vai instalar o gestor de sessões (sesman) e o protocolo xrdp. O sesman também come vnc, mas é mais imediata esta instalação.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2 - Ah e tal, porque o mstsc do Windows 7 é mais esquisito temos de ir buscar um mais antigo.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2.1 - Download da versão que está aqui &lt;a href=&quot;http://www.microsoft.com/downloads/en/details.aspx?FamilyID=80111f21-d48d-426e-96c2-08aa2bd23a49&amp;amp;DisplayLang=en&quot;&gt;nesta página da Microsoft&lt;/a&gt;&lt;/div&gt;&lt;div&gt;2.2 - Abrir o executável com um descompactador (o 7zip serve) e apenas extrair o ficheiro &quot;&lt;b&gt;msrdpcli.msi&lt;/b&gt;&quot;&lt;/div&gt;&lt;div&gt;2.3 - Abrir este &quot;msrdpcli.msi&quot; com o descompactador e extrair o ficheiro &quot;&lt;b&gt;data.cab&lt;/b&gt;&quot;&lt;/div&gt;&lt;div&gt;2.4 - Abrir este &quot;data.cab&quot; com o descompactador e extrair os 3 ficheiros para um directório onde serão executados, eu cá usei &quot;portables\xRDP&quot;, mas cada um é como cada qual...&lt;/div&gt;&lt;div&gt;2.5 - Mudar o nome a esses 3 ficheiros retirando o prefixo &quot;F10xx_&quot;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;3 - Executar o ficheiro &quot;&lt;b&gt;mstsc.exe&lt;/b&gt;&quot; (se o nome foi bem alterado :) e colocar o ip/host da máquina Linux&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;4 - Escolher o modulo &quot;&lt;b&gt;sesman-X11rdp&lt;/b&gt;&quot;, colocar o user e password do Linux e já está! A vida é como chocolate quente a ser derramado sobre gelado de baunilha com nozes.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;[&lt;a href=&quot;https://sourceforge.net/projects/xrdp/forums/forum/389417/topic/3455726/index/page/1&quot;&gt;Como facilmente se constata, este post serviu de referência&lt;/a&gt; ;) Sim, porque a solução vi-a lá]&lt;/div&gt;</description><link>http://opapao.blogspot.com/2010/11/remote-desktop-do-windows-7-para-o.html</link><author>noreply@blogger.com (Nelson Rocha)</author><thr:total>3</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-8338754431197526564</guid><pubDate>Tue, 09 Nov 2010 09:28:00 +0000</pubDate><atom:updated>2010-11-09T10:04:26.607+00:00</atom:updated><title>Uma questão de imagem</title><description>Estava eu ontem na viagem de metro para casa quando reparei que uns passos à minha frente seguia um profissional de uma empresa de segurança, a saber: da Prosegur.&lt;div&gt;&lt;br /&gt;&lt;div&gt;&lt;div&gt;Este profissional era um exemplo de impassividade controlada: sozinho mas sereno, estacado, sobrolho carregado, testa franzida - embora apenas o suficiente para ter alguma altivez no olhar -, cabelo impecavelmente rapado - de fazer inveja aos anúncios da Gillette -, porte robusto e quadrado, olhar preso no infinito como que assegurando todos os que estão à sua volta que a sua preocupação já não se foca em coisas terrenas e concretas, mas antes na metafísica da rotina e do papel do homem que a percorre...&lt;/div&gt;&lt;div&gt;Sim sr., um profissional inabalável na sua verticalidade.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Porém este profissional trazia consigo uma mochila. Uma mochila daquelas que apenas tem uma alça e que este a segurava com crispação exemplar, mantendo o braço permanentemente dobrado e com o polegar a rodeá-la numa posição de invulgar firmeza. Uma mochila moderna.&lt;/div&gt;&lt;div&gt;Uma mochila azul bebé com cerca de 30 centímetros de altura por 20 de largura onde se podia ler &quot;The Pink Girls&quot;.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</description><link>http://opapao.blogspot.com/2010/11/uma-questao-de-imagem.html</link><author>noreply@blogger.com (Nelson Rocha)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-3468101898021770839</guid><pubDate>Sun, 31 Oct 2010 09:13:00 +0000</pubDate><atom:updated>2010-10-31T09:43:50.356+00:00</atom:updated><title>Aaaah... os direitos, os direitos...</title><description>Quem me conhece um pouco mais de perto sabe o quão importante para mim é a rectidão moral e a integridade de valores.&lt;div&gt;É frequente entrar em conversas cujo tom rapidamente escala para uma tomada de partidos antagónica quando se fala nos direitos de quem cria ou publica e na prevaricação de quem utiliza e difunde (imoral ou ilegalmente) conteúdos de outros, sejam estes quais forem.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Admito: sou muito sensível à insensibilidade ignorante e parcial dos outros. Infelizmente a entidade que refiro como &quot;os outros&quot; parece ter ocupado a fatia mais representativa da população, o que não é coincidência, já que a esmagadora maioria das pessoas é consumidora, passiva ou activamente, e não criadora.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Ainda há o pormenor paradoxal desta parcialidade que me deixa absolutamente piurso! Quando estamos no lado dos prevaricadores tudo é permitido e não devia haver barreiras ao acesso e utilização de todos os recursos existentes por todos... mas se por um mero infortúnio do destino passamos para o lado de quem faz alguma coisa, então a coisa muda de figura, a porca torce o rabo e o caldo entorna, revelando uma mesquinhez sem paralelo e uma herculeana intransigência a tudo o que diz respeito à nossa criação. Não obstante, mantém-se a mesma postura para tudo o resto... é como se houvesse uma ilha de moralidade, pequenina, pequenina, perdida no tsunami da partilha usurpadora. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;E estou para aqui a expor a minha posição, mas não foi para isso que aqui vim.&lt;/div&gt;&lt;div&gt;Recentemente li &lt;a href=&quot;http://rising.blackstar.com/how-can-photographers-beat-copyright-thieves-michelangelo-had-the-right-idea.html&quot;&gt;um artigo do Jim Pickerell&lt;/a&gt; que aborda esta problemática dos direitos. O artigo é muito bom e apesar de se debruçar sobre a área da fotografia e dos fotógrafos as afirmações proferidas têm uma validade transversal.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Aqui ficam 2 pequenos excertos do texto, que eu recomendo a leitura a todos os interessados e principalmente a todos os outros...&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;blockquote&gt;«If you purchase a pair of jeans online, you can view them and pay for them, but you don’t have anything you can use until the product is physically delivered. With photography, if you show the customer what you are offering for sale, the customer immediately has something he can use — whether he chooses to pay for it or not.»&lt;/blockquote&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;blockquote&gt;«But I doubt most customers stop to think that a portion of the fee they are paying should be going to the creator for his or her abilities and the effort expended in the creation. I doubt they care.»&lt;/blockquote&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;[&lt;a href=&quot;http://rising.blackstar.com/author/jimpickerell&quot;&gt;Jim Pickerell&lt;/a&gt; via &lt;a href=&quot;http://rising.blackstar.com/&quot;&gt;Black Star Rising&lt;/a&gt;]&lt;/div&gt;</description><link>http://opapao.blogspot.com/2010/10/aaaah-os-direitos-os-direitos.html</link><author>noreply@blogger.com (Nelson Rocha)</author><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-6340202286572384708</guid><pubDate>Mon, 11 Oct 2010 08:54:00 +0000</pubDate><atom:updated>2010-10-11T09:56:46.855+01:00</atom:updated><title>Não sou um consumidor compulsivo, excepto...</title><description>quando descubro que há &lt;a href=&quot;http://www.bertrand.pt/catalogo/detalhes_produto.php?id=274925&quot;&gt;um novo livro de Mário Zambujal&lt;/a&gt;, nesse momento a única coisa que tenho a certeza é que TENHO de o ter. =)</description><link>http://opapao.blogspot.com/2010/10/nao-sou-um-consumidor-compulsivo.html</link><author>noreply@blogger.com (Nelson Rocha)</author><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-3643435502630483924</guid><pubDate>Thu, 23 Sep 2010 09:07:00 +0000</pubDate><atom:updated>2010-09-23T10:17:23.242+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">aplicações</category><category domain="http://www.blogger.com/atom/ns#">programação</category><title>O Notepad++ pode (finalmente) gravar em macro o &#39;find&#39; e &#39;replace&#39;</title><description>Não vou aqui perder tempo na discussão religiosa dos editores de código/texto e vou atalhar de imediato para o facto de, na &lt;a href=&quot;http://notepad-plus-plus.org/release/5.8&quot;&gt;nova versão do Notepad++ (5.8)&lt;/a&gt;, já haver a opção de gravar em macro as operações de find e replace!&lt;div&gt;&lt;br /&gt;&lt;div&gt;Como se pode ler na &lt;a href=&quot;http://notepad-plus-plus.org/release/5.8&quot;&gt;página da release&lt;/a&gt;:&lt;/div&gt;&lt;div&gt;&lt;blockquote&gt;Add macro new ability to record search and replace actions.&lt;/blockquote&gt;&lt;/div&gt;&lt;div&gt;Mas que excelente notícia! Ao tempo que esta funcionalidade estava solicitada pela comunidade!&lt;/div&gt;&lt;div&gt;&lt;div&gt;Vamos lá ver se corresponde à expectativa ;) &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</description><link>http://opapao.blogspot.com/2010/09/o-notepad-pode-finalmente-gravar-em.html</link><author>noreply@blogger.com (Nelson Rocha)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-4005192081394979840</guid><pubDate>Wed, 21 Jul 2010 15:41:00 +0000</pubDate><atom:updated>2010-07-21T16:48:48.559+01:00</atom:updated><title>Uma frase absolutamente fantástica</title><description>&lt;div&gt;Recomendo a visualização &lt;a href=&quot;http://www.silberstudios.tv/videos/natural-lighting-photos-holmes&quot;&gt;desta excelente entrevista com Bob Holmes&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Aqui fica uma pequena amostra:&lt;/div&gt;&lt;div&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div&gt;&quot;Photography is deceptively simple. &lt;/div&gt;&lt;div&gt;You can&#39;t expect to pick a violin and play it within a week; but people expect to pick up a camera and take good photographs within a week... and it just doesn&#39;t happen. &lt;/div&gt;&lt;div&gt;Everybody can get the occasional really good photograph, but the secret is to be consistent...&quot;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;Como eu concordo com ele... tanto no campo da fotografia como em muitos outros.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;[via &lt;a href=&quot;http://www.silberstudios.tv/&quot;&gt;silberstudios.tv&lt;/a&gt;]&lt;/div&gt;&lt;div&gt;Ref: &lt;a href=&quot;http://www.silberstudios.tv/videos/natural-lighting-photos-holmes&quot;&gt;http://www.silberstudios.tv/videos/natural-lighting-photos-holmes&lt;/a&gt;&lt;/div&gt;</description><link>http://opapao.blogspot.com/2010/07/uma-frase-absolutamente-fantastica.html</link><author>noreply@blogger.com (Nelson Rocha)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-4279439596117159209</guid><pubDate>Tue, 06 Jul 2010 16:37:00 +0000</pubDate><atom:updated>2010-07-08T22:41:26.607+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">reflexões</category><title>Sobre a distinção entre o objectivo e a acção</title><description>Como acontece habitualmente, dou por mim a reflectir sobre o quotidiano, meu ou que me é apresentado, e desta vez debrucei-me no esboroar da acção em detrimento do objectivo.&lt;br /&gt;Quando, há uns anos, decidia ouvir música, sentava-me no meu quarto e fazia isso mesmo, ouvia música. Do mesmo modo, quando ia tomar café, fosse pela manhã ou logo após o almoço, sozinho ou acompanhado, &quot;tomar café&quot; era uma actividade de lazer.&lt;br /&gt;Ora, passados uns anos, e como diz o meu pai: &quot;deixando-nos levar pelo rolo compressor do dia-a-dia&quot;, descubro que tudo mudou. &lt;div&gt;O mais interessante é que descobri que tudo mudou quando recentemente tentei usufruir de um momento desses, ou seja, quando tentei resgatar o prazer de tomar um café pela manhã, indo um pouco mais cedo e inclusivamente puxando de um livro para começar o dia com alguma qualidade... Nesse dia, e enquanto retomava a rotina, apercebi-me da distância a que tinha deixado ir esta esterilização da acção. &lt;div&gt;Quero então dizer que, à medida que os anos foram passando, e com o assumir de responsabilidades que se traduzem em obrigações que, por sua vez, nos obrigam à prática da rotina, acções como a de tomar café - com toda a sua envolvência, ritmo e emoção - foram sendo paulatinamente substituídas pelo objecto da actividade, ou seja, pelo mero acto de beber o café, despindo o momento de toda a qualidade e significado, fazendo-o, ele próprio, um elemento da rotina.&lt;/div&gt;&lt;div&gt;O que acabo de dizer relativamente ao acto de tomar um café repete-se com a mesma matriz em muitas outras actividades diárias, e observo a minha vida, e dos outros, e reparo que este fenómeno infelizmente tomou conta da nossa vida consciente. &lt;/div&gt;&lt;div&gt;Todos os dias vejo pessoas que sorvem cafés sem os sentir, que ouvem música sem a escutar, que passam os olhos por jornais sem os ler e que falam com outras pessoas sem conversar.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Espero que o facto de estar consciente desta subversão da acção face ao objectivo me ajude a equilibrar melhor a balança entre o que faço e o que realmente quero fazer... e de que modo.&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;</description><link>http://opapao.blogspot.com/2010/07/sobre-distincao-entre-o-objectivo-e.html</link><author>noreply@blogger.com (Nelson Rocha)</author><thr:total>3</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-4296676869435851564</guid><pubDate>Wed, 26 May 2010 20:33:00 +0000</pubDate><atom:updated>2010-05-26T21:37:11.897+01:00</atom:updated><title>Learning Revolution - Ted Talk</title><description>This is a fantastic talk by Sir Ken Robinson about the human talent crisis.&lt;br /&gt;A must see:&lt;br /&gt;&lt;br /&gt;&lt;div style=&quot;text-align:center&quot;&gt;&lt;br /&gt;&lt;object width=&quot;446&quot; height=&quot;326&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://video.ted.com/assets/player/swf/EmbedPlayer.swf&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot; /&gt;&lt;param name=&quot;allowScriptAccess&quot; value=&quot;always&quot;/&gt;&lt;param name=&quot;wmode&quot; value=&quot;transparent&quot;&gt;&lt;/param&gt;&lt;param name=&quot;bgColor&quot; value=&quot;#ffffff&quot;&gt;&lt;/param&gt; &lt;param name=&quot;flashvars&quot; value=&quot;vu=http://video.ted.com/talks/dynamic/SirKenRobinson_2010-medium.flv&amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/SirKenRobinson-2010.embed_thumbnail.jpg&amp;vw=432&amp;vh=240&amp;ap=0&amp;ti=865&amp;introDuration=15330&amp;adDuration=4000&amp;postAdDuration=830&amp;adKeys=talk=sir_ken_robinson_bring_on_the_revolution;year=2010;theme=how_the_mind_works;theme=whipsmart_comedy;theme=a_taste_of_ted2010;theme=master_storytellers;theme=the_rise_of_collaboration;theme=how_we_learn;theme=the_creative_spark;theme=new_on_ted_com;event=TED2010;&amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;&quot; /&gt;&lt;embed src=&quot;http://video.ted.com/assets/player/swf/EmbedPlayer.swf&quot; pluginspace=&quot;http://www.macromedia.com/go/getflashplayer&quot; type=&quot;application/x-shockwave-flash&quot; wmode=&quot;transparent&quot; bgColor=&quot;#ffffff&quot; width=&quot;446&quot; height=&quot;326&quot; allowFullScreen=&quot;true&quot; allowScriptAccess=&quot;always&quot; flashvars=&quot;vu=http://video.ted.com/talks/dynamic/SirKenRobinson_2010-medium.flv&amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/SirKenRobinson-2010.embed_thumbnail.jpg&amp;vw=432&amp;vh=240&amp;ap=0&amp;ti=865&amp;introDuration=15330&amp;adDuration=4000&amp;postAdDuration=830&amp;adKeys=talk=sir_ken_robinson_bring_on_the_revolution;year=2010;theme=how_the_mind_works;theme=whipsmart_comedy;theme=a_taste_of_ted2010;theme=master_storytellers;theme=the_rise_of_collaboration;theme=how_we_learn;theme=the_creative_spark;theme=new_on_ted_com;event=TED2010;&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;</description><link>http://opapao.blogspot.com/2010/05/learning-revolution-ted-talk.html</link><author>noreply@blogger.com (Nelson Rocha)</author><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-2779832344295053825</guid><pubDate>Thu, 22 Apr 2010 21:31:00 +0000</pubDate><atom:updated>2010-04-23T02:07:18.452+01:00</atom:updated><title>ClipR - bookmarklet for better internet reading (The Chocolate Flavor)</title><description>&lt;div&gt;For a long time I’ve been stressed with the way web pages are designed (now that’s an original thought =), especially when you’re talking about articles or long texts.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A few weeks ago I saw &lt;a href=&quot;http://www.vcarrer.com/2010/03/clipr-bookmarklet-for-better-internet.html&quot;&gt;Vladimir Carrer’s post on his bookmarklet&lt;/a&gt; for better internet reading named &lt;a href=&quot;http://www.vcarrer.com/2010/03/clipr-bookmarklet-for-better-internet.html&quot;&gt;ClipR&lt;/a&gt;. And It struck me like lightening!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What a Great Job! Finally a really useful tool that could easily transform a reading time nightmare, in a more pleasant experience. And every day since I found myself using this bookmarklet over and over again, which is another great sign of a wonderful job.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I always tend to take a light foreground over dark background, whether it’s on IDEs, text editors or any other application, so although I was loving the ClipR experience, I started to feel a bit tired when reading long articles.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href=&quot;http://www.vcarrer.com/&quot;&gt;Carrer&lt;/a&gt; realeased his bookmarklet with an MIT license and encourage everyone to personalize it, so I thought I could give it a try.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I tweaked a bit on the colors, until I found a nice palette, and then spent some time changing the jQuery code a bit so that the bookmarklet could handle a wider range of page layouts.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-weight:bold;&quot;&gt;And Voilá! The «chocolate flavored» ClipR was born!&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;As with any other bookmarklet, to install it you just have to drag it to you browser’s bookmark toolbar. It’s this brownish square right here:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style=&quot;text-align:center&quot;&gt;&lt;div style=&quot;width:250px;height:35px;color:#DEC37C;background-color:#26170F;border:1px solid #DEC37C&quot;&gt;&lt;a style=&quot;color:#DEC37C;&quot; href=&quot;javascript:(function(e,a,g,h,f,c,b,d){if(!(f=e.jQuery)||f.fn.jquery&lt;g||h(f)){c=a.createElement(&#39;script&#39;);c.type=&#39;text/javascript&#39;;c.src=&#39;http://ajax.googleapis.com/ajax/libs/jquery/&#39;+g+&#39;/jquery.min.js&#39;;c.onload=c.onreadystatechange=function(){if(!b&amp;&amp;(!(d=this.readyState)||d==&#39;loaded&#39;||d==&#39;complete&#39;)){h((f=e.jQuery).noConflict(1),b=1);f(c).remove()}};a.documentElement.childNodes[0].appendChild(c)}})(window,document,&#39;1.4.2&#39;,function($,L){$(&#39;iframe,object,embed,input[type=image],ins&#39;).hide();$(&#39;div,table&#39;).live(&#39;mouseover%20mouseout%20click&#39;,function(c){c.type==&#39;mouseover&#39;?$(this).css({border:&#39;2px%20solid%20red&#39;}):$(&#39;div,table&#39;).css({border:&#39;none&#39;});if(c.type==&#39;click&#39;){$(&#39;link[type=\&#39;text/css\&#39;],link[rel=\&#39;stylesheet\&#39;],script,style,noscript&#39;).remove();var%20lnk=&#39;#54A3C1&#39;;var%20txt=&#39;#DEC37C&#39;;var%20bck=&#39;#26170F&#39;;var%20brd=&#39;#7A0000&#39;;var%20hdg=&#39;#D97C0B&#39;;$(&#39;body&#39;).empty();$(this).appendTo(&#39;body&#39;);var%20h_=$(&#39;title&#39;);$(&#39;head&#39;).empty().append(h_);$(&#39;head&#39;).append($(document.createElement(&#39;style&#39;)).attr(&#39;type&#39;,&#39;text/css&#39;).text(&#39;@media%20print{div,table%20{width:100%%20!important;font-family:Garamond,serif%20!important;font-size:14pt%20!important;}}@media%20screen{div,p{margin:0.618em%200}table{margin:20px%20auto;border:1px%20dotted%20&#39;+brd+&#39;}td{font:21px/1.618%20Georgia,%20serif;color:txt;border:1px%20dotted%20&#39;+brd+&#39;}body,table{background-color:&#39;+bck+&#39;}h1,h2,h3,h4,h5,h6{line-height:1.3;color:&#39;+hdg+&#39;}a{color:&#39;+lnk+&#39;}img{display:block;margin:10px}}&#39;));var%20loc=$(document).attr(&#39;location&#39;).href;var%20d=document;var%20a_=$(d.createElement(&#39;a&#39;)).attr(&#39;href&#39;,loc).text(h_.text());var%20b=$(d.createElement(&#39;div&#39;)).append(d.createElement(&#39;hr&#39;)).append(&#39;Original%20web%20page:%C2%A0&#39;).append(a_).append(d.createElement(&#39;hr&#39;));$(this).removeAttr(&#39;style&#39;).removeAttr(&#39;class&#39;);$(this).find(&#39;*&#39;).removeAttr(&#39;style&#39;).removeAttr(&#39;class&#39;).removeAttr(&#39;align&#39;);$(this).append(b).prepend(b);$(this).css({display:&#39;block&#39;,font:&#39;21px/1.618%20Georgia,%20serif&#39;,color:txt,width:&#39;62%&#39;,margin:&#39;10px%20auto&#39;});$(&#39;div,table&#39;).die(&#39;mouseover%20mouseout%20click&#39;);$(&#39;html,%20body&#39;).scrollTop(0);}%20return%20false});});&quot;&gt;Chocolate flavored ClipR&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Here&#39;s an example of before/after usage:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style=&quot;text-align:center;width:100%&quot;&gt;&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://3.bp.blogspot.com/_iB5Hq_SpzOY/S9DJLyB5IQI/AAAAAAAAARA/8aOf3TrNC_M/s1600/A+List+Apart_original.png&quot;&gt;&lt;img style=&quot;cursor:pointer; cursor:hand;width: 198px; height: 320px;&quot; src=&quot;http://3.bp.blogspot.com/_iB5Hq_SpzOY/S9DJLyB5IQI/AAAAAAAAARA/8aOf3TrNC_M/s320/A+List+Apart_original.png&quot; border=&quot;0&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5463087552245866754&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://4.bp.blogspot.com/_iB5Hq_SpzOY/S9DJaZX87nI/AAAAAAAAARI/-vA-IavDTrM/s1600/A+List+Apart_small.png&quot;&gt;&lt;img style=&quot;cursor:pointer; cursor:hand;width: 198px; height: 320px;&quot; src=&quot;http://4.bp.blogspot.com/_iB5Hq_SpzOY/S9DJaZX87nI/AAAAAAAAARI/-vA-IavDTrM/s320/A+List+Apart_small.png&quot; border=&quot;0&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5463087803325542002&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;http://www.alistapart.com/articles/advanced-debugging-with-javascript&quot;&gt;Example page&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Feel free to use it, and please refer to the original post for credits!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;And please let me know what you think of it =)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;[This post was written with the explicit permission of the original author of ClipR, &lt;a href=&quot;http://www.vcarrer.com/&quot;&gt;Vladimir Carrer&lt;/a&gt;, to whom I’m really thankful for his bookmarklet and for letting me change it and publish my changes]&lt;/div&gt;</description><link>http://opapao.blogspot.com/2010/04/clipr-bookmarklet-for-better-internet.html</link><author>noreply@blogger.com (Nelson Rocha)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_iB5Hq_SpzOY/S9DJLyB5IQI/AAAAAAAAARA/8aOf3TrNC_M/s72-c/A+List+Apart_original.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-6639421373875747076</guid><pubDate>Fri, 09 Apr 2010 14:52:00 +0000</pubDate><atom:updated>2010-04-09T16:03:18.299+01:00</atom:updated><title>Solution to Google Chrome&#39;s proxy authentication issue</title><description>I &lt;a href=&quot;http://www.google.com/support/forum/p/Chrome/thread?tid=0f315b6a5aa7e1d8&amp;amp;hl=en&amp;amp;fid=0f315b6a5aa7e1d8000483ce056dc518&quot;&gt;posted a comment on Chrome&#39; forum&lt;/a&gt; with the solution to an annoying Chrome behavior when working behind a corporate proxy: basically it doesn&#39;t store your proxy authentication  details so you have to fill them EVERY SINGLE TIME you start Chrome.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In short, this is the solution I found:&lt;/div&gt;&lt;div&gt;1 - append to chrome&#39;s link the proxy&#39;s IP and port&lt;br /&gt;  (e.g.: ...Application\chrome.exe --proxy-server=192.168.6.666:8080 )&lt;/div&gt;&lt;div&gt;2 - set an actual start page &lt;/div&gt;&lt;div&gt;3 - run Chrome&#39;s link as an administrator&lt;/div&gt;&lt;div&gt;4 - fill in the details for the proxy auth (and click &quot;save password&quot; after you&#39;ve connected =)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;That&#39;s it!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Have a nice weekend ;)&lt;/div&gt;</description><link>http://opapao.blogspot.com/2010/04/solution-to-google-chromes-proxy.html</link><author>noreply@blogger.com (Nelson Rocha)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-1701819461727122050</guid><pubDate>Mon, 05 Apr 2010 23:25:00 +0000</pubDate><atom:updated>2010-10-15T14:57:07.811+01:00</atom:updated><title>Memórias de &#39;93 [Blur - Popscene] tou mesmo velho...</title><description>Que longe que parece agora o Agosto de 1993 onde vi estes (ainda quase anónimos) tipos a dar um grande concerto na 1ª parte de Siouxsie and The Banshees na Figueira da Foz...&lt;br /&gt;&lt;br /&gt;&lt;div style=&quot;text-align:center&quot;&gt;&lt;object style=&quot;background-image:url(http://i4.ytimg.com/vi/Wwl1isXJ57M/hqdefault.jpg)&quot; width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/Wwl1isXJ57M?fs=1&amp;amp;hl=en_US&quot;&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot;&gt;&lt;embed src=&quot;http://www.youtube.com/v/Wwl1isXJ57M?fs=1&amp;amp;hl=en_US&quot; width=&quot;425&quot; height=&quot;344&quot; allowscriptaccess=&quot;never&quot; allowfullscreen=&quot;true&quot; wmode=&quot;transparent&quot; type=&quot;application/x-shockwave-flash&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;O som que eles faziam na altura era mais cru, mais enérgico, mais brit.&lt;br /&gt;Esta música em conjunto com a «There&#39;s no other way» continuam a ser as minhas favoritas.&lt;br /&gt;Ainda hoje dou comigo a trautear «so in the absence of a way of live, I repeat this again and again...» vindo do nada.&lt;br /&gt;Aliás, foi por isso que me lembrei de a procurar.&lt;br /&gt;&lt;br /&gt;[ACTUALIZAÇÃO - Tive de actualizar o link para o vídeo porque o anterior estava numa conta de um prevaricador, que entretanto foi bloqueada =)]</description><link>http://opapao.blogspot.com/2010/04/memorias-de-93-tou-mesmo-velho.html</link><author>noreply@blogger.com (Nelson Rocha)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-1549411003179050968</guid><pubDate>Tue, 30 Mar 2010 23:12:00 +0000</pubDate><atom:updated>2010-03-31T00:25:06.501+01:00</atom:updated><title>My butt&#39;s new friend (ou o novo amigo do meu rabo)</title><description>Acabei de comprar este banco para o meu escritório... é lindo!&lt;br /&gt;Ainda estive na dúvida entre ele e uma cadeira de cabedal branco igualmente linda, mas o vermelho ganhou! E além do mais no banco tenho melhor postura =)&lt;br /&gt;&lt;br /&gt;E o &quot;desembrulhing&quot; foi feito ao som de Duke Ellington, sim porque mal cheguei a casa foi colocar mãos à obra! =)&lt;br /&gt; &lt;br /&gt;&lt;div style=&quot;text-align:center&quot;&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://4.bp.blogspot.com/_iB5Hq_SpzOY/S7KGQE77VbI/AAAAAAAAAP8/jFKThamM7Qc/s1600/s_IMG_5059.JPG&quot;&gt;&lt;img style=&quot;cursor:pointer; cursor:hand;width: 320px; height: 214px;&quot; src=&quot;http://4.bp.blogspot.com/_iB5Hq_SpzOY/S7KGQE77VbI/AAAAAAAAAP8/jFKThamM7Qc/s320/s_IMG_5059.JPG&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5454569709460215218&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style=&quot;text-align:center&quot;&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://2.bp.blogspot.com/_iB5Hq_SpzOY/S7KGmpSTy2I/AAAAAAAAAQE/0TPXvQUaU_Q/s1600/s_IMG_5061.JPG&quot;&gt;&lt;img style=&quot;cursor:pointer; cursor:hand;width: 320px; height: 214px;&quot; src=&quot;http://2.bp.blogspot.com/_iB5Hq_SpzOY/S7KGmpSTy2I/AAAAAAAAAQE/0TPXvQUaU_Q/s320/s_IMG_5061.JPG&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5454570097174891362&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style=&quot;text-align:center&quot;&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://1.bp.blogspot.com/_iB5Hq_SpzOY/S7KGzkhS_3I/AAAAAAAAAQM/T0Bx4sFbkak/s1600/s_IMG_5062.JPG&quot;&gt;&lt;img style=&quot;cursor:pointer; cursor:hand;width: 320px; height: 214px;&quot; src=&quot;http://1.bp.blogspot.com/_iB5Hq_SpzOY/S7KGzkhS_3I/AAAAAAAAAQM/T0Bx4sFbkak/s320/s_IMG_5062.JPG&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5454570319233875826&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style=&quot;text-align:center&quot;&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://3.bp.blogspot.com/_iB5Hq_SpzOY/S7KHC0KHYyI/AAAAAAAAAQU/uWln84q6i0A/s1600/s_IMG_5064.JPG&quot;&gt;&lt;img style=&quot;cursor:pointer; cursor:hand;width: 320px; height: 214px;&quot; src=&quot;http://3.bp.blogspot.com/_iB5Hq_SpzOY/S7KHC0KHYyI/AAAAAAAAAQU/uWln84q6i0A/s320/s_IMG_5064.JPG&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5454570581129650978&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style=&quot;text-align:center&quot;&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://3.bp.blogspot.com/_iB5Hq_SpzOY/S7KHLSOx2oI/AAAAAAAAAQc/nFkk8L_3uiY/s1600/s2_IMG_5071.JPG&quot;&gt;&lt;img style=&quot;cursor:pointer; cursor:hand;width: 214px; height: 320px;&quot; src=&quot;http://3.bp.blogspot.com/_iB5Hq_SpzOY/S7KHLSOx2oI/AAAAAAAAAQc/nFkk8L_3uiY/s320/s2_IMG_5071.JPG&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5454570726641228418&quot; /&gt;&lt;/a&gt;&lt;/div&gt;</description><link>http://opapao.blogspot.com/2010/03/my-butts-new-friend-ou-o-novo-amigo-do.html</link><author>noreply@blogger.com (Nelson Rocha)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_iB5Hq_SpzOY/S7KGQE77VbI/AAAAAAAAAP8/jFKThamM7Qc/s72-c/s_IMG_5059.JPG" height="72" width="72"/><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-7307825462344912937</guid><pubDate>Wed, 24 Mar 2010 00:55:00 +0000</pubDate><atom:updated>2010-03-24T01:05:40.847+00:00</atom:updated><title>Private joke para o pessoal da empresa</title><description>Já não vimos isto em qualquer lado?&lt;br /&gt;&lt;br /&gt;&lt;div style=&quot;text-align:center;&quot;&gt;&lt;br /&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://2.bp.blogspot.com/_iB5Hq_SpzOY/S6ljsU5R0_I/AAAAAAAAAP0/NDPh8mvLeNg/s1600-h/2ry3x29.jpg.gif&quot;&gt;&lt;img style=&quot;cursor:pointer; cursor:hand;width: 311px; height: 235px;&quot; src=&quot;http://i41.tinypic.com/2ry3x29.jpg&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5451998437083042802&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[ideia tirada do fabuloso blog da &lt;a href=&quot;http://meninalimao.blogspot.com/2010/03/you-have-no-idea.html&quot;&gt;Menina Limão&lt;/a&gt;]</description><link>http://opapao.blogspot.com/2010/03/private-joke-para-o-pessoal-da-empresa.html</link><author>noreply@blogger.com (Nelson Rocha)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://i41.tinypic.com/2ry3x29_th.jpg" height="72" width="72"/><thr:total>1</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-5105923977364406579</guid><pubDate>Tue, 23 Mar 2010 00:30:00 +0000</pubDate><atom:updated>2010-03-23T00:35:36.785+00:00</atom:updated><title>Sobre a questão do «gratuito»</title><description>Ainda há dias estava a conversar sobre o momento em que o dito «gratuito» irá colapsar sobre si próprio.&lt;br /&gt;Mais oportuna não podia ser &lt;a href=&quot;http://www.smashingmagazine.com/ebook.html&quot;&gt;este pedido da Smashing Magazine&lt;/a&gt;.&lt;br /&gt;Enfim, um artigo muito bem escrito &lt;a href=&quot;http://goo.gl/awEW&quot;&gt;pode ser encontrado aqui&lt;/a&gt; e que me poupa o trabalho de explicar o meu ponto de vista ;)</description><link>http://opapao.blogspot.com/2010/03/sobre-questao-do-gratuito.html</link><author>noreply@blogger.com (Nelson Rocha)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-3424115973697623621</guid><pubDate>Fri, 19 Mar 2010 23:46:00 +0000</pubDate><atom:updated>2010-03-19T23:54:02.003+00:00</atom:updated><title>Mais uma foto minha escolhida na Wikipédia</title><description>Tal como aconteceu &lt;a href=&quot;http://opapao.blogspot.com/2010/02/purina-pet-charts-seleccionou-uma-foto.html&quot;&gt;nas outras ocasiões&lt;/a&gt;, só tenho a agradecer terem achado que uma fotografia minha merecia tamanha distinção. Desta vez foi para ser incluída na Wikipédia para ilustrar a Capela de Santa Catarina (também conhecida por Capela das Almas).&lt;br /&gt;&lt;br /&gt;Ó p&#39;ra ela aqui tão gira em acção:&lt;br /&gt;&lt;br /&gt;&lt;a style=&quot;display:block; text-align:center&quot; onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://pt.wikipedia.org/wiki/Capela_de_Santa_Catarina_%28Santo_Ildefonso%29&quot;&gt;&lt;img style=&quot;cursor: pointer; width: 400px; height: 254px;&quot; src=&quot;http://1.bp.blogspot.com/_iB5Hq_SpzOY/S6QNqngkMFI/AAAAAAAAAPs/g3D0bCr1738/s400/Capture_ss.jpg&quot; alt=&quot;Capela de Santa Catarina (Santo Ildefonso)&quot; id=&quot;BLOGGER_PHOTO_ID_5450496474836381778&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Mais uma vez: Muito Obrigado!</description><link>http://opapao.blogspot.com/2010/03/mais-uma-foto-minha-escolhida-na.html</link><author>noreply@blogger.com (Nelson Rocha)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_iB5Hq_SpzOY/S6QNqngkMFI/AAAAAAAAAPs/g3D0bCr1738/s72-c/Capture_ss.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-6546297319729911362</guid><pubDate>Sun, 14 Mar 2010 21:43:00 +0000</pubDate><atom:updated>2010-03-14T22:41:56.680+00:00</atom:updated><title>Contente com o desfecho do congresso do PSD</title><description>É bom estarmos esclarecidos sobre pontos fundamentais:&lt;div&gt;&lt;ul&gt;&lt;li&gt;Todos os candidatos apoiam a candidatura de Cavaco Silva à Presidência da República;&lt;/li&gt;&lt;li&gt;Dentro dos partidos não se debatem questões de fundo sobre Portugal;&lt;/li&gt;&lt;li&gt;As facadas que os candidatos mandarem nas costas uns dos outros só vão servir para manter o PSD mais unido.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;Nada como começar uma semana com novidades fresquinhas! &lt;/div&gt;</description><link>http://opapao.blogspot.com/2010/03/contente-com-o-desfecho-do-congresso-do.html</link><author>noreply@blogger.com (Nelson Rocha)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-2168987621487625060</guid><pubDate>Fri, 05 Mar 2010 00:09:00 +0000</pubDate><atom:updated>2010-03-05T01:16:13.610+00:00</atom:updated><title>Rescuing ActiveX functionality inside a ASP.NET User Control with jQuery</title><description>A while ago I wanted to add an ubiquitous ActiveX functionality to a website.&lt;br /&gt;No problem, or so I thought, just create a User Control with that piece of code and your off to lunch...&lt;br /&gt;&lt;br /&gt;Turns out it&#39;s a bit complicated... or messy... or both =)&lt;br /&gt;For those who skim ;) here&#39;s the solution:&lt;br /&gt;&lt;pre name=&quot;code&quot; class=&quot;javascript:nocontrols&quot;&gt;&lt;br /&gt;&amp;lt;script type=&quot;text/javascript&quot;&amp;gt;&lt;br /&gt; $(&quot;body:first&quot;).prepend(&#39;&amp;lt;object id=&quot;ubFunc&quot; name=&quot;ubFunc&quot; height=&quot;0&quot; width=&quot;0&quot;&amp;gt;&amp;lt;/object&amp;gt;&#39;);&lt;br /&gt; $(&quot;#ubFunc&quot;).attr(&quot;classid&quot;, &quot;/activeX/activeX.dll#ActiveX.Foo.Bar&quot;);&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;And now for the fun part!&lt;br /&gt;The tag used to add a .net ActiveX is the &lt;span style=&quot;font-style: italic;&quot;&gt;OBJECT &lt;/span&gt;tag with the attribute &lt;span style=&quot;font-weight: bold; font-style: italic;&quot;&gt;classid&lt;/span&gt; identifying the location, namespace and class that your code will refer to, with this syntax:&lt;br /&gt;classid=&quot;&amp;lt; &lt;span style=&quot;font-style: italic;&quot;&gt;url path to assembly&lt;/span&gt; &amp;gt;#&amp;lt; &lt;span style=&quot;font-style: italic;&quot;&gt;namespace&lt;/span&gt; &amp;gt;.&amp;lt; &lt;span style=&quot;font-style: italic;&quot;&gt;class&lt;/span&gt; &amp;gt;&quot;&lt;br /&gt;&lt;br /&gt;You create a new user control which only has this tag in its &lt;span style=&quot;font-weight: bold; font-style: italic;&quot;&gt;asp:Content&lt;/span&gt; control:&lt;br /&gt;&lt;pre name=&quot;code&quot; class=&quot;html:nocontrols&quot;&gt;&lt;br /&gt;&amp;lt;object id=&quot;ubFunc&quot; name=&quot;ubFunc&quot; classid=&quot;activeX/activeX.dll#ActiveX.Foo.Bar&quot; height=&quot;0&quot; width=&quot;0&quot;&amp;gt;&amp;lt;/object&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;OK, so this is fairly easy, how come it doesn&#39;t work?&lt;br /&gt;In a stroke of luck, or desperation, I found out that when an &lt;span style=&quot;font-style: italic;&quot;&gt;OBJECT &lt;/span&gt;tag is included &lt;span style=&quot;font-weight: bold;&quot;&gt;inside &lt;/span&gt;a user control, for some odd reason, it does not get included in gac because (wait for it...) its inside a &lt;span style=&quot;font-style: italic;&quot;&gt;FORM &lt;/span&gt;tag... (?!?) strange but true.&lt;br /&gt;If you just place it outside the &lt;span style=&quot;font-style: italic;&quot;&gt;FORM&lt;/span&gt; tag (as you know, ASP.NET requires it) the ActiveX starts rockin&#39;!&lt;br /&gt;Woohooooo!&lt;br /&gt;- But wait... aren&#39;t you missing the whole &quot;user control&quot; thing?&lt;br /&gt;Oh, that... yes, I am...&lt;br /&gt;&lt;br /&gt;Another round and this time we go client side with jQuery, this shouldn&#39;t be a tough nut to crack...&lt;br /&gt;Instead of the object tag you go and add this jQuery snippet in order to safely insert the &lt;span style=&quot;font-style: italic;&quot;&gt;OBJECT&lt;/span&gt; tag before the &lt;span style=&quot;font-style: italic;&quot;&gt;FORM &lt;/span&gt;tag:&lt;br /&gt;&lt;pre name=&quot;code&quot; class=&quot;javascript:nocontrols&quot;&gt;&lt;br /&gt;&amp;lt;script type=&quot;text/javascript&quot;&amp;gt;&lt;br /&gt; $(&quot;body:first&quot;).prepend(&#39;&amp;lt;object id=&quot;ubFunc&quot; name=&quot;ubFunc&quot; classid=&quot;/activeX/activeX.dll#ActiveX.Foo.Bar&quot; height=&quot;0&quot; width=&quot;0&quot;&amp;gt;&amp;lt;/object&amp;gt;&#39;);&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;WHAT?? Still doesn&#39;t work??&lt;br /&gt;Damn!&lt;br /&gt;&lt;br /&gt;Another fun/bizarre part: if you first add the &lt;span style=&quot;font-style: italic;&quot;&gt;OBJECT &lt;/span&gt;tag and then set the &lt;span style=&quot;font-style: italic;&quot;&gt;classid &lt;/span&gt;attribute it works like a breeze. Go figure...&lt;br /&gt;&lt;br /&gt;So, as I mentioned in the beginning, the solution lies on adding the &lt;span style=&quot;font-style: italic;&quot;&gt;OBJECT &lt;/span&gt;tag using jQuery in two takes, one to insert it in the DOM and another to set it&#39;s &lt;span style=&quot;font-style: italic;&quot;&gt;classid&lt;/span&gt;.&lt;br /&gt;&lt;pre name=&quot;code&quot; class=&quot;javascript:nocontrols&quot;&gt;&lt;br /&gt;&amp;lt;script type=&quot;text/javascript&quot;&amp;gt;&lt;br /&gt; $(&quot;body:first&quot;).prepend(&#39;&amp;lt;object id=&quot;ubFunc&quot; name=&quot;ubFunc&quot; height=&quot;0&quot; width=&quot;0&quot;&amp;gt;&amp;lt;/object&amp;gt;&#39;);&lt;br /&gt; $(&quot;#ubFunc&quot;).attr(&quot;classid&quot;, &quot;/activeX/activeX.dll#ActiveX.Foo.Bar&quot;);&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;And this finally does the trick! =)</description><link>http://opapao.blogspot.com/2010/03/rescuing-activex-functionality-inside.html</link><author>noreply@blogger.com (Nelson Rocha)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-28772186.post-849060845635474945</guid><pubDate>Sat, 27 Feb 2010 00:00:00 +0000</pubDate><atom:updated>2010-02-27T00:45:12.961+00:00</atom:updated><title>Setting up freeSSHd to work with Mercurial</title><description>I use &lt;a href=&quot;http://mercurial.selenic.com/&quot;&gt;Mercurial&lt;/a&gt; for version control of my personal projects.&lt;br /&gt;Recently I decided to use it with the all too common &quot;central repository&quot; approach, using &lt;a href=&quot;http://www.freesshd.com/&quot;&gt;freeSSHd&lt;/a&gt; as the SSH server, but I soon came to a halt. After I got the hang of it I thought of writing here the major pitfalls, so here they are:&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;1 - The strange case of the hanging connection&lt;/span&gt;&lt;br /&gt;For some odd internal reason you need to set freeSSHd&#39;s SSH to &lt;span style=&quot;font-weight: bold; color: rgb(51, 255, 255);&quot;&gt;NOT&lt;/span&gt; &quot;Use new console engine&quot;.&lt;br /&gt;&lt;br /&gt;&lt;div style=&quot;text-align: center;&quot;&gt;&lt;br /&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://4.bp.blogspot.com/_iB5Hq_SpzOY/S4hpHwsCUWI/AAAAAAAAAPE/tVGs94ixYqo/s1600-h/003553.png&quot;&gt;&lt;img style=&quot;cursor: pointer; width: 400px; height: 234px;&quot; src=&quot;http://4.bp.blogspot.com/_iB5Hq_SpzOY/S4hpHwsCUWI/AAAAAAAAAPE/tVGs94ixYqo/s400/003553.png&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5442715731726848354&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-size:130%;&quot;&gt;2 - Beware of the SSH syntax of absolute paths&lt;/span&gt;&lt;br /&gt;Lets assume that your server repository sits in the path &quot;j:\mercurial\repos\myrepo&quot; and that you were forced to use a custom port for your freeSSHd SSH service (i.e.: &quot;2222&quot;).&lt;br /&gt;I decided to use &quot;NT authentication&quot; as authentication method for the user I configured ( &quot;login&quot; must match a valid NT user on the server machine :), but if you use &quot;Password stored as SHA1 hash&quot; the same applies.&lt;br /&gt;When you connect to the repository you should follow this syntax:&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;hg &lt;&gt; [&lt;&gt;] ssh://&lt; &lt;span style=&quot;font-style: italic;&quot;&gt;user login&lt;/span&gt;&gt;@&lt; &lt;span style=&quot;font-style: italic;&quot;&gt;server IP&lt;/span&gt; &gt;:&lt; &lt;span style=&quot;font-style: italic;&quot;&gt;server port &lt;/span&gt;&gt;/&lt; &lt;span style=&quot;font-style: italic;&quot;&gt;absolute server path&lt;/span&gt;&gt;&lt;/span&gt; [...]&lt;br /&gt;Note that ssh address &lt;span style=&quot;color: rgb(102, 255, 255);&quot;&gt;does not take a password&lt;/span&gt;!&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;e.g.:  hg clone ssh://mandela@192.168.1.1:2222/j:/mercurial/repos/myrepo myrepo_wrk&lt;/span&gt;&lt;br /&gt;Note that the server path comes with a &lt;span style=&quot;color: rgb(51, 255, 255);&quot;&gt;forward slash&lt;/span&gt; as a directory separator &#39;&lt;span style=&quot;color: rgb(51, 255, 255);&quot;&gt;/&lt;/span&gt;&#39; and that it begins with the &lt;span style=&quot;color: rgb(51, 255, 255);&quot;&gt;drive letter followed by a colon&lt;/span&gt; &#39;&lt;span style=&quot;color: rgb(51, 255, 255);&quot;&gt;:&lt;/span&gt;&#39;!&lt;br /&gt;&lt;br /&gt;I&#39;m not sure if this post will help, but at least I hope that it&#39;ll same someone some time... =)</description><link>http://opapao.blogspot.com/2010/02/setting-up-freesshd-to-work-with.html</link><author>noreply@blogger.com (Nelson Rocha)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_iB5Hq_SpzOY/S4hpHwsCUWI/AAAAAAAAAPE/tVGs94ixYqo/s72-c/003553.png" height="72" width="72"/><thr:total>0</thr:total></item></channel></rss>