<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">
 
 <title>Giovanni Cappellotto's Focus the Web</title>
 
 <link href="http://www.focustheweb.com/" />
 <updated>2013-02-20T12:22:28+01:00</updated>
 <id>http://www.focustheweb.com/</id>
 <author>
   <name>Giovanni Cappellotto</name>
   <email>potomak84@gmail.com</email>
 </author>

 
 <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/FocusTheWeb" /><feedburner:info uri="focustheweb" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>FocusTheWeb</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><feedburner:feedFlare href="http://add.my.yahoo.com/rss?url=http%3A%2F%2Ffeeds.feedburner.com%2FFocusTheWeb" src="http://us.i1.yimg.com/us.yimg.com/i/us/my/addtomyyahoo4.gif">Subscribe with My Yahoo!</feedburner:feedFlare><feedburner:feedFlare href="http://www.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2FFocusTheWeb" src="http://www.newsgator.com/images/ngsub1.gif">Subscribe with NewsGator</feedburner:feedFlare><feedburner:feedFlare href="http://feeds.my.aol.com/add.jsp?url=http%3A%2F%2Ffeeds.feedburner.com%2FFocusTheWeb" src="http://o.aolcdn.com/favorites.my.aol.com/webmaster/ffclient/webroot/locale/en-US/images/myAOLButtonSmall.gif">Subscribe with My AOL</feedburner:feedFlare><feedburner:feedFlare href="http://www.bloglines.com/sub/http://feeds.feedburner.com/FocusTheWeb" src="http://www.bloglines.com/images/sub_modern11.gif">Subscribe with Bloglines</feedburner:feedFlare><feedburner:feedFlare href="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Ffeeds.feedburner.com%2FFocusTheWeb" src="http://www.netvibes.com/img/add2netvibes.gif">Subscribe with Netvibes</feedburner:feedFlare><feedburner:feedFlare href="http://fusion.google.com/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2FFocusTheWeb" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare href="http://www.pageflakes.com/subscribe.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2FFocusTheWeb" src="http://www.pageflakes.com/ImageFile.ashx?instanceId=Static_4&amp;fileName=ATP_blu_91x17.gif">Subscribe with Pageflakes</feedburner:feedFlare><feedburner:feedFlare href="http://www.plusmo.com/add?url=http%3A%2F%2Ffeeds.feedburner.com%2FFocusTheWeb" src="http://plusmo.com/res/graphics/fbplusmo.gif">Subscribe with Plusmo</feedburner:feedFlare><feedburner:feedFlare href="http://www.thefreedictionary.com/_/hp/AddRSS.aspx?http%3A%2F%2Ffeeds.feedburner.com%2FFocusTheWeb" src="http://img.tfd.com/hp/addToTheFreeDictionary.gif">Subscribe with The Free Dictionary</feedburner:feedFlare><feedburner:feedFlare href="http://www.bitty.com/manual/?contenttype=rssfeed&amp;contentvalue=http%3A%2F%2Ffeeds.feedburner.com%2FFocusTheWeb" src="http://www.bitty.com/img/bittychicklet_91x17.gif">Subscribe with Bitty Browser</feedburner:feedFlare><feedburner:feedFlare href="http://www.live.com/?add=http%3A%2F%2Ffeeds.feedburner.com%2FFocusTheWeb" src="http://tkfiles.storage.msn.com/x1piYkpqHC_35nIp1gLE68-wvzLZO8iXl_JMledmJQXP-XTBOLfmQv4zhj4MhcWEJh_GtoBIiAl1Mjh-ndp9k47If7hTaFno0mxW9_i3p_5qQw">Subscribe with Live.com</feedburner:feedFlare><feedburner:feedFlare href="http://mix.excite.eu/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2FFocusTheWeb" src="http://image.excite.co.uk/mix/addtomix.gif">Subscribe with Excite MIX</feedburner:feedFlare><feedburner:feedFlare href="http://www.webwag.com/wwgthis.php?url=http%3A%2F%2Ffeeds.feedburner.com%2FFocusTheWeb" src="http://www.webwag.com/images/wwgthis.gif">Subscribe with Webwag</feedburner:feedFlare><feedburner:feedFlare href="http://www.podcastready.com/oneclick_bookmark.php?url=http%3A%2F%2Ffeeds.feedburner.com%2FFocusTheWeb" src="http://www.podcastready.com/images/podcastready_button.gif">Subscribe with Podcast Ready</feedburner:feedFlare><feedburner:feedFlare href="http://www.wikio.com/subscribe?url=http%3A%2F%2Ffeeds.feedburner.com%2FFocusTheWeb" src="http://www.wikio.com/shared/img/add2wikio.gif">Subscribe with Wikio</feedburner:feedFlare><feedburner:feedFlare href="http://www.dailyrotation.com/index.php?feed=http%3A%2F%2Ffeeds.feedburner.com%2FFocusTheWeb" src="http://www.dailyrotation.com/rss-dr2.gif">Subscribe with Daily Rotation</feedburner:feedFlare><entry>
   <title>Live coding with ChucK on Ubuntu</title>
   <link href="http://feedproxy.google.com/~r/FocusTheWeb/~3/8vOo47kynqE/live-coding-with-chuck-on-ubuntu.html" />
   <updated>2013-02-20T00:00:00+01:00</updated>
   <id>http://www.focustheweb.com/2013/02/20/live-coding-with-chuck-on-ubuntu</id>
   <content type="html">&lt;p&gt;&lt;a href='http://en.wikipedia.org/wiki/Live_coding'&gt;&lt;strong&gt;Live coding&lt;/strong&gt;&lt;/a&gt; is a programming practice centred upon the use of improvised interactive programming. Live coding is often used to create sound and image based digital media, and is particularly prevalent in computer music, combining algorithmic composition with improvisation.&lt;/p&gt;

&lt;p&gt;To start live coding I chose &lt;a href='http://chuck.cs.princeton.edu'&gt;&lt;strong&gt;ChucK&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;ChucK is a concurrent, strongly timed audio programming language for real-time synthesis, composition, and performance. It is designed to favor readability and flexibility for the programmer over other considerations such as raw performance. It natively supports deterministic concurrency and multiple, simultaneous, dynamic control rates. Another key feature is the ability to live code; adding, removing, and modifying code on the fly, while the program is running, without stopping or restarting.&lt;/p&gt;

&lt;h3 id='getting_started_with_chuck'&gt;Getting started with ChucK&lt;/h3&gt;

&lt;p&gt;If you don&amp;#8217;t need the latest version of ChucK you can choose to download and install the apt package.&lt;/p&gt;

&lt;p&gt;Run&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$ sudo apt-get install chuck
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Suggested packages:
  jackd
The following NEW packages will be installed:
  chuck
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 2,100 kB of archives.
After this operation, 6,025 kB of additional disk space will be used.
Get:1 http://it.archive.ubuntu.com/ubuntu/ precise/universe chuck i386 1.2.0.8.dfsg-1.4 [2,100 kB]
Fetched 2,100 kB in 3s (613 kB/s)  
Selecting previously unselected package chuck.
(Reading database ... 763832 files and directories currently installed.)
Unpacking chuck (from .../chuck_1.2.0.8.dfsg-1.4_i386.deb) ...
Processing triggers for man-db ...
Setting up chuck (1.2.0.8.dfsg-1.4) ...

$ chuck
[chuck]: no input files... (try --help)&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;As a starting point you can try running examples&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$ cd /usr/share/doc/chuck/examples
$ chuck otf_01.ck
[chuck]: (via rtaudio): no devices found for compiled audio APIs!
[chuck]: cannot initialize audio device (try using --silent/-s)&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;You&amp;#8217;re getting this error message because you&amp;#8217;re running ChucK without a running jackd.&lt;/p&gt;

&lt;p&gt;&lt;a href='http://jackaudio.org'&gt;&lt;strong&gt;JACK Audio Connection Kit&lt;/strong&gt;&lt;/a&gt; (or JACK) is a professional sound server daemon that provides real-time, low latency connections for both audio and MIDI data between applications that implement its API.&lt;/p&gt;

&lt;p&gt;As apt suggested you&amp;#8217;ll need the jackd package:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$ sudo apt-get install jackd
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  jackd2 jackd2-firewire libconfig++8 libffado2 libxml++2.6-2 qjackctl
Suggested packages:
  jack-tools meterbridge
The following NEW packages will be installed:
  jackd jackd2 jackd2-firewire libconfig++8 libffado2 libxml++2.6-2 qjackctl
0 upgraded, 7 newly installed, 0 to remove and 0 not upgraded.
Need to get 2,641 kB of archives.
After this operation, 7,950 kB of additional disk space will be used.
Do you want to continue [Y/n]? 
Get:1 http://it.archive.ubuntu.com/ubuntu/ precise/universe jackd2 i386 1.9.8~dfsg.1-1ubuntu1 [531 kB]
Get:2 http://it.archive.ubuntu.com/ubuntu/ precise/universe jackd all 5 [2,072 B]
Get:3 http://it.archive.ubuntu.com/ubuntu/ precise/main libconfig++8 i386 1.3.2-2ubuntu2 [36.0 kB]
Get:4 http://it.archive.ubuntu.com/ubuntu/ precise/main libxml++2.6-2 i386 2.34.1-1build1 [58.3 kB]
Get:5 http://it.archive.ubuntu.com/ubuntu/ precise/main libffado2 i386 2.0.99+svn2019-1ubuntu1 [1,425 kB]
Get:6 http://it.archive.ubuntu.com/ubuntu/ precise/universe jackd2-firewire i386 1.9.8~dfsg.1-1ubuntu1 [20.1 kB]                                                        
Get:7 http://it.archive.ubuntu.com/ubuntu/ precise/universe qjackctl i386 0.3.8-1 [567 kB]                                                                              
Fetched 2,641 kB in 13s (202 kB/s)                                                                                                                                      
Preconfiguring packages ...
Selecting previously unselected package jackd2.
(Reading database ... 764076 files and directories currently installed.)
Unpacking jackd2 (from .../jackd2_1.9.8~dfsg.1-1ubuntu1_i386.deb) ...
Selecting previously unselected package jackd.
Unpacking jackd (from .../apt/archives/jackd_5_all.deb) ...
Selecting previously unselected package libconfig++8.
Unpacking libconfig++8 (from .../libconfig++8_1.3.2-2ubuntu2_i386.deb) ...
Selecting previously unselected package libxml++2.6-2.
Unpacking libxml++2.6-2 (from .../libxml++2.6-2_2.34.1-1build1_i386.deb) ...
Selecting previously unselected package libffado2.
Unpacking libffado2 (from .../libffado2_2.0.99+svn2019-1ubuntu1_i386.deb) ...
Selecting previously unselected package jackd2-firewire.
Unpacking jackd2-firewire (from .../jackd2-firewire_1.9.8~dfsg.1-1ubuntu1_i386.deb) ...
Selecting previously unselected package qjackctl.
Unpacking qjackctl (from .../qjackctl_0.3.8-1_i386.deb) ...
Processing triggers for man-db ...
Processing triggers for bamfdaemon ...
Rebuilding /usr/share/applications/bamf.index...
Processing triggers for desktop-file-utils ...
Processing triggers for gnome-menus ...
Processing triggers for hicolor-icon-theme ...
Setting up jackd2 (1.9.8~dfsg.1-1ubuntu1) ...
Setting up jackd (5) ...
Setting up libconfig++8 (1.3.2-2ubuntu2) ...
Setting up libxml++2.6-2 (2.34.1-1build1) ...
Setting up libffado2 (2.0.99+svn2019-1ubuntu1) ...
Setting up jackd2-firewire (1.9.8~dfsg.1-1ubuntu1) ...
Setting up qjackctl (0.3.8-1) ...
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Then you should start jackd daemon in another shell&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$ jackd -d alsa
jackdmp 1.9.8
Copyright 2001-2005 Paul Davis and others.
Copyright 2004-2011 Grame.
jackdmp comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details
Cannot create thread 1 Operation not permitted
Cannot create thread 1 Operation not permitted
Cannot create thread 1 Operation not permitted
JACK server starting in realtime mode with priority 10
Cannot lock down 82241434 byte memory area (Cannot allocate memory)
control device hw:0
control device hw:0
audio_reservation_init
Acquire audio card Audio0
creating alsa driver ... hw:0|hw:0|1024|2|48000|0|0|nomon|swmeter|-|32bit
control device hw:0
configuring for 48000Hz, period = 1024 frames (21.3 ms), buffer = 2 periods
ALSA: final selected sample format for capture: 32bit integer little-endian
ALSA: use 2 periods for capture
ALSA: final selected sample format for playback: 32bit integer little-endian
ALSA: use 2 periods for playback
Cannot use real-time scheduling (RR/10)(1: Operation not permitted)&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Now try running examples, you should start earing some beats&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$ chuck otf_01.ck &amp;amp;
[1] 7869
$ chuck --add otf_02.ck
[chuck](VM): sporking incoming shred: 2 (otf_02.ck)...
$ chuck + otf_0[4567].ck
[chuck](VM): sporking incoming shred: 3 (otf_04.ck)...
[chuck](VM): sporking incoming shred: 4 (otf_05.ck)...
[chuck](VM): sporking incoming shred: 5 (otf_06.ck)...
[chuck](VM): sporking incoming shred: 6 (otf_07.ck)...
$ chuck --kill
[chuck](VM): removing all (6) shreds...
[chuck](VM): KILL received....

[1]+  Exit 1                  chuck otf_01.ck&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;You can find more resources about ChucK at &lt;a href='http://chuck.cs.princeton.edu/doc/'&gt;http://chuck.cs.princeton.edu/doc/&lt;/a&gt;.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=8vOo47kynqE:SqBJ_6y7YG0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=8vOo47kynqE:SqBJ_6y7YG0:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FocusTheWeb/~4/8vOo47kynqE" height="1" width="1"/&gt;</content>
 <feedburner:origLink>http://www.focustheweb.com/2013/02/20/live-coding-with-chuck-on-ubuntu.html</feedburner:origLink></entry>
 
 <entry>
   <title>Restart Gnome on Ubuntu 12 (Precise Pangolin)</title>
   <link href="http://feedproxy.google.com/~r/FocusTheWeb/~3/ZYa-mos05BM/restart-gnome-on-ubuntu-12-precise-pangolin.html" />
   <updated>2012-07-03T00:00:00+02:00</updated>
   <id>http://www.focustheweb.com/2012/07/03/restart-gnome-on-ubuntu-12-precise-pangolin</id>
   <content type="html">&lt;p&gt;I use Ubuntu on a Lenovo Thinkpad X1 laptop and sometimes &lt;em&gt;Gnome becomes unresponsive after sleep mode&lt;/em&gt;. The system is working but I can&amp;#8217;t see anything except the cursor on the black screen.&lt;/p&gt;

&lt;p&gt;In these cases the only solution I found was to access &lt;code&gt;tty1&lt;/code&gt; by pressing &lt;code&gt;ctrl+alt+f1&lt;/code&gt; and restart the system by running &lt;code&gt;sudo shutdown -r now&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;The &lt;em&gt;right solution&lt;/em&gt; when Gnome crashes is to restart only the window manager, not the whole system. To do so you can use the shortcut &lt;code&gt;alt+stamp+k&lt;/code&gt; to restart Gnome and the problem is solved but remember that any unsaved file will be lost.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=ZYa-mos05BM:nXEQQeT_rDY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=ZYa-mos05BM:nXEQQeT_rDY:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FocusTheWeb/~4/ZYa-mos05BM" height="1" width="1"/&gt;</content>
 <feedburner:origLink>http://www.focustheweb.com/2012/07/03/restart-gnome-on-ubuntu-12-precise-pangolin.html</feedburner:origLink></entry>
 
 <entry>
   <title>ASCII art API, birdie at EuRuKo Golf</title>
   <link href="http://feedproxy.google.com/~r/FocusTheWeb/~3/kpod0a4hzCM/ascii-art-api-birdie-at-euruko-golf.html" />
   <updated>2012-05-17T00:00:00+02:00</updated>
   <id>http://www.focustheweb.com/2012/05/17/ascii-art-api-birdie-at-euruko-golf</id>
   <content type="html">&lt;p&gt;Wooga started a little contest called &lt;em&gt;EuRuKo Golf&lt;/em&gt; where you can win a ticket to EuRuKo 2012.&lt;/p&gt;

&lt;p&gt;The goal of this contest is to write a tweetable (140 characters or less) ruby program that outputs EuRoKo ASCII art.&lt;/p&gt;

&lt;p&gt;One of the smartest solutions was Matteo&amp;#8217;s (see pull request &lt;a href='https://github.com/wooga/euruko-golf/pull/2'&gt;https://github.com/wooga/euruko-golf/pull/2&lt;/a&gt;) which uses the &lt;code&gt;artii&lt;/code&gt; gem to create ASCII art.&lt;/p&gt;

&lt;p&gt;A drawback of this solution is that you should have the &lt;code&gt;artii&lt;/code&gt; gem installed on your system to run it without errors. A workaround solution is to call a web service which uses a sort of &lt;code&gt;artii&lt;/code&gt; gem to generate ASCII art from a string.&lt;/p&gt;

&lt;p&gt;This solution is now available thanks to &lt;a href='http://artii.herokuapp.com' title='ASCII art API'&gt;ASCII art API&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;It&amp;#8217;s a simple &lt;a href='http://postrank-labs.github.com/goliath/'&gt;Goliath&lt;/a&gt; app that lets you generate ASCII art from any text.&lt;/p&gt;

&lt;p&gt;Try &lt;a href='http://artii.herokuapp.com/make?text=I+love+ASCII+art'&gt;http://artii.herokuapp.com/make?text=I+love+ASCII+art&lt;/a&gt;, you should see something like this as a response from the API:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt; _____   _                            _____  _____ _____ _____              _   
|_   _| | |                    /\    / ____|/ ____|_   _|_   _|            | |  
  | |   | | _____   _____     /  \  | (___ | |      | |   | |     __ _ _ __| |_ 
  | |   | |/ _ \ \ / / _ \   / /\ \  \___ \| |      | |   | |    / _` | &amp;#39;__| __|
 _| |_  | | (_) \ V /  __/  / ____ \ ____) | |____ _| |_ _| |_  | (_| | |  | |_ 
|_____| |_|\___/ \_/ \___| /_/    \_\_____/ \_____|_____|_____|  \__,_|_|   \__|&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;With this API you should be able to build a solution to the contest like this:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;require &amp;#39;open-uri&amp;#39;
puts open(&amp;#39;http://j.mp/IRG0u1&amp;#39;).read&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;You can find app&amp;#8217;s source code at &lt;a href='http://github.com/potomak/artii-api'&gt;http://github.com/potomak/artii-api&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Resources:&lt;/p&gt;

&lt;p&gt;&lt;a href='http://www.wooga.com/2012/05/euruko/' title='EuRuKo Golf'&gt;EuRuKo Golf by Wooga&lt;/a&gt;&lt;br /&gt; &lt;a href='https://github.com/wooga/euruko-golf' title='EuRuKo Golf repo'&gt;EuRuKo Golf repo&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=kpod0a4hzCM:bPu2HS80cCQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=kpod0a4hzCM:bPu2HS80cCQ:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FocusTheWeb/~4/kpod0a4hzCM" height="1" width="1"/&gt;</content>
 <feedburner:origLink>http://www.focustheweb.com/2012/05/17/ascii-art-api-birdie-at-euruko-golf.html</feedburner:origLink></entry>
 
 <entry>
   <title>Migrate Heroku shared database (Postgres) to Amazon RDS (MySQL)</title>
   <link href="http://feedproxy.google.com/~r/FocusTheWeb/~3/jdU0G6V52xM/migrate-heroku-shared-database-postgres-to-amazon-rds-mysql.html" />
   <updated>2012-03-12T00:00:00+01:00</updated>
   <id>http://www.focustheweb.com/2012/03/12/migrate-heroku-shared-database-postgres-to-amazon-rds-mysql</id>
   <content type="html">&lt;p&gt;Heroku is a great PaaS, it let you deploy an app in seconds, almost everything is automated. By default your app will use Heroku &lt;em&gt;shared database&lt;/em&gt;, a Postgres db instance which is a perfect choice for development environments but you just can&amp;#8217;t use it in production (just take a look at &lt;a href='https://status.heroku.com/' title='Heroku status blog'&gt;Heroku status blog&lt;/a&gt; to get an idea).&lt;/p&gt;

&lt;p&gt;A cheap alternative is Amazon Relational Database Service (RDS). It offers MySQL instances at competitive prices.&lt;/p&gt;

&lt;p&gt;To make this service available to your Heroku application you should create a new database instance at Amazon RDS and then enable this resource by adding the relative add-on.&lt;/p&gt;

&lt;p&gt;Keep in mind that Heroku dynos are Amazon EC2 instances and should be situated in US-East zone so making a RDS instance in the same zone leads to an optimal communication speed between app server and db server.&lt;/p&gt;

&lt;h4 id='step_1'&gt;Step 1&lt;/h4&gt;

&lt;p&gt;Create an RDS database instance, you can do it using web based Amazon RDS console.&lt;/p&gt;

&lt;h4 id='step_2'&gt;Step 2&lt;/h4&gt;

&lt;p&gt;Migrate your data from Heroku shared database to your new Amazon RDS database instance.&lt;/p&gt;

&lt;p&gt;You’ll need to aythorize access to the RDS instance from your workstation running:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$ rds-authorize-db-security-group-ingress default --cidr-ip 1.1.1.1/32&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;where 1.1.1.1/32 is your public IP subnet.&lt;/p&gt;

&lt;p&gt;Now you can use &lt;code&gt;taps&lt;/code&gt; to pull from your Heroku database to your RDS database:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$ heroku db:pull mysql://user:pass@rdshostname.amazonaws.com/databasename&lt;/code&gt;&lt;/pre&gt;

&lt;h4 id='step_3'&gt;Step 3&lt;/h4&gt;

&lt;p&gt;Authorize Heroku app access to RDS database&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$ rds-authorize-db-security-group-ingress --db-security-group-name default \ 
    --ec2-security-group-name default \
    --ec2-security-group-owner-id 098166147350 \
    --aws-credential-file ../credential-file-path.template&lt;/code&gt;&lt;/pre&gt;

&lt;h4 id='step_4'&gt;Step 4&lt;/h4&gt;

&lt;p&gt;Add Amazon RDS Heroku add-on&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$ heroku addons:add amazon_rds url=mysql2://user:pass@rdshostname.amazonaws.com/databasename&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;That&amp;#8217;s all.&lt;/p&gt;

&lt;h4 id='notes'&gt;Notes&lt;/h4&gt;

&lt;p&gt;If you get &lt;code&gt;Taps Load Error: no such file to load -- taps/operation&lt;/code&gt; error at &amp;#8220;Step 2&amp;#8221; no worries, just install &lt;code&gt;taps&lt;/code&gt; on your system by running&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$ gem install taps&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;and retry.&lt;/p&gt;

&lt;p&gt;Remember also to update your app&amp;#8217;s &lt;code&gt;Gemfile&lt;/code&gt; configuration to load &lt;code&gt;mysql2&lt;/code&gt; gem instead of &lt;code&gt;pg&lt;/code&gt; changing from&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;gem &amp;#39;pg&amp;#39;&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;to&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;gem &amp;#39;mysql2&amp;#39;&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Resources:&lt;/p&gt;

&lt;p&gt;&lt;a href='http://aws.amazon.com/rds/' title='Amazon Relational Database Service'&gt;Amazon RDS&lt;/a&gt;&lt;br /&gt; &lt;a href='http://devcenter.heroku.com/articles/amazon_rds' title='Heroku Dev Center - Amazon RDS'&gt;Heroku Dev Center - Amazon RDS&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=jdU0G6V52xM:54DGH81frHU:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=jdU0G6V52xM:54DGH81frHU:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FocusTheWeb/~4/jdU0G6V52xM" height="1" width="1"/&gt;</content>
 <feedburner:origLink>http://www.focustheweb.com/2012/03/12/migrate-heroku-shared-database-postgres-to-amazon-rds-mysql.html</feedburner:origLink></entry>
 
 <entry>
   <title>Update GitHub fork</title>
   <link href="http://feedproxy.google.com/~r/FocusTheWeb/~3/Q6kVxINDjXw/update-github-fork.html" />
   <updated>2011-12-07T00:00:00+01:00</updated>
   <id>http://www.focustheweb.com/2011/12/07/update-github-fork</id>
   <content type="html">&lt;p&gt;You need &lt;em&gt;A feature&lt;/em&gt; and you know how to make it by extending &lt;em&gt;B&lt;/em&gt;, an open source project repo hosted on GitHub.&lt;/p&gt;

&lt;p&gt;You first should &lt;strong&gt;fork&lt;/strong&gt; &lt;em&gt;B repo&lt;/em&gt;, edit, test and commit your changes.&lt;/p&gt;

&lt;p&gt;Than you send your &lt;em&gt;pull request&lt;/em&gt; and you&amp;#8217;re done.&lt;/p&gt;

&lt;p&gt;After some inactivity on your fork your local repo is outdated, how can you update your fork getting code from the main repo?&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Add &lt;code&gt;upstream&lt;/code&gt; remote to track main repo&lt;/p&gt;

&lt;pre&gt;&lt;code&gt; $ git remote add upstream git://github.com/octocat/Spoon-Knife.git&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;

&lt;li&gt;
&lt;p&gt;Fetch upstream remote in your local repo&lt;/p&gt;

&lt;pre&gt;&lt;code&gt; $ git fetch upstream&lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;

&lt;li&gt;
&lt;p&gt;Merge &lt;code&gt;upstream/master&lt;/code&gt; in your current branch to apply updates&lt;/p&gt;

&lt;pre&gt;&lt;code&gt; $ git merge upstream/master &lt;/code&gt;&lt;/pre&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Resources:&lt;/p&gt;

&lt;p&gt;&lt;a href='http://help.github.com/fork-a-repo/' title='Fork a repo'&gt;GitHub Help - Fork a repo&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=Q6kVxINDjXw:5Zy0Th1jz9o:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=Q6kVxINDjXw:5Zy0Th1jz9o:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FocusTheWeb/~4/Q6kVxINDjXw" height="1" width="1"/&gt;</content>
 <feedburner:origLink>http://www.focustheweb.com/2011/12/07/update-github-fork.html</feedburner:origLink></entry>
 
 <entry>
   <title>Fix git commit message</title>
   <link href="http://feedproxy.google.com/~r/FocusTheWeb/~3/l-hiUSNjkxk/fix-git-commit-message.html" />
   <updated>2011-12-05T00:00:00+01:00</updated>
   <id>http://www.focustheweb.com/2011/12/05/fix-git-commit-message</id>
   <content type="html">&lt;p&gt;I often forget to mention issues or documentation in commit messages, how to fix them?&lt;/p&gt;

&lt;p&gt;To fix the latest commit message run&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$ git commit --amend&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;edit and save the buffer. Done.&lt;/p&gt;

&lt;p&gt;Want to edit an old commit message?&lt;/p&gt;

&lt;p&gt;If you find a mistake in an older commit, but still one that you have not yet published to the world, you use git rebase in interactive mode, with &lt;code&gt;git rebase -i&lt;/code&gt; marking the change that requires correction with edit.&lt;/p&gt;

&lt;p&gt;Resources:&lt;/p&gt;

&lt;p&gt;&lt;a href='http://stackoverflow.com/questions/179123/how-do-i-edit-an-incorrect-commit-message-in-git' title='How do I edit an incorrect commit message in git?'&gt;Stackoverflow - How do I edit an incorrect commit message in git?&lt;/a&gt;&lt;br /&gt; &lt;a href='http://book.git-scm.com/4_undoing_in_git_-_reset,_checkout_and_revert.html' title='Git Community Book - Undoing in Git - Reset, Checkout and Revert'&gt;Git Community Book - Undoing in Git - Reset, Checkout and Revert&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=l-hiUSNjkxk:BDyq95dh4JA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=l-hiUSNjkxk:BDyq95dh4JA:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FocusTheWeb/~4/l-hiUSNjkxk" height="1" width="1"/&gt;</content>
 <feedburner:origLink>http://www.focustheweb.com/2011/12/05/fix-git-commit-message.html</feedburner:origLink></entry>
 
 <entry>
   <title>Git Stash</title>
   <link href="http://feedproxy.google.com/~r/FocusTheWeb/~3/BVLF85f5fpg/git-stash.html" />
   <updated>2011-12-04T00:00:00+01:00</updated>
   <id>http://www.focustheweb.com/2011/12/04/git-stash</id>
   <content type="html">&lt;p&gt;Git stash is great.&lt;/p&gt;

&lt;p&gt;You can forget for a moment about updates you&amp;#8217;re working on to focus on the nth unexpected event.&lt;/p&gt;

&lt;p&gt;Use &lt;code&gt;git stash&lt;/code&gt; to save the current state of your work.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$ git stash save &amp;quot;work in progress for foo feature&amp;quot;&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;This command will save your changes away to the stash, and reset your working tree and the index to match the tip of your current branch.&lt;/p&gt;

&lt;p&gt;Then handle the unexpected event, fix bugs, update code, write tests.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$ git commit -a -m &amp;quot;Fix typo&amp;quot;&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;After that, you can go back to what you were working on with &lt;code&gt;git stash apply&lt;/code&gt;:&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$ git stash apply&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Updates saved to stash are queued, if you run &lt;code&gt;git stash list&lt;/code&gt; you can see which stashes you have saved.&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;$ git stash list
stash@{0}: WIP on develop: 51bea1d Update license
stash@{1}: WIP on master: 9705ae6 Fix images&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;Then you can apply them individually with &lt;code&gt;git stash apply
stash@{1}&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;You can clear out the list with &lt;code&gt;git stash clear&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Source: &lt;a href='http://book.git-scm.com/4_stashing.html' title='Git Community Book - Stashing'&gt;Git Community Book - Stashing&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=BVLF85f5fpg:EelnqTAfbpY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=BVLF85f5fpg:EelnqTAfbpY:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FocusTheWeb/~4/BVLF85f5fpg" height="1" width="1"/&gt;</content>
 <feedburner:origLink>http://www.focustheweb.com/2011/12/04/git-stash.html</feedburner:origLink></entry>
 
 <entry>
   <title>Helpful things learned by Jason Goldberg</title>
   <link href="http://feedproxy.google.com/~r/FocusTheWeb/~3/uIDTrQOgYU0/helpful-things-learned-by-jason-goldberg.html" />
   <updated>2011-10-16T00:00:00+02:00</updated>
   <id>http://www.focustheweb.com/2011/10/16/helpful-things-learned-by-jason-goldberg</id>
   <content type="html">&lt;p&gt;Here&amp;#8217;s some of the things learned by Jason Goldberg running Fab.com I totally agree with:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Do one thing.&lt;/strong&gt;&lt;br /&gt; Find one thing you can do really well and focus entirely on that one thing.&lt;/li&gt;

&lt;li&gt;&lt;strong&gt;Say no!&lt;/strong&gt;&lt;br /&gt; Don’t do any thing else except for your one thing. Say no to meetings, ideas, proposal, b.s., outside of your core one thing.&lt;/li&gt;

&lt;li&gt;&lt;strong&gt;Service matters more than sales.&lt;/strong&gt;&lt;br /&gt; Sales go up and down. Service lasts forever.&lt;/li&gt;

&lt;li&gt;&lt;strong&gt;Make mistakes.&lt;/strong&gt;&lt;br /&gt; Take risks. Move fast. Learn faster.&lt;/li&gt;

&lt;li&gt;&lt;strong&gt;Celebrate your challenges.&lt;/strong&gt;&lt;br /&gt; Force the team to focus on why you suck, even while you’re growing.&lt;/li&gt;

&lt;li&gt;&lt;strong&gt;Be transparent.&lt;/strong&gt;&lt;br /&gt; The more people know, the better.&lt;/li&gt;

&lt;li&gt;&lt;strong&gt;Measure Everything.&lt;/strong&gt;&lt;/li&gt;

&lt;li&gt;&lt;strong&gt;Fill your gaps.&lt;/strong&gt;&lt;br /&gt; Bring in new talent to spur further growth.&lt;/li&gt;

&lt;li&gt;&lt;strong&gt;Say please &amp;amp; thank you.&lt;/strong&gt;&lt;br /&gt; People do things because they want to, not because they have to.&lt;/li&gt;

&lt;li&gt;&lt;strong&gt;Have fun.&lt;/strong&gt;&lt;br /&gt; Life’s too short to do it any other way.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Read the full list here at &lt;a href='http://betashop.com/post/11394335084/21things' title='21 things we’re learning at Fab.com'&gt;Jason Goldberg&amp;#8217;s blog post&lt;/a&gt;.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=uIDTrQOgYU0:uIzkDIcH7E8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=uIDTrQOgYU0:uIzkDIcH7E8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FocusTheWeb/~4/uIDTrQOgYU0" height="1" width="1"/&gt;</content>
 <feedburner:origLink>http://www.focustheweb.com/2011/10/16/helpful-things-learned-by-jason-goldberg.html</feedburner:origLink></entry>
 
 <entry>
   <title>FBSE: costructive failure</title>
   <link href="http://feedproxy.google.com/~r/FocusTheWeb/~3/2pIsIqMT5E8/fbse-constructive-failure.html" />
   <updated>2011-08-30T00:00:00+02:00</updated>
   <id>http://www.focustheweb.com/2011/08/30/fbse-constructive-failure</id>
   <content type="html">&lt;p&gt;Yesterday the Node.js Kockout ended.&lt;/p&gt;

&lt;p&gt;Two crazy days - and nights - of coding, brainstorming, having fun, drinking and eating with &lt;a href='http://twitter.com/ftartaggia' title='Francesco Tartaggia'&gt;Francesco Tartaggia&lt;/a&gt;, &lt;a href='http://twitter.com/_Nss_' title='Luca Lanziani'&gt;Luca Lanziani&lt;/a&gt;, &lt;a href='http://twitter.com/bugant' title='Matteo Centenaro'&gt;Matteo Centenaro&lt;/a&gt; and &lt;a href='http://twitter.com/breezeight' title='Nicola Brisotto'&gt;Nicola Brisotto&lt;/a&gt;. Even Luca came from Viterbo to participate to the Node.js KO with us.&lt;/p&gt;

&lt;p&gt;The product we made is called &lt;a href='http://fbse.no.de' title='FBSE'&gt;&lt;strong&gt;FBSE&lt;/strong&gt;&lt;/a&gt; and it&amp;#8217;s &lt;strong&gt;a stock exchange simulation game&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Well, FBSE is one of the ugliest apps I&amp;#8217;ve ever see but I love it anyway.&lt;/p&gt;

&lt;p&gt;The coolest part of the idea is to make stocks gain or lose value following people social interaction level but you should also be able to buy and sell stocks and to manage your portfolio.&lt;/p&gt;

&lt;p&gt;We worked hard to set it up and running but it didn&amp;#8217;t change our final result: &lt;em&gt;a total failure&lt;/em&gt;. The app was too big and our knowledge of node.js too small.&lt;/p&gt;

&lt;p&gt;We used &lt;a href='http://expressjs.com/' title='express.js'&gt;express.js&lt;/a&gt; as web framework, &lt;a href='http://mongoosejs.com/' title='Mongoose ORM'&gt;mongoose ORM&lt;/a&gt;, &lt;a href='https://github.com/bnoguchi/everyauth' title='EveryAuth'&gt;everyauth&lt;/a&gt; and &lt;a href='https://github.com/bnoguchi/mongoose-auth' title='mongoose auth'&gt;mongoose-auth&lt;/a&gt; to handle authentication and a lot of &lt;a href='http://redis.io/' title='Redis'&gt;redis&lt;/a&gt; data structures to hold trading data.&lt;/p&gt;

&lt;p&gt;Stocks prices and price variations are updated in realtime using the Facebook realtime API and &lt;a href='http://socket.io/' title='socket.io'&gt;socket.io&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I&amp;#8217;d like also to thank my girlfriend Giorgia Marenda for the delicious &amp;#8220;pasta fredda&amp;#8221;, Massimo Scarpis for the prototype idea and for your support, Guglielmo Alati for the beautiful logo we didn&amp;#8217;t use, Paolo Bernagozzi, Maurizio Adamo, Lea di Cursi, Federico Piovesan, Francesco Fraioli and H-farm for the hosting.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=2pIsIqMT5E8:Wyro1tuE3LQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=2pIsIqMT5E8:Wyro1tuE3LQ:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FocusTheWeb/~4/2pIsIqMT5E8" height="1" width="1"/&gt;</content>
 <feedburner:origLink>http://www.focustheweb.com/2011/08/30/fbse-constructive-failure.html</feedburner:origLink></entry>
 
 <entry>
   <title>Something about fiddling...</title>
   <link href="http://feedproxy.google.com/~r/FocusTheWeb/~3/KfYiGd3D8Fk/something-about-fiddling.html" />
   <updated>2009-08-23T00:00:00+02:00</updated>
   <id>http://www.focustheweb.com/2009/08/23/something-about-fiddling</id>
   <content type="html">&lt;p&gt;Something about fiddling: &lt;a href='http://writetodone.com/2009/06/17/how-to-stop-digital-fiddling-and-start-writing/' title='How to stop digital fiddling and start writing'&gt;How to stop digital fiddling and start writing&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;See also &lt;a href='http://twitter.com/johnnyaboh' title='My Twitter account'&gt;my twitter account&lt;/a&gt; to check if everything works fine!&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=KfYiGd3D8Fk:rjI3-N7Hheo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=KfYiGd3D8Fk:rjI3-N7Hheo:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FocusTheWeb/~4/KfYiGd3D8Fk" height="1" width="1"/&gt;</content>
 <feedburner:origLink>http://www.focustheweb.com/2009/08/23/something-about-fiddling.html</feedburner:origLink></entry>
 
 <entry>
   <title>La Roba</title>
   <link href="http://feedproxy.google.com/~r/FocusTheWeb/~3/Cj4pCwmF7rI/la-roba.html" />
   <updated>2009-08-23T00:00:00+02:00</updated>
   <id>http://www.focustheweb.com/2009/08/23/la-roba</id>
   <content type="html">&lt;p&gt;&lt;img alt='La Roba' src='/assets/posts/la_roba.jpg' /&gt;&lt;/p&gt;

&lt;p&gt;Today I&amp;#8217;d like to told about a collective design project from Thiene. They are three guys formerly known as &amp;#8220;La Roba&amp;#8221;. Their works are great, you can check them out at &lt;a href='http://www.laroba.com' title='La Roba'&gt;http://www.laroba.com&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I discovered them from &lt;a href='http://www.yourban.org' title='Yourban'&gt;Yourban&lt;/a&gt; party flyers, wow!&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=Cj4pCwmF7rI:Q-tk1_pBCoY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=Cj4pCwmF7rI:Q-tk1_pBCoY:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FocusTheWeb/~4/Cj4pCwmF7rI" height="1" width="1"/&gt;</content>
 <feedburner:origLink>http://www.focustheweb.com/2009/08/23/la-roba.html</feedburner:origLink></entry>
 
 <entry>
   <title>Thounds, what music are you thinking?</title>
   <link href="http://feedproxy.google.com/~r/FocusTheWeb/~3/fcXkJ2uDtHU/thounds-what-music-are-you-thinking.html" />
   <updated>2009-08-20T00:00:00+02:00</updated>
   <id>http://www.focustheweb.com/2009/08/20/thounds-what-music-are-you-thinking</id>
   <content type="html">&lt;p&gt;&lt;img alt='Thounds' src='/assets/posts/thounds_logo.png' /&gt;&lt;/p&gt;

&lt;p&gt;Hey,&lt;br /&gt; I&amp;#8217;d like to suggest everyone a new amazing web project: &lt;a href='http://thounds.com' title='Thounds'&gt;Thounds&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;This web application let you record your own &lt;em&gt;sounds&lt;/em&gt; and share them between your friends or &lt;em&gt;band members&lt;/em&gt;. Doing so new songs will come up mixing the &lt;em&gt;thoughts&lt;/em&gt; of everyone on the Internet.&lt;/p&gt;

&lt;p&gt;Now the project is still an alpha release, but it will be soon on line with the beta release, have fun!&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=fcXkJ2uDtHU:ahKUl84QV4s:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=fcXkJ2uDtHU:ahKUl84QV4s:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FocusTheWeb/~4/fcXkJ2uDtHU" height="1" width="1"/&gt;</content>
 <feedburner:origLink>http://www.focustheweb.com/2009/08/20/thounds-what-music-are-you-thinking.html</feedburner:origLink></entry>
 
 <entry>
   <title>Hi everyone!</title>
   <link href="http://feedproxy.google.com/~r/FocusTheWeb/~3/cWj_Z1Bcu7U/hi-everybody.html" />
   <updated>2009-08-17T00:00:00+02:00</updated>
   <id>http://www.focustheweb.com/2009/08/17/hi-everybody</id>
   <content type="html">&lt;p&gt;Welcome to my &lt;a href='http://www.focustheweb.com' title='Giovanni Cappellotto'&gt;personal website&lt;/a&gt;, here I’ll post everything concerning me and my life.&lt;/p&gt;

&lt;p&gt;See also &lt;a href='http://www.focustheweb.com/about.html' title='Giovanni Cappellotto'&gt;about page&lt;/a&gt;.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=cWj_Z1Bcu7U:MhlncVCTWMQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/FocusTheWeb?a=cWj_Z1Bcu7U:MhlncVCTWMQ:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/FocusTheWeb?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FocusTheWeb/~4/cWj_Z1Bcu7U" height="1" width="1"/&gt;</content>
 <feedburner:origLink>http://www.focustheweb.com/2009/08/17/hi-everybody.html</feedburner:origLink></entry>
 
 
</feed>
