<?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:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-3326630118570774111</id><updated>2011-11-09T09:26:11.490+02:00</updated><category term='ruby'/><category term='incanter'/><category term='processing'/><category term='math'/><category term='graham'/><category term='emacs'/><category term='javascript'/><category term='ai'/><category term='clojure'/><category term='estonia'/><category term='fp'/><category term='iCal'/><category term='ebay'/><category term='mining'/><category term='skype'/><category term='lisp'/><category term='textmate'/><category term='quicksilver'/><category term='book'/><category term='hacker'/><category term='life'/><category term='jquery'/><category term='photo'/><category term='mac'/><category term='a.saxeo'/><category term='sicp'/><category term='guitar'/><category term='Ideas'/><category term='photoloop'/><category term='health'/><category term='org-mode'/><category term='rant'/><category term='google'/><category term='R'/><title type='text'>Alexandre's Notebook</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default?start-index=101&amp;max-results=100'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>182</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-6571402500361342620</id><published>2010-04-15T12:30:00.001+03:00</published><updated>2010-04-15T12:31:31.655+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='emacs'/><title type='text'>new blog</title><content type='html'>&amp;nbsp;&lt;a href="http://al3xandr3.github.com/"&gt;http://al3xandr3.github.com/&lt;/a&gt;&amp;nbsp;is a better platform for&amp;nbsp;writing&amp;nbsp;longer texts,&amp;nbsp;minimalist&amp;nbsp;design,&amp;nbsp;focused on my original content and not to be updated frequently. Is hosted on github.com pages, using jekkyl site generator and git for version control.&lt;br /&gt;&lt;br /&gt;Have now improved workflow: I write in (aqua)emacs using orgmode, do orgmode-export-project and git commit the changes that updates the site directly.&amp;nbsp;Also have full control over the site html, so i can make it in whatever layout i feel like(even if is ugly :P ).&lt;br /&gt;&lt;br /&gt;source code is here:&amp;nbsp;&lt;a href="http://github.com/al3xandr3/al3xandr3.github.com"&gt;http://github.com/al3xandr3/al3xandr3.github.com&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;Note&lt;/i&gt;: I'm still keeping the&amp;nbsp;&lt;a href="http://alexandrenotebook.blogspot.com/"&gt;http://alexandrenotebook.blogspot.com/&lt;/a&gt;&amp;nbsp;for re-posting, re-linking, and other shorter content.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-6571402500361342620?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/6571402500361342620/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=6571402500361342620' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/6571402500361342620'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/6571402500361342620'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2010/04/new-blog.html' title='new blog'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-2337177560263139768</id><published>2010-04-10T17:44:00.010+03:00</published><updated>2010-04-11T00:33:06.057+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='jquery'/><title type='text'>jQuery Twitter 'mini' plugin</title><content type='html'>&lt;p&gt;Here's a little jQuery plugin for displaying a twitter feed intoa web page.The goal was to put my latest 'tweets' on my blog, and also learnjQuery. Ended up making a 'mini' jQuery plugin that can easily be added intoany web page.&lt;/p&gt;&lt;div id="outline-container-1" class="outline-3"&gt;&lt;h3 id="sec-1"&gt;Demo: &lt;/h3&gt;&lt;div class="outline-text-3" id="text-1"&gt;&lt;p&gt;For the code:&lt;/p&gt;&lt;pre class="src src-Javascript"&gt;$(function() {&lt;br /&gt;  $('#tw').click(function() {&lt;br /&gt;    $('#tw').twitter({'user':'al3xandr3','count':2});&lt;br /&gt;  });&lt;br /&gt;});&lt;br /&gt;&lt;/pre&gt; &lt;script type="text/javascript" src="http://code.jquery.com/jquery-latest.pack.js"&gt;&lt;/script&gt; &lt;script type="text/javascript" src="http://github.com/al3xandr3/jquery-twitter-plugin/raw/master/twitter.js"&gt;&lt;/script&gt;  &lt;div id="tw"&gt;&lt;b&gt;click me&lt;/b&gt;&lt;/div&gt; &lt;script type="text/javascript"&gt; $(function() {   $('#tw').click(function() {     $('#tw').twitter({'user':'al3xandr3','count':2});   }); }); &lt;/script&gt;&lt;p&gt;The plugin is running on the sidebar of this blog under the'ON TWITTER' title.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div id="outline-container-2" class="outline-3"&gt;&lt;h3 id="sec-2"&gt;How It Works &lt;/h3&gt;&lt;div class="outline-text-3" id="text-2"&gt;&lt;p&gt;It makes an Ajax request to twitter that returns json data of thefeed. That data is then read and injected into the selected htmlelement(s).&lt;/p&gt;&lt;p&gt;See in: &lt;/p&gt;&lt;pre class="src src-Javascript"&gt;$.ajax({&lt;br /&gt;  url: &lt;span style="color: #8b2252;"&gt;"http://twitter.com/status/user_timeline/"&lt;/span&gt; + settings.user + &lt;br /&gt;       &lt;span style="color: #8b2252;"&gt;".json?count="&lt;/span&gt;+ (settings.count+1) +&lt;span style="color: #8b2252;"&gt;"&amp;amp;callback=?"&lt;/span&gt;,&lt;br /&gt;  dataType: 'json',&lt;br /&gt;  success: function (data) {&lt;br /&gt;  $.each(data, function (i, item) {&lt;br /&gt;            &lt;br /&gt;    //text&lt;br /&gt;    $this.hide().append(&lt;span style="color: #8b2252;"&gt;"&amp;lt;p id="&lt;/span&gt; + item.id + &lt;span style="color: #8b2252;"&gt;"&amp;gt;"&lt;/span&gt; + &lt;br /&gt;                        replaceURLWithHTMLLinks(item.text) + &lt;br /&gt;                        &lt;span style="color: #8b2252;"&gt;"&amp;amp;nbsp&amp;amp;nbsp&amp;lt;/p&amp;gt;"&lt;/span&gt;).fadeIn('slow');&lt;br /&gt;            &lt;br /&gt;    //date&lt;br /&gt;    if (typeof prettyDate(item.created_at) !== &lt;span style="color: #8b2252;"&gt;"undefined"&lt;/span&gt;) {&lt;br /&gt;      $(&lt;span style="color: #8b2252;"&gt;"&amp;lt;br&amp;gt;"&lt;/span&gt;).appendTo(&lt;span style="color: #8b2252;"&gt;"#"&lt;/span&gt; + item.id); //line break&lt;br /&gt;      $(&lt;span style="color: #8b2252;"&gt;"&amp;lt;a&amp;gt;"&lt;/span&gt; + prettyDate(item.created_at) + &lt;span style="color: #8b2252;"&gt;"&amp;lt;/a&amp;gt;"&lt;/span&gt;).attr( {&lt;br /&gt;        'href':   ('http://twitter.com/' + settings.user + &lt;br /&gt;                      '/status/' + item.id),&lt;br /&gt;        'target': '_blank'&lt;br /&gt;      }).css(&lt;span style="color: #8b2252;"&gt;"font-size"&lt;/span&gt;, &lt;span style="color: #8b2252;"&gt;"75%"&lt;/span&gt;).appendTo(&lt;span style="color: #8b2252;"&gt;"#"&lt;/span&gt; + item.id);&lt;br /&gt;    }&lt;br /&gt;  });}&lt;br /&gt;});&lt;br /&gt;&lt;/pre&gt;&lt;p&gt;jQuery is a very nice designed lib, simple and powerfull. Some say &lt;a href="http://importantshock.wordpress.com/2009/01/18/jquery-is-a-monad/"&gt;its just like a functional programming Monad&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;Full source code is available in github:&lt;a href="http://github.com/al3xandr3/jquery-twitter-plugin"&gt;http://github.com/al3xandr3/jquery-twitter-plugin&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-2337177560263139768?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/2337177560263139768/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=2337177560263139768' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2337177560263139768'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2337177560263139768'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2010/04/jquery-twitter-mini-plugin.html' title='jQuery Twitter &apos;mini&apos; plugin'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-6716179172497848970</id><published>2010-04-03T22:56:00.003+03:00</published><updated>2010-04-06T12:29:58.306+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='life'/><title type='text'>I'm now a ...</title><content type='html'>&lt;b&gt;Papa, Issi, Daddy&lt;/b&gt;&amp;nbsp;of a&amp;nbsp;beautiful&amp;nbsp;baby boy, born on the 2nd April at 4am with 3.5kg and 51cm.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-6716179172497848970?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/6716179172497848970/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=6716179172497848970' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/6716179172497848970'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/6716179172497848970'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2010/04/im-now.html' title='I&apos;m now a ...'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-8136223445120756783</id><published>2010-03-16T22:49:00.010+02:00</published><updated>2010-04-07T11:35:26.129+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mining'/><category scheme='http://www.blogger.com/atom/ns#' term='Ideas'/><title type='text'>UI Optimization(AB testing) Tools, the Future?</title><content type='html'>&lt;h2 id="sec-2"&gt;How it works:&lt;/h2&gt;&lt;div class="outline-text-2" id="text-2"&gt;&lt;ol&gt;&lt;li&gt;You plugin the AB testing tool to your application and say: optimize page A, on the measurable goal X (for example downloads).&lt;/li&gt;&lt;li&gt;The Tool by itself: creates new UI variation -&amp;gt; tests it -&amp;gt; analyses results -&amp;gt; picks best one -&amp;gt; creates new UI variation -&amp;gt; tests it -&amp;gt; etc… This goes ad eternum… Much like natural evolution, keeps experimenting/mutating, until it finds the best combinations.&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;&lt;h2 id="sec-3"&gt;Details:&lt;/h2&gt;&lt;div class="outline-text-2" id="text-3"&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;New UI variations&lt;/b&gt; do not need(shouldn't even) be 100% random, they should use smarter techniques like: genetic(and other search/optimization) algorithms + tried out design heuristics + branding guidelines(avoid color A, use font B, etc..) + (sampled)user filtering + some amount of randomness + etc..&lt;/li&gt;&lt;li&gt;&lt;b&gt;Knowledge Base&lt;/b&gt;: Build a Database with the test results, that collects knowledge of what worked and what didn't (for a given context). Just as Pandora collects user input for building its recomendation system, this accumulated knowledge would serve as input for the task of generating the new UI variations. &amp;nbsp; &amp;nbsp;&lt;i&gt;Note:&lt;/i&gt; The amount of data is key; the bigger the amount of test results, the closer to all possible variations thus the closer to all the best optimizations. With a large amount of test and tried out results quicky we would get the perfect UI rules.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Page Flow&lt;/b&gt;: Tool should optimize not only the page itself, but also navigation along pages, customizing content depending on the flow For example, forward the user to a different page, depending on the keyword used in a search engine when arriving at the website.&lt;/li&gt;&lt;li&gt;&lt;b&gt;Personalized UI&lt;/b&gt;: What works for user A might not work for B. A 16 years old likes different things than a 50 years old. Even for a unique user, his tastes changes over over time: winter vs summer, week vs weekend, working hours vs non-working hours etc… So the perfect interface might need to be changing over time(?) Don't assume, experiment and see if it works…&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-8136223445120756783?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/8136223445120756783/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=8136223445120756783' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8136223445120756783'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8136223445120756783'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2010/03/ui-optimizationab-testing-tools-future_16.html' title='UI Optimization(AB testing) Tools, the Future?'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-8736078568778736365</id><published>2010-03-08T09:12:00.009+02:00</published><updated>2010-03-08T09:43:43.336+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='org-mode'/><category scheme='http://www.blogger.com/atom/ns#' term='emacs'/><title type='text'>Automating todo tasks lists reports</title><content type='html'>&lt;p&gt;Here's the geek automation of the week, its for helping creating reports from my TODO tasks list when using the amazing emacs org-mode(&lt;a href="http://orgmode.org/"&gt;see here whats org-mode all about&lt;/a&gt;).&lt;/p&gt;&lt;div id="simplified-work-flow"&gt;&lt;h2&gt;(simplified) Work Flow&lt;/h2&gt;&lt;ol style="list-style-type: decimal;"&gt;&lt;li&gt;I get a request, add it into my todo list queue, marking it as a TODO item.&lt;/li&gt;&lt;li&gt;Work, work, work, guided by the todo listed tasks, balancing priority and effort and (..add your own reason here..).&lt;/li&gt;&lt;li&gt;When finished, mark an item DONE.&lt;/li&gt;&lt;li&gt;Generate a report every week with the done tasks.&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;div id="generating-the-report"&gt;&lt;h2&gt;Generating the Report&lt;/h2&gt;&lt;p&gt;(I use this setup on Mac, with some adaptations should also on Linux and Windows)&lt;/p&gt;&lt;p&gt;Every week i then generate a report of the DONE Tasks, by running:&lt;/p&gt;&lt;pre class="sourceCode bash"&gt;&lt;code&gt;&lt;span class="Comment"&gt;# file: get-work-done.sh &lt;/span&gt;&lt;br /&gt;&lt;span class="Comment"&gt;# run: sh get-work-done.sh&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Comment"&gt;# Uses emacs to extract the DONE items from work.org, generating a work-done.csv&lt;/span&gt;&lt;br /&gt;&lt;span class="Normal Path"&gt;/Applications/Aquamacs.app/Contents/MacOS/Aquamacs&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;span class="Normal Option"&gt;-batch&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;span class="Normal Option"&gt;-l&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;span class="Normal Path"&gt;~/.emacs&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;span class="Normal Option"&gt;-eval&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;span class="String StringSingleQ"&gt;'(org-batch-agenda-csv "+TODO=\"DONE\"" org-agenda-files (quote ("/.../work.org")))'&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;span class="Keyword Redirection"&gt;&amp;gt;&lt;/span&gt;&lt;span class="Normal NormalText"&gt; work&lt;/span&gt;&lt;span class="Normal Option"&gt;-done&lt;/span&gt;&lt;span class="Normal NormalText"&gt;.csv&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Comment"&gt;# Applies desired report formatting to the exported work-done.csv, generating work.csv&lt;/span&gt;&lt;br /&gt;&lt;span class="Normal NormalText"&gt;ruby format&lt;/span&gt;&lt;span class="Normal Option"&gt;-report&lt;/span&gt;&lt;span class="Normal NormalText"&gt;.rb work&lt;/span&gt;&lt;span class="Normal Option"&gt;-done&lt;/span&gt;&lt;span class="Normal NormalText"&gt;.csv&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Comment"&gt;# Clean up the originally exported file&lt;/span&gt;&lt;br /&gt;&lt;span class="Keyword Command"&gt;rm&lt;/span&gt;&lt;span class="Normal NormalText"&gt; work&lt;/span&gt;&lt;span class="Normal Option"&gt;-done&lt;/span&gt;&lt;span class="Normal NormalText"&gt;.csv&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Comment"&gt;# Opens the final file in the default .csv handler, typically Excel.&lt;/span&gt;&lt;br /&gt;&lt;span class="Normal NormalText"&gt;open work.csv&lt;/span&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;(see the comments "#" to understand what it does in each step)&lt;/p&gt;&lt;p&gt;Then I use the format-report.rb bellow to apply formatting to the report, for example: add my own header, add/remove columns, Dates, change names, calculate values, etc, etc... see example:&lt;/p&gt;&lt;pre class="sourceCode ruby"&gt;&lt;code&gt;&lt;span class="Comment"&gt;# file: format-report.rb&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Normal NormalText"&gt;flines &lt;/span&gt;&lt;span class="Char Operator"&gt;=&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;span class="DataType Constant"&gt;File&lt;/span&gt;&lt;span class="Normal Message"&gt;.open&lt;/span&gt;&lt;span class="Normal NormalText"&gt;(&lt;/span&gt;&lt;span class="DataType GlobalConstant"&gt;ARGV&lt;/span&gt;&lt;span class="Char Delimiter"&gt;[&lt;/span&gt;&lt;span class="DecVal Dec"&gt;0&lt;/span&gt;&lt;span class="Char Delimiter"&gt;]&lt;/span&gt;&lt;span class="Normal NormalText"&gt;)&lt;/span&gt;&lt;span class="Normal Message"&gt;.readlines&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Normal NormalText"&gt;column_map &lt;/span&gt;&lt;span class="Char Operator"&gt;=&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;span class="Char Operator"&gt;{&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;br /&gt;&lt;span class="Normal NormalText"&gt;  &lt;/span&gt;&lt;span class="String"&gt;"friendly_name_i_use1"&lt;/span&gt;&lt;span class="Normal NormalText"&gt;  &lt;/span&gt;&lt;span class="Char Operator"&gt;=&amp;gt;&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;span class="String"&gt;"required_final_report_name1"&lt;/span&gt;&lt;span class="Normal NormalText"&gt;, &lt;/span&gt;&lt;br /&gt;&lt;span class="Normal NormalText"&gt;  &lt;/span&gt;&lt;span class="String"&gt;"friendly_name_i_use2"&lt;/span&gt;&lt;span class="Normal NormalText"&gt;  &lt;/span&gt;&lt;span class="Char Operator"&gt;=&amp;gt;&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;span class="String"&gt;"required_final_report_name2"&lt;/span&gt;&lt;span class="Normal NormalText"&gt;,  &lt;/span&gt;&lt;br /&gt;&lt;span class="Normal NormalText"&gt;  &lt;/span&gt;&lt;span class="String"&gt;"friendly_name_i_use3"&lt;/span&gt;&lt;span class="Normal NormalText"&gt;  &lt;/span&gt;&lt;span class="Char Operator"&gt;=&amp;gt;&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;span class="String"&gt;"required_final_report_name3"&lt;/span&gt;&lt;br /&gt;&lt;span class="Char Operator"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="DataType Constant"&gt;File&lt;/span&gt;&lt;span class="Normal Message"&gt;.open&lt;/span&gt;&lt;span class="Normal NormalText"&gt;( &lt;/span&gt;&lt;span class="String"&gt;"work.csv"&lt;/span&gt;&lt;span class="Normal NormalText"&gt;,&lt;/span&gt;&lt;span class="String"&gt;"w+"&lt;/span&gt;&lt;span class="Normal NormalText"&gt;) &lt;/span&gt;&lt;span class="Keyword"&gt;do&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;span class="Char Operator"&gt;|&lt;/span&gt;&lt;span class="Normal NormalText"&gt;fl&lt;/span&gt;&lt;span class="Char Operator"&gt;|&lt;/span&gt;&lt;span class="Normal NormalText"&gt;  &lt;/span&gt;&lt;br /&gt;&lt;span class="Normal NormalText"&gt;  fl&lt;/span&gt;&lt;span class="Normal Message"&gt;.puts&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;span class="String"&gt;"header1,header2,header3,header4"&lt;/span&gt;&lt;br /&gt;&lt;span class="Normal NormalText"&gt;  flines&lt;/span&gt;&lt;span class="Normal Message"&gt;.each&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;span class="Keyword"&gt;do&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;span class="Char Operator"&gt;|&lt;/span&gt;&lt;span class="Normal NormalText"&gt;l&lt;/span&gt;&lt;span class="Char Operator"&gt;|&lt;/span&gt;&lt;br /&gt;&lt;span class="Normal NormalText"&gt;    a &lt;/span&gt;&lt;span class="Char Operator"&gt;=&lt;/span&gt;&lt;span class="Normal NormalText"&gt; l&lt;/span&gt;&lt;span class="Normal Message"&gt;.split&lt;/span&gt;&lt;span class="Normal NormalText"&gt;(&lt;/span&gt;&lt;span class="String"&gt;","&lt;/span&gt;&lt;span class="Normal NormalText"&gt;)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Normal NormalText"&gt;   &lt;/span&gt;&lt;span class="Comment"&gt; # Time, mapping-defined-in-column_map, original-column-2, original-column-3&lt;/span&gt;&lt;br /&gt;&lt;span class="Normal NormalText"&gt;    fl&lt;/span&gt;&lt;span class="Normal Message"&gt;.puts&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;span class="DataType Constant"&gt;Time&lt;/span&gt;&lt;span class="Normal Message"&gt;.now.strftime&lt;/span&gt;&lt;span class="Normal NormalText"&gt;(&lt;/span&gt;&lt;span class="String"&gt;"%m/%d/%Y"&lt;/span&gt;&lt;span class="Normal NormalText"&gt;) &lt;/span&gt;&lt;span class="Char Operator"&gt;+&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;span class="String"&gt;","&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;span class="Char Operator"&gt;+&lt;/span&gt;&lt;span class="Normal NormalText"&gt; (column_map&lt;/span&gt;&lt;span class="Char Delimiter"&gt;[&lt;/span&gt;&lt;span class="Normal NormalText"&gt;a&lt;/span&gt;&lt;span class="Char Delimiter"&gt;[&lt;/span&gt;&lt;span class="DecVal Dec"&gt;1&lt;/span&gt;&lt;span class="Char Delimiter"&gt;]]&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;span class="Char Operator"&gt;||&lt;/span&gt;&lt;span class="Normal NormalText"&gt; a&lt;/span&gt;&lt;span class="Char Delimiter"&gt;[&lt;/span&gt;&lt;span class="DecVal Dec"&gt;1&lt;/span&gt;&lt;span class="Char Delimiter"&gt;]&lt;/span&gt;&lt;span class="Normal NormalText"&gt;) &lt;/span&gt;&lt;span class="Char Operator"&gt;+&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;span class="String"&gt;","&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;span class="Char Operator"&gt;+&lt;/span&gt;&lt;span class="Normal NormalText"&gt; a&lt;/span&gt;&lt;span class="Char Delimiter"&gt;[&lt;/span&gt;&lt;span class="DecVal Dec"&gt;2&lt;/span&gt;&lt;span class="Char Delimiter"&gt;]&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;span class="String"&gt;","&lt;/span&gt;&lt;span class="Normal NormalText"&gt; &lt;/span&gt;&lt;span class="Char Operator"&gt;+&lt;/span&gt;&lt;span class="Normal NormalText"&gt; a&lt;/span&gt;&lt;span class="Char Delimiter"&gt;[&lt;/span&gt;&lt;span class="DecVal Dec"&gt;3&lt;/span&gt;&lt;span class="Char Delimiter"&gt;]&lt;/span&gt;&lt;br /&gt;&lt;span class="Normal NormalText"&gt;  &lt;/span&gt;&lt;span class="Keyword"&gt;end&lt;/span&gt;&lt;br /&gt;&lt;span class="Keyword"&gt;end&lt;/span&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;And voila, i run this and an excel sheet opens up with the report of the week.&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-8736078568778736365?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/8736078568778736365/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=8736078568778736365' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8736078568778736365'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8736078568778736365'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2010/03/automating-todo-tasks-lists-reports.html' title='Automating todo tasks lists reports'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-4615511681997339720</id><published>2010-03-05T09:03:00.002+02:00</published><updated>2010-03-05T09:03:00.299+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mining'/><title type='text'>Guardian Data Blog</title><content type='html'>A nice concept from www.guardian.co.uk, Data Blog shares official good data free with the world, for your own plotting entertainment. Hosted in the nice and easy google docs. With things like:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.guardian.co.uk/news/datablog/2010/feb/28/deadliest-earthquakes-strongest-data"&gt;All the deadliest and strongest earthquakes since 1900, including coordinates&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.guardian.co.uk/business/datablog/2010/feb/22/tesco-asda-price-cuts-rises-christmas-supermarket"&gt;The one penny supermarket price cuts&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.guardian.co.uk/news/datablog/2009/nov/20/children-unicef-report-2009-afghanistan"&gt;Unicef's state of the world's children report 2009: Where is the worst place in the world to grow up?&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;a href="http://www.guardian.co.uk/news/datablog"&gt;here&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-4615511681997339720?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/4615511681997339720/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=4615511681997339720' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/4615511681997339720'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/4615511681997339720'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2010/03/guardian-data-blog.html' title='Guardian Data Blog'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-7971888361269163632</id><published>2010-03-02T09:02:00.003+02:00</published><updated>2010-04-06T13:11:17.570+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='book'/><title type='text'>book: The Undercover Economist</title><content type='html'>&lt;a href="http://www.blogger.com/post-edit.g?blogID=3326630118570774111&amp;amp;postID=7971888361269163632" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5443581497173471394" src="http://2.bp.blogspot.com/_UXikbBSJkX8/S4t8h8Tp8KI/AAAAAAAAGCM/WbhG12lvD5o/s320/ue-uk-paperback1.jpeg" style="cursor: hand; cursor: pointer; display: block; height: 320px; margin: 0px auto 10px; text-align: center; width: 205px;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Has (economic)ideas that are useful for everyone to be aware of, as for example an explanation of the pricing of coffee shops, but same ideas apply to all goods. Maybe a bit more "traditional economics" oriented than the Freakonomics book, but in similar fashion.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-7971888361269163632?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/7971888361269163632/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=7971888361269163632' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/7971888361269163632'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/7971888361269163632'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2010/03/book-undercover-economist.html' title='book: The Undercover Economist'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_UXikbBSJkX8/S4t8h8Tp8KI/AAAAAAAAGCM/WbhG12lvD5o/s72-c/ue-uk-paperback1.jpeg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-7192662869962697070</id><published>2009-12-21T13:38:00.007+02:00</published><updated>2010-03-01T11:19:54.949+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mining'/><title type='text'>How Randomness Rules Our Lives</title><content type='html'>&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/F0sLuRsu1Do&amp;amp;hl=en_US&amp;amp;fs=1&amp;amp;rel=0"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/F0sLuRsu1Do&amp;amp;hl=en_US&amp;amp;fs=1&amp;amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Authors @ Google talk with Leonard Mlodinow about his book, "The Drunkard's Walk: How Randomness Rules Our Lives".&lt;br /&gt;&lt;br /&gt;I haven't read the book, but very much enjoyed the talk.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-7192662869962697070?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/7192662869962697070/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=7192662869962697070' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/7192662869962697070'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/7192662869962697070'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/12/how-randomness-rules-our-lives.html' title='How Randomness Rules Our Lives'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-8582986719873842106</id><published>2009-12-07T09:30:00.016+02:00</published><updated>2010-03-01T11:19:37.498+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='math'/><title type='text'>Euclid's Elements</title><content type='html'>&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div&gt;Written by the Greek mathematician Euclid in Alexandria circa 300 BC, Euclid's Elements is a collection of mathematical definitions, axioms, theorems and proofs about geometry.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;Is the most successful and influential textbook ever written, one of the most influential works in the history of mathematics and is estimated to be second only to the Bible in the number of editions published.&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;a href="http://en.wikipedia.org/wiki/Euclid%27s_Elements"&gt;- wikipedia&lt;/a&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;a href="http://en.wikipedia.org/wiki/Euclid%27s_Elements"&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;A proof, from Euclid's Elements:&lt;div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://upload.wikimedia.org/wikipedia/commons/5/5e/Euclid-proof.jpg" style="text-decoration: none;"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;img style="margin: 0px auto 10px; text-decoration: underline; display: block; text-align: center; cursor: pointer; width: 391px; height: 399px;" src="http://upload.wikimedia.org/wikipedia/commons/5/5e/Euclid-proof.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://aleph0.clarku.edu/~djoyce/java/elements/toc.html"&gt;And there's of course an (English)online version with interactive demonstrations&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-8582986719873842106?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/8582986719873842106/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=8582986719873842106' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8582986719873842106'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8582986719873842106'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/12/euclids-elements.html' title='Euclid&apos;s Elements'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-1474890152980971020</id><published>2009-11-26T08:52:00.007+02:00</published><updated>2010-03-01T11:20:25.873+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fp'/><title type='text'>Functional Programming - Erik Meijer</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://channel9.msdn.com/Search/Default.aspx?Term=%22C9%20Lectures%3A%20Dr.%20Erik%20Meijer%20-%20Functional%20Programming%20Fundamentals%2C%20Chapter%22&amp;amp;Type=site"&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 228px;" src="http://3.bp.blogspot.com/_UXikbBSJkX8/Sw4msfGJb4I/AAAAAAAAF8s/kcvBJqb7WZA/s400/Picture+1.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5408302748221927298" /&gt;&lt;/a&gt;&lt;div&gt;&lt;div&gt;Enjoying these lectures:&lt;/div&gt;&lt;div&gt;&lt;blockquote&gt;A journey into the world of Functional Programming with functional language purist and high priest of the lambda calculus, Dr. Erik Meijer.&lt;/blockquote&gt;&lt;/div&gt;&lt;/div&gt;&lt;a href="http://channel9.msdn.com/Search/Default.aspx?Term=%22C9%20Lectures%3A%20Dr.%20Erik%20Meijer%20-%20Functional%20Programming%20Fundamentals%2C%20Chapter%22&amp;amp;Type=site"&gt;lectures here&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-1474890152980971020?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/1474890152980971020/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=1474890152980971020' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/1474890152980971020'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/1474890152980971020'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/11/functional-programming-fundamentals.html' title='Functional Programming - Erik Meijer'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_UXikbBSJkX8/Sw4msfGJb4I/AAAAAAAAF8s/kcvBJqb7WZA/s72-c/Picture+1.png' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-1231469733912272203</id><published>2009-11-19T09:31:00.011+02:00</published><updated>2009-11-19T11:07:50.993+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lisp'/><title type='text'>3rd European Lisp Symposium in Portugal</title><content type='html'>&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div&gt;The purpose of the European Lisp Symposium is to provide a forum for the discussion and dissemination of all aspects of design, implementation and application of any of the Lisp dialects. We encourage everyone interested in Lisp to participate.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Call for Contributions: &lt;/b&gt;we would welcome both papers describing original work, not published elsewhere, and submissions for tutorial sessions.&lt;/div&gt;&lt;/blockquote&gt;&lt;a href="http://www.advogato.org/person/crhodes/diary/135.html"&gt;Details here...&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-1231469733912272203?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/1231469733912272203/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=1231469733912272203' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/1231469733912272203'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/1231469733912272203'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/11/3rd-european-lisp-symposium-in-portugal.html' title='3rd European Lisp Symposium in Portugal'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-1579235321498609486</id><published>2009-11-13T10:24:00.009+02:00</published><updated>2009-11-19T09:42:40.153+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lisp'/><category scheme='http://www.blogger.com/atom/ns#' term='fp'/><title type='text'>Functional</title><content type='html'>Here's a few articles from Slava Akhmechet (on www.defmacro.org) that i enjoyed reading:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.defmacro.org/ramblings/fp.html"&gt;Functional Programming For The Rest of Us&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.defmacro.org/ramblings/lisp.html"&gt;The Nature of Lisp&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.defmacro.org/ramblings/relational.html"&gt;Databases - A New Frontier&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;And &lt;a href="http://www.defmacro.org/"&gt;there's more&lt;/a&gt;.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-1579235321498609486?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/1579235321498609486/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=1579235321498609486' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/1579235321498609486'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/1579235321498609486'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/11/functional.html' title='Functional'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-5082023210010474991</id><published>2009-11-10T09:08:00.016+02:00</published><updated>2009-11-13T10:42:17.712+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mining'/><title type='text'>YQL</title><content type='html'>The Yahoo! Query Language (YQL) web service allows to query web data in an SQL-like syntax, so you can do things like:&lt;br /&gt;&lt;br /&gt;Get all cat pictures from flickr:&lt;pre&gt;&lt;span class="keyword"&gt;select&lt;/span&gt; * &lt;span class="keyword"&gt;from&lt;/span&gt; flickr.photos.search &lt;span class="keyword"&gt;where&lt;/span&gt; text=&lt;span class="string"&gt;'cat'&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;Get pictures from flickr that have interestingness starting with word Chinese:&lt;br /&gt;&lt;pre&gt;&lt;span class="keyword"&gt;select&lt;/span&gt; * &lt;span class="keyword"&gt;from&lt;/span&gt; flickr.photos.interestingness &lt;span class="keyword"&gt;where&lt;/span&gt; title &lt;span class="keyword"&gt;like&lt;/span&gt; &lt;span class="string"&gt;'Chinese%'&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;Get sushi places in San Francisco that have a rating bigger than 4:&lt;pre&gt;&lt;span class="keyword"&gt;select&lt;/span&gt; * &lt;span class="keyword"&gt;from&lt;/span&gt; local.search &lt;span class="keyword"&gt;where&lt;/span&gt; query=&lt;span class="string"&gt;'sushi'&lt;/span&gt;&lt;br /&gt;&lt;span class="keyword"&gt;and&lt;/span&gt; location=&lt;span class="string"&gt;'san francisco, ca'&lt;/span&gt;&lt;br /&gt;&lt;span class="keyword"&gt;and&lt;/span&gt; Rating.AverageRating &amp;gt; 4.0&lt;/pre&gt;&lt;i&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="font-style: normal;"&gt;Get the profile of all my friends(my social connections):&lt;/span&gt;&lt;/i&gt;&lt;pre&gt;&lt;span class="keyword"&gt;select&lt;/span&gt; * &lt;span class="keyword"&gt;from&lt;/span&gt; social.profile &lt;span class="keyword"&gt;where&lt;/span&gt; guid &lt;span class="keyword"&gt;IN&lt;/span&gt;&lt;br /&gt;(&lt;span class="keyword"&gt;select&lt;/span&gt; guid &lt;span class="keyword"&gt;from&lt;/span&gt; social.connections &lt;span class="keyword"&gt;where&lt;/span&gt; owner_guid=me)&lt;/pre&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;It allows to combine several different sources in the same query, just like a SQL query that uses several tables, is possible to join results of  GEOIP services with restaurant rating services, rss feeds, financial information, weather service, etc etc... &lt;div&gt;&lt;br /&gt;&lt;div&gt;Nice one Yahoo!&lt;div&gt;&lt;br /&gt;&lt;a href="http://developer.yahoo.com/yos/screencasts/yql_screencast.html"&gt;Screencast: Introducing YQL&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.datatables.org/"&gt;YQL site&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-5082023210010474991?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/5082023210010474991/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=5082023210010474991' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5082023210010474991'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5082023210010474991'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/11/yql.html' title='YQL'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-3794117893785494181</id><published>2009-10-22T11:55:00.005+03:00</published><updated>2009-10-23T14:08:56.714+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mining'/><title type='text'>The book of Odds</title><content type='html'>Collection of Odds about everything &lt;a href="http://outlier.bookofodds.com/"&gt;here&lt;/a&gt; (on US population).&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The odds a man does not own a pair of blue jeans are 1 in 10 (US, 2001).&lt;/li&gt;&lt;li&gt;The odds a man using a public restroom was observed not washing his hands are 1 in 2.99 (US, 2007).&lt;/li&gt;&lt;li&gt;The odds a woman owns a pair of high heels are 1 in 1.64 (US, 2001).&lt;/li&gt;&lt;li&gt;The odds a person 25 or older with a master's degree has an income of $100,000 or more are 1 in 5.43 (US, 3/2007).&lt;/li&gt;&lt;li&gt;The odds a female 25 or older with a master's degree has an income of $100,000 or more are 1 in 10.98 (US, 3/2007).&lt;/li&gt;&lt;li&gt;&lt;a href="http://outlier.bookofodds.com/"&gt;more...&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-3794117893785494181?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/3794117893785494181/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=3794117893785494181' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3794117893785494181'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3794117893785494181'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/10/site-book-of-odds.html' title='The book of Odds'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-1380515046365003162</id><published>2009-10-18T22:27:00.004+03:00</published><updated>2009-10-18T22:35:54.660+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='a.saxeo'/><title type='text'>Hermosa y Horrible- a.sáxeo</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://asaxeo.blogspot.com/2009/10/hermosa-y-horrible-asaxeo.html"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 217px;" src="http://2.bp.blogspot.com/_UXikbBSJkX8/Stts8YP7lsI/AAAAAAAAF8k/A1QPOTz3aCM/s400/asaxeo.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5394024763263522498" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://asaxeo.blogspot.com/2009/10/hermosa-y-horrible-asaxeo.html"&gt;a.sáxeo in a Spanish art gallery&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-1380515046365003162?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/1380515046365003162/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=1380515046365003162' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/1380515046365003162'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/1380515046365003162'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/10/hermosa-y-horrible-asaxeo.html' title='Hermosa y Horrible- a.sáxeo'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_UXikbBSJkX8/Stts8YP7lsI/AAAAAAAAF8k/A1QPOTz3aCM/s72-c/asaxeo.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-3376064086440599121</id><published>2009-10-12T09:12:00.015+03:00</published><updated>2010-04-06T13:13:06.033+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='emacs'/><title type='text'>Javascript validator on Emacs (v2)</title><content type='html'>A Javascript validator that I use frequently, &lt;a href="http://alexandrenotebook.blogspot.com/2009/05/on-javascript.html"&gt;mentioned here for Textmate&lt;/a&gt;, now on Emacs:&lt;br /&gt;&lt;pre&gt;(&lt;span class="keyword"&gt;defun&lt;/span&gt; &lt;span class="function-name"&gt;my-js-validate&lt;/span&gt; ()&lt;br /&gt;  (interactive)&lt;br /&gt;  (&lt;span class="keyword"&gt;if&lt;/span&gt; (string-match &lt;span class="string"&gt;"\\.js$"&lt;/span&gt; (buffer-file-name))&lt;br /&gt;      (shell-command&lt;br /&gt;       (concat&lt;br /&gt;        &lt;span class="string"&gt;"java -jar /Bins/Javascript/rhino1_7R2/js.jar /Bins/Javascript/lint/rhino_jslint.js "&lt;/span&gt;&lt;br /&gt;        (buffer-file-name (current-buffer))))))&lt;br /&gt;&lt;br /&gt;(&lt;span class="keyword"&gt;defun&lt;/span&gt; &lt;span class="function-name"&gt;my-js-hooks&lt;/span&gt; ()&lt;br /&gt;  (&lt;span class="keyword"&gt;progn&lt;/span&gt;&lt;br /&gt;    (message &lt;span class="string"&gt;"Entered Javascript Mode"&lt;/span&gt;)&lt;br /&gt;    (add-hook 'after-save-hook 'my-js-validate)))&lt;br /&gt;&lt;br /&gt;(add-hook 'javascript-mode-hook 'my-js-hooks)&lt;/pre&gt;&lt;br /&gt;To force to run:  M-x my-js-validate&lt;br /&gt;&lt;br /&gt;With the hooks setup, whenever a javascript file is saved then my-js-validate is executed.&lt;br /&gt;&lt;br /&gt;(if you use js2-mode or espresso-mode, then you need to change 'javascript-mode-hook accordingly, for example to 'espresso-mode-hook)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-3376064086440599121?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/3376064086440599121/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=3376064086440599121' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3376064086440599121'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3376064086440599121'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/10/javascript-validator-on-emacs.html' title='Javascript validator on Emacs (v2)'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-6739128865737001252</id><published>2009-10-10T09:10:00.001+03:00</published><updated>2009-10-10T09:10:00.692+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mining'/><title type='text'>less calculus, more probabilities</title><content type='html'>&lt;object width="446" height="326"&gt;&lt;param name="movie" value="http://video.ted.com/assets/player/swf/EmbedPlayer.swf"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true" /&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;param name="bgColor" value="#ffffff"&gt;&lt;/param&gt; &lt;param name="flashvars" value="vu=http://video.ted.com/talks/dynamic/ArthurBenjamin_2009-medium.flv&amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/ArthurBenjamin-2009.embed_thumbnail.jpg&amp;vw=432&amp;vh=240&amp;ap=0&amp;ti=587&amp;introDuration=16500&amp;adDuration=4000&amp;postAdDuration=2000&amp;adKeys=talk=arthur_benjamin_s_formula_for_changing_math_education;year=2009;theme=ted_in_3_minutes;theme=bold_predictions_stern_warnings;theme=how_we_learn;theme=numbers_at_play;event=TED2009;&amp;preAdTag=tconf.ted/embed;tile=1;sz=512x288;" /&gt;&lt;embed src="http://video.ted.com/assets/player/swf/EmbedPlayer.swf" pluginspace="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" wmode="transparent" bgColor="#ffffff" width="446" height="326" allowFullScreen="true" flashvars="vu=http://video.ted.com/talks/dynamic/ArthurBenjamin_2009-medium.flv&amp;su=http://images.ted.com/images/ted/tedindex/embed-posters/ArthurBenjamin-2009.embed_thumbnail.jpg&amp;vw=432&amp;vh=240&amp;ap=0&amp;ti=587&amp;introDuration=16500&amp;adDuration=4000&amp;postAdDuration=2000&amp;adKeys=talk=arthur_benjamin_s_formula_for_changing_math_education;year=2009;theme=ted_in_3_minutes;theme=bold_predictions_stern_warnings;theme=how_we_learn;theme=numbers_at_play;event=TED2009;"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-6739128865737001252?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/6739128865737001252/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=6739128865737001252' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/6739128865737001252'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/6739128865737001252'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/10/less-calculus-more-probabilities.html' title='less calculus, more probabilities'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-6049408952234062793</id><published>2009-10-05T10:16:00.000+03:00</published><updated>2009-10-05T10:16:00.229+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='photo'/><title type='text'>PT - 2009</title><content type='html'>&lt;a href=""&gt;&lt;img src="http://lh4.ggpht.com/_UXikbBSJkX8/SqoIQYI4FJI/AAAAAAAAFzo/VMsSKZplIaM/s400/PICT0094.JPG" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-6049408952234062793?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/6049408952234062793/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=6049408952234062793' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/6049408952234062793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/6049408952234062793'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/10/pt-2009_05.html' title='PT - 2009'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_UXikbBSJkX8/SqoIQYI4FJI/AAAAAAAAFzo/VMsSKZplIaM/s72-c/PICT0094.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-7875346982462743768</id><published>2009-10-03T10:11:00.001+03:00</published><updated>2009-10-03T10:13:01.071+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='photo'/><title type='text'>PT - 2009</title><content type='html'>&lt;a href=""&gt;&lt;img src="http://lh4.ggpht.com/_UXikbBSJkX8/SqoVOK1pqZI/AAAAAAAAF5c/W-Uzg8S9Acg/s400/IMG_6485.JPG" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-7875346982462743768?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/7875346982462743768/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=7875346982462743768' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/7875346982462743768'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/7875346982462743768'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/10/pt-2009.html' title='PT - 2009'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_UXikbBSJkX8/SqoVOK1pqZI/AAAAAAAAF5c/W-Uzg8S9Acg/s72-c/IMG_6485.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-2320778221689942142</id><published>2009-09-24T12:20:00.006+03:00</published><updated>2009-09-24T12:31:01.168+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mining'/><title type='text'>re-post: Standard Deviation explained</title><content type='html'>Why use the &lt;span style="font-weight:bold;"&gt;standard deviation&lt;/span&gt; instead of the more intuitive&lt;span style="font-weight:bold;"&gt; mean deviation&lt;/span&gt;? Found a &lt;a href="http://amarsagoo.blogspot.com/2007/09/making-sense-of-standard-deviation.html"&gt;nice explanation here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-2320778221689942142?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/2320778221689942142/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=2320778221689942142' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2320778221689942142'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2320778221689942142'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/09/re-post-standard-deviation-explained.html' title='re-post: Standard Deviation explained'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-2095209270501980177</id><published>2009-09-15T09:12:00.003+03:00</published><updated>2009-09-15T09:28:37.637+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='photo'/><title type='text'>PT bedroom bookshelf</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href=""&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 319px;" src="http://4.bp.blogspot.com/_UXikbBSJkX8/Sq1a-k2yiBI/AAAAAAAAF7E/3AyvkhKjxvA/s400/bookshelf.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5381057160869480466" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-2095209270501980177?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/2095209270501980177/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=2095209270501980177' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2095209270501980177'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2095209270501980177'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/09/pt-bedroom-bookshelf.html' title='PT bedroom bookshelf'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_UXikbBSJkX8/Sq1a-k2yiBI/AAAAAAAAF7E/3AyvkhKjxvA/s72-c/bookshelf.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-2383239090862572183</id><published>2009-09-13T20:24:00.007+03:00</published><updated>2009-09-24T11:06:12.386+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='book'/><title type='text'>book: Career 2.0</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_UXikbBSJkX8/Sq0rmoYyJ_I/AAAAAAAAF68/biZTP33sl1I/s1600-h/career2.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 263px; height: 400px;" src="http://4.bp.blogspot.com/_UXikbBSJkX8/Sq0rmoYyJ_I/AAAAAAAAF68/biZTP33sl1I/s400/career2.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5381005072454002674" /&gt;&lt;/a&gt;&lt;br /&gt;Good career advice.&lt;br /&gt;&lt;br /&gt;My Takeaways:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Ultimately the responsibility for your career and your life rests with one and only one person. You.&lt;/li&gt;&lt;li&gt;Be passioned about your work.&lt;/li&gt;&lt;li&gt;Keep on learning, keep on building your intellectual portfolio.&lt;/li&gt;&lt;li&gt;Select your goals and remind them frequently.&lt;/li&gt;&lt;li&gt;Breakdown your goals into weekly and even daily actions.&lt;/li&gt;&lt;li&gt;Sharing knowledge, by writing and speaking publicly, deepens your grasp of the knowledge.&lt;/li&gt;&lt;/ul&gt;This book is also good reference of public speaking techniques.&lt;div&gt;&lt;br /&gt;&lt;div&gt;Thanks Erki, for the suggestion.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-2383239090862572183?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/2383239090862572183/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=2383239090862572183' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2383239090862572183'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2383239090862572183'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/09/book-career-20.html' title='book: Career 2.0'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_UXikbBSJkX8/Sq0rmoYyJ_I/AAAAAAAAF68/biZTP33sl1I/s72-c/career2.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-6183863833002179407</id><published>2009-09-03T09:54:00.003+03:00</published><updated>2009-09-13T23:33:34.757+03:00</updated><title type='text'>Michael Jackson Dance Tribute - Tallinn</title><content type='html'>&lt;span class="Apple-style-span"   style="  white-space: pre; font-family:Arial, sans-serif;font-size:10px;"&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/geIw8h5b_qQ&amp;amp;hl=en&amp;amp;fs=1&amp;amp;"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/geIw8h5b_qQ&amp;amp;hl=en&amp;amp;fs=1&amp;amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Awesome dancing in one of the most busiest streets of Tallinn.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-6183863833002179407?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/6183863833002179407/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=6183863833002179407' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/6183863833002179407'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/6183863833002179407'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/09/michael-jackson-dance-tribute-tallinn.html' title='Michael Jackson Dance Tribute - Tallinn'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-4876832609115264725</id><published>2009-09-01T10:03:00.002+03:00</published><updated>2009-09-01T10:13:48.091+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='clojure'/><title type='text'>FlightCaster</title><content type='html'>&lt;blockquote&gt;“FlightCaster predicts flight delays. We use an advanced algorithm that scours data on every domestic flight for the past 10-years and matches it to real-time conditions. We help you evaluate alternative options and help connect you to the right person to make the change.”   &lt;a href="http://flightcaster.com/"&gt;check it out&lt;/a&gt;&lt;/blockquote&gt;&lt;br /&gt;Its a very interesting mix of Clojure, Rails, Hadoop, Amazon EC2 and YCombinator.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.infoq.com/articles/flightcaster-clojure-rails"&gt;InfoQ article&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.datawrangling.com/how-flightcaster-squeezes-predictions-from-flight-dataa"&gt;Interview with developer Bradford Cross&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-4876832609115264725?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/4876832609115264725/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=4876832609115264725' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/4876832609115264725'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/4876832609115264725'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/09/flightcaster.html' title='FlightCaster'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-3627275243572409500</id><published>2009-08-27T09:19:00.008+03:00</published><updated>2010-04-06T13:15:41.211+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mining'/><category scheme='http://www.blogger.com/atom/ns#' term='incanter'/><title type='text'>Basketball Throws</title><content type='html'>A little probability simulation, using Clojure and Incanter, &lt;a href="http://docs.google.com/View?id=dczvkfs8_10xjtdwtd6"&gt;hosted on google docs&lt;/a&gt;:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://docs.google.com/View?id=dczvkfs8_10xjtdwtd6" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5374581977537980242" src="http://4.bp.blogspot.com/_UXikbBSJkX8/SpZZ1TNeJ1I/AAAAAAAAFwo/mVbHbd2YjQA/s400/Picture+1.png" style="cursor: hand; cursor: pointer; display: block; height: 400px; margin: 0px auto 10px; text-align: center; width: 212px;" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-3627275243572409500?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/3627275243572409500/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=3627275243572409500' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3627275243572409500'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3627275243572409500'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/08/basketball-throws_27.html' title='Basketball Throws'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_UXikbBSJkX8/SpZZ1TNeJ1I/AAAAAAAAFwo/mVbHbd2YjQA/s72-c/Picture+1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-8088923447914428695</id><published>2009-08-25T09:29:00.005+03:00</published><updated>2009-09-13T21:18:53.325+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mining'/><category scheme='http://www.blogger.com/atom/ns#' term='book'/><title type='text'>book: ReSampling - The New Statistics</title><content type='html'>&lt;blockquote&gt;This book describes a revolutionary —but now fully accepted— approach to probability and statistics. Monte Carlo resampling simulation takes the mumbo-jumbo out of statistics and enables even beginning students to understand completely everything that is done.&lt;br /&gt;—  from books intro&lt;/blockquote&gt;&lt;br /&gt;Its statistics made easy, because there's no need to tinker around with theory much, its all about harnessing computer power to do the simulations of the probabilities you'r after. Which i think is just great. &lt;a href="http://www.resample.com/content/text/index.shtml"&gt;You can find the book here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;On the process, the authors(Julian Simon and Peter Bruce) developed also a computer language for performing these simulations described and used in the book.&lt;br /&gt;This has been implemented in a Java application, by John Grosberg, and made available as &lt;a href="http://www.statistics101.net/statistics101web_000003.htm"&gt;Statistics101&lt;/a&gt;, so you can easily play around and test the code examples from the book.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-8088923447914428695?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/8088923447914428695/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=8088923447914428695' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8088923447914428695'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8088923447914428695'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/08/book-resampling-new-statistics.html' title='book: ReSampling - The New Statistics'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-2375825822278360898</id><published>2009-08-23T09:08:00.001+03:00</published><updated>2009-09-13T21:24:56.479+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='book'/><title type='text'>book: FREE</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_UXikbBSJkX8/So-rH9lvMdI/AAAAAAAAFwQ/InUhjtOd130/s1600-h/freecover.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 210px; height: 320px;" src="http://4.bp.blogspot.com/_UXikbBSJkX8/So-rH9lvMdI/AAAAAAAAFwQ/InUhjtOd130/s320/freecover.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5372701033756570066" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;Chris Anderson, editor in chief of Wired and author of The Long Tail, has published a new book that looks at something of interest to Consumerist: the trend of content and services to slide toward free, especially in the digital world. It's pretty light reading and an interesting look at economics in the digital marketplace in particular, and for now, at least, it's available in multiple formats for free.&lt;br /&gt;— from &lt;a href="http://consumerist.com/5319324/read-chris-andersons-book-free-for-free"&gt;consumerist&lt;/a&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;It discusses Free, its meaning, its implications, its misconceptions, its business models, etc, Free is no doubt the trend of the future that has breen brought full-on with the digital age and is having a huge impact in most industries including radically changing money making models.&lt;br /&gt;&lt;br /&gt;In its launch is being offered for free, I listened to the Free's free audio version from &lt;a href="http://www.wired.com/techbiz/it/magazine/17-07/mf_freer"&gt;wired&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-2375825822278360898?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/2375825822278360898/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=2375825822278360898' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2375825822278360898'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2375825822278360898'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/08/book-free.html' title='book: FREE'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_UXikbBSJkX8/So-rH9lvMdI/AAAAAAAAFwQ/InUhjtOd130/s72-c/freecover.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-443122569171780309</id><published>2009-08-22T09:00:00.018+03:00</published><updated>2010-04-06T13:13:25.714+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='clojure'/><category scheme='http://www.blogger.com/atom/ns#' term='emacs'/><title type='text'>Emacs (v2)</title><content type='html'>&lt;div&gt;&lt;a href="http://www.hackers-with-attitude.com/2009/08/intertactive-programming-with-clojure.html"&gt;Why use Emacs for Clojure&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;Here's a few of references i found recently that help to get up and running with Emacs and Clojure development:&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;b&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Iteration I&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&amp;nbsp;Started using the &lt;a href="http://homepage.mac.com/zenitani/emacs-e.html"&gt;Carbon version&lt;/a&gt; of emacs.Then take a look at: &lt;a href="http://github.com/technomancy/emacs-starter-kit/tree/master"&gt;Emacs Starter Kit(ESK)&lt;/a&gt;, it provides a saner set of defaults than you get normally with Emacs.For step by step installation instructions, here's a good tutorial: &lt;a href="http://freegeek.in/blog/2009/08/setting-up-emacs-clojure-with-emacs-starter-kit/"&gt;Setting up Emacs &amp;amp; Clojure with Emacs Starter Kit&lt;/a&gt;.And finally, a few of more details about &lt;a href="http://technomancy.us/126"&gt;developing Clojure setup with the ESK&lt;/a&gt;, from ESK author himself.&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Iteration II&lt;/span&gt;&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;After spending some time with Carbon Emacs(and learning a bit better how emacs work) I've decided to try out the &lt;a href="http://aquamacs.org/"&gt;Aquamacs&lt;/a&gt; version.&lt;/div&gt;&lt;div&gt;Aquamacs is, out of the box, more mac friendly because supports default key bindings like copy, paste, selectAll, etc.. that all mac text handling apps normally have. &lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;And thats actually very useful, even after learning a lot of emacs shortcuts. Note that emacs key bindings are also worth learning, is amazing to discover how many applications support them. But i've found that stuff like Ctr-C, Ctr-V, and Selecting  text working as you expect just make you move around faster.&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;One issue i ran into, is that the ESK i mentioned before is not compatible with Aquamacs because of different key bindings schemes. &lt;/div&gt;&lt;div&gt;But that turned out not to be a problem, and ended up learning on how to customize Emacs in the process, Here's a a few references i've used for my current emacs setup:&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;References:&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.emacswiki.org/cgi-bin/wiki/AquamacsFAQ"&gt;AquamacsFAQ&lt;/a&gt;, for several tips and tricks on the Aquamacs&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.emacswiki.org/"&gt;Emacs Wiki&lt;/a&gt;, central point for a lot of emacs packages and tips, essential reference.&lt;/li&gt;&lt;li&gt;&lt;a href="http://github.com/technomancy/emacs-starter-kit"&gt;ESK&lt;/a&gt;, I use this as a reference, for learning on how to customize and go check what packages are used there. I use, for example, the zenburn.el theme from there.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Packages:&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://tromey.com/elpa/"&gt;ELPA&lt;/a&gt;, for installing packages, great to install all you need for Clojure development instantly.&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.emacswiki.org/emacs/InteractivelyDoThings"&gt;ido&lt;/a&gt;, lot of helpful stuff, especially the automatic completion when using Dired.&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.nongnu.org/espresso/"&gt;espresso&lt;/a&gt;, for javascript editing.&lt;/li&gt;&lt;li&gt;&lt;a href="http://emacs-fu.blogspot.com/2009/01/balancing-your-parentheses.html"&gt;Balancing your parentheses&lt;/a&gt;, to customize the highlight of your parenthesis, even possible to highlight a mismatched parenthesis with red, to give visual hint you closing the wrong ones!&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-443122569171780309?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/443122569171780309/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=443122569171780309' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/443122569171780309'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/443122569171780309'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/08/emacs-and-starter-kit.html' title='Emacs (v2)'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-6171257108082354886</id><published>2009-08-18T09:08:00.007+03:00</published><updated>2009-08-19T13:37:50.341+03:00</updated><title type='text'>The Power of the Pentatonic Scale</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: Arial, sans-serif; font-size: 10px; white-space: pre; "&gt;&lt;object width="480" height="295"&gt;&lt;param name="movie" value="http://www.youtube.com/v/ne6tB2KiZuk&amp;amp;hl=en&amp;amp;fs=1&amp;amp;rel=0"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/ne6tB2KiZuk&amp;amp;hl=en&amp;amp;fs=1&amp;amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="295"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Fun video of Bobby McFerrin engaging an audience in singing a little tune using the pentatonic scale, this music scale is a 5 notes  sequence of musical intervals that is found again and again in completelly different music cultures around the world. &lt;a href="http://en.wikipedia.org/wiki/Pentatonic_scale"&gt;See in Wikipedia&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-6171257108082354886?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/6171257108082354886/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=6171257108082354886' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/6171257108082354886'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/6171257108082354886'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/08/power-of-pentatonic-scale.html' title='The Power of the Pentatonic Scale'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-5923990696622992913</id><published>2009-07-31T19:50:00.013+03:00</published><updated>2009-09-13T21:24:27.806+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mining'/><category scheme='http://www.blogger.com/atom/ns#' term='book'/><title type='text'>book: Super Crunchers</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://alexandrenotebook.blogspot.com/2009/07/book-super-crunchers.html"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 212px; height: 320px;" src="http://4.bp.blogspot.com/_UXikbBSJkX8/SnMhGCkG1fI/AAAAAAAAFvw/ph1zd9zOs7U/s320/SUPERCRUNCHERSfinal.jpg" alt="" id="BLOGGER_PHOTO_ID_5364667968779638258" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Nice book, giving a lot of reasons on why data crunching is so important.&lt;br /&gt;Enjoyed also the story about the 2 SD(Standard Deviation) Rule, used for point estimation.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-5923990696622992913?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/5923990696622992913/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=5923990696622992913' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5923990696622992913'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5923990696622992913'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/07/book-super-crunchers.html' title='book: Super Crunchers'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_UXikbBSJkX8/SnMhGCkG1fI/AAAAAAAAFvw/ph1zd9zOs7U/s72-c/SUPERCRUNCHERSfinal.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-979734852258505228</id><published>2009-07-29T09:03:00.015+03:00</published><updated>2009-11-10T11:31:06.133+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mining'/><category scheme='http://www.blogger.com/atom/ns#' term='clojure'/><category scheme='http://www.blogger.com/atom/ns#' term='incanter'/><title type='text'>Visualizing Sampling Size Accuracy with Pretzels</title><content type='html'>A common problem when doing data mining is that the data you need to work with, is too big(too many data) and painfully slow to process, especially if you want to run complex mining algorithms on it.&lt;div&gt;Sampling allows to select randomly, a subset of examples from the total data, and then work with only that smaller subset. It works, because quite often the subset is statistically equivalent to the total data we are looking at. &lt;/div&gt;&lt;div&gt;The tricky part is choosing how big this sample should be, because we need to guarantee that the subset we pick is big enough to represent all the (total)data accurately, and at the same time we want it small as possible, to be easy to work with.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For example, lets look at the mean of the weight of 50 bags of pretzels,&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://alexandrenotebook.blogspot.com/2009/07/visualizing-sampling-size-accuracy-with.html" style="text-decoration: none;"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 285px; height: 193px;" src="http://www.affordablehousinginstitute.org/blogs/us/Pretzel_salted_small.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I'm using the language &lt;a href="http://clojure.org/"&gt;Clojure&lt;/a&gt;, with the library &lt;a href="http://incanter.org/"&gt;Incanter&lt;/a&gt;:&lt;br /&gt;&lt;br /&gt;&lt;script src="http://gist.github.com/157029.js"&gt;&lt;/script&gt;&lt;br /&gt;We see that the real mean(of total data) is 451.2, so our sample mean should come as close to that values as possible.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;For this experiment, i'll use incanter's &lt;b&gt;sample&lt;/b&gt; method, that returns a sample of the given size from the given collection.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;So, for a sample size of 5, the whole procedure is: pick 5 pretzel bags weights at random, calculate the mean and subtract that with the real mean, the resulting value shows the error(how far we are from the real mean).&lt;br /&gt;Doing that only once, might happen that we pick 5 bag weighs that match exactly the real mean, and thus be fooled by a one time lucky strike, to avoid that lets repeat that procedure 10.000 times.&lt;br /&gt;&lt;br /&gt;And lets also use increasingly bigger sample sizes:&lt;br /&gt;&lt;br /&gt;&lt;script src="http://gist.github.com/157038.js"&gt;&lt;/script&gt;&lt;br /&gt;As expected, as the sample size gets bigger, less the error and closer to the real mean.&lt;br /&gt;&lt;br /&gt;So, how small subset can it really be? Well, it all depends on how accurate you need to get, and thus how big error, you tolerate.&lt;br /&gt;Also note that the error does not decreases linearly. increasing 5-&gt;10 samples we decreased error by 1, increasing 10-&gt;40 samples also decreased error by 1.&lt;br /&gt;&lt;br /&gt;So, best way to have an idea on the error variating with the sample size is to visualize it:&lt;br /&gt;&lt;br /&gt;&lt;script src="http://gist.github.com/157027.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_UXikbBSJkX8/Sm67eSF2JDI/AAAAAAAAFvY/UP_mE-sIabY/s1600-h/Picture+2.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 320px;" src="http://4.bp.blogspot.com/_UXikbBSJkX8/Sm67eSF2JDI/AAAAAAAAFvY/UP_mE-sIabY/s400/Picture+2.png" alt="" id="BLOGGER_PHOTO_ID_5363430335171666994" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Note that it starts to level off at the end, meaning that adding more samples when the number of samples is already big will have less impact, compared to adding them when the sample size is small. And of course with different data, the error curve will show different pattern, so Visualizing it is a great way to figure out the sample size you need.&lt;br /&gt;&lt;br /&gt;Kudos for &lt;a href="http://incanter.org/"&gt;Incanter&lt;/a&gt;, i'm having a great experience using it.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-979734852258505228?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/979734852258505228/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=979734852258505228' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/979734852258505228'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/979734852258505228'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/07/visualizing-sampling-size-accuracy-with.html' title='Visualizing Sampling Size Accuracy with Pretzels'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_UXikbBSJkX8/Sm67eSF2JDI/AAAAAAAAFvY/UP_mE-sIabY/s72-c/Picture+2.png' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-7066618033925180812</id><published>2009-07-24T10:35:00.006+03:00</published><updated>2009-08-19T11:18:05.392+03:00</updated><title type='text'>Quoting Björk on a friday morning</title><content type='html'>from &lt;a href="http://twitter.com/al3xandr3"&gt;my twitter&lt;/a&gt;:&lt;div&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;Good Morning World, from Sunny Tallinn. Am enjoying my latte and feeling well! but i know is not for long...&lt;/span&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;As Björk would say: Its all so peaceful and quiet until you open the eMAIL, bam boom, you blow a fuse and the sky up above is caving in.&lt;/span&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-7066618033925180812?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/7066618033925180812/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=7066618033925180812' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/7066618033925180812'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/7066618033925180812'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/07/quoting-bjork-on-friday-morning.html' title='Quoting Björk on a friday morning'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-8301936815568899477</id><published>2009-07-16T10:57:00.018+03:00</published><updated>2009-07-22T22:03:45.556+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='clojure'/><title type='text'>re-post: Java, please stop ruining my fun.</title><content type='html'>&lt;a href="http://justin.harmonize.fm/index.php/2009/07/java-please-stop-ruining-my-fun/"&gt;Spot-on description of Java hiccups that slow down Clojure development.&lt;/a&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;To minimize my own pain on this, i've made up a little template project, that I start from, when  doing Clojure code, it looks like this:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;clj-template/&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;build.properties&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;build.xml&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;clj&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;lib/&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;      &lt;/span&gt;clojure-contrib.jar&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;      &lt;/span&gt;clojure.jar&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;      &lt;/span&gt;jline-0.9.94.jar&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;README&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;src/&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;      &lt;/span&gt;myapp/&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;        &lt;/span&gt;helper.clj&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;     &lt;/span&gt;myapp.clj&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;test/&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;      &lt;/span&gt;myapp/&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;         &lt;/span&gt;my_test.clj&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;      &lt;/span&gt;myapp_test.clj&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt; I edit build.properties to specify the class of the Main App (myapp), and the class of the tests(myapp-test).&lt;/li&gt;&lt;li&gt;lib/ contains all the jar's needed for the app,  just drop a new one into lib/ and is automatically included when running or compiling.&lt;/li&gt;&lt;li&gt;./clj allows to get a repl or run a script if is called with a .clj file as argument. like: ./clj src/myapp.clj of course includes automatically all jar's existing in lib/ &lt;/li&gt;&lt;li&gt;build.xml is used by ant(included with all Java distributions), where i have tasks for: compile, create stand-alone jar, run tests, extract documentation.&lt;/li&gt;&lt;li&gt;And then there's a bunch of small details to be aware off: naming of the Class has to match filename, specifying (:gen-class) in main Class to be able to create stand-alone jar, always defining a "-main" as the main entry point for the app, etc...&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;I see all these hiccups as a small cost of being on Java platform. When you then look at the benefits(of being in the Java platform) they largely overwhelm these costs. But yes they are annoying at times, so if we can fix them please do, after all programming should be about solving algorithmic puzzles not dependencies puzzles.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-8301936815568899477?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/8301936815568899477/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=8301936815568899477' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8301936815568899477'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8301936815568899477'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/07/re-post-java-please-stop-ruining-my-fun.html' title='re-post: Java, please stop ruining my fun.'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-4615906536492512193</id><published>2009-07-09T09:10:00.001+03:00</published><updated>2009-07-09T09:10:00.698+03:00</updated><title type='text'>re-post: Augmented Reality Presentation</title><content type='html'>&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/g8Eycccww6k&amp;amp;hl=en&amp;amp;fs=1&amp;amp;rel=0"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/g8Eycccww6k&amp;amp;hl=en&amp;amp;fs=1&amp;amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;i&gt;via: &lt;/i&gt;&lt;/span&gt;&lt;a href="http://asaxeo.blogspot.com/2009/07/artechnology-realidade-aumentada.html"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;i&gt;asaxeo&lt;/i&gt;&lt;/span&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-4615906536492512193?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/4615906536492512193/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=4615906536492512193' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/4615906536492512193'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/4615906536492512193'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/07/re-post-augmented-reality-presentation.html' title='re-post: Augmented Reality Presentation'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-8686376413590894720</id><published>2009-07-08T09:10:00.001+03:00</published><updated>2009-07-08T11:06:25.780+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lisp'/><title type='text'>re-post: How did I not find this language years ago ?</title><content type='html'>&lt;a href="http://kreelman.livejournal.com/7015.html"&gt;about Lisp &lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-8686376413590894720?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/8686376413590894720/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=8686376413590894720' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8686376413590894720'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8686376413590894720'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/07/re-post-how-did-i-not-find-this.html' title='re-post: How did I not find this language years ago ?'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-4283042407786947387</id><published>2009-07-06T08:40:00.001+03:00</published><updated>2009-07-06T10:54:15.331+03:00</updated><title type='text'>Metric driven site improvements</title><content type='html'>&lt;object width="480" height="295"&gt;&lt;param name="movie" value="http://www.youtube.com/v/1v7m9BFqTJ0&amp;hl=en&amp;fs=1&amp;rel=0"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/1v7m9BFqTJ0&amp;hl=en&amp;fs=1&amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="295"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;An explanation of how to improve your site, by testing alternatives and measuring results, its a part of my daily job.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Kudos for Google to make free tools that everyone can use.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-4283042407786947387?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/4283042407786947387/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=4283042407786947387' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/4283042407786947387'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/4283042407786947387'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/07/metric-driven-site-improvements.html' title='Metric driven site improvements'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-3817904179645005696</id><published>2009-07-03T09:37:00.005+03:00</published><updated>2009-07-03T10:57:06.010+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='clojure'/><category scheme='http://www.blogger.com/atom/ns#' term='book'/><title type='text'>Clojure Books</title><content type='html'>&lt;a href="http://www.amazon.com/Clojure-Bookshelf/lm/R3LG3ZBZS4GCTH/ref=cm_lm_byauthor_title_full"&gt;Books that influenced Clojure&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;via: &lt;a href="http://twitter.com/liebke"&gt;liebke&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-3817904179645005696?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/3817904179645005696/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=3817904179645005696' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3817904179645005696'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3817904179645005696'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/07/clojure-books.html' title='Clojure Books'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-3334292412465145383</id><published>2009-07-01T09:15:00.012+03:00</published><updated>2009-07-04T22:33:35.549+03:00</updated><title type='text'>Quotes on Less is More</title><content type='html'>&lt;blockquote&gt;If programmers got paid to remove code from sofware instead of&lt;br /&gt;writing new code, software would be a whole lot better.&lt;br /&gt;&lt;div style="text-align: right;"&gt;&lt;b&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;i&gt;     - Nicholas Negroponte&lt;/i&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;blockquote&gt;Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away.&lt;br /&gt;&lt;div style="text-align: right;"&gt;&lt;b&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;i&gt;     - Antoine de Saint-Exupéry&lt;/i&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;blockquote&gt;The letter I have written today is longer than usual because I lacked the time to make it shorter.&lt;/blockquote&gt;&lt;blockquote&gt;&lt;div style="text-align: left;"&gt;&lt;i&gt;     - Blaise Pascal&lt;/i&gt;&lt;/div&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-3334292412465145383?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/3334292412465145383/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=3334292412465145383' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3334292412465145383'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3334292412465145383'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/07/quotes-less-is-more.html' title='Quotes on Less is More'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-5905382532110560839</id><published>2009-06-29T09:10:00.004+03:00</published><updated>2009-06-30T10:40:07.800+03:00</updated><title type='text'>Lets Do It 2008 - Teeme Ära 2008</title><content type='html'>&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/A5GryIDl0qY&amp;amp;hl=en&amp;amp;fs=1&amp;amp;"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/A5GryIDl0qY&amp;amp;hl=en&amp;amp;fs=1&amp;amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-style: italic; "&gt;&lt;a href="http://asaxeo.blogspot.com/2009/06/sao-as-pessoas-estupido-sao-as-pessoas.html"&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;via: asaxeo&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-5905382532110560839?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/5905382532110560839/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=5905382532110560839' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5905382532110560839'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5905382532110560839'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/06/lets-do-it-2008-teeme-ara-2008.html' title='Lets Do It 2008 - Teeme Ära 2008'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-5164822840754803633</id><published>2009-06-27T12:50:00.003+03:00</published><updated>2009-06-27T12:59:01.796+03:00</updated><title type='text'>re-post: RepRap machine</title><content type='html'>&lt;a href="http://asaxeo.blogspot.com/2009/06/reprap-artechnology.html"&gt;A home printer that can print 3D objects, and can even print a copy of itself.&lt;/a&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;See also &lt;a href="http://www.thingiverse.com/popular"&gt;Gallery&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-5164822840754803633?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/5164822840754803633/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=5164822840754803633' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5164822840754803633'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5164822840754803633'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/06/re-post-reprap-machine.html' title='re-post: RepRap machine'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-4471632604031471336</id><published>2009-06-26T10:42:00.007+03:00</published><updated>2009-12-12T10:59:21.260+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='book'/><title type='text'>book: Getting Real - Alone Time</title><content type='html'>&lt;blockquote&gt;People need uninterrupted time to get things done&lt;br /&gt;&lt;br /&gt;37signals is spread out over four cities and eight time zones. From Provo, Utah to Copenhagen, Denmark, the five of us are eight hours apart. One positive side effect of this eight hour difference is alone time.&lt;br /&gt;&lt;br /&gt;There are only about 4-5 hours during the day that we're all up and working together. At other times, the us team is sleeping while David, who's in Denmark, is working. The rest of the time, we're working while David is sleeping. This gives us about half of the day together and the other half alone.&lt;br /&gt;&lt;br /&gt;Guess which part of the day we get the most work done? The alone part. It's not that surprising really. Many people prefer to work either early in the morning or late at night — times when they're not being bothered.&lt;br /&gt;&lt;br /&gt;When you have a long stretch when you aren't bothered, you can get in the zone. The zone is when you are most productive. It's when you don't have to mindshift between various tasks. It's when you aren't interrupted to answer a question or look up something or send an email or answer an im. The alone zone is where real progress is made.&lt;/blockquote&gt;&lt;blockquote&gt;&lt;i&gt;from: &lt;/i&gt;&lt;a href="http://gettingreal.37signals.com/"&gt;&lt;i&gt;37 signals - getting real&lt;/i&gt;&lt;/a&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-4471632604031471336?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/4471632604031471336/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=4471632604031471336' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/4471632604031471336'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/4471632604031471336'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/06/book-getting-real-alone-time.html' title='book: Getting Real - Alone Time'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-5439003098484243756</id><published>2009-06-23T00:35:00.001+03:00</published><updated>2009-06-23T00:36:46.671+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mining'/><title type='text'>re-post: Markov Chains</title><content type='html'>&lt;a href="http://www.unknownprogrammer.com/2009/markov-chains-pagerank-and-many-others/"&gt;nice explanation of Markov Chains&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-5439003098484243756?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/5439003098484243756/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=5439003098484243756' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5439003098484243756'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5439003098484243756'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/06/re-post-markov-chains.html' title='re-post: Markov Chains'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-4870353134652321604</id><published>2009-06-17T09:10:00.003+03:00</published><updated>2009-06-18T13:24:12.585+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='clojure'/><title type='text'>Clojure rocks</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://lispnyc.org/wiki.clp?page=past-meetings"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 388px;" src="http://1.bp.blogspot.com/_UXikbBSJkX8/SjYJvNSk4rI/AAAAAAAAFu0/OTrIw8QzWxk/s400/rocks.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5347472314175120050" /&gt;&lt;/a&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://lispnyc.org/wiki.clp?page=past-meetings"&gt;lispnyc: &lt;/a&gt;&lt;a href="http://lispnyc.org/wiki.clp?page=past-meetings"&gt;Stuart Sierra on implementing AltLaw.org in Clojure&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-4870353134652321604?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/4870353134652321604/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=4870353134652321604' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/4870353134652321604'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/4870353134652321604'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/06/clojure-rocks.html' title='Clojure rocks'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_UXikbBSJkX8/SjYJvNSk4rI/AAAAAAAAFu0/OTrIw8QzWxk/s72-c/rocks.png' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-1000795507929890081</id><published>2009-06-15T09:10:00.000+03:00</published><updated>2009-06-15T09:10:00.992+03:00</updated><title type='text'>The Soul of a New Start-Up Machine</title><content type='html'>&lt;a href="http://www.scribd.com/doc/16171963/The-Soul-of-a-New-StartUp-Machine"&gt;on Paul Graham's Y Combinator's&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Small, Lean, Fast, Less and Cheap are keywords that keep appearing as success factors of very interesting startup's.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-1000795507929890081?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/1000795507929890081/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=1000795507929890081' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/1000795507929890081'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/1000795507929890081'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/06/soul-of-new-start-up-machine.html' title='The Soul of a New Start-Up Machine'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-6512490862081038013</id><published>2009-06-12T09:10:00.000+03:00</published><updated>2009-06-12T10:09:22.332+03:00</updated><title type='text'>re-post: The Way i Work by Matt Mullenweg</title><content type='html'>&lt;a href="http://www.inc.com/magazine/20090601/the-way-i-work-matt-mullenweg_Printer_Friendly.html"&gt;nice read&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-6512490862081038013?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/6512490862081038013/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=6512490862081038013' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/6512490862081038013'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/6512490862081038013'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/06/re-post-way-i-work-by-matt-mullenweg.html' title='re-post: The Way i Work by Matt Mullenweg'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-3348549122144468659</id><published>2009-06-11T09:37:00.007+03:00</published><updated>2009-12-12T10:59:48.152+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='book'/><title type='text'>book: Getting Real</title><content type='html'>From &lt;a href="http://www.37signals.com/"&gt;37signals&lt;/a&gt;:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://alexandrenotebook.blogspot.com/2009/06/book-getting-real.html"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 213px;" src="http://4.bp.blogspot.com/_UXikbBSJkX8/SnMdd3azMpI/AAAAAAAAFvg/nkha5NAEY6Y/s320/getting_real.jpg" alt="" id="BLOGGER_PHOTO_ID_5364663980058161810" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;blockquote&gt;Getting real is less. Less mass, less software, less features, less paperwork, less of everything that's not essential (and most of what you think is essential actually isn't).&lt;br /&gt;&lt;br /&gt;Getting Real is staying small and being agile.&lt;br /&gt;&lt;br /&gt;Getting Real is about iterations and lowering the cost of change.&lt;br /&gt;&lt;br /&gt;Getting Real is all about launching, tweaking, and constantly improving which makes it a perfect approach for web-based software.&lt;br /&gt;&lt;br /&gt;Getting Real delivers just what customers need and eliminates anything they don't.&lt;/blockquote&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Great Stuff, do check it out, its &lt;a href="http://gettingreal.37signals.com/toc.php"&gt;here for free&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-3348549122144468659?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/3348549122144468659/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=3348549122144468659' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3348549122144468659'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3348549122144468659'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/06/book-getting-real.html' title='book: Getting Real'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_UXikbBSJkX8/SnMdd3azMpI/AAAAAAAAFvg/nkha5NAEY6Y/s72-c/getting_real.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-7219397874091074481</id><published>2009-06-09T10:31:00.002+03:00</published><updated>2009-06-09T10:36:17.112+03:00</updated><title type='text'>Video - The Vendor Client relationship</title><content type='html'>&lt;object width="480" height="295"&gt;&lt;param name="movie" value="http://www.youtube.com/v/R2a8TRSgzZY&amp;amp;hl=en&amp;amp;fs=1&amp;amp;"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/R2a8TRSgzZY&amp;amp;hl=en&amp;amp;fs=1&amp;amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="295"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Funny&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-7219397874091074481?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/7219397874091074481/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=7219397874091074481' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/7219397874091074481'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/7219397874091074481'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/06/video-vendor-client-relationship.html' title='Video - The Vendor Client relationship'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-9080661396843713859</id><published>2009-06-04T10:14:00.001+03:00</published><updated>2009-06-04T10:16:42.821+03:00</updated><title type='text'>Future Vision on Manufacturing</title><content type='html'>&lt;span class="Apple-style-span" style="font-family: Arial; font-size: 10px; white-space: pre; "&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/qr-GXnNN37c&amp;amp;hl=en&amp;amp;fs=1&amp;amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/qr-GXnNN37c&amp;amp;hl=en&amp;amp;fs=1&amp;amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span"   style="font-family:Arial;font-size:85%;"&gt;&lt;span class="Apple-style-span" style="font-size: 10px; white-space: pre;"&gt;via: &lt;a href="http://bebetter.terapad.com/index.cfm?fa=contentnews.newsdetails&amp;amp;newsid=99665&amp;amp;from=list"&gt;bebetter&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-9080661396843713859?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/9080661396843713859/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=9080661396843713859' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/9080661396843713859'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/9080661396843713859'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/06/future-vision-on-manufacturing.html' title='Future Vision on Manufacturing'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-7161006950811584876</id><published>2009-05-28T10:02:00.021+03:00</published><updated>2010-04-06T13:16:10.513+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='clojure'/><category scheme='http://www.blogger.com/atom/ns#' term='incanter'/><title type='text'>Incanter</title><content type='html'>&lt;a href="http://incanter.org/" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5340024922052151586" src="http://3.bp.blogspot.com/_UXikbBSJkX8/ShuUX7qmySI/AAAAAAAAFs4/7Op23MBa1Sk/s400/incanter_new.jpeg" style="cursor: hand; cursor: pointer; display: block; height: 63px; margin: 0px auto 10px; text-align: center; width: 400px;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;blockquote style="text-align: left;"&gt;&lt;a href="http://incanter.org/"&gt;Incanter&lt;/a&gt; is a Clojure-based, R-like statistical computing and graphics environment for the JVM.&lt;/blockquote&gt;&lt;/span&gt;&lt;i&gt;oh i like this, very many :)&lt;/i&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Again to note, the bliss of being on a huge platform while using a lean language gets you the best of both worlds: nice pleasant development with the possibility of leveraging mature libs to build your own killer app.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-7161006950811584876?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/7161006950811584876/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=7161006950811584876' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/7161006950811584876'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/7161006950811584876'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/05/incanter.html' title='Incanter'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_UXikbBSJkX8/ShuUX7qmySI/AAAAAAAAFs4/7Op23MBa1Sk/s72-c/incanter_new.jpeg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-8411583946802136402</id><published>2009-05-26T09:30:00.000+03:00</published><updated>2009-05-26T09:46:32.282+03:00</updated><title type='text'>Video: Europe according to Estonians</title><content type='html'>&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/WUgqXGu_gTQ&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/WUgqXGu_gTQ&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Flavored with Estonian humor and with the right Eesti-English accent. (&lt;a href="http://joaolopesmarques.blogspot.com/2009/05/europe-according-to-estonians.html"&gt;via JLM&lt;/a&gt;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-8411583946802136402?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/8411583946802136402/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=8411583946802136402' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8411583946802136402'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8411583946802136402'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/05/video-europe-according-to-estonians.html' title='Video: Europe according to Estonians'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-1719161898018459410</id><published>2009-05-25T14:57:00.005+03:00</published><updated>2009-05-25T15:02:20.750+03:00</updated><title type='text'>on the same page</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_UXikbBSJkX8/ShqIwMol4dI/AAAAAAAAFsw/FMnPKEmWxDg/s1600-h/Picture+2.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 297px; height: 199px;" src="http://2.bp.blogspot.com/_UXikbBSJkX8/ShqIwMol4dI/AAAAAAAAFsw/FMnPKEmWxDg/s400/Picture+2.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5339730669807722962" /&gt;&lt;/a&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;Estonia can get as hot as a southern country :)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-1719161898018459410?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/1719161898018459410/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=1719161898018459410' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/1719161898018459410'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/1719161898018459410'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/05/on-same-page.html' title='on the same page'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_UXikbBSJkX8/ShqIwMol4dI/AAAAAAAAFsw/FMnPKEmWxDg/s72-c/Picture+2.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-1916446147702685228</id><published>2009-05-24T10:00:00.000+03:00</published><updated>2009-05-24T10:00:00.853+03:00</updated><title type='text'>re-post: Software for NASA</title><content type='html'>&lt;span style="font-style:italic;"&gt;&lt;blockquote&gt;The group has so much data accumulated about how it does its work that it has written software programs that model the code-writing process. Like computer models predicting the weather, the coding models predict how many errors the group should make in writing each new version of the software. True to form, if the coders and testers find too few errors, everyone works the process until reality and the predictions match. &lt;/blockquote&gt;&lt;blockquote&gt;from &lt;a href="http://www.fastcompany.com/node/28121/print"&gt;here&lt;/a&gt;&lt;/blockquote&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-1916446147702685228?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/1916446147702685228/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=1916446147702685228' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/1916446147702685228'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/1916446147702685228'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/05/re-post-software-for-nasa.html' title='re-post: Software for NASA'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-3518671688686094370</id><published>2009-05-22T09:13:00.024+03:00</published><updated>2009-05-23T11:32:25.875+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><title type='text'>on Javascript</title><content type='html'>&lt;a href="http://paulbarry.com/articles/2009/05/11/this-just-in-javascript-is-a-real-language"&gt;This Just In: JavaScript is a Real Language&lt;/a&gt;,  and from a comment of that post:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;&lt;blockquote&gt;Of course JavaScript is a real language, in fact you could go so far as to say JavaScript is a real functional programming language! Its native support of closures and higher-order functions puts it in a league that most developers never even considered it to be capable of.&lt;/blockquote&gt;&lt;/span&gt;&lt;br /&gt;On Douglas Crockford talk  JavaScript: The Good Parts (&lt;a href="http://google-code-updates.blogspot.com/2009/03/doug-crockford-javascript-good-parts.html"&gt;worth checking&lt;/a&gt;) he mentions that Brendan Eich, the inventor of Javascript, actually wanted to code in Scheme, but was not allowed at Netscape so he inserted Scheme features into Javascript, thus the existence of closures and higher-order functions in Javascript.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;And for the ones about to code:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;Here's Douglas, &lt;a href="http://javascript.crockford.com/code.html"&gt;javascript coding guidelines.&lt;/a&gt; Luckily, he's also created (and shared) a Javascript validator that we can use to check how correct and safe our javascript is, called &lt;a href="http://jslint.com/"&gt;jslint&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;jslint can be run directly from web, but might be more convenient to integrate it into your work flow. For example, using Textmate (or command line), you can use Rhino(a Javascript Java interpreter) to run it like:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;java -jar /dir/rhino1_7R2/js.jar /dir/jslint.js ${TM_FILEPATH}&lt;/code&gt;&lt;/div&gt;&lt;br /&gt;Also, when using jslint don't forget to check the &lt;span style="font-weight:bold;"&gt;&lt;a href="http://www.jslint.com/lint.html#options"&gt;options&lt;/a&gt;&lt;/span&gt; to adjust the warnings and  errors you want to see, when validating your code.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-3518671688686094370?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/3518671688686094370/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=3518671688686094370' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3518671688686094370'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3518671688686094370'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/05/on-javascript.html' title='on Javascript'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-3245623369743343032</id><published>2009-05-20T09:15:00.002+03:00</published><updated>2009-05-22T09:51:55.061+03:00</updated><title type='text'>re-post: A Third Order Quine in Three Languages</title><content type='html'>&lt;span style="font-style:italic;"&gt;&lt;blockquote&gt;This is a Haskell program that outputs a Python program that outputs a Ruby program that outputs the original Haskell program.&lt;br /&gt;&lt;a href="http://blog.sigfpe.com/2008/02/third-order-quine-in-three-languages.html" style="text-decoration: none;"&gt;from sigfpe blog&lt;/a&gt;&lt;/blockquote&gt;&lt;/span&gt;How cool is that!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-3245623369743343032?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/3245623369743343032/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=3245623369743343032' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3245623369743343032'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3245623369743343032'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/05/re-post-third-order-quine-in-three.html' title='re-post: A Third Order Quine in Three Languages'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-2076182949024388416</id><published>2009-05-19T09:25:00.006+03:00</published><updated>2009-11-26T14:47:11.910+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fp'/><title type='text'>going up the abstraction ladder</title><content type='html'>&lt;span style="font-style:italic;"&gt;&lt;blockquote&gt;The central idea behind functional programming is that of building new functions by composing existing ones. Monads move up a level of abstraction by hiding the plumbing necessary to compose functions whose parameters and return values are different. Monad transformers move up yet another level of abstraction by allowing monads to be combined so that the plumbing that each monad does is combined and abstracted away, but without having to write new code.&lt;br /&gt;&lt;a href="http://intensivesystems.net/tutorials/monads_201.html" style="text-decoration: none;"&gt;from: monads in clojure&lt;/a&gt;&lt;/blockquote&gt;&lt;/span&gt;And a some references of Monads tutorials:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://blog.sigfpe.com/2006/08/you-could-have-invented-monads-and.html"&gt;You could have invented Monads&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://onclojure.com/2009/03/05/a-monad-tutorial-for-clojure-programmers-part-1/"&gt;monads in clojure 1&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://onclojure.com/2009/03/06/a-monad-tutorial-for-clojure-programmers-part-2/"&gt;monads in clojure 2&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://onclojure.com/2009/03/23/a-monad-tutorial-for-clojure-programmers-part-3/"&gt;monads in clojure 3&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://onclojure.com/2009/04/24/a-monad-tutorial-for-clojure-programmers-part-4/"&gt;monads in clojure 4&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-2076182949024388416?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/2076182949024388416/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=2076182949024388416' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2076182949024388416'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2076182949024388416'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/05/going-up-abstraction-ladder.html' title='going up the abstraction ladder'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-3801224323580812097</id><published>2009-05-18T09:01:00.000+03:00</published><updated>2009-05-18T09:33:40.336+03:00</updated><title type='text'>Harnessing wasted human cycles</title><content type='html'>&lt;embed id="VideoPlayback" src="http://video.google.com/googleplayer.swf?docid=-8246463980976635143&amp;hl=en&amp;fs=true" style="width:400px;height:326px" allowFullScreen="true" allowScriptAccess="always" type="application/x-shockwave-flash"&gt; &lt;/embed&gt;&lt;br /&gt;&lt;br /&gt;nice&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-3801224323580812097?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/3801224323580812097/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=3801224323580812097' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3801224323580812097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3801224323580812097'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/05/harnessing-wasted-human-cycles.html' title='Harnessing wasted human cycles'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-6496510347549815637</id><published>2009-05-15T13:00:00.013+03:00</published><updated>2009-05-22T09:55:54.043+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='clojure'/><title type='text'>clojure, twitter and test-is</title><content type='html'>&lt;p&gt;Here’s a way, using clojure, to get your tests alerts on twitter.&lt;/p&gt;&lt;p&gt;Go get &lt;a href="http://www.winterwell.com/software/jtwitter.php"&gt;jtwitter&lt;/a&gt;, put it in your classphath and create:&lt;/p&gt;&lt;script src="http://gist.github.com/112156.js"&gt;&lt;/script&gt;&lt;br /&gt;(update "username" and "password" with your twitter login)&lt;p&gt;Then hook it up to the “test-is” library(test library in clojure): just overwrite the report summary method that by default prints out the summary of the executed tests.&lt;/p&gt;&lt;p&gt;Before:&lt;/p&gt;&lt;script src="http://gist.github.com/112157.js"&gt;&lt;/script&gt;&lt;p&gt;After:&lt;/p&gt;&lt;script src="http://gist.github.com/112158.js"&gt;&lt;/script&gt;&lt;p&gt;Just added a line calling the twitter-update method.&lt;/p&gt;&lt;p&gt;And thats it, now every time you run your tests, you will have the failures and errors twittered:&lt;/p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_UXikbBSJkX8/Sg1B6x6Ak4I/AAAAAAAAFrI/1--qUGhKTWo/s1600-h/Picture+1.png" style="text-decoration: none;"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 74px;" src="http://3.bp.blogspot.com/_UXikbBSJkX8/Sg1B6x6Ak4I/AAAAAAAAFrI/1--qUGhKTWo/s400/Picture+1.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5335993611588768642" /&gt;&lt;/a&gt;&lt;div&gt;&lt;p&gt;I've created a 2nd account on twitter where i post these automated messages. And have my clojure tests(regression tests actually) running every week, and letting me know if all is good.&lt;/p&gt;&lt;p&gt;This little twitter-update is very easy to use for any kind of alerts and automations.&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-6496510347549815637?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/6496510347549815637/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=6496510347549815637' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/6496510347549815637'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/6496510347549815637'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/05/clojure-twitter-and-test-is.html' title='clojure, twitter and test-is'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_UXikbBSJkX8/Sg1B6x6Ak4I/AAAAAAAAFrI/1--qUGhKTWo/s72-c/Picture+1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-979874602699388664</id><published>2009-05-14T10:00:00.003+03:00</published><updated>2009-05-14T10:07:21.638+03:00</updated><title type='text'>Google Search Extended</title><content type='html'>&lt;object width="480" height="295"&gt;&lt;param name="movie" value="http://www.youtube.com/v/MtirDMfcOKE&amp;hl=en&amp;fs=1&amp;hd=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/MtirDMfcOKE&amp;hl=en&amp;fs=1&amp;hd=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="295"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-979874602699388664?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/979874602699388664/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=979874602699388664' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/979874602699388664'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/979874602699388664'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/05/google-search-extended.html' title='Google Search Extended'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-8743242332652405228</id><published>2009-05-13T10:03:00.002+03:00</published><updated>2009-07-04T12:45:13.100+03:00</updated><title type='text'>Leo talks with Tim Ferriss</title><content type='html'>&lt;a href="http://thepowerofless.com/2009/01/exclusive-interview-leo-talks-with-tim-ferriss-of-4-hour-workweek/"&gt;audio interview&lt;/a&gt; about productivity, routine and life.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-8743242332652405228?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/8743242332652405228/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=8743242332652405228' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8743242332652405228'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8743242332652405228'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/05/leo-talks-with-tim-ferris.html' title='Leo talks with Tim Ferriss'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-8325500938432300797</id><published>2009-05-12T09:10:00.006+03:00</published><updated>2009-05-12T10:55:44.022+03:00</updated><title type='text'>ack is the new grep</title><content type='html'>&lt;div&gt;This is a great improvement on your toolkit(if you use grep, that is).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Checkout &lt;a href="http://betterthangrep.com/"&gt;ack&lt;/a&gt;, auto-entitled better than grep.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;There's also a very nice &lt;a href="http://github.com/protocool/ack-tmbundle/tree/master"&gt;Textmate plugin&lt;/a&gt; to replace the Find in Project. Its so much faster, does not block your textmate when searching and you are able to copy-paste the end results.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;ps: I found it, from the &lt;/i&gt;&lt;a href="http://hoth.entp.com/2009/2/5/february-2009-tools-on-the-edge"&gt;&lt;i&gt;tools on the edge&lt;/i&gt;&lt;/a&gt;&lt;i&gt; article. Go have a peek you might find some more gems for your toolbox.&lt;/i&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-8325500938432300797?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/8325500938432300797/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=8325500938432300797' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8325500938432300797'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8325500938432300797'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/05/ack-is-new-grep.html' title='ack is the new grep'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-5956890031222916092</id><published>2009-05-11T10:07:00.012+03:00</published><updated>2009-07-15T09:50:27.199+03:00</updated><title type='text'>Work Best Practices</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_UXikbBSJkX8/SgfTNrZV-sI/AAAAAAAAFq8/fKDAwY4tt04/s1600-h/rules.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 300px; height: 400px;" src="http://1.bp.blogspot.com/_UXikbBSJkX8/SgfTNrZV-sI/AAAAAAAAFq8/fKDAwY4tt04/s400/rules.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5334464515584424642" /&gt;&lt;/a&gt;&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span" style="font-style: italic; "&gt;&lt;span class="Apple-style-span" style="font-style: normal; "&gt;&lt;a style="font-style: italic;" href="http://gilesbowkett.blogspot.com/2009/05/wont-somebody-think-of-noobren.html"&gt;via Giles Bowkett&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-5956890031222916092?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/5956890031222916092/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=5956890031222916092' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5956890031222916092'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5956890031222916092'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/05/singletasking.html' title='Work Best Practices'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_UXikbBSJkX8/SgfTNrZV-sI/AAAAAAAAFq8/fKDAwY4tt04/s72-c/rules.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-779605815897191383</id><published>2009-05-10T13:21:00.000+03:00</published><updated>2009-05-10T13:22:39.077+03:00</updated><title type='text'>re-post: Pop Up Guide to the Personal Computer</title><content type='html'>&lt;a href="http://jonathanryan.org/2009/04/28/pop-up-guide-to-the-personal-computer/"&gt;go see&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-779605815897191383?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/779605815897191383/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=779605815897191383' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/779605815897191383'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/779605815897191383'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/05/re-post-pop-up-guide-to-personal.html' title='re-post: Pop Up Guide to the Personal Computer'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-1960700614000086135</id><published>2009-05-08T17:26:00.008+03:00</published><updated>2009-08-19T11:12:39.016+03:00</updated><title type='text'>A Brief, Incomplete, and Mostly Wrong History of Programming Languages</title><content type='html'>&lt;span style="font-style:italic;"&gt;1980 - Alan Kay creates Smalltalk and invents the term "object oriented." When asked what that means he replies, "Smalltalk programs are just objects." When asked what objects are made of he replies, "objects." When asked again he says "look, it's all objects all the way down. Until you reach turtles."&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;1987 - Larry Wall falls asleep and hits Larry Wall's forehead on the keyboard. Upon waking Larry Wall decides that the string of characters on Larry Wall's monitor isn't random but an example program in a programming language that God wants His prophet, Larry Wall, to design. Perl is born.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;1995 - Yukihiro "Mad Matz" Matsumoto creates Ruby to avert some vaguely unspecified apocalypse that will leave Australia a desert run by mohawked warriors and Tina Turner. The language is later renamed Ruby on Rails by its real inventor, David Heinemeier Hansson. [The bit about Matsumoto inventing a language called Ruby never happened and better be removed in the next revision of this article - DHH].&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://james-iry.blogspot.com/2009/05/brief-incomplete-and-mostly-wrong.html"&gt;hilarious&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-1960700614000086135?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/1960700614000086135/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=1960700614000086135' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/1960700614000086135'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/1960700614000086135'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/05/brief-incomplete-and-mostly-wrong.html' title='A Brief, Incomplete, and Mostly Wrong History of Programming Languages'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-2964213701342785042</id><published>2009-05-07T22:11:00.008+03:00</published><updated>2009-05-07T22:22:25.581+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mining'/><title type='text'>Hadoop - The Future of (large) Data Infrastructures?</title><content type='html'>&lt;div&gt;Check out the &lt;a href="http://wiki.apache.org/hadoop/PoweredBy"&gt;PoweredBy&lt;/a&gt; list of &lt;a href="http://hadoop.apache.org/"&gt;Hadoop&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;a href="http://news.cnet.com/8301-13505_3-10235400-16.html" style="text-decoration: none;"&gt;Microsoft is using it for search.&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-2964213701342785042?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/2964213701342785042/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=2964213701342785042' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2964213701342785042'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2964213701342785042'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/05/hadoop.html' title='Hadoop - The Future of (large) Data Infrastructures?'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-2113127234714188622</id><published>2009-05-06T16:04:00.002+03:00</published><updated>2009-05-06T16:07:21.635+03:00</updated><title type='text'>HTML2Wiki converter tool</title><content type='html'>For those who work with Wikis, but already have HTML content. &lt;a href="http://toolserver.org/~diberri/cgi-bin/html2wiki/index.cgi"&gt;here&lt;/a&gt;'s a little tool to help converting HTML to Wiki Format. Several Wiki's &amp;amp; Formats supported.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-2113127234714188622?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/2113127234714188622/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=2113127234714188622' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2113127234714188622'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2113127234714188622'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/05/html2wiki-converter-tool.html' title='HTML2Wiki converter tool'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-8331978425860694329</id><published>2009-05-04T17:14:00.000+03:00</published><updated>2009-05-04T17:15:40.847+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='clojure'/><title type='text'>Clojure goes 1.0</title><content type='html'>&lt;a href="http://clojure.blogspot.com/2009/05/clojure-10.html"&gt;release notes here&lt;/a&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-8331978425860694329?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/8331978425860694329/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=8331978425860694329' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8331978425860694329'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8331978425860694329'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/05/clojure-goes-10.html' title='Clojure goes 1.0'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-3305322250328989921</id><published>2009-05-04T13:07:00.001+03:00</published><updated>2009-05-04T13:44:31.774+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='clojure'/><title type='text'>re-post: Compiling Clojure applications using Ant</title><content type='html'>&lt;a href=" http://www.lithinos.com/Compiling-Clojure-applications-using-Ant.html"&gt;here&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-3305322250328989921?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/3305322250328989921/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=3305322250328989921' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3305322250328989921'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3305322250328989921'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/05/re-post-compiling-clojure-applications.html' title='re-post: Compiling Clojure applications using Ant'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-5073544523000048698</id><published>2009-05-02T14:39:00.000+03:00</published><updated>2009-05-02T14:40:39.006+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mining'/><title type='text'>re-post: Visualizing Bayes’ theorem</title><content type='html'>&lt;a href="http://blog.oscarbonilla.com/2009/05/visualizing-bayes-theorem/"&gt;here&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-5073544523000048698?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/5073544523000048698/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=5073544523000048698' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5073544523000048698'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5073544523000048698'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/05/re-post-visualizing-bayes-theorem.html' title='re-post: Visualizing Bayes’ theorem'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-3960170206900605898</id><published>2009-04-28T09:36:00.001+03:00</published><updated>2009-04-28T09:37:41.155+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mining'/><title type='text'>re-post: Web Analytics fun</title><content type='html'>nice one: &lt;a href="http://collison.ie/blog/2009/04/hacking-for-fun-and-profit-with-mathematica-and-the-google-analytics-api"&gt;mathematica with google analytics api&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-3960170206900605898?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/3960170206900605898/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=3960170206900605898' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3960170206900605898'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3960170206900605898'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/04/re-post-web-analytics-fun.html' title='re-post: Web Analytics fun'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-4066355415351578769</id><published>2009-04-27T10:07:00.001+03:00</published><updated>2009-04-27T10:23:49.269+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lisp'/><title type='text'>re-post: European Lisp Symposium 2009</title><content type='html'>&lt;a href="http://p-cos.blogspot.com/2009/04/european-lisp-symposium-2009-programme.html"&gt;programme details&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;João Pavão Martins and Ernesto Morgado, will be presenting :) Also had them also as teachers in college, together with António Leitão, they'r a very bright bunch. High quality teaching coming out from that Artificial Intelligence group.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-4066355415351578769?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/4066355415351578769/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=4066355415351578769' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/4066355415351578769'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/4066355415351578769'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/04/re-post-european-lisp-symposium-2009.html' title='re-post: European Lisp Symposium 2009'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-8126485634327091490</id><published>2009-04-24T09:11:00.001+03:00</published><updated>2009-06-25T09:53:30.116+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='clojure'/><title type='text'>Clojure and Selenium</title><content type='html'>&lt;h2 id="motivation"&gt;Motivation&lt;/h2&gt;&lt;p&gt;I needed a kind of crawler to go around a list of pages, invoke some javascript and collect that output.&lt;/p&gt;&lt;p&gt;Curl or a regular http lib’s don’t do the trick because i need to run javascript on each requested page. For that i can use Selenium, Selenium is a great framework to perform web testing, that uses directly a browser and thus we can run Javascript.&lt;/p&gt;&lt;p&gt;Selenium can be scripted from Java which matches very well with my wish to learn Clojure :)&lt;/p&gt;&lt;h2 id="solution"&gt;Solution&lt;/h2&gt;&lt;p&gt;Its not really a crawler in the sense that it does not go around automatically following all the links it finds, it actually gets the list of links to check from the site sitemap.xml.&lt;/p&gt;&lt;p&gt;As some sitemaps.xml are huge, i added also a little pick-a-sample function that randomly selects only a subset from all the sitemap.&lt;/p&gt;&lt;h2 id="code"&gt;Code&lt;/h2&gt;&lt;p&gt;Im on the process of learning Clojure, so probably a lot of things could be improved.&lt;/p&gt;&lt;p&gt;For Selenium, we need first to start the server, then the client, and then use the client to browse the pages. As is not very elegant to have a “start server” and “start client” on the top of the script and a “stop client” and “stop server” call at the end of the script, so i’ve wrapped it around a macro (one of the major strengths of Lisp like languages).&lt;/p&gt;&lt;h3 id="thewholethinggoeslikethis:"&gt;The whole thing goes like this:&lt;/h3&gt;&lt;p&gt;process-sitemap receives a sitemap, transforms it into a map(with xml-to-zip), collects the url links in it, then picks a sample from them(with pick-a-sample) and calls check-pages with them.&lt;/p&gt;&lt;p&gt;check-pages gets a list of urls. It starts by using the macro, obtains a-browser from it, then iterates over the list of urls, calling check-a-page on each url(a-url). Note that at this point the standard output is redirected to a file, so i can log the results from check-a-page.&lt;/p&gt;&lt;p&gt;check-a-page gets a-browser and a-url, so you can guess what it will do :)It opens that url in the browser, calls the javascript, and prints to standard output the return of the js call.&lt;/p&gt;&lt;p&gt;Hope google does not mind to use their site as an example. But do not run this on Google site, its just an example, use it on your own site!&lt;/p&gt;&lt;p&gt;For this to run you will need to have in your classpath a bunch of jar libs, this is how my lib folder looks like:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;         lib/&lt;br /&gt;        clojure-contrib.jar&lt;br /&gt;        clojure.jar&lt;br /&gt;        jline-0.9.94.jar&lt;br /&gt;        selenium-java-client-driver.jar&lt;br /&gt;        selenium-server.jar&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;br /&gt;I called this app “coverager”&lt;/p&gt;&lt;p&gt;Main Code: coverager.clj&lt;/p&gt;&lt;br /&gt;&lt;script src="http://gist.github.com/101007.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;p&gt;And of course tests: coverager_test.clj&lt;/p&gt;&lt;br /&gt;&lt;script src="http://gist.github.com/101005.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;h2 id="takeaways"&gt;Take Aways&lt;/h2&gt;&lt;p&gt;Clojure is great! Its my opinion that on the Lisp family of languages the code is more elegant and visually cleaner than the C family.&lt;/p&gt;&lt;p&gt;I don’t care much for working directly with the Java language, but working on the JVM with other languages like JRuby, Clojure, &lt;add here="" your="" favorite="" languange=""&gt; and harnessing all the vast amount of Java libs and infrastructure out there is a major major advantage.&lt;/add&gt;&lt;/p&gt;&lt;p&gt;I suspect i will be spending more time with Clojure in future :)&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-8126485634327091490?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/8126485634327091490/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=8126485634327091490' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8126485634327091490'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8126485634327091490'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/04/clojure-and-selenium.html' title='Clojure and Selenium'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-3930310962166454911</id><published>2009-04-23T09:51:00.001+03:00</published><updated>2009-06-27T15:01:36.433+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='photo'/><title type='text'>Photo: Lucky Dice</title><content type='html'>&lt;span class="Apple-style-span"   style=" border-collapse: collapse; color: rgb(102, 102, 102);  white-space: pre; font-family:'Lucida Grande';font-size:11px;"&gt;&lt;table style="width:auto;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://picasaweb.google.com/lh/photo/YefN0kwcKcanOiwvI3dtwQ?authkey=Gv1sRgCKjKirL7ieT-Qw&amp;amp;feat=embedwebsite"&gt;&lt;img src="http://lh3.ggpht.com/_UXikbBSJkX8/SfAPkvoEBnI/AAAAAAAAFi8/EezA3OsV-XQ/s400/dice.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="font-family:arial,sans-serif; font-size:11px; text-align:right"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-3930310962166454911?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/3930310962166454911/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=3930310962166454911' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3930310962166454911'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3930310962166454911'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/04/photo-dice.html' title='Photo: Lucky Dice'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_UXikbBSJkX8/SfAPkvoEBnI/AAAAAAAAFi8/EezA3OsV-XQ/s72-c/dice.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-9220056615604953689</id><published>2009-04-22T09:30:00.010+03:00</published><updated>2009-09-13T21:23:54.352+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mining'/><category scheme='http://www.blogger.com/atom/ns#' term='book'/><title type='text'>book: Collective Intelligence in Action</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://ecx.images-amazon.com/images/I/51iPRvIW7vL.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 288px; height: 361px;" src="http://ecx.images-amazon.com/images/I/51iPRvIW7vL.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;From editors site:&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;i&gt;Collective Intelligence in Action is a hands-on guidebook for implementing collective-intelligence concepts using Java. It is the first Java-based book to emphasize the underlying algorithms and technical implementation of vital data gathering and mining techniques like analyzing trends, discovering relationships, and making predictions.This book is for Java developers implementing collective intelligence in real, high-use applications.&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;Overall i liked it and have learned loads, it does have more Java code in it that i'd wanted, but for the ones who intent to use Java language the code in the book is handy, well, its after all a Java book, right? There's also some very useful, class diagrams that will help you to use the code described from JRuby, Clojure, Scala...&lt;div&gt;&lt;br /&gt;Its goes through all the process of: explaining the data structures needed to represent data in your app, how to collect data from web(blogs, etc), theory &amp;amp; implementation of mining algorithms, leveraging open source tools like Weka and Lucene, up to how Amazon, Google News and Netflix do their data mining(to some extent).&lt;/div&gt;&lt;div&gt;Liked also the data mining(machine learning) summaries on different data mining techniques, very compact and nicely done.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-9220056615604953689?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/9220056615604953689/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=9220056615604953689' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/9220056615604953689'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/9220056615604953689'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/04/book-collective-intelligence-in-action.html' title='book: Collective Intelligence in Action'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-6364089022471185271</id><published>2009-04-21T09:02:00.001+03:00</published><updated>2009-04-22T09:42:34.218+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='clojure'/><title type='text'>Clojure Reference</title><content type='html'>&lt;a href="http://java.ociweb.com/mark/clojure/article.html"&gt;Great reference&lt;/a&gt; (an quite complete, as far as i can tell) to the Clojure language. by Mark Volkmann&lt;br /&gt;&lt;br /&gt;And Clojure page from same author &lt;a href="http://java.ociweb.com/mark/clojure/"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-6364089022471185271?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/6364089022471185271/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=6364089022471185271' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/6364089022471185271'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/6364089022471185271'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/04/clojure-reference.html' title='Clojure Reference'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-7740435769515511711</id><published>2009-04-20T09:02:00.004+03:00</published><updated>2009-05-04T13:44:49.046+03:00</updated><title type='text'>re-post: Make your own Fonts</title><content type='html'>&lt;div&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/O5zPkjxSALU&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=pt-br&amp;amp;feature=player_embedded&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/O5zPkjxSALU&amp;amp;color1=0xb1b1b1&amp;amp;color2=0xcfcfcf&amp;amp;hl=pt-br&amp;amp;feature=player_embedded&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;from: &lt;a href="http://asaxeo.blogspot.com/2009/04/make-your-own-fonts.html"&gt; asaxeo.blogspot.com &lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-7740435769515511711?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/7740435769515511711/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=7740435769515511711' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/7740435769515511711'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/7740435769515511711'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/04/re-post-make-your-own-fonts.html' title='re-post: Make your own Fonts'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-5268362481790926855</id><published>2009-04-16T10:17:00.005+03:00</published><updated>2009-05-04T13:45:17.632+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mining'/><title type='text'>re-post: Almost Viral</title><content type='html'>&lt;div&gt;&lt;a href="http://20bits.com/articles/almost-viral-a-hybrid-acquisition-strategy/"&gt;Article about online marketing strategies: Paid &amp;amp; Viral.&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;couple of points:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Almost viral can be safer than full on viral. (specially if your product is new)&lt;/li&gt;&lt;li&gt;The real cost per acquisition should also account for the viral coefficient. And the growth of  acquisition is a geometric series.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;Great use of math to build a formula that models the (real) cost per acquisition.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-5268362481790926855?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/5268362481790926855/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=5268362481790926855' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5268362481790926855'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5268362481790926855'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/04/re-post-almost-viral.html' title='re-post: Almost Viral'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-8426856906930162703</id><published>2009-04-14T09:37:00.005+03:00</published><updated>2009-05-04T13:45:22.985+03:00</updated><title type='text'>re-post: How to Become As Rich As Bill Gates</title><content type='html'>&lt;a href="http://philip.greenspun.com/bg/"&gt;fun read here&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-8426856906930162703?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/8426856906930162703/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=8426856906930162703' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8426856906930162703'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8426856906930162703'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/04/re-post-how-to-become-as-rich-as-bill.html' title='re-post: How to Become As Rich As Bill Gates'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-711248294455243558</id><published>2009-04-13T10:33:00.009+03:00</published><updated>2009-05-04T13:45:30.297+03:00</updated><title type='text'>re-post: Shit is not easy. Stuff takes time.</title><content type='html'>&lt;a href="http://steve-yegge.blogspot.com/2009/04/have-you-ever-legalized-marijuana.html"&gt;Nice (but slightly harsh) "rant" from Steve Yegge about Complexity: &lt;i&gt;Have you ever legalized marijuana?&lt;/i&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-711248294455243558?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/711248294455243558/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=711248294455243558' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/711248294455243558'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/711248294455243558'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/04/shit-is-not-easy-stuff-takes-time.html' title='re-post: Shit is not easy. Stuff takes time.'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-7941075406422339061</id><published>2009-04-09T08:34:00.011+03:00</published><updated>2009-09-13T21:22:55.554+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='book'/><title type='text'>book: The 4-Hour Workweek</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_UXikbBSJkX8/Sdjq0mP086I/AAAAAAAAFg4/IiymN3NWke0/s1600-h/work_week.jpeg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 210px; height: 320px;" src="http://1.bp.blogspot.com/_UXikbBSJkX8/Sdjq0mP086I/AAAAAAAAFg4/IiymN3NWke0/s320/work_week.jpeg" border="0" alt="" id="BLOGGER_PHOTO_ID_5321261149079270306" /&gt;&lt;/a&gt;&lt;br /&gt;A favorite of mine.&lt;br /&gt;&lt;br /&gt;Some discussed topics and quotes:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;80/20 Pareto's rule.&lt;/li&gt;&lt;li&gt;Parkinson's Law.&lt;/li&gt;&lt;li&gt;The need for an "Information Diet" and the excess of information.&lt;/li&gt;&lt;li&gt;Spending a lot of time on something unimportant does not make it important.&lt;/li&gt;&lt;li&gt;Lack of time is actually lack of priorities.&lt;/li&gt;&lt;li&gt;Automations to free you from work.&lt;/li&gt;&lt;li&gt;Virtual Assistants to free you from work.&lt;/li&gt;&lt;li&gt;People don’t want to be millionaires. They want to experience what they believe only millions can buy.&lt;/li&gt;&lt;li&gt;Less is not laziness. Focus on being productive instead of busy.&lt;/li&gt;&lt;li&gt;Slow down and remember this: Most things make no difference.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Thanks José Santos, for the suggestion.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-7941075406422339061?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/7941075406422339061/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=7941075406422339061' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/7941075406422339061'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/7941075406422339061'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/04/tim-ferries-4-hour-work-week.html' title='book: The 4-Hour Workweek'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_UXikbBSJkX8/Sdjq0mP086I/AAAAAAAAFg4/IiymN3NWke0/s72-c/work_week.jpeg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-121090823835136831</id><published>2009-04-08T10:45:00.004+03:00</published><updated>2009-04-09T15:44:49.511+03:00</updated><title type='text'>A Google SMS</title><content type='html'>My geeky mind thinks is kinda cool to get an sms from Google.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_UXikbBSJkX8/SdxWsZn3EqI/AAAAAAAAFhA/3IMWCOpWiXE/s1600-h/google-sms.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 266px;" src="http://3.bp.blogspot.com/_UXikbBSJkX8/SdxWsZn3EqI/AAAAAAAAFhA/3IMWCOpWiXE/s320/google-sms.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5322224180437389986" /&gt;&lt;/a&gt;&lt;br /&gt;(I blanked out the content)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-121090823835136831?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/121090823835136831/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=121090823835136831' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/121090823835136831'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/121090823835136831'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/04/google-sms.html' title='A Google SMS'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_UXikbBSJkX8/SdxWsZn3EqI/AAAAAAAAFhA/3IMWCOpWiXE/s72-c/google-sms.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-5023388901530290091</id><published>2009-04-07T22:31:00.010+03:00</published><updated>2009-04-14T09:41:27.026+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lisp'/><category scheme='http://www.blogger.com/atom/ns#' term='clojure'/><title type='text'>Starting up Clojure simple tips</title><content type='html'>&lt;p&gt;Here’s a couple of things that i use, when learning about Clojure.Im on Mac and using Textmate.&lt;/p&gt;&lt;h2 id="screencasts"&gt;Screencasts &amp;amp; Tutorial&lt;/h2&gt;&lt;p&gt;Here are a series of 10 screencasts that i found to be quite useful &lt;a href="http://www.youtube.com/watch?v=Aoeav_T1ARU&amp;amp;feature=PlayList&amp;amp;p=00D7ACB417C22451&amp;amp;index=0&amp;amp;playnext=1"&gt;Intro to Clojure (youtube playlist)&lt;/a&gt;&lt;/p&gt;&lt;p&gt;And there’s also Rich Hickey screencasts &lt;a href="http://clojure.blip.tv/"&gt;http://clojure.blip.tv/&lt;/a&gt;, but they are longer, so start the with ones above.&lt;/p&gt;&lt;p&gt;For reading material take a look at Mark Volkmann Clojure very &lt;a href="http://java.ociweb.com/mark/clojure/article.html"&gt;complete notes here&lt;/a&gt;. And his clojure &lt;a href="http://java.ociweb.com/mark/clojure/"&gt;references here&lt;/a&gt;.&lt;/p&gt;&lt;h2 id="folderstructureforcode"&gt;Folder Structure for code&lt;/h2&gt;&lt;pre&gt;&lt;code&gt;&lt;br /&gt;bin/&lt;br /&gt;repl.sh&lt;br /&gt;run.sh&lt;br /&gt;lib/&lt;br /&gt;clojure-contrib.jar&lt;br /&gt;clojure.jar&lt;br /&gt;jline-0.9.94.jar&lt;br /&gt;*.jar&lt;br /&gt;README&lt;br /&gt;src/&lt;br /&gt;*.clj&lt;br /&gt;test/&lt;br /&gt;*.clj&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Assuming a structure, is possible to do some automation, see next.&lt;/p&gt;&lt;h2 id="textmatebuildrun"&gt;Textmate Builds run.sh and repl.sh&lt;/h2&gt;&lt;p&gt;To address the issues of including jar’s you want to use in the Classpath here’s a little ruby script that I trigger from Textmate. It looks into the lib/ dir and creates the repl.sh and run.sh scripts:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;&lt;br /&gt;#!/usr/bin/env ruby -wKU&lt;br /&gt;&lt;br /&gt;project_dir=ENV['TM_FILEPATH'].split("/")[0...-1].join("/")&lt;br /&gt;&lt;br /&gt;libs_path = Dir[project_dir + "/../lib/*.jar"].collect&lt;br /&gt;&lt;br /&gt;File.open(project_dir+"/../bin/run.sh", "w+") do |fil|&lt;br /&gt;fil.puts "java -cp .:#{libs_path.join(':')} clojure.lang.Script #{ENV['TM_FILEPATH']}"&lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;File.open(project_dir+"/../bin/repl.sh", "w+") do |fil|&lt;br /&gt;fil.puts "java -cp .:#{libs_path.join(':')} jline.ConsoleRunner clojure.lang.Repl #{ENV['TM_FILEPATH']}"&lt;br /&gt;end&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;So if you want to use some new jar’s just place them inside the lib/ and trigger this ruby code that will re-generate the the run.sh and repl.sh scripts.&lt;/p&gt;&lt;h2 id="codetocheck"&gt;Existing code&lt;/h2&gt;&lt;p&gt;Other thing that i keep close by is existing Clojure code examples, i also use Textmate so that they are just a keyboard shortcut away(they are 3 different commands):&lt;/p&gt;&lt;pre&gt;&lt;code&gt; git fetch&lt;br /&gt;mate '/somewhere-in-your-disk&lt;somewhere-in-disk&gt;/programming-clojure/'&lt;br /&gt;&lt;br /&gt;svn up&lt;br /&gt;mate '/somewhere-in-your-disk&lt;somewhere-in-disk&gt;/clojure-contrib/'&lt;br /&gt;&lt;br /&gt;svn up&lt;br /&gt;mate '/somewhere-in-your-disk&lt;somewhere-in-disk&gt;/svn_clojure/trunk'&lt;br /&gt;&lt;/somewhere-in-disk&gt;&lt;/somewhere-in-disk&gt;&lt;/somewhere-in-disk&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;you can get this code onto your machine from:&lt;/p&gt;&lt;pre&gt;&lt;code&gt; Clojure core&lt;br /&gt;http://code.google.com/p/clojure/&lt;br /&gt;svn checkout http://clojure.googlecode.com/svn/trunk/ clojure-read-only&lt;br /&gt;&lt;br /&gt;Clojure contrib&lt;br /&gt;http://code.google.com/p/clojure-contrib/&lt;br /&gt;svn checkout http://clojure-contrib.googlecode.com/svn/trunk/ clojure-contrib-read-only&lt;br /&gt;&lt;br /&gt;Programming Clojure book:&lt;br /&gt;http://github.com/stuarthalloway/programming-clojure/tree/master&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="documentation"&gt;API&lt;/h2&gt;&lt;p&gt;Another handy keyboard shortcut is to get the clojure api web page, also directly from Textmate, setup a new command with the code:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;open http://clojure.org/api&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="googleit"&gt;Google it&lt;/h2&gt;&lt;p&gt;A lot of people are starting to explore Clojure, so google it and you’ll find a lot of posts and tips on clojure already out there.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-5023388901530290091?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/5023388901530290091/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=5023388901530290091' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5023388901530290091'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5023388901530290091'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/04/starting-up-clojure-simple-tips.html' title='Starting up Clojure simple tips'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-5127382402305973888</id><published>2009-04-05T12:29:00.018+03:00</published><updated>2009-04-06T18:18:42.550+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='textmate'/><title type='text'>HTML to PDF &amp; Printing</title><content type='html'>Making HTML into PDF properly is normally mission impossible: tables and images get cut in the middle, titles can appear alone at end of page with the text starting on the next page, headers and footers are normally non-existing or have some strange stuff from the browsers, like the file path to the html file… normally margins make no sense are either too big or too small, etc etc…&lt;br /&gt;&lt;br /&gt;&lt;p&gt;At the same time CSS is great to format layouts of documents in a clean, reusable way… Almost seems ideal, but then when you get it onto PDF(or print) it gets all funky…&lt;/p&gt;&lt;h2 id="multimarkdowntopdfprinting"&gt;MultiMarkdown to PDF &amp;amp; Printing&lt;/h2&gt;&lt;p&gt;I’m especially interested in this because i am a fan of the so called &lt;a href="http://alexandrenotebook.blogspot.com/2008/01/textile-vs-markdown-vs-multimarkdown-vs_10.html"&gt;lightweight markup languages&lt;/a&gt; like Markdown(specially the &lt;a href="http://fletcherpenney.net/multimarkdown/"&gt;MultiMarkdown&lt;/a&gt; extension). Thus avoiding having to go into Microsoft Word.&lt;/p&gt;&lt;p&gt;MultiMarkdown can be easily outputted into HTML and use CSS for formating, but then when trying to get it onto PDF(or printing), trouble starts…&lt;/p&gt;&lt;p&gt;You can either print it(or create PDF) directly from the browser and although it does keep the css formating still has all the troubles described in begin of post… Alternatively, you can transform the MultiMarkdown to LateX and then to PDF, the output is nice but the CSS formatting does not work there, and although the LateX supports formating, its complicated, so in practice i always ended up with the same looking PDF, which ends up being rather boring…&lt;/p&gt;&lt;p&gt;recently i found a 3rd option.&lt;/p&gt;&lt;h2 id="princexml"&gt;Prince XML&lt;/h2&gt;&lt;p&gt;On a comment of a previous blog post on &lt;a href="http://alexandrenotebook.blogspot.com/2008/01/textile-vs-markdown-vs-multimarkdown-vs_10.html"&gt;lightweight markup languages&lt;/a&gt;, someone suggested an alternative tool: &lt;a href="http://www.princexml.com/"&gt;Prince XML&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Its a command line application, that gets an html file as input(plus a bunch of other options) and outputs a PDF file. Go check some &lt;a href="http://www.princexml.com/samples/"&gt;samples here&lt;/a&gt; and example web applications &lt;a href="http://www.princexml.com/samples/apps/"&gt;using it here&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;I found it so much better from the alternatives i’ve tried, that Im posting it in case someone else is twiddling around the same issues.&lt;/p&gt;&lt;p&gt;You can even find a Google talk &lt;a href="http://www.youtube.com/watch?v=vcXUrNSvjhU"&gt;about it&lt;/a&gt;, with Håkon Wium Lie(who proposed CSS originally and is Opera CTO) and Michael Day (system architect for Prince).&lt;/p&gt;&lt;h2 id="fortextmateusers"&gt;For Textmate users&lt;/h2&gt;&lt;p&gt;I’ve created a simple command, so i get my MultiMarkdown directly onto PDF using 1 command, (its originally the Multimarkdown command that creates HTML with a couple of more lines added that produce the  PDF using prince), here’s the code:&lt;/p&gt;&lt;pre&gt;# Process the MultiMarkdown document into HTML and then PDF.&lt;br /&gt;&lt;br /&gt;NAME="${TM_FILEPATH:-untitled}"&lt;br /&gt;BASENAME="${NAME%.*}"&lt;br /&gt;&lt;br /&gt;cd "${TM_MULTIMARKDOWN_PATH:-$HOME/Library/Application Support/MultiMarkdown}"&lt;br /&gt;cd bin&lt;br /&gt;&lt;br /&gt;#to HML&lt;br /&gt;./multimarkdown2XHTML.pl &gt; "$BASENAME.html"&lt;br /&gt;&lt;br /&gt;#to PDF&lt;br /&gt;`prince "$BASENAME.html" -o "$BASENAME.pdf"`&lt;br /&gt;&lt;br /&gt;#open PDF&lt;br /&gt;`open "$BASENAME.pdf"`&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;p&gt;This assumes you have Prince XML installed in your system, and you can call it from command line.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-5127382402305973888?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/5127382402305973888/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=5127382402305973888' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5127382402305973888'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5127382402305973888'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/04/html-to-pdf-printing-making-html-into.html' title='HTML to PDF &amp; Printing'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-2448921853787818006</id><published>2009-04-04T21:16:00.001+03:00</published><updated>2009-04-15T10:41:47.826+03:00</updated><title type='text'>Multiplication Technique</title><content type='html'>&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/aBBzz_MgyIM&amp;hl=en&amp;fs=1&amp;rel=0"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/aBBzz_MgyIM&amp;hl=en&amp;fs=1&amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-2448921853787818006?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/2448921853787818006/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=2448921853787818006' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2448921853787818006'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2448921853787818006'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/04/new-multiplication-technique.html' title='Multiplication Technique'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-7665183572277590809</id><published>2009-04-03T10:38:00.007+03:00</published><updated>2009-07-04T12:44:08.820+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='life'/><title type='text'>Tim Ferriss</title><content type='html'>Tim Ferriss has some amazing ideas on what he calls: Experiments on Lifestyle Design.&lt;br /&gt;&lt;br /&gt;&lt;object width="480" height="295"&gt;&lt;param name="movie" value="http://www.youtube.com/v/qdluEiApUtQ&amp;amp;hl=en&amp;amp;fs=1&amp;amp;rel=0"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/qdluEiApUtQ&amp;amp;hl=en&amp;amp;fs=1&amp;amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="295"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;more on this later.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-7665183572277590809?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/7665183572277590809/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=7665183572277590809' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/7665183572277590809'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/7665183572277590809'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/04/tim-ferris.html' title='Tim Ferriss'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-8234773109789786781</id><published>2009-03-31T12:25:00.004+03:00</published><updated>2009-05-04T13:45:43.014+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lisp'/><title type='text'>re-post: Why i Like PLT Scheme</title><content type='html'>&lt;a href="http://www.kuro5hin.org/story/2004/3/17/93442/8657"&gt;nice article on: Why i Like PLT Scheme(a Lisp dialect)&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-8234773109789786781?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/8234773109789786781/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=8234773109789786781' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8234773109789786781'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/8234773109789786781'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/03/re-post-why-i-like-plt-scheme.html' title='re-post: Why i Like PLT Scheme'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-4615985596793882601</id><published>2009-03-30T19:31:00.001+03:00</published><updated>2009-04-02T08:36:56.454+03:00</updated><title type='text'>re-post: Time Management</title><content type='html'>&lt;a href="http://www.thesimpledollar.com/2009/03/26/most-time-management-is-rubbish-here-are-ten-things-that-work-for-me/"&gt;Most Time Management Is Rubbish. Here Are Ten Things That Work for Me.&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-4615985596793882601?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/4615985596793882601/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=4615985596793882601' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/4615985596793882601'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/4615985596793882601'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/03/re-post-time-management.html' title='re-post: Time Management'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-4990126087706590020</id><published>2009-03-30T15:57:00.002+03:00</published><updated>2009-03-31T22:39:20.967+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='photo'/><title type='text'>Is Looking At Ya - Part ii</title><content type='html'>&lt;a href="http://picasaweb.google.com/lh/photo/fnu2grMuT2I5wyIsxMOrwg?authkey=Gv1sRgCKjKirL7ieT-Qw&amp;amp;feat=embedwebsite"&gt;&lt;img src="http://lh4.ggpht.com/_UXikbBSJkX8/Sc-w4-K1b-I/AAAAAAAAFgk/jmn4JTIo4_M/s288/is-looking-mood.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://alexandrenotebook.blogspot.com/2008/11/alternative-version-of-minds-eye.html"&gt;part 1 here&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-4990126087706590020?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/4990126087706590020/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=4990126087706590020' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/4990126087706590020'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/4990126087706590020'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/03/is-looking-at-ya-part-ii.html' title='Is Looking At Ya - Part ii'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_UXikbBSJkX8/Sc-w4-K1b-I/AAAAAAAAFgk/jmn4JTIo4_M/s72-c/is-looking-mood.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-2970020944881219647</id><published>2009-03-30T15:54:00.002+03:00</published><updated>2009-03-30T15:55:19.686+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='a.saxeo'/><title type='text'>Dad's New Blog</title><content type='html'>My Dad has a blog: &lt;a href="http://asaxeo.blogspot.com/"&gt;asaxeo.blogspot.com&lt;/a&gt; (Portuguese text mostly). How cool is that!&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://asaxeo.blogspot.com/"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 411px; height: 381px;" src="http://3.bp.blogspot.com/_UXikbBSJkX8/SdDAG3jl__I/AAAAAAAAFgw/rcgpgUy672I/s320/newBlog.png" alt="" id="BLOGGER_PHOTO_ID_5318962384149544946" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-2970020944881219647?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/2970020944881219647/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=2970020944881219647' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2970020944881219647'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2970020944881219647'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/03/dads-new-blog_30.html' title='Dad&apos;s New Blog'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_UXikbBSJkX8/SdDAG3jl__I/AAAAAAAAFgw/rcgpgUy672I/s72-c/newBlog.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-581759308644697660</id><published>2009-03-29T16:09:00.006+03:00</published><updated>2010-03-21T01:30:29.677+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='book'/><title type='text'>book: The Speed Reading Course</title><content type='html'>&lt;strong&gt;&lt;/strong&gt;by: Peter Shepherd &amp;amp; Gregory Unsworth-Michell&lt;br /&gt;Very short. It teaches techniques:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;to increase reading speed, &lt;/li&gt;&lt;li&gt;to more quickly grasp and digest information(key work highlight, MindMaps, visualization of information, pre-read survey, etc etc..), &lt;/li&gt;&lt;li&gt;to improve memory recall.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Useful tips in today's information overload.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-581759308644697660?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/581759308644697660/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=581759308644697660' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/581759308644697660'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/581759308644697660'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/03/book-spead-reading-course.html' title='book: The Speed Reading Course'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-5768377523873308726</id><published>2009-03-24T18:07:00.009+02:00</published><updated>2010-03-21T03:21:15.685+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='book'/><title type='text'>book: The Power of less</title><content type='html'>&lt;a href="http://waxmanagency.files.wordpress.com/2009/01/bookcover3.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" src="http://waxmanagency.files.wordpress.com/2009/01/bookcover3.jpg" style="cursor: pointer; display: block; height: 335px; margin: 0px auto 10px; text-align: center; width: 222px;" /&gt;&lt;/a&gt;&lt;br /&gt;How to do less while accomplishing more, learn how to limit yourself to what's important. Full of very practical advices.&lt;br /&gt;&lt;blockquote&gt;&lt;i&gt;"With the countless distractions that come from every corner of modern life, it’s amazing that we’re ever able to accomplish anything. The Power of Less demonstrates how to streamline your life by identifying the essential and eliminating the unnecessary — freeing you from everyday clutter and allowing you to focus on accomplishing the goals that can change your life for the better."&lt;/i&gt;&lt;/blockquote&gt;Thanks José Santos, for the suggestion.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-5768377523873308726?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/5768377523873308726/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=5768377523873308726' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5768377523873308726'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5768377523873308726'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/03/book-power-of-less.html' title='book: The Power of less'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-241819406923672623</id><published>2009-03-24T18:01:00.007+02:00</published><updated>2010-03-21T03:18:16.340+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='book'/><title type='text'>book: Predictably Irrational</title><content type='html'>&lt;a href="http://abuggedlife.com/wp-content/uploads/2008/10/predictably-irrational.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" src="http://abuggedlife.com/wp-content/uploads/2008/10/predictably-irrational.jpg" style="cursor: pointer; display: block; height: 358px; margin: 0px auto 10px; text-align: center; width: 235px;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;"Do you know why we sometimes find ourselves excitedly buying things we don’t really need?"&lt;br /&gt;&lt;br /&gt;"Do you know why we still have a headache after taking a five-cent aspirin, but why that same headache vanishes when the aspirin costs 50 cents?"&lt;br /&gt;&lt;br /&gt;"Do you know why people who have been asked to recall the Ten Commandments tend to be more honest (at least immediately afterward) than those who haven’t? Or why honor codes actually do reduce dishonesty in the workplace?"&lt;br /&gt;&lt;br /&gt;"..We are pawns in a game whose forces we fail to understand..."&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;Is not in any way related to conspiracy theories and the like, is about simple every day things, the book clearly shows(by experiments) that everybody makes predictable mistakes, again and again, we just don't notice it most of the times, thus being aware of them is a first step on how to avoid them.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-241819406923672623?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/241819406923672623/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=241819406923672623' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/241819406923672623'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/241819406923672623'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/03/predictably-irrational.html' title='book: Predictably Irrational'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-6870892512579140746</id><published>2009-03-23T18:15:00.004+02:00</published><updated>2009-03-23T18:21:13.475+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lisp'/><title type='text'>Viewpoints Research Institute - Alan Kay</title><content type='html'>&lt;span style="font-style: italic;"&gt;An excruciating example of an area that needs more than incremental improvements is programming, both in the large and in the small. Code is too: large, complex, costly, buggy, insecure, segregated, and inexpressive. We have plans to attempt a qualitative reinvention of programming and to start one of the subprojects this year: to make a practical working mathematical model of a complete personal computer system.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://vpri.org/html/work/ifnct.htm"&gt;promissing stuff here&lt;/a&gt;&lt;span style="font-style: italic;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-6870892512579140746?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/6870892512579140746/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=6870892512579140746' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/6870892512579140746'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/6870892512579140746'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/03/viewpoints-research-institute-alan-kay.html' title='Viewpoints Research Institute - Alan Kay'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-2776848644390797444</id><published>2009-03-23T10:47:00.008+02:00</published><updated>2009-06-25T09:51:20.734+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ruby'/><title type='text'>Why's (Poignant) Guide to Ruby</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://poignantguide.net/ruby/"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 311px;" src="http://poignantguide.net/ruby/i/2007-cover-open.jpg" alt="" border="0" /&gt;&lt;/a&gt;There's something magical about this introduction to ruby.&lt;br /&gt;This is the book that got me started in the ruby language.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-2776848644390797444?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/2776848644390797444/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=2776848644390797444' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2776848644390797444'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2776848644390797444'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/03/whys-poignant-guide-to-ruby.html' title='Why&apos;s (Poignant) Guide to Ruby'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-5891363957293892220</id><published>2009-03-20T17:10:00.002+02:00</published><updated>2009-03-20T17:17:07.312+02:00</updated><title type='text'>impressive wearable tech</title><content type='html'>&lt;object height="295" width="480"&gt;&lt;param name="movie" value="http://www.youtube.com/v/nZ-VjUKAsao&amp;amp;hl=en&amp;amp;fs=1&amp;amp;rel=0"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/nZ-VjUKAsao&amp;amp;hl=en&amp;amp;fs=1&amp;amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" height="295" width="480"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-5891363957293892220?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/5891363957293892220/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=5891363957293892220' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5891363957293892220'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5891363957293892220'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/03/impressive-wearable-tech.html' title='impressive wearable tech'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-5730665986837485200</id><published>2009-03-20T10:24:00.002+02:00</published><updated>2009-03-20T10:28:23.230+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rant'/><title type='text'>Focus on what's important</title><content type='html'>Nice article about focusing on whats important for starting a new business: &lt;a href="http://www.freemoneyfinance.com/2009/03/trying-to-earn-more-money-stop-wasting-your-time.html"&gt;Trying to Earn More Money? Stop Wasting Your Time&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;relates to my previous rant: &lt;a href="http://alexandrenotebook.blogspot.com/2008/03/are-you-spending-time-with-right-stuff.html"&gt;Are you spending time with the right stuff?&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-5730665986837485200?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/5730665986837485200/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=5730665986837485200' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5730665986837485200'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/5730665986837485200'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/03/focus-on-whats-important.html' title='Focus on what&apos;s important'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-6789762026055713750</id><published>2009-03-18T10:46:00.000+02:00</published><updated>2009-03-18T10:48:07.511+02:00</updated><title type='text'>The Future</title><content type='html'>&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/0mxJZ6Jhnrk&amp;hl=en&amp;fs=1&amp;rel=0"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/0mxJZ6Jhnrk&amp;hl=en&amp;fs=1&amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-6789762026055713750?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/6789762026055713750/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=6789762026055713750' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/6789762026055713750'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/6789762026055713750'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/03/future.html' title='The Future'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-3405961309167021127</id><published>2009-03-15T17:24:00.006+02:00</published><updated>2009-03-15T18:05:55.618+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iCal'/><category scheme='http://www.blogger.com/atom/ns#' term='mac'/><title type='text'>iCal as a GTD Tool</title><content type='html'>&lt;p&gt;&lt;img id="ical" src="http://images.appleinsider.com/leopard-preview-ical-8.png" alt="iCal" title="iCal" /&gt;&lt;/p&gt;&lt;p&gt;(image borrowed from appeinside.com)&lt;/p&gt;&lt;h2 id="why"&gt;Why?&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;See what &lt;a href="http://en.wikipedia.org/wiki/Getting_Things_Done"&gt;GTD is all about&lt;/a&gt;. But basically its a set of guidelines that helps you be more organized and consequently more productive(they call it Getting Things Done), this is specially useful to check out if your work feels chaotic at the moment. &lt;/li&gt;&lt;li&gt;I don&amp;#8217;t follow it too strictly, but i do use it a lot.&lt;/li&gt;&lt;/ul&gt;&lt;h2 id="tools"&gt;Tools&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;Before iCal I was using &lt;em&gt;Things&lt;/em&gt; app, but it went recently into paid version. iCal in Leopard improved a lot so i decided to give it a try.&lt;/li&gt;&lt;li&gt;I did try and use for while other GTD apps: iGTD, Chandler, and couple more&amp;#8230; but was not fully happy with them.&lt;/li&gt;&lt;li&gt;After a few months of using iCal, its working well for me.&lt;/li&gt;&lt;/ul&gt;&lt;h2 id="icalmakesitsimpler"&gt;iCal makes it simpler&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;Because I was already using iCal for the Calendar, doing the TODO list management inside iCal removes the need of having another app getting in the way.&lt;/li&gt;&lt;li&gt;Don&amp;#8217;t have to worry more about sync problems between another app. &lt;/li&gt;&lt;li&gt;Create TODO&amp;#8217;s directly from email, natively. &lt;/li&gt;&lt;li&gt;Is altogether more integrated into OS. &lt;/li&gt;&lt;/ul&gt;&lt;h2 id="mycalendarsinical"&gt;myCalendars in iCal&lt;/h2&gt;&lt;p&gt;Work:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;work-now&lt;/li&gt;&lt;li&gt;work-later&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Personal:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;house&lt;/li&gt;&lt;li&gt;others&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Mail:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;inbox-tasks&lt;/li&gt;&lt;/ul&gt;&lt;h2 id="howiusethem:"&gt;How i use them:&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;work-now and work-later are the ones that get more frequent daily use. &lt;/li&gt;&lt;li&gt;work-later is for TODO&amp;#8217;s that I won&amp;#8217;t do now. Either i&amp;#8217;m waiting for something to be able to finish it or only needs to be done in some days. &lt;/li&gt;&lt;li&gt;Tasks that are not to be done right now go into the work-later, this way the work-now list gets less cluttered and I&amp;#8217;m mostly looking at the work-now list.&lt;/li&gt;&lt;li&gt;When i have the work-now list empty I go into the list of work-later and move the ones with higher priority into the work-now list. Also check the ones in inbox-tasks.&lt;/li&gt;&lt;li&gt;I normally create a TODO item either directly into work-now calendar or from the Mail.app and these go into the inbox-tasks, that i review later on.&lt;/li&gt;&lt;li&gt;When creating TODO items, I use a name format like &amp;#8220;proj1: todo1&amp;#8221;, &amp;#8220;proj1: todo2&amp;#8221;, this enables  to sort them by name, because sometimes is better to do in batch several tasks from same project.&lt;/li&gt;&lt;li&gt;When creating an item I also set its priority. Priority is another way to sort TODO items. This enables me to see what TODO&amp;#8217;s need to done first.&lt;/li&gt;&lt;li&gt;Some TODO&amp;#8217;s can&amp;#8217;t be done now(thus should go into work-later), but because i want to remember them before deadline, I drag and drop them into the calendar, create a remember alarm and then move them into the work-later.&lt;/li&gt;&lt;li&gt;&lt;p&gt;Use the TODO item &amp;#8220;note:&amp;#8221; to keep the relevant details about the TODO item. Basically the description of the TODO item exist here: description of the task, plan how to tackle the task, code repository revisions, URL&amp;#8217;s to bug, etc etc..&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;I keep iCap app open all day and use it to guide my work: I look what&amp;#8217;s on work-now list with higher priority, pick the first, check if other any tasks can be batched with it, do it and finally tick it off when done.&lt;/p&gt;&lt;/li&gt;&lt;li&gt;ICal Settings: un-tick the &amp;#8220;Show all Completed Items&amp;#8221;, so that when a task is done it disappears from the list.&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-3405961309167021127?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/3405961309167021127/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=3405961309167021127' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3405961309167021127'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/3405961309167021127'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/03/ical-as-gtd-tool.html' title='iCal as a GTD Tool'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-4056947861325486313</id><published>2009-03-13T13:07:00.007+02:00</published><updated>2009-03-13T13:43:11.409+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lisp'/><title type='text'>2nd European Lisp Symposium 2009</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://european-lisp-symposium.org/"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 174px; height: 135px;" src="http://bimib.disco.unimib.it/elswiki/skins/common/images/ELS/ELS2009logo.gif" alt="" border="0" /&gt;&lt;/a&gt;&lt;a href="http://european-lisp-symposium.org/"&gt;&lt;br /&gt;&lt;/a&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size:130%;"&gt;&lt;a href="http://european-lisp-symposium.org/"&gt;Milan, Italy&lt;br /&gt;May 27-29, 2009&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;span style="font-style: italic;"&gt;And i'm very happy to say that in the organizing committee is professor António Leitão. M&lt;/span&gt;&lt;span style="font-style: italic;"&gt;y Scheme teacher from "introduction to programming" class in &lt;a href="http://www.ist.utl.pt/"&gt;college&lt;/a&gt;.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-4056947861325486313?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/4056947861325486313/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=4056947861325486313' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/4056947861325486313'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/4056947861325486313'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/03/2nd-european-lisp-symposium-2009.html' title='2nd European Lisp Symposium 2009'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-1803635352506402914</id><published>2009-03-12T14:59:00.000+02:00</published><updated>2009-03-12T15:01:05.377+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='photo'/><title type='text'>Reality Check</title><content type='html'>&lt;table style="width:auto;"&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://picasaweb.google.com/lh/photo/vNgn0Z38-BDeuPDQEIgjMQ?feat=embedwebsite"&gt;&lt;img src="http://lh6.ggpht.com/_UXikbBSJkX8/SbkFs1JhO5I/AAAAAAAAFeg/_DOlqMyK3B8/s400/realityCheck.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-1803635352506402914?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/1803635352506402914/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=1803635352506402914' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/1803635352506402914'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/1803635352506402914'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/03/reality-check.html' title='Reality Check'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_UXikbBSJkX8/SbkFs1JhO5I/AAAAAAAAFeg/_DOlqMyK3B8/s72-c/realityCheck.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3326630118570774111.post-2453586029476467998</id><published>2009-03-08T00:05:00.004+02:00</published><updated>2009-03-08T01:31:35.528+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='photo'/><title type='text'>Portugal</title><content type='html'>&lt;table style="width: auto;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;a href="http://picasaweb.google.com/lh/photo/FbEJ3ikoEwgosDdzWX_lzQ?feat=embedwebsite"&gt;&lt;img src="http://lh6.ggpht.com/_UXikbBSJkX8/RMwwKGcJABI/AAAAAAAAAd4/Ay02LD7D_I8/s400/vaca_tuga%20copy.jpg" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="font-family: arial,sans-serif; font-size: 11px; text-align: right;"&gt;from: &lt;a href="http://picasaweb.google.com/al3xandr3/OsExternos?feat=embedwebsite"&gt;os externos&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;span style="font-style: italic;"&gt;@Lisbon, 21 July 2006.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;When i made this picture little did i know that almost 3 years later I would be blogging  it from Estonia.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3326630118570774111-2453586029476467998?l=alexandrenotebook.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://alexandrenotebook.blogspot.com/feeds/2453586029476467998/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3326630118570774111&amp;postID=2453586029476467998' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2453586029476467998'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3326630118570774111/posts/default/2453586029476467998'/><link rel='alternate' type='text/html' href='http://alexandrenotebook.blogspot.com/2009/03/portugal.html' title='Portugal'/><author><name>Alexandre Martins</name><uri>http://www.blogger.com/profile/01500150233692518266</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://2.bp.blogspot.com/_UXikbBSJkX8/ShmQVBk6v4I/AAAAAAAAFsI/xt5gfJCUkB4/S220/alex5.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_UXikbBSJkX8/RMwwKGcJABI/AAAAAAAAAd4/Ay02LD7D_I8/s72-c/vaca_tuga%20copy.jpg' height='72' width='72'/><thr:total>0</thr:total></entry></feed>
