<?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-28814329</id><updated>2011-09-29T15:16:33.611-03:00</updated><category term='nicelab'/><category term='laser'/><category term='5a57:4210'/><category term='acrylic'/><category term='display'/><category term='ibayo'/><category term='epilog'/><category term='eagle'/><category term='privacy'/><category term='fsf'/><category term='pcb'/><category term='encryption'/><category term='make'/><category term='sagrada familia'/><category term='travel'/><category term='accessibility'/><category term='DWG'/><category term='libreplanet'/><category term='libregraphics'/><category term='geda'/><category term='gschem'/><category term='DRM'/><category term='EDA'/><category term='openvideo'/><category term='firmware'/><category term='torino'/><category term='LibreDWG'/><category term='bayarea'/><category term='opensubtitlesdesignsummit'/><category term='ovc'/><category term='pinball'/><category term='diy'/><category term='yochai benkler urnas eletrônicas'/><category term='valldoreix'/><category term='LGM2010'/><category term='laser cut'/><category term='maaseik'/><category term='pinball fantasies remake'/><category term='libusb'/><category term='ezusb'/><category term='fablab'/><category term='noisebridge'/><category term='pinball hacking'/><category term='&quot;be kind rewind&quot;'/><category term='europe'/><category term='poli usp p2p proibido software livre'/><category term='hackerspace'/><category term='karlisson'/><category term='partyland'/><category term='demoparty'/><category term='nyc'/><category term='nice'/><category term='milano'/><category term='conferences'/><category term='zinwell'/><category term='weave'/><category term='alameda'/><category term='pinball fantasies remake PARTYland DIY dosbox'/><category term='vienna'/><category term='lasercutter'/><category term='perl'/><category term='universal subtitles'/><category term='reverse engineering'/><category term='hacking'/><category term='pcf'/><category term='quadrinhos'/><category term='GNU'/><category term='demo'/><category term='museum'/><category term='hollywood'/><category term='barcelona'/><category term='nycresistor'/><category term='nerdson'/><category term='hackerspaces'/><category term='pinball fantasies'/><category term='8051'/><category term='python'/><category term='brmlab'/><category term='roboexotica'/><category term='inkscape'/><category term='linux'/><category term='belgium'/><category term='newyork'/><category term='demoscene'/><category term='tvdigital'/><category term='cad'/><category term='p2p'/><category term='usb'/><category term='makerfaire'/><category term='party'/><category term='hacker space'/><category term='participatory culture foundation'/><category term='openvideoconference'/><category term='electronics'/><category term='linuxlibre'/><category term='metalab'/><category term='free software'/><category term='party land remake'/><category term='dab'/><category term='food'/><category term='campus party'/><category term='sniffer'/><category term='mozilla'/><category term='prague'/><category term='reprap'/><category term='&quot;the sweded bay&quot;'/><category term='&quot;the pirate bay&quot;'/><title type='text'>Blog do Juca</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>49</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-28814329.post-2630879754595807098</id><published>2011-09-29T15:09:00.002-03:00</published><updated>2011-09-29T15:16:33.653-03:00</updated><title type='text'></title><content type='html'>&lt;h2&gt;Noites do Pinball no Garoa Hacker Clube&lt;/h2&gt;A partir de 3 de Outubro. Semanalmente, toda segunda-feira, às 19h30.&lt;br /&gt;&lt;br /&gt;Rua Vitorino Carmilo, 459&lt;br /&gt;Santa Cecília - São Paulo, SP&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://secure.flickr.com/photos/felipesanches/6195326155/sizes/l/in/photostream/"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 450px; height: 294px;" src="https://farm7.static.flickr.com/6009/6195326155_99d8fe3769_d.jpg" alt="" 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/28814329-2630879754595807098?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/2630879754595807098/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2011/09/blog-post.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/2630879754595807098'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/2630879754595807098'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2011/09/blog-post.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-3571030586983375675</id><published>2010-12-21T21:55:00.008-02:00</published><updated>2010-12-21T23:39:36.885-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='firmware'/><category scheme='http://www.blogger.com/atom/ns#' term='linuxlibre'/><category scheme='http://www.blogger.com/atom/ns#' term='ezusb'/><category scheme='http://www.blogger.com/atom/ns#' term='8051'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='GNU'/><category scheme='http://www.blogger.com/atom/ns#' term='fsf'/><category scheme='http://www.blogger.com/atom/ns#' term='dab'/><category scheme='http://www.blogger.com/atom/ns#' term='reverse engineering'/><category scheme='http://www.blogger.com/atom/ns#' term='free software'/><title type='text'></title><content type='html'>&lt;img style="display:block; width: 400px; height: 72px;" src="http://3.bp.blogspot.com/_-y8FlCj2amY/TRFRW37oOWI/AAAAAAAAA0E/JmlTHAIkp4U/s400/gnulinuxlibre-top.png" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h1&gt;Coordinating efforts towards free firmware implementations&lt;/h1&gt;&lt;br /&gt;&lt;br /&gt;Some months ago I have started to mantain a &lt;a href="http://libreplanet.org/wiki/LinuxLibre:Devices_that_require_non-free_firmware"&gt;wikipage at LibrePlanet.org&lt;/a&gt; with a list of device drivers that require non-free firmware. For each device I created a wiki page to aggregate technical information about the device in order to make it easier for us to develop free firmware.&lt;br /&gt;&lt;br /&gt;Then, during November I have travelled around Europe and have had the opportunity to &lt;a href="http://jucablues.blogspot.com/2010/12/brmlab-lasers-i-just-got-back-to-my.html"&gt;hack on a laser projector&lt;/a&gt; in the Prague hackerspace. The special thing about it is that we &lt;a href="http://code.google.com/p/felipesanches/source/browse/#svn%2Ftrunk%2Flaserdisplay"&gt;developed free software for it&lt;/a&gt; but we still rely on the binary-only firmware to startup the device. And I was annoyed by that so I continued investigating and ended up discovering that the device has an &lt;a href="http://www.linux-usb.org/ezusb/"&gt;EZUSB&lt;/a&gt; (which is a 8051 microcontroller with native hardware support for USB communication). Then I have found &lt;a href="http://www.blogger.com/www.keil.com/dd/docs/datashts/cypress/an21xx_trm.pdf"&gt;the datasheet&lt;/a&gt; for this microcontroller and started to study it. I even used a disassembler in order to inspect the firmware and things started making sense, but I got concerned about the legality of reusing code from this disassembly process.&lt;br /&gt;&lt;br /&gt;At that point I figured out that I should check the wiki page again to see which other devices are using the same microcontroller because that was valuable knowledge that I had just acquired that could be used to free some firmware. So I searched for "ezusb" in the kernel source code and found 3 devices that also use it. One of these devices (&lt;a href="http://libreplanet.org/wiki/LinuxLibre:USB_DABUSB"&gt;DABUSB/TerraTec-DrBox1&lt;/a&gt;: a digital radio receiver) has its binary firmware distributed under copyright terms that allow free, derivative works:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;* Copyright (C) 1999 BayCom GmbH&lt;br /&gt;*&lt;br /&gt;* Redistribution and use in source and binary forms, with or without&lt;br /&gt;* modification, are permitted provided that redistributions of source&lt;br /&gt;* code retain the above copyright notice and this comment without&lt;br /&gt;* modification.&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;So this means that by disassembling the firmware, the resulting source code is free. &lt;a href="http://code.google.com/p/felipesanches/source/browse/#svn%2Ftrunk%2Flinuxlibre%2Fdabusb%2Fdevel"&gt;I've done it&lt;/a&gt; and now we just have to understand the code and give nice names to the variables and routines in order to have a free firmware for the device. I've been doing it yesterday and today but then I stopped for a while and started to question myself whether it is actually useful work. I am concerned that this is a device released 11 years ago and I don't know anybody who uses it nowadays. So I don't know what is the real demand of support for this specific device.&lt;br /&gt;&lt;br /&gt;What I mean is that we need better understanding of the meaning of the LinuxLibre blacklist of devices. We need to figure out a way to sort these devices in a relevance order so that we can focus our reverse engineering efforts on the most critical ones. I suggest that we start a working group to define the criteria for sorting that list and continue this work with some better strategies. One of the possible ways to sort these devices by relevance would be to build statistics based on collecting hardware information of &lt;a href="http://www.gnu.org/distros/free-distros.html"&gt;libre-distro&lt;/a&gt; users.&lt;br /&gt;&lt;br /&gt;I hope someday we'll be providing fixes to the issues raised by the &lt;a href="http://linux-libre.fsfla.org/"&gt;LinuxLibre project&lt;/a&gt; instead of simply removing functionality. I think that this perception that lots of people have of LinuxLibre as a less functional, technically inferior alternative to Linux is a real danger. I know that we should not judge software only by its technical aspects. Nevertheless, &lt;a href="http://unix.stackexchange.com/questions/3788/why-does-the-linux-kernel-use-linux-libre-code-to-get-rid-of-binary-blobs"&gt;this&lt;/a&gt; is still no good advertising for LinuxLibre.&lt;br /&gt;&lt;br /&gt;I'd like to hear your opinions about these questions.&lt;br /&gt;&lt;br /&gt;Happy Hacking,&lt;br /&gt;Felipe Sanches&lt;br /&gt;&lt;br /&gt;&lt;img style="display:block; width: 400px; height: 72px;" src="http://2.bp.blogspot.com/_-y8FlCj2amY/TRFR1UQxFTI/AAAAAAAAA0M/2CIInD0C-zU/s400/gnulinuxlibre-bottom.png"/&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-3571030586983375675?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/3571030586983375675/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/12/coordinating-efforts-towards-free.html#comment-form' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/3571030586983375675'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/3571030586983375675'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/12/coordinating-efforts-towards-free.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_-y8FlCj2amY/TRFRW37oOWI/AAAAAAAAA0E/JmlTHAIkp4U/s72-c/gnulinuxlibre-top.png' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-8654793541482630574</id><published>2010-12-14T11:26:00.010-02:00</published><updated>2010-12-14T15:18:03.296-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='laser'/><category scheme='http://www.blogger.com/atom/ns#' term='brmlab'/><category scheme='http://www.blogger.com/atom/ns#' term='europe'/><category scheme='http://www.blogger.com/atom/ns#' term='pinball'/><category scheme='http://www.blogger.com/atom/ns#' term='prague'/><category scheme='http://www.blogger.com/atom/ns#' term='hackerspace'/><category scheme='http://www.blogger.com/atom/ns#' term='display'/><title type='text'></title><content type='html'>&lt;h1&gt;Brmlab &amp; Lasers!&lt;/h1&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_-y8FlCj2amY/TQeMAyfQ2pI/AAAAAAAAAzI/416ZecxxUrI/s1600/brmlab.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 300px; height: 68px;" src="http://1.bp.blogspot.com/_-y8FlCj2amY/TQeMAyfQ2pI/AAAAAAAAAzI/416ZecxxUrI/s400/brmlab.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5550559010938215058" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I just got back to my home in Brazil yesterday. &lt;a href="http://jucablues.blogspot.com/2010/11/another-trip-to-europe-i-am-in-europe.html"&gt;Travelling in Europe&lt;/a&gt; was great and I'd like to share here the details of some cool things I've done in my last week there.&lt;br /&gt;&lt;br /&gt;My last stop in Europe was Prague and there was a special reason for that. Three months ago I received an email from Cestmir Houska, one of the members of &lt;a href="http://brmlab.cz/"&gt;Brmlab - the Prague hackerspace&lt;/a&gt;. Cestmir was contacting me because he got inspired by my photos and blogposts about the &lt;a href="http://jucablues.blogspot.com/2010/04/recent-improvements-on-my-pinball.html"&gt;Party Land Remake project&lt;/a&gt;. He told me that building a pinball machine was one of his dreams from childhood (which happens to be my case also) and that he wanted to keep in contact so that we can help each other in making it become a reality.&lt;br /&gt;&lt;br /&gt;Since we are both members of recently inaugurated hackerspaces we figured out that our pinball projects could be understood as a healthy collaboration between them, mutually. So &lt;a href="http://brmlab.cz/event/pinbrm"&gt;we are planning&lt;/a&gt; to design, document and simultaneously build two pinball machines: one in &lt;a href="http://garoa.net.br/"&gt;Garoa Hacker Clube&lt;/a&gt;, in São Paulo, Brazil; and the other one in Brmlab, in Prague, Czech Republic.&lt;br /&gt;&lt;br /&gt;So, since I had the opportunity to visit Europe again due to the &lt;a href="http://jucablues.blogspot.com/2010/11/another-trip-to-europe-i-am-in-europe.html"&gt;Mozilla Drumbeat Festival in Barcelona&lt;/a&gt;, I decided to schedule a visit to Prague (which resulted in my visit to &lt;a href="http://jucablues.blogspot.com/2010/12/pinball-hacking-in-vienna-i-am.html"&gt;Metalab in Vienna&lt;/a&gt; also).&lt;br /&gt;&lt;br /&gt;In one of the days that I was there at Brmlab, one guy showed me his personal project: &lt;a href="http://brmlab.cz/project/laser_projector"&gt;a homebrew laser projector&lt;/a&gt;. It is composed of 3 lasers (Red, Green and Blue) and a pair of mirrors that are rotated by motors so that the laser beam aims at the wall in different possible angles. By properly controlling those lasers and mirrors, one can draw colorful shapes on the wall. The effect is even more interesting if you add some fog to the room :-)&lt;br /&gt;&lt;br /&gt;So I promptly asked him what software he was using to run the laser projector and the answer was: iShow, a proprietary software. I still inquired about free software implementations of drivers or controlling software but he was not aware of any existent efforts. So we decided to start doing that right away. We installed an USB sniffer on his Windows machine and started reverse engineering the protocol used by the device. In half an hour we had our first line drawn by sending &lt;a href="http://www.mjmwired.net/kernel/Documentation/usb/URB.txt"&gt;URBs&lt;/a&gt; through a python script running on my GNU/Linux. Then we spent more 3 or 4 days improving the python module (all source code is in my personal &lt;a href="http://code.google.com/p/felipesanches/source/browse/#svn/trunk/laserdisplay"&gt;svn repository at Google Code&lt;/a&gt;) and implementing some demos:&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;GML, SVG and ILDA&lt;/h2&gt;&lt;br /&gt;We wanted to display the Brmlab logo, so I decided to do that by implementing a simple SVG loader. It parses the SVG file and reads the d attribute of all &lt;path&gt; tags. Then each path command from the SVG path description results in the respective drawing routines for our laser device.&lt;br /&gt;&lt;br /&gt;The result can be seen in this photo:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_-y8FlCj2amY/TQehQIuoEdI/AAAAAAAAAzs/1qDjA2weSyk/s1600/LaserBrmlab_30dpi.JPG.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 256px;" src="http://2.bp.blogspot.com/_-y8FlCj2amY/TQehQIuoEdI/AAAAAAAAAzs/1qDjA2weSyk/s400/LaserBrmlab_30dpi.JPG.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5550582364350452178" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Then I remembered GML! &lt;a href="http://www.graffitimarkuplanguage.com/"&gt;Grafitti Markup Language&lt;/a&gt; is an XML specification for storing grafitti data. That basically means x,y,z and time coordinates. I have used a python module called &lt;a href="http://bitbucket.org/keegan3d/pygml/wiki/Home"&gt;PyGML&lt;/a&gt; to render some GML files with our laser.&lt;br /&gt;&lt;br /&gt;&lt;object width="480" height="385"&gt;&lt;param name="movie" value="http://www.youtube.com/v/nRn9TDjTV2M?fs=1&amp;amp;hl=pt_BR"&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/nRn9TDjTV2M?fs=1&amp;amp;hl=pt_BR" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Another relevant data format is called ILDA. It is a file format for storing laser-show animations. It was developed by the International Laser Display Association (which explains the acronym ILDA). Using &lt;a href="http://svn.navi.cx/misc/trunk/laserprop/client/ILDA.py"&gt;this python module&lt;/a&gt; we got some ILDA animations running on our projector :-)&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;A clock!&lt;/h2&gt;&lt;br /&gt;This is a simple analog clock displaying the current local time.&lt;br /&gt;&lt;br /&gt;&lt;object width="480" height="385"&gt;&lt;param name="movie" value="http://www.youtube.com/v/DFW6pRwONys?fs=1&amp;amp;hl=pt_BR"&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/DFW6pRwONys?fs=1&amp;amp;hl=pt_BR" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;A pong game&lt;/h2&gt;&lt;br /&gt;Cestmir has implemented a pong game using the pygame library and rendering on the laser display. &lt;br /&gt;&lt;br /&gt;&lt;object width="480" height="385"&gt;&lt;param name="movie" value="http://www.youtube.com/v/QC16TLzHivw?fs=1&amp;amp;hl=pt_BR"&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/QC16TLzHivw?fs=1&amp;amp;hl=pt_BR" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;When we decided to display scores in the game, we faced the challenge of creating a font for our laser display and font rendering routines. The first 3 charachteres (0, 1 and 2) were designed by imagining the shapes and manually inputing the values of the coordinates of the bezier control points for the glyphs. At that point we decided we should implement a tool... (more on that topic in a future blogpost)&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;A server for sharing the display&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;While we were working on this project it became clear that the laser was a scarce resource. We had 4 people hacking on it and it was starting to become common to hear the sentence "Can I use the laser now?" (same sentence I've heard a lot in Vienna a week earlier, but refering to a &lt;a href="http://www.epiloglaser.com/legend_36ext.htm"&gt;significantly different machine...&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;It reminded me of stories about the early days in computing when people disputed CPU time in universities and research institutes computers. And then multi-user time-sharing systems were developed. So I decided to develop something analogous for our laser display: a server that collects rendering requests from clients and manages to merge them on the real device.&lt;br /&gt;&lt;br /&gt;The server receives commands through telnet and manages individual double buffering for each connected user. When a user disconnects, only his/her portion of the drawing disappears from the screen. I also adapted our python module so that it would delegate rendering to a remote server when you pass an IP address to its contructor; otherwise it would render in a local device connected to the USB bus.&lt;br /&gt;&lt;br /&gt;That way we could have several users rendering content to the display simultaneously. One possible use of that would be running a script that draws a clock all the time on a corner of the display screen.  Here is an example of that (the clock script and another scipt drawing some bezier curves been run remotely by two different users simultaneously):&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_-y8FlCj2amY/TQeOqB-gKjI/AAAAAAAAAzk/kOEiY3POunM/s1600/2010-12-12%2B18.07.09.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://2.bp.blogspot.com/_-y8FlCj2amY/TQeOqB-gKjI/AAAAAAAAAzk/kOEiY3POunM/s320/2010-12-12%2B18.07.09.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5550561918493665842" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;27C3&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Several people from the Brmlab hackerspace will attend the &lt;a href="http://events.ccc.de/congress/2010/wiki/Main_Page"&gt;27th Chaos Communication Congress&lt;/a&gt; (27C3) and they are planning to &lt;a href="http://events.ccc.de/congress/2010/wiki/Brmlab"&gt;present the laser projector there&lt;/a&gt;!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-8654793541482630574?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/8654793541482630574/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/12/brmlab-lasers-i-just-got-back-to-my.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/8654793541482630574'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/8654793541482630574'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/12/brmlab-lasers-i-just-got-back-to-my.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_-y8FlCj2amY/TQeMAyfQ2pI/AAAAAAAAAzI/416ZecxxUrI/s72-c/brmlab.png' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-1426233506566323814</id><published>2010-12-03T17:59:00.010-02:00</published><updated>2010-12-03T18:41:50.219-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='party land remake'/><category scheme='http://www.blogger.com/atom/ns#' term='pinball hacking'/><category scheme='http://www.blogger.com/atom/ns#' term='pinball fantasies'/><category scheme='http://www.blogger.com/atom/ns#' term='pinball'/><category scheme='http://www.blogger.com/atom/ns#' term='lasercutter'/><category scheme='http://www.blogger.com/atom/ns#' term='epilog'/><category scheme='http://www.blogger.com/atom/ns#' term='hackerspace'/><category scheme='http://www.blogger.com/atom/ns#' term='vienna'/><category scheme='http://www.blogger.com/atom/ns#' term='diy'/><category scheme='http://www.blogger.com/atom/ns#' term='roboexotica'/><category scheme='http://www.blogger.com/atom/ns#' term='metalab'/><title type='text'></title><content type='html'>&lt;h1&gt;Pinball Hacking in Vienna&lt;/h1&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_-y8FlCj2amY/TPlRhDxhJ0I/AAAAAAAAAxk/AvuJedo9SyQ/s1600/SL385397.JPG"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://1.bp.blogspot.com/_-y8FlCj2amY/TPlRhDxhJ0I/AAAAAAAAAxk/AvuJedo9SyQ/s320/SL385397.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5546554044474009410" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I am currently in Vienna, Austria, visiting the &lt;a href="http://metalab.at/"&gt;Metalab Hackerspace&lt;/a&gt;. They have a very nice &lt;a href=" http://www.epiloglaser.com/legend_36ext.htm"&gt;EPILOG 36EXT laser cutter&lt;/a&gt; there and I couldn't avoid using it to cut more parts for my pinball project! So I focused on the upper playfield (ramps, loops, P-U-K-E platform...).&lt;br /&gt;&lt;br /&gt;This is what those parts are supposed to look like in the end:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_-y8FlCj2amY/TPlTXvzPw3I/AAAAAAAAAx0/ooCfH3zWwms/s1600/image3017.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 237px;" src="http://1.bp.blogspot.com/_-y8FlCj2amY/TPlTXvzPw3I/AAAAAAAAAx0/ooCfH3zWwms/s320/image3017.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5546556083516982130" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;And you can see how they look like now in these photos:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_-y8FlCj2amY/TPlQXFAd4uI/AAAAAAAAAxU/s_4DOfByRoE/s1600/5221988084_fa382911d3_b.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://1.bp.blogspot.com/_-y8FlCj2amY/TPlQXFAd4uI/AAAAAAAAAxU/s_4DOfByRoE/s320/5221988084_fa382911d3_b.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5546552773494825698" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_-y8FlCj2amY/TPlR4EFPFII/AAAAAAAAAxs/y2llHVwXWKI/s1600/SL385406.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://3.bp.blogspot.com/_-y8FlCj2amY/TPlR4EFPFII/AAAAAAAAAxs/y2llHVwXWKI/s320/SL385406.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5546554439693702274" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I still need to apply artwork to these acrylic parts. The stickers that I'll use in the project are these:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_-y8FlCj2amY/TPlUt0J_F8I/AAAAAAAAAx8/c5q5z-Ig1y0/s1600/4226896856_e91c31463a_b.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://2.bp.blogspot.com/_-y8FlCj2amY/TPlUt0J_F8I/AAAAAAAAAx8/c5q5z-Ig1y0/s320/4226896856_e91c31463a_b.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5546557562154850242" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I also presented &lt;a href="http://metalab.at/wiki/Pinball_Hacking"&gt;a speech about the project&lt;/a&gt; trying to get more people interested in hacking on pinball machines DIY manufacturing fun.&lt;br /&gt;&lt;br /&gt;Then I also got the opportunity to help on the &lt;a href="http://www.roboexotica.org/"&gt;Roböxotica festival&lt;/a&gt; by laser-cutting the wood trophies for the cocktail robots contest!&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_-y8FlCj2amY/TPlQxx-MwtI/AAAAAAAAAxc/9oE-SMxQVmk/s1600/SL385416.JPG"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 150px; height: 200px;" src="http://3.bp.blogspot.com/_-y8FlCj2amY/TPlQxx-MwtI/AAAAAAAAAxc/9oE-SMxQVmk/s200/SL385416.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5546553232241509074" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-1426233506566323814?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/1426233506566323814/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/12/pinball-hacking-in-vienna-i-am.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/1426233506566323814'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/1426233506566323814'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/12/pinball-hacking-in-vienna-i-am.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_-y8FlCj2amY/TPlRhDxhJ0I/AAAAAAAAAxk/AvuJedo9SyQ/s72-c/SL385397.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-4983498105987706594</id><published>2010-11-12T10:26:00.006-02:00</published><updated>2010-11-12T11:25:01.538-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='fablab'/><category scheme='http://www.blogger.com/atom/ns#' term='milano'/><category scheme='http://www.blogger.com/atom/ns#' term='europe'/><category scheme='http://www.blogger.com/atom/ns#' term='nicelab'/><category scheme='http://www.blogger.com/atom/ns#' term='hackerspaces'/><category scheme='http://www.blogger.com/atom/ns#' term='barcelona'/><category scheme='http://www.blogger.com/atom/ns#' term='valldoreix'/><category scheme='http://www.blogger.com/atom/ns#' term='torino'/><category scheme='http://www.blogger.com/atom/ns#' term='sagrada familia'/><category scheme='http://www.blogger.com/atom/ns#' term='nice'/><category scheme='http://www.blogger.com/atom/ns#' term='mozilla'/><title type='text'></title><content type='html'>&lt;h1&gt;Another trip to Europe&lt;/h1&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_-y8FlCj2amY/TN07uKUIv0I/AAAAAAAAAvY/dlxF8MHDNM8/s1600/CIMG2601.JPG"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://4.bp.blogspot.com/_-y8FlCj2amY/TN07uKUIv0I/AAAAAAAAAvY/dlxF8MHDNM8/s320/CIMG2601.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5538648780964413250" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I am in Europe again! I arrived here las November 2nd to attend the &lt;a href="http://www.drumbeat.org/festival/"&gt;Mozilla Drumbeat Festival&lt;/a&gt;, and now I am touring around until December 12th.&lt;br /&gt;&lt;br /&gt;In Barcelona I had the pleasure of visiting &lt;a href="http://en.wikipedia.org/wiki/Sagrada_Fam%C3%ADlia"&gt;La Sagrada Familia&lt;/a&gt;. It is an amazing place, even for a non-religious person like me. I also met &lt;a href="http://code.google.com/webfonts/designer?designer=Dave+Crossland"&gt;Dave&lt;/a&gt; and we worked a bit more on our &lt;a href="http://webfontdownload.org/"&gt;Firefox addon&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I also visited the &lt;a href="http://fablabbcn.org/"&gt;Barcelona FabLab&lt;/a&gt; and discovered that there's a chance we might have a FabLab in University of São Paulo in the near future. The FabLab was filled with wood/acrylic sculptures of various complex shapes that were built by employing digital fabrication techniques and tools such as laser cutters, 3d printers and CNC machines. Very exciting!&lt;br /&gt;&lt;br /&gt;During my stay in Barcelona I was hosted by a very friendly couple in the &lt;a href="http://es.wikipedia.org/wiki/Valldoreix"&gt;Valldoreix&lt;/a&gt; neighbourhood. Train rides to Barcelona took something around 40 minutes from there.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_-y8FlCj2amY/TN0_MQT8uqI/AAAAAAAAAvo/fHo4vyKTeeI/s1600/valldoreix.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://1.bp.blogspot.com/_-y8FlCj2amY/TN0_MQT8uqI/AAAAAAAAAvo/fHo4vyKTeeI/s320/valldoreix.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5538652596505197218" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Now I am in Nice, France. I was planning to visit a Torino hackerspace but got not much response from those guys. So I changed plans and decided to go directly to Milano, instead. But the trains would stop in Nice, France. So I contacted the Nice hackerspace (&lt;a href="http://nicelab.org/"&gt;NICELAB&lt;/a&gt;) and discovered that they do not exist yet! Their first meeting with the purpose of organizing a hackerspace was exactly in the same night I would be visiting the city (yesterday night) :-D!!! So I joined them at a bar for some interesting conversation and then slept in the house of one of them. Today I am going to get a train to Milano.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_-y8FlCj2amY/TN09PLG26AI/AAAAAAAAAvg/jQ9Ed2SZr9Y/s1600/juca_beziers.png"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 336px; height: 400px;" src="http://2.bp.blogspot.com/_-y8FlCj2amY/TN09PLG26AI/AAAAAAAAAvg/jQ9Ed2SZr9Y/s400/juca_beziers.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5538650447624464386" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;While travelling from Barcelona to Nice, I passed by a train station called &lt;a href="http://en.wikipedia.org/wiki/B%C3%A9ziers"&gt;Beziérs&lt;/a&gt;. As I am deeply involved in vector graphics software development, I could not avoid getting a picture. For a while I wondered whether the name could have some real relation with the &lt;a href="http://en.wikipedia.org/wiki/B%C3%A9zier_curve"&gt;beziér curves&lt;/a&gt;, but I think that it is just a coincidence.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-4983498105987706594?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/4983498105987706594/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/11/another-trip-to-europe-i-am-in-europe.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/4983498105987706594'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/4983498105987706594'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/11/another-trip-to-europe-i-am-in-europe.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_-y8FlCj2amY/TN07uKUIv0I/AAAAAAAAAvY/dlxF8MHDNM8/s72-c/CIMG2601.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-9181270972177571440</id><published>2010-09-20T12:20:00.005-03:00</published><updated>2010-09-20T13:04:09.900-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nyc'/><category scheme='http://www.blogger.com/atom/ns#' term='nycresistor'/><category scheme='http://www.blogger.com/atom/ns#' term='makerfaire'/><category scheme='http://www.blogger.com/atom/ns#' term='party'/><category scheme='http://www.blogger.com/atom/ns#' term='openvideo'/><category scheme='http://www.blogger.com/atom/ns#' term='newyork'/><category scheme='http://www.blogger.com/atom/ns#' term='openvideoconference'/><category scheme='http://www.blogger.com/atom/ns#' term='hackerspace'/><category scheme='http://www.blogger.com/atom/ns#' term='opensubtitlesdesignsummit'/><category scheme='http://www.blogger.com/atom/ns#' term='ovc'/><category scheme='http://www.blogger.com/atom/ns#' term='make'/><title type='text'></title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_-y8FlCj2amY/TJeFHHOyOqI/AAAAAAAAAtQ/V6-ONpxR3jo/s1600/NYC_Skyline_from_Jersey_by_sp1te.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 90px;" src="http://4.bp.blogspot.com/_-y8FlCj2amY/TJeFHHOyOqI/AAAAAAAAAtQ/V6-ONpxR3jo/s320/NYC_Skyline_from_Jersey_by_sp1te.jpg" alt="" id="BLOGGER_PHOTO_ID_5519026225612470946" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;h1&gt;New York, September 2010&lt;/h1&gt;&lt;br /&gt;&lt;br /&gt;Tonight I'm flying to New York city and I'll stay there until October 3rd.&lt;br /&gt;&lt;br /&gt;I'm going to attend the &lt;a href="http://openvideoconference.org/"&gt;Open Video Conference&lt;/a&gt;, the &lt;a href="http://universalsubtitles.org/opensubtitles2010"&gt;Open Subtitles Design Summit&lt;/a&gt;, the &lt;a href="http://makerfaire.com/newyork/2010/"&gt;Maker Faire&lt;/a&gt; and I'll try to visit the &lt;a href="http://www.nycresistor.com/about/"&gt;NYCResistor hackerspace&lt;/a&gt;. I will also participate in a &lt;a href="http://www.kickstarter.com/projects/fred/hackers-the-movie-15th-anniversary-party-on-oct-2n/"&gt;party&lt;/a&gt; to "celebrate" the 15 years of the release of "Hackers", the movie.&lt;br /&gt;&lt;br /&gt;&lt;small&gt;&lt;br /&gt;NYC Skyline by &lt;a href="http://sp1te.deviantart.com/art/NYC-Skyline-from-Jersey-100583310"&gt;=sp1te&lt;/a&gt;&lt;br /&gt;&lt;/small&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-9181270972177571440?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/9181270972177571440/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/09/new-york-september-2010-tonight-im.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/9181270972177571440'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/9181270972177571440'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/09/new-york-september-2010-tonight-im.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_-y8FlCj2amY/TJeFHHOyOqI/AAAAAAAAAtQ/V6-ONpxR3jo/s72-c/NYC_Skyline_from_Jersey_by_sp1te.jpg' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-1039786539544941031</id><published>2010-07-06T07:31:00.008-03:00</published><updated>2010-07-06T13:26:36.282-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='europe'/><category scheme='http://www.blogger.com/atom/ns#' term='demoparty'/><category scheme='http://www.blogger.com/atom/ns#' term='demo'/><category scheme='http://www.blogger.com/atom/ns#' term='maaseik'/><category scheme='http://www.blogger.com/atom/ns#' term='hackerspace'/><category scheme='http://www.blogger.com/atom/ns#' term='demoscene'/><category scheme='http://www.blogger.com/atom/ns#' term='belgium'/><title type='text'></title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_-y8FlCj2amY/TDMPFgikGAI/AAAAAAAAAoQ/WaG2npNNKZs/s1600/rewired2010.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 106px;" src="http://4.bp.blogspot.com/_-y8FlCj2amY/TDMPFgikGAI/AAAAAAAAAoQ/WaG2npNNKZs/s400/rewired2010.jpg" alt="" id="BLOGGER_PHOTO_ID_5490748958003435522" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;My few last days in Europe were spent attending a &lt;a href="http://en.wikipedia.org/wiki/Demoparty"&gt;demoparty&lt;/a&gt; in&lt;br /&gt;Maaseik, Belgium. I always wanted to be in a demoparty and this was my&lt;br /&gt;first opportunity to do so. I didn't want to simply attend it. I&lt;br /&gt;wanted to actually release a demo! My choice of development platform&lt;br /&gt;was the Phillips Videopac G7000 (european name), also known as&lt;br /&gt;&lt;a href="http://en.wikipedia.org/wiki/Magnavox_Odyssey%C2%B2"&gt;Magnavox Odyssey²&lt;/a&gt; (in USA). In Brazil it was released as "Odyssey" since the original one has never been released here, so the number 2 in the name would not make much sense in the brazilian market.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_-y8FlCj2amY/TDMJn7Q-LOI/AAAAAAAAAoI/hHoiNOv6vzE/s1600/Odyssey2_w_box.jpg"&gt;&lt;img style="float: right; margin: 0pt 0pt 10px 10px; cursor: pointer; width: 224px; height: 320px;" src="http://3.bp.blogspot.com/_-y8FlCj2amY/TDMJn7Q-LOI/AAAAAAAAAoI/hHoiNOv6vzE/s320/Odyssey2_w_box.jpg" alt="" id="BLOGGER_PHOTO_ID_5490742952223190242" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I've had one of these in Brazil since my childhood, but I did not bring&lt;br /&gt;it with me to my Europe trip (as I didn't want to risk loosing it or&lt;br /&gt;damaging it for whatever reason). Because of that I tried to buy a&lt;br /&gt;Videopac on eBay and have it delivered to Brussels, where my&lt;br /&gt;brazillian friend &lt;a href="http://lameiro.wordpress.com/"&gt;Leandro Lameiro&lt;/a&gt; lives nowadays, so that we could&lt;br /&gt;develop and showcase the demo in a real machine during &lt;a href="http://rewired.be/"&gt;Rewired 2010&lt;/a&gt;.&lt;br /&gt;But then, unfortunately, the french guy who sold me a Phillips c52&lt;br /&gt;didn't send the item at all. Also, I have contacted &lt;a href="http://soeren.informationstheater.de/g7000/"&gt;Sören Gust&lt;/a&gt;,&lt;br /&gt;trying to buy a development cartridge from him, but he didn't have a&lt;br /&gt;spare one to sell. I though about &lt;a href="http://soeren.informationstheater.de/g7000/cart.html"&gt;building one myself&lt;/a&gt; in some european&lt;br /&gt;&lt;a href="http://en.wikipedia.org/wiki/Hackerspace"&gt;hackerspace&lt;/a&gt; (I have visited many of them during june), but then the&lt;br /&gt;fact that the real console was not delivered made me give up and&lt;br /&gt;simply focus on &lt;a href="http://o2em.sourceforge.net/"&gt;emulator&lt;/a&gt;-based development.&lt;br /&gt;&lt;br /&gt;I knew that it would potentially not be the same as developing in the&lt;br /&gt;real machine, but I needed to release something at the demoparty and I&lt;br /&gt;wanted to do something wild instead of simply making a PC demo. I have&lt;br /&gt;never coded demos before, so I was not expecting to do something&lt;br /&gt;awesome. So, my strategy was to do something interesting based on the&lt;br /&gt;novelty of it instead of technical sophistication. Indeed, this was&lt;br /&gt;(as far as I can tell) the first demo ever for the Videopac/Odyssey² !&lt;br /&gt;&lt;br /&gt;I was happy when the emulator properly rendered the results that I&lt;br /&gt;intended to see when I implemented the Video Display Controller (VDC)&lt;br /&gt;trick to change charactere configuration in the middle of the screen&lt;br /&gt;in order to overcome the hardware restriction of only being able to&lt;br /&gt;use only 12 characteres oncreen at a given time. Initially I expected&lt;br /&gt;that the emulator would simply not emulate the trick at all. When it&lt;br /&gt;showed up, I though it was nice and I supposed that it was the correct&lt;br /&gt;emulation. My friend Leandro Lameiro have commented about the issue of&lt;br /&gt;overlapping characteres (that he had read about in some videopac&lt;br /&gt;forum) but we had no way to test it on a real machine to be sure.&lt;br /&gt;&lt;br /&gt;&lt;object &gt;&lt;param name="movie" value="http://www.youtube.com/v/i9EFqBBK1Vw&amp;amp;hl=pt_BR&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/i9EFqBBK1Vw&amp;amp;hl=pt_BR&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" &gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;I was also interested in &lt;a href="http://code.google.com/p/felipesanches/downloads/detail?name=ODC2_DashCrew.zip"&gt;releasing the demo as free software&lt;/a&gt;, because&lt;br /&gt;I am not happy with the overall secrecy aspect of the demoscene. I&lt;br /&gt;would like to encourage more people to learn how do code demos and&lt;br /&gt;then I think it is essential that we release our source codes and let&lt;br /&gt;people learn! So, now that Mark Guttenbrunner (a.k.a. "manopac") has contacted me by email pointing out &lt;a href="http://videopac.nl/forum/index.php?topic=1510.msg12980"&gt;this&lt;br /&gt;discussion&lt;/a&gt; on the Netherlands Videopac Forum, it makes me really proud&lt;br /&gt;to know that the source code was actually checked out by at least one&lt;br /&gt;person who found it useful.&lt;br /&gt;&lt;br /&gt;I'd like to give a brief explanation of the name of our demoscene group.&lt;br /&gt;When we were planning our participation in this demoparty we have&lt;br /&gt;submited an entry in their website informing our name &amp;amp; country so&lt;br /&gt;that the organizers and other people in the scene could have a general&lt;br /&gt;idea of who would attend. This form obligated us to provide a group&lt;br /&gt;name. But I had no group! I noticed that other people (probably in the&lt;br /&gt;same context) had simply provided "-" as the group name (a dash&lt;br /&gt;charactere). So I just followed the pattern. Then, in the party I have&lt;br /&gt;met Niels van Dijkhuizen (NebulaH) who joined me and my brazilian&lt;br /&gt;friend Leandro Lameiro and we decided to release the demo under the&lt;br /&gt;group name "DashCrew" :-)&lt;br /&gt;&lt;br /&gt;There were 7 demos competing at Rewired and our demo &lt;a href="http://www.pouet.net/party.php?which=1439&amp;amp;when=2010"&gt;ranked 3rd&lt;/a&gt; :-D !!!&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_-y8FlCj2amY/TDMR6VfbN0I/AAAAAAAAAoY/ebeU2zz4SKU/s1600/CIMG1130.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 214px;" src="http://2.bp.blogspot.com/_-y8FlCj2amY/TDMR6VfbN0I/AAAAAAAAAoY/ebeU2zz4SKU/s320/CIMG1130.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5490752064593803074" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The entry for this demo at pouet.net is &lt;a href="http://www.pouet.net/prod.php?which=55255"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-1039786539544941031?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/1039786539544941031/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/07/my-few-last-days-in-europe-were-spent.html#comment-form' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/1039786539544941031'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/1039786539544941031'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/07/my-few-last-days-in-europe-were-spent.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_-y8FlCj2amY/TDMPFgikGAI/AAAAAAAAAoQ/WaG2npNNKZs/s72-c/rewired2010.jpg' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-741623936921171705</id><published>2010-06-13T22:09:00.000-03:00</published><updated>2010-06-13T22:09:34.816-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='LibreDWG'/><category scheme='http://www.blogger.com/atom/ns#' term='DWG'/><category scheme='http://www.blogger.com/atom/ns#' term='GNU'/><category scheme='http://www.blogger.com/atom/ns#' term='LGM2010'/><category scheme='http://www.blogger.com/atom/ns#' term='libregraphics'/><category scheme='http://www.blogger.com/atom/ns#' term='free software'/><title type='text'></title><content type='html'>&lt;h2&gt;My talk about GNU LibreDWG at LGM2010&lt;/h2&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_-y8FlCj2amY/TBWA-rVHgEI/AAAAAAAAAmQ/m-Z4tBrACy4/s1600/LGM2010-logo-150px.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_-y8FlCj2amY/TBWA-rVHgEI/AAAAAAAAAmQ/m-Z4tBrACy4/s320/LGM2010-logo-150px.png" /&gt;&lt;/a&gt;Here is the video recording (with slides) of &lt;a href="http://river-valley.tv/gnu-libredwg/"&gt;my talk at the Libre Graphics Meeting 2010&lt;/a&gt; in Brussels, Belgium.&lt;br /&gt;&lt;br /&gt;You can also see the other talks we had in the conference this year. They are all &lt;a href="http://river-valley.tv/conferences/lgm-2010"&gt;available online&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-741623936921171705?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/741623936921171705/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/06/my-talk-about-gnu-libredwg-at-lgm2010.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/741623936921171705'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/741623936921171705'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/06/my-talk-about-gnu-libredwg-at-lgm2010.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_-y8FlCj2amY/TBWA-rVHgEI/AAAAAAAAAmQ/m-Z4tBrACy4/s72-c/LGM2010-logo-150px.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-537887235727332711</id><published>2010-05-22T04:48:00.001-03:00</published><updated>2010-05-22T04:49:25.464-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='europe'/><category scheme='http://www.blogger.com/atom/ns#' term='travel'/><category scheme='http://www.blogger.com/atom/ns#' term='hacker space'/><category scheme='http://www.blogger.com/atom/ns#' term='conferences'/><title type='text'></title><content type='html'>&lt;h2&gt;Europe trip - SIGINT 2010 - Germany&lt;/h2&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_-y8FlCj2amY/S_eKbwDCojI/AAAAAAAAAkc/JDCC20NYFuk/s1600/logo-sigint.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="136" src="http://3.bp.blogspot.com/_-y8FlCj2amY/S_eKbwDCojI/AAAAAAAAAkc/JDCC20NYFuk/s400/logo-sigint.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;Yesterday I have arrived in Cologne, Germany. I'll spend 38 days in Europe visiting a friend in Belgium and attending 2 conferences (&lt;a href="http://events.ccc.de/sigint/2010/wiki/CFP"&gt;SIGINT 2010&lt;/a&gt; and &lt;a href="http://www.libregraphicsmeeting.org/2010/"&gt;Libre Graphics Meeting 2010&lt;/a&gt;) and a demoparty (&lt;a href="http://rewired.be/"&gt;Rewired 2010&lt;/a&gt;).&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;Yesterday at night I have visited the &lt;a href="http://hackerspaces.org/wiki/C4"&gt;C4 hacker space&lt;/a&gt; (a.k.a. Chaos Computer Club Cologne), which is the organizer of the event. There I met some of the guys who are organizing SIGINT and then we went to a bar together. The conference starts today and, since I do not speak german and just a few speeches will be in english, I think that I will spend most of my time in the conference talking to people instead of watching talks.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-537887235727332711?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/537887235727332711/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/05/europe-trip-sigint-2010-germany.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/537887235727332711'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/537887235727332711'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/05/europe-trip-sigint-2010-germany.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_-y8FlCj2amY/S_eKbwDCojI/AAAAAAAAAkc/JDCC20NYFuk/s72-c/logo-sigint.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-3294246509583092585</id><published>2010-05-02T01:34:00.000-03:00</published><updated>2010-05-02T01:34:29.186-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='accessibility'/><category scheme='http://www.blogger.com/atom/ns#' term='universal subtitles'/><category scheme='http://www.blogger.com/atom/ns#' term='pcf'/><category scheme='http://www.blogger.com/atom/ns#' term='participatory culture foundation'/><category scheme='http://www.blogger.com/atom/ns#' term='mozilla'/><title type='text'></title><content type='html'>&lt;h2&gt;Mozilla is doubling donations to Universal Subtitles!&lt;/h2&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_-y8FlCj2amY/S9z_yivzWOI/AAAAAAAAAic/ktJ56VxQjNc/s1600/UniversalSubtitles.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="60" src="http://4.bp.blogspot.com/_-y8FlCj2amY/S9z_yivzWOI/AAAAAAAAAic/ktJ56VxQjNc/s400/UniversalSubtitles.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;During the last 6 months I've been working with the &lt;a href="http://pculture.org/"&gt;Participatory Culture Foundation&lt;/a&gt; , creating a &lt;a href="http://blog.universalsubtitles.org/2010/04/13/subtitles-and-captions-for-every-video-on-the-web/"&gt;collaborative subtitling system for online video&lt;/a&gt;. Some closer friends might remember experimental prototypes I've been implementing with Greasemonkey some years ago, just for fun.&lt;br /&gt;&lt;br /&gt;Now, &lt;a href="http://www.mozilla.org/causes/subtitles"&gt;Mozilla is raising funds for our project&lt;/a&gt; and they will &lt;b&gt;match every donation dollar-for-dollar up to US$ 25,000!&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;I am really proud of the work we've been doing and I hope that our subtitling system can foster a good community of collaborators so that we can improve accessibility of online video.&lt;br /&gt;&lt;br /&gt;&lt;a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;amp;hosted_button_id=8QRGWSSGWYGPJ" target="_blank"&gt;&lt;b&gt;Please donate now — any amount you give will be  doubled!&lt;/b&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-3294246509583092585?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/3294246509583092585/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/05/mozilla-is-doubling-donations-to.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/3294246509583092585'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/3294246509583092585'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/05/mozilla-is-doubling-donations-to.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_-y8FlCj2amY/S9z_yivzWOI/AAAAAAAAAic/ktJ56VxQjNc/s72-c/UniversalSubtitles.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-3920930276825085355</id><published>2010-04-27T19:51:00.001-03:00</published><updated>2010-04-27T19:52:25.715-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pcb'/><category scheme='http://www.blogger.com/atom/ns#' term='electronics'/><category scheme='http://www.blogger.com/atom/ns#' term='EDA'/><category scheme='http://www.blogger.com/atom/ns#' term='gschem'/><category scheme='http://www.blogger.com/atom/ns#' term='geda'/><category scheme='http://www.blogger.com/atom/ns#' term='eagle'/><category scheme='http://www.blogger.com/atom/ns#' term='free software'/><title type='text'></title><content type='html'>&lt;h2&gt;Free software EDA tools&lt;/h2&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_-y8FlCj2amY/S9dphAYcf2I/AAAAAAAAAiE/Ak833wlKncg/s1600/Screenshot-PCB.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="136" src="http://2.bp.blogspot.com/_-y8FlCj2amY/S9dphAYcf2I/AAAAAAAAAiE/Ak833wlKncg/s400/Screenshot-PCB.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;At last I've decided to learn how to use free software &lt;a href="http://en.wikipedia.org/wiki/Electronic_design_automation"&gt;EDA&lt;/a&gt; tools in order to design a controller board to my &lt;a href="http://www.flickr.com/photos/felipesanches/sets/72157594271342944/"&gt;pinball machine&lt;/a&gt;. I spent some time reading tutorials on gschem and pcb (tools of the &lt;a href="http://www.gpleda.org/"&gt;gEDA&lt;/a&gt; suite) and I have had some very basic issues with these tools, which makes me believe that very few people are actually using them. Then I entered the #geda irc channel at freenode to ask for some help.&lt;br /&gt;My first surprise was that freenode redirects from #geda to ##pcb, with the following welcome message:&lt;br /&gt;&lt;blockquote&gt;&lt;b&gt;"&lt;/b&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;The topic for ##pcb is: Support and discussion for PCB design and prototyping:- CAD tools, Eagle, KiCad, FreePCB, gEDA, Board layout and fabrication techniques. Please keep it polite, reasonable, constructive. | news news news: eagle non-profit now does 6 layers&lt;/span&gt;&lt;/b&gt;&lt;b&gt;"&lt;/b&gt;&lt;/blockquote&gt;&lt;br /&gt;This has annoyed me. This probably means that somebody decided that communities should be merged regardless of the tools being free or non-free software. By this welcome message and also based on some conversation I've had in this irc channel I noticed that there is a strong bias towards usage of Eagle, a proprietary tool. And I also noticed that the free tools are not used much because they are often considered technically inferior. Well... without users I think it is harder to make a tool better.&lt;br /&gt;&lt;br /&gt;One of my concerns is that, if Eagle community is strong and gEDA community is weak, then putting them together in the same irc channel has the effect of not allowing gEDA to grow at all. I think that it is important for a community to have its own irc channel even if it's only gonna have 2 or 3 people hanging there.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_-y8FlCj2amY/S9dqNxGjJKI/AAAAAAAAAiM/hCipzfvBDbQ/s1600/Screenshot-gschem.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="207" src="http://4.bp.blogspot.com/_-y8FlCj2amY/S9dqNxGjJKI/AAAAAAAAAiM/hCipzfvBDbQ/s400/Screenshot-gschem.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Off course there are other places to form communities around, such as mailing lists. But what I am really concerned is about this general trend of simply using Eagle for designing circuits and, more generally, about the consequences of the existence and popularity of such gratis/non-free tools that run on GNU/Linux, regarding the development of their free alternatives.&lt;br /&gt;&lt;br /&gt;Given that there is a lot of people trying to stretch the free software movement ideas towards hardware development, why don't they use the free tools at all? Perhaps these people are not really talking about freedom...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-3920930276825085355?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/3920930276825085355/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/04/free-software-eda-tools-at-last-ive.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/3920930276825085355'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/3920930276825085355'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/04/free-software-eda-tools-at-last-ive.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_-y8FlCj2amY/S9dphAYcf2I/AAAAAAAAAiE/Ak833wlKncg/s72-c/Screenshot-PCB.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-7523519281474110128</id><published>2010-04-21T05:55:00.002-03:00</published><updated>2010-04-21T18:59:10.773-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='campus party'/><category scheme='http://www.blogger.com/atom/ns#' term='pinball'/><category scheme='http://www.blogger.com/atom/ns#' term='partyland'/><category scheme='http://www.blogger.com/atom/ns#' term='pinball fantasies remake'/><category scheme='http://www.blogger.com/atom/ns#' term='diy'/><title type='text'></title><content type='html'>&lt;h2&gt;Recent improvements on my pinball project&lt;/h2&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://farm3.static.flickr.com/2801/4539417062_1e911ce6cb_b.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="640" src="http://farm3.static.flickr.com/2801/4539417062_1e911ce6cb_b.jpg" width="425" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Last Sunday morning, &lt;a href="http://fabricio.org/"&gt;Fabricio Zuardi&lt;/a&gt; and his friend &lt;a href="http://www.spades-art.com/"&gt;"Ace of Spades"&lt;/a&gt; came to visit my place to check out the pinball machine and later, at night, we gathered with some other geeks to discuss homebrew 3d printers and related topics while drinking draft beer.&lt;br /&gt;&lt;br /&gt;Fabricio took some pictures which he's just &lt;a href="http://www.flickr.com/photos/fabricio/sets/72157623775150457/"&gt;published in his Flickr account&lt;/a&gt;. The first photo in this post is CC BY Fabricio Zuardi&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://farm5.static.flickr.com/4035/4539318190_8213788c9a.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="400" src="http://farm5.static.flickr.com/4035/4539318190_8213788c9a.jpg" width="265" /&gt;&lt;/a&gt;&lt;/div&gt;I have spent part of these last few days installing the decorative acrylics that I mentioned in &lt;a href="http://jucablues.blogspot.com/2010/04/more-decorative-acrylic-parts-for-my.html"&gt;my previous post&lt;/a&gt;. I have also installed some structural parts in the bottom portion of the playfield.&lt;br /&gt;&lt;br /&gt;Months ago parts of my camping tent were stolen during &lt;a href="http://en.wikipedia.org/wiki/Campus_Party"&gt;Campus Party&lt;/a&gt;, but I saved its metal supporting stakes because I felt they would be somehow useful. Indeed, I have found a good way of using it in the pinball machine. By bending it with the help of pliers, I've transformed it into a separator that is placed between &lt;a href="http://www.ipdb.org/glossary.php#Inlane"&gt;inlane&lt;/a&gt; and &lt;a href="http://www.ipdb.org/glossary.php#Outlane"&gt;outlane&lt;/a&gt;. I think that the result is perfect!&lt;br /&gt;&lt;br /&gt;There are some more photos at &lt;a href="http://www.flickr.com/photos/felipesanches"&gt;my flickr page&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-7523519281474110128?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/7523519281474110128/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/04/recent-improvements-on-my-pinball.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/7523519281474110128'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/7523519281474110128'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/04/recent-improvements-on-my-pinball.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm3.static.flickr.com/2801/4539417062_1e911ce6cb_t.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-1192357419665686796</id><published>2010-04-17T00:30:00.001-03:00</published><updated>2010-04-17T00:39:31.957-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pinball'/><category scheme='http://www.blogger.com/atom/ns#' term='acrylic'/><category scheme='http://www.blogger.com/atom/ns#' term='laser cut'/><title type='text'></title><content type='html'>&lt;h2&gt;More decorative acrylic parts for my pinball machine&lt;/h2&gt;&lt;br /&gt;Months ago I have made the &lt;a href="http://jucablues.blogspot.com/2010/01/yesterday-i-have-installed-decorative.html"&gt;decorative acrylic parts for the upper loop&lt;/a&gt; of the machine. Yesterday I have ordered another batch of laser-cut acrylics. This time for the bottom part of the playfield.&lt;br /&gt;&lt;br /&gt;In the following video I am using glue to add artwork to the acrylic parts:  &lt;br /&gt;&lt;br /&gt;&lt;object width="480" height="385"&gt;&lt;param name="movie" value="http://www.youtube-nocookie.com/v/xx55fGpYuAM&amp;hl=en_US&amp;fs=1&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-nocookie.com/v/xx55fGpYuAM&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;And in this other video, as a final touch, I am cutting the excess of paper from the parts:&lt;br /&gt;&lt;br /&gt;&lt;object width="480" height="385"&gt;&lt;param name="movie" value="http://www.youtube-nocookie.com/v/HrajFvt8tsY&amp;hl=en_US&amp;fs=1&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-nocookie.com/v/HrajFvt8tsY&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"&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/28814329-1192357419665686796?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/1192357419665686796/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/04/more-decorative-acrylic-parts-for-my.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/1192357419665686796'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/1192357419665686796'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/04/more-decorative-acrylic-parts-for-my.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-1962077442900493110</id><published>2010-04-13T17:01:00.007-03:00</published><updated>2010-04-14T08:35:47.458-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bayarea'/><category scheme='http://www.blogger.com/atom/ns#' term='pinball'/><category scheme='http://www.blogger.com/atom/ns#' term='hacker space'/><category scheme='http://www.blogger.com/atom/ns#' term='museum'/><category scheme='http://www.blogger.com/atom/ns#' term='alameda'/><category scheme='http://www.blogger.com/atom/ns#' term='noisebridge'/><title type='text'></title><content type='html'>&lt;h2&gt;Visiting the Pacific Pinball Museum&lt;/h2&gt;&lt;br /&gt;I was planning to visit the &lt;a href="http://www.nationalpinballmuseum.org/museum/index.html"&gt;National Pinball Museum&lt;/a&gt; in Baltimore during my visit to the USA, but it was far from any other place I was intending to visit. It turned out that I did not visit it. But I also decided to visit San Francisco Bay Area and some people told me that there is a pinball museum there too. So, I decided to check it out. I took the BART from San Francisco (where I was hosted in a friend's house) to Alameda - east bay - and visited the &lt;a href="http://pacificpinball.org/"&gt;Pacific Pinball Museum&lt;/a&gt;!&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_-y8FlCj2amY/S8TK4D6VOwI/AAAAAAAAAeg/fw53waPBmog/s1600/CIMG0179.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="267" src="http://4.bp.blogspot.com/_-y8FlCj2amY/S8TK4D6VOwI/AAAAAAAAAeg/fw53waPBmog/s400/CIMG0179.JPG" width="400" /&gt;&lt;/a&gt;&lt;a href="http://1.bp.blogspot.com/_-y8FlCj2amY/S8TMnn5sjVI/AAAAAAAAAew/DCTf4bmCwPk/s1600/CIMG0181.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="267" src="http://1.bp.blogspot.com/_-y8FlCj2amY/S8TMnn5sjVI/AAAAAAAAAew/DCTf4bmCwPk/s400/CIMG0181.JPG" width="400" /&gt;&lt;/a&gt;&lt;a href="http://2.bp.blogspot.com/_-y8FlCj2amY/S8TLd-rE6fI/AAAAAAAAAeo/-5CiijcmrC4/s1600/CIMG0191.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="640" src="http://2.bp.blogspot.com/_-y8FlCj2amY/S8TLd-rE6fI/AAAAAAAAAeo/-5CiijcmrC4/s640/CIMG0191.JPG" width="427" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;When I arrived at the museum I introduced myself, telling them that I was looking for some advice on my homebrew pinball project and that I was also interested in buying some pinball parts for it. I was then introduced to Michael Schiess, the museum founder, who was very friendly and took me to a private tour around the warehouse where he stores the hundreds of machines that are not in the public area of the museum - either due to lack of space or because the machines need to be repaired/restored.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_-y8FlCj2amY/S8S9D4JrnrI/AAAAAAAAAd4/v8Z9u9CO9aA/s1600/CIMG0196.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="266" src="http://1.bp.blogspot.com/_-y8FlCj2amY/S8S9D4JrnrI/AAAAAAAAAd4/v8Z9u9CO9aA/s400/CIMG0196.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&amp;nbsp;There, Michael guided me through some interesting machines including the world's largest pinball game, which is played with a pool ball and whose flippers are activated by 110 volts coils:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_-y8FlCj2amY/S8TAN8QgR3I/AAAAAAAAAeA/gFEAmlupQTs/s1600/CIMG0203_recorte.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="366" src="http://2.bp.blogspot.com/_-y8FlCj2amY/S8TAN8QgR3I/AAAAAAAAAeA/gFEAmlupQTs/s400/CIMG0203_recorte.JPG" width="400" /&gt;&lt;/a&gt;&lt;a href="http://1.bp.blogspot.com/_-y8FlCj2amY/S8TBAerVwJI/AAAAAAAAAeI/tED9Jvb8fkU/s1600/CIMG0204.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="267" src="http://1.bp.blogspot.com/_-y8FlCj2amY/S8TBAerVwJI/AAAAAAAAAeI/tED9Jvb8fkU/s400/CIMG0204.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp; Then he started looking for some pinball parts for me, but he didn't have many spare parts. So he decided to give me a playfield, as a gift, so that I could take parts from it. He said to me that as it woudn't be possible for me to take the whole playfield to Brazil, I should remove the parts that interest me and then give the playfield wood (with the artwork of the game) to my host there in San Francisco. I liked the idea. He gave me a ride to the BART and then I brought the machine to Seth's place. Seth has lent me this shopping cart so that I could more easily move the pinball playfield around:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_-y8FlCj2amY/S8THlAbCe-I/AAAAAAAAAeQ/kiK3sp-_XIE/s1600/CIMG0218.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="640" src="http://1.bp.blogspot.com/_-y8FlCj2amY/S8THlAbCe-I/AAAAAAAAAeQ/kiK3sp-_XIE/s640/CIMG0218.JPG" width="427" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&amp;nbsp;So, I took it to &lt;a href="https://www.noisebridge.net/"&gt;NoiseBridge&lt;/a&gt; (a hacker space in San Francisco) and spent 3 or 4 hours removing all the parts from it. I have left the playfield wood in the public area of the hacker space so that anybody can use it for whatever project and I have sent them a notice in their mailing list. My personal suggestion is to hook it to the walls as a decorative item. Perhaps they could use a microcontroller to blink some leds also, just for astethic purposes.&lt;br /&gt;&lt;br /&gt;Here are the parts that I've brought to Brazil:&lt;br /&gt;* 32 orange posts&lt;br /&gt;* 4 hit targets&lt;br /&gt;* 5 red rubbers and 5 new shining pinball balls given to me by Michael&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_-y8FlCj2amY/S8TJxY4XVkI/AAAAAAAAAeY/p5EhCmTcWwQ/s1600/CIMG0257.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="266" src="http://3.bp.blogspot.com/_-y8FlCj2amY/S8TJxY4XVkI/AAAAAAAAAeY/p5EhCmTcWwQ/s400/CIMG0257.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Thanks, Michael!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-1962077442900493110?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/1962077442900493110/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/04/i-was-planning-to-visit-national.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/1962077442900493110'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/1962077442900493110'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/04/i-was-planning-to-visit-national.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_-y8FlCj2amY/S8TK4D6VOwI/AAAAAAAAAeg/fw53waPBmog/s72-c/CIMG0179.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-6294841631994720245</id><published>2010-04-10T12:02:00.003-03:00</published><updated>2010-04-12T12:52:26.472-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cad'/><category scheme='http://www.blogger.com/atom/ns#' term='pinball'/><category scheme='http://www.blogger.com/atom/ns#' term='reprap'/><category scheme='http://www.blogger.com/atom/ns#' term='diy'/><title type='text'></title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_-y8FlCj2amY/S8CS0DmUL2I/AAAAAAAAAdg/Xcew8rl7o3A/s1600/reprap.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" height="45" src="http://3.bp.blogspot.com/_-y8FlCj2amY/S8CS0DmUL2I/AAAAAAAAAdg/Xcew8rl7o3A/s200/reprap.png" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;h2&gt;Pinball hacking and personal fabrication&lt;/h2&gt;&lt;br /&gt;I consider that building a pinball machine at home during these last 4 years or so has been a strongly symbolic act. It has started as a need to materialize a proof of concept of a clever hack I once figured out was possible based on the knowledge I had acquired after spending lots of time and effort reverse engineering an old pinball simulation game. The proof of concept was not very hard and indeed the hack is already proven through some early experiments. But a corollary of this discovery was pretty obvious: I would have to build the real version of Pinball Fantasies sooner or later.&lt;br /&gt;&lt;br /&gt;So I felt challenged and started to build it, just for fun. I was trying to do something that I had never done before and that I hadn't even heard of other people who had done similar projects. Building a homebrew pinball machine sounded to me like a very ambitious project. Nowadays I am aware that I am not the only geek working on custom pinball development (there is perhaps half a dozen other people in the world having fun with it such as Jeri Ellsworth), but I didn't know about that at the beginning of the project and so I felt alone and obliged to come up with my own solutions to overcome each of the challenges involved in the execution of the project.&lt;br /&gt;&lt;br /&gt;Then, gradually, I started to perceive some interesting relations between this project and my previous (software-only) ones. I had been fighting for software freedom and access to knowledge for some time and now some of my practices from the software world were being replicated in the physical construction of the pinball machine. I had decided to publish every details of the project (including &lt;a href="http://www.flickr.com/photos/felipesanches"&gt;lots of photos&lt;/a&gt; and &lt;a href="http://code.google.com/p/how-to-build-a-pinball/"&gt;source code&lt;/a&gt;) because I felt that I should encourage other people to build things also. I was also refusing to use proprietary software and based on the same principles I was avoiding fabrication processes that I did not fully understand. For instance, I was not happy about relying on professional laser cuter services to build some of the &lt;a href="http://www.flickr.com/photos/felipesanches/4255577871/"&gt;acrylic parts&lt;/a&gt; of the machine. I wanted to cut the parts in a homebrew CNC machine that was &lt;a href="http://www.youtube.com/watch?v=7YGDXqanfa0"&gt;designed and built by a friend&lt;/a&gt; that I met through one of the brazilian pinball club mailing lists. I have only used the professional laser service because my friend's machine was broken and he did not seem to have enough time to fix it.&lt;br /&gt;&lt;br /&gt;I have also decided to use the Arduino controller board and it was a good reason for me to learn more about microcontrollers. I have then bought some dot-matrix-display modules and had to help a niche community of Arduino hackers to adapt code for controlling these displays (in my specific case, I needed to control 7 of these simultaneously). I have even discovered &lt;a href="http://www.inkscape.org/"&gt;Inkscape&lt;/a&gt; while I was looking for a CAD software to draw blueprints of the machine (Inkscape is not CAD, but I stumbled upon it during the search). I quickly fell in love with it. I have become an Inkscape developer and this is one of the reasons why the pinball project was neglected during some long periods of several months with practically no pinball hacking and lots of SVG renderer implementation efforts.&lt;br /&gt;&lt;br /&gt;But what motivates me to tell this story is that recently I have become aware of this trend of personal fabrication technologies. Projects like the &lt;a href="http://reprap.org/"&gt;RepRap&lt;/a&gt; and the CupCake CNC are bringing the hackability of free software to physical things. And after reading the articles about it on Make magazine, I've decided to try to use it on my pinball project. I think that it is a practice totally compatible with my feeling of a need of better understanding the processes of fabrication, instead of simply achieving the desired results. It is a matter of getting more and more autonomy to create and build things and it is also about feeling more empowered by the knowledge acquired.&lt;br /&gt;&lt;br /&gt;Some time ago I felt the need of having a 3d model of the machine in order to make some design decisions. For example, to have a better notion of the space available for some pinball parts in the playfield and to decide on placement of some screws. But I had almost no knowledge of CAD software and for some reasons that would require me to tell another long story (perhaps I can talk about it in a future blog post), I got involved in &lt;a href="http://www.gnu.org/software/libredwg"&gt;GNU LibreDWG&lt;/a&gt;, which consumed me another bunch of months with no pinball hacking again :-P I have then tried to make 3d models of some pinball parts and then found &lt;a href="http://www.pinballdiaries.com/category/someday-i-will-build-my-own-pinball-machine/"&gt;this guy&lt;/a&gt; who had done it also for some commonly used parts and had made his CAD files &lt;a href="http://sketchup.google.com/3dwarehouse/cldetails?mid=341a24080b1a5d42ca86739adf021eb&amp;amp;ct=mdcc&amp;amp;prevstart=0"&gt;available online&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_-y8FlCj2amY/S8EktQYu5YI/AAAAAAAAAdo/txGFrEuXXKA/s1600/bumper.jpeg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_-y8FlCj2amY/S8EktQYu5YI/AAAAAAAAAdo/txGFrEuXXKA/s320/bumper.jpeg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;My conclusion to this blog post is that I think it would be awesome for the pinball hacking hobby if we could gather more interested people to make 3d models of pinball parts and share them in some place like &lt;a href="http://www.thingiverse.com/"&gt;thingiverse.com&lt;/a&gt; and then it would be interesting to see people building such parts using homebrew 3d printers like the RepRap. I think that my first attempt at that will be trying to replicate bumper caps to look like the ones depicted in the artwork of the original version of the Pinball Fantasies game. I have tried to improvise bumper caps using chocolate mousse cups once and it looked great, but it was slightly larger than the ideal size and those wouldn't fit well in the layout of the PARTYland playfield I am building. I did not have a good solution to this bumper cap issue until now. It seems like RepRaps will be very useful for my pinball hacking fun.&lt;br /&gt;&lt;br /&gt;I must just take care of not spending some additional months focused on building my own RepRap printer... I know that there is a big chance of it happening, given my usual behaviour, though :-P&lt;br /&gt;&lt;br /&gt;&lt;b&gt;A yellow bumper cap from modern machines:&lt;/b&gt; &lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_-y8FlCj2amY/S8CO-z6s2TI/AAAAAAAAAdQ/Q6LjutVyr4w/s1600/bb_yelcap.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="179" src="http://2.bp.blogspot.com/_-y8FlCj2amY/S8CO-z6s2TI/AAAAAAAAAdQ/Q6LjutVyr4w/s200/bb_yelcap.jpg" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;b&gt;The bumper caps depicted in the original game artwork:&lt;/b&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_-y8FlCj2amY/S8CSQtfQL6I/AAAAAAAAAdY/wezfYEs4zXM/s1600/bumpers-pf.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="246" src="http://1.bp.blogspot.com/_-y8FlCj2amY/S8CSQtfQL6I/AAAAAAAAAdY/wezfYEs4zXM/s400/bumpers-pf.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;b&gt;My "chocolate mousse cup" bumper caps:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://farm4.static.flickr.com/3194/2648534562_a2749cc265.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://farm4.static.flickr.com/3194/2648534562_a2749cc265.jpg" width="320" /&gt;&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/28814329-6294841631994720245?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/6294841631994720245/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/04/pinball-hacking-and-personal.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/6294841631994720245'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/6294841631994720245'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/04/pinball-hacking-and-personal.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_-y8FlCj2amY/S8CS0DmUL2I/AAAAAAAAAdg/Xcew8rl7o3A/s72-c/reprap.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-4239923627076328609</id><published>2010-04-10T09:02:00.000-03:00</published><updated>2010-04-10T09:02:09.220-03:00</updated><title type='text'></title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_-y8FlCj2amY/S8BoZS9UCTI/AAAAAAAAAdI/bQPUkWI07s0/s1600/daydream.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_-y8FlCj2amY/S8BoZS9UCTI/AAAAAAAAAdI/bQPUkWI07s0/s320/daydream.JPG" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;h2&gt;Daydreaming&lt;/h2&gt;&lt;br /&gt;So much good things have happened to me during my Boston/San Francisco trip that I have been constantly daydreaming during the last week. I am excited, enlightened and enamoured about so many plans and ideas! There is also a feeling of fear/uncertainly, I think. But that seems to be an inevitable part of exploring the future.&lt;br /&gt;&lt;br /&gt;As a result, I have been revisiting some unfinished projects and have been trying to benefit from this new wave of inspiration in order to boost the development of some of these projects.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-4239923627076328609?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/4239923627076328609/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/04/daydreaming-so-much-good-things-have.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/4239923627076328609'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/4239923627076328609'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/04/daydreaming-so-much-good-things-have.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_-y8FlCj2amY/S8BoZS9UCTI/AAAAAAAAAdI/bQPUkWI07s0/s72-c/daydream.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-8571215098284683122</id><published>2010-04-09T10:04:00.004-03:00</published><updated>2010-04-09T11:56:27.595-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='libreplanet'/><category scheme='http://www.blogger.com/atom/ns#' term='p2p'/><category scheme='http://www.blogger.com/atom/ns#' term='encryption'/><category scheme='http://www.blogger.com/atom/ns#' term='weave'/><category scheme='http://www.blogger.com/atom/ns#' term='privacy'/><category scheme='http://www.blogger.com/atom/ns#' term='mozilla'/><title type='text'></title><content type='html'>&lt;h2&gt;LibrePlanet 2010 Trip Report&lt;/h2&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_-y8FlCj2amY/S78lHUMawwI/AAAAAAAAAc8/eHAuyeV5uhM/s1600/LP2010banner.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="100" src="http://1.bp.blogspot.com/_-y8FlCj2amY/S78lHUMawwI/AAAAAAAAAc8/eHAuyeV5uhM/s400/LP2010banner.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Attending LibrePlanet 2010 was an awesome experience for me. I have met lots of very interesting people there. I'd like to thank Mozilla for sponsoring my trip to Boston. Here is my report on Mozilla related topics that were discussed at the conference.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Trip Report&lt;/h2&gt;&lt;br /&gt;At LibrePlanet 2010 the main subject discussed was the debate about the issues of SaaS ("Software as a Service") for user's freedom and autonomy, which was the topic of &lt;a href="http://www.gnu.org/philosophy/who-does-that-server-really-serve.html"&gt;Stallman's most recent article&lt;/a&gt; and keynote at the conference. It is clear to me that the most relevant Mozilla project (that I am currently aware of) that is related to these issues is Mozilla Weave. There is an increasing perception among GNU activists that the upcoming new challenges for the GNU Project will be around providing solutions for privacy-enabling infrastructure and decentralization of services in order to keep the users in control of their computing and of their private data.&lt;br /&gt;&lt;br /&gt;Stallman's SaaS article was first published at &lt;a href="http://bostonreview.net/BR35.2/stallman.php"&gt;Boston Review&lt;/a&gt;, where I would suggest you to check the user comments (there are 4 comments only at the time of writing this report) in order to have an idea of the kind of debates that the article has generated. After Stallman's speech - during the questions session - he clearly refused to talk about privacy, as he was more concerned about first discussing the issue of "running your computation on a server that you do not control" and was clearly trying to keep the topic of user privacy - which he explicitely cited as "another important issue" - to be discussed in a potentially upcoming article/speech. After LibrePlanet, I have had the opportunity of discussing these issues in private with Peter Brown, executive director of the Free Software Foundation, during one of my visits to the FSF Office in Boston. He acknowledged that the issue of privacy was intentionally preserved to be explicitely targeted by future FSF campaings and has suggested me to subscribe to the &lt;a href="http://www.gnu.org/software/network/"&gt;GNU Network-discuss mailing list&lt;/a&gt; in order to participate in the brainstorming of new GNU initiatives towards solving these issues.&lt;br /&gt;&lt;br /&gt;The upcoming &lt;a href="http://www.gnu.org/ghm/"&gt;GNU Hackers Meeting&lt;/a&gt; during GUADEC 2010 will be specifically focused in "free secure networking and decentralised applications".&lt;br /&gt;There is an interesting, but rather old article - July 14th, 2008 - by Benjamin Mako Hill entitled &lt;a href="http://autonomo.us/2008/07/franklin-street-statement/"&gt;"Franklin Street Statement on Freedom and Network Services"&lt;/a&gt; that is directly related to the subject discussed here.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Encrypted Data Stores&lt;/h3&gt;&lt;br /&gt;One of the various reasons why users are increasingly adopting SaaS tools is related to a trend to rely on/trust remote servers to make backups of their data. Users are very often not prepared to setup a reliable personal backup routine and even when users do so, it is understandable that they feel that Google (or some other provider of web-based services) might be able to provide a better quality infrastructure on their data centers to (supposedly) guarantee the integrity of user data. By accepting this premise, lots of users are not protecting their privacy and allowing services like GMail to crawl Gigabytes of their private stuff.&lt;br /&gt;&lt;br /&gt;To address this issue there has been some suggestions, including the idea of &lt;a href="http://codingrelic.geekhold.com/2009/12/crowdsourcing-backup.html"&gt;crowdsourcing backups&lt;/a&gt; by sharing encrypted data in a p2p network.&lt;br /&gt;I understand Mozilla Weave as a sign of commitment from Mozilla with privacy values and it seems to me that one of the reasons for it having restricting data quota limits might be that it is not a decentralized service. Correct me if I am wrong about it - I am still just starting to learn about it. Could Weave be adapted to run with higher volumes of data in a decentralized architecture? Or would it be wiser to design something like that from scratch instead?&lt;br /&gt;&lt;br /&gt;There are some free software initiatives towards that kind of system:&lt;br /&gt;&lt;br /&gt;* &lt;a href="http://tahoe-lafs.org/trac/tahoe-lafs"&gt;Tahoe&lt;/a&gt;, a redundant, distributed and encrypted filesystem&lt;br /&gt;* &lt;a href="http://en.wikipedia.org/wiki/The_Circle_%28file_system%29"&gt;The Circle&lt;/a&gt;, a peer-to-peer filesystem (discontinued in 2004)&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Remote Computing&lt;/h3&gt;&lt;br /&gt;Running personal computational routines in a server that you do not control was explicitely rejected by RMS in his speech since it has effects to users autonomy and freedom that are similar to those of proprietary software. I think that the &lt;a href="http://www.gnu.org/philosophy/who-does-that-server-really-serve.html"&gt;current SaaS article&lt;/a&gt; is sufficiently extensive in exploring this topic.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Local execution of arbitrary (non-free?) code&lt;/h3&gt;&lt;br /&gt;An interesting article about a complementary issue that was published by RMS some time ago entitled &lt;a href="http://www.gnu.org/philosophy/javascript-trap.html"&gt;"The Javascript Trap"&lt;/a&gt; deals with the local execution of javascript code automaticaly fetched from a remote webserver on page load. At that time was stated the need for a system that would allow people to have better control of which routines are running on their browser environments and that would perhaps enable them to collaboratively tag "trusted versions" of such scripts. This is a controversial topic that deserves some attention from Mozilla, especially in those cases where highly complex non-trivial javascript applications are delivered to the user's browser environment to handle sensitive user data.&lt;br /&gt;One possible attempt to target this issue could be to incorporate popular javascript libraries such as jQuery in the browser installation and allow updates of these to be better managed by the users - or even possibly allow for local customizations of these modules. Also, I can't avoid mentioning Greasemonkey as a source of personal insight on why people would care about changing webapp behaviours.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Additional comments:&lt;/h3&gt;&lt;br /&gt;I've just enjoyed watching a related speech by Eben Moglen entitled &lt;a href="http://www.softwarefreedom.org/news/2010/feb/01/freedom-cloud-software-freedom-privacy-and-securit/"&gt;"Freedom In the Cloud: Software Freedom, Privacy, and Security for Web 2.0 and Cloud Computing"&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;video src="http://new.law.columbia.edu/isoc/eben_moglen_freedom_in_the_cloud.ogv" type='video/ogg; codecs="theora, vorbis"'&gt;&lt;/video&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-8571215098284683122?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/8571215098284683122/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/04/libreplanet-2010-trip-report-attending.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/8571215098284683122'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/8571215098284683122'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/04/libreplanet-2010-trip-report-attending.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_-y8FlCj2amY/S78lHUMawwI/AAAAAAAAAc8/eHAuyeV5uhM/s72-c/LP2010banner.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-4772525210153826614</id><published>2010-04-08T03:46:00.000-03:00</published><updated>2010-04-08T03:46:04.659-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='inkscape'/><category scheme='http://www.blogger.com/atom/ns#' term='food'/><title type='text'></title><content type='html'>&lt;h2&gt;Geek Food&lt;/h2&gt;&lt;br /&gt;&lt;a href="http://www.evilmadscientist.com/article.php/atomiccookies"&gt;Atomic cookies&lt;/a&gt; (made with Inkscape) are great...&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://farm5.static.flickr.com/4023/4499451178_9d95e82a6e.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="300" src="http://farm5.static.flickr.com/4023/4499451178_9d95e82a6e.jpg" width="400" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;...but &lt;a href="http://www.evilmadscientist.com/article.php/fractalcookies"&gt;fractal cookies&lt;/a&gt; are absolutely AWESOME!&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://farm3.static.flickr.com/2250/2400411668_695c3f7b5d.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="294" src="http://farm3.static.flickr.com/2250/2400411668_695c3f7b5d.jpg" width="400" /&gt;&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/28814329-4772525210153826614?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/4772525210153826614/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/04/geek-food-atomic-cookies-made-with.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/4772525210153826614'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/4772525210153826614'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/04/geek-food-atomic-cookies-made-with.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm5.static.flickr.com/4023/4499451178_9d95e82a6e_t.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-3584570879295278912</id><published>2010-04-07T10:33:00.001-03:00</published><updated>2010-04-08T04:04:47.103-03:00</updated><title type='text'></title><content type='html'>&lt;h2&gt;Make Magazine&lt;/h2&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_-y8FlCj2amY/S7yHLAHUZvI/AAAAAAAAAck/WZoakmuGCpI/s1600/make.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_-y8FlCj2amY/S7yHLAHUZvI/AAAAAAAAAck/WZoakmuGCpI/s320/make.JPG" /&gt;&lt;/a&gt;Recently I have made a subscription of the &lt;a href="http://makezine.com/magazine/"&gt;Make Magazine&lt;/a&gt;, an utterly cool publication focused on &lt;a href="http://en.wikipedia.org/wiki/Do_it_yourself"&gt;DIY projects&lt;/a&gt;. Yesterday I have finally received the first one by mail (issue #21), which has the Cupcake CNC 3d printer from &lt;a href="http://makerbot.com/"&gt;MakerBot Industries&lt;/a&gt; in the cover. My subscription to the paper print versions of the magazine gives me access to the online version of all of the previous issues of Make, which is great! It is also very useful for performing searches for keywords, even when we have access to the paper version.&lt;br /&gt;&lt;br /&gt;I am also delighted to notice that one of the articles in this issue ("Instant Paddle") is written by &lt;a href="http://makezine.com/pub/au/Tim_Anderson"&gt;Tim Anderson&lt;/a&gt;, which I met in a nice sailing afternoon with some friends in the San Francisco Bay, during my visit to the US last month.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_-y8FlCj2amY/S7yJeyFyv0I/AAAAAAAAAcs/rbibDMY0Uy0/s1600/CIMG0169.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="267" src="http://4.bp.blogspot.com/_-y8FlCj2amY/S7yJeyFyv0I/AAAAAAAAAcs/rbibDMY0Uy0/s400/CIMG0169.JPG" width="400" /&gt;&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/28814329-3584570879295278912?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/3584570879295278912/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/04/make-magazine-recently-i-have-made.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/3584570879295278912'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/3584570879295278912'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/04/make-magazine-recently-i-have-made.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_-y8FlCj2amY/S7yHLAHUZvI/AAAAAAAAAck/WZoakmuGCpI/s72-c/make.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-4316387313685083093</id><published>2010-04-07T01:21:00.001-03:00</published><updated>2010-04-08T04:03:18.036-03:00</updated><title type='text'></title><content type='html'>&lt;h2&gt;LibrePlanet 2010 and the GNU Hackers Meeting&lt;/h2&gt;&lt;br /&gt;From March 16th until March 31st I've been visiting the USA for the first time. The reasons for my trip were to attend &lt;a href="http://groups.fsf.org/wiki/LibrePlanet2010"&gt;LibrePlanet&lt;/a&gt; - the anual meeting of free software activists held by the &lt;a href="http://www.fsf.org/"&gt;Free Software Foundation&lt;/a&gt; - and to participate in the &lt;a href="http://www.gnu.org/ghm/"&gt;GNU Hackers Meeting&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Me and my friend Rodrigo "pitanga" have both participated in the GNU Hackers Meeting due to our contributions to the GNU Project through the development of &lt;a href="http://www.gnu.org/software/libredwg"&gt;GNU LibreDWG&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;My trip was sponsored by Mozilla and, for that reason, I am currently working on a trip report for them. I'd like to thank &lt;a href="http://weblogs.mozillazine.org/chofmann/"&gt;Chris Hofman&lt;/a&gt;, &lt;a href="http://www.sarahdoherty.net/"&gt;Sarah Doherty&lt;/a&gt; and &lt;a href="http://www.0xdeadbeef.com/weblog/"&gt;Chris Blizzard&lt;/a&gt; - from Mozilla - and &lt;a href="http://identi.ca/holmesworcester"&gt;Holmes Wilson&lt;/a&gt; - from FSF and &lt;a href="http://pculture.org/"&gt;PCF&lt;/a&gt; - for supporting me.&lt;br /&gt;&lt;br /&gt;I have lots of things to write about this amazing trip and all of the wonderful places and people I have met, so there will certainly be some more blog posts soon.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-4316387313685083093?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/4316387313685083093/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/04/libreplanet-2010-and-gnu-hackers.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/4316387313685083093'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/4316387313685083093'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/04/libreplanet-2010-and-gnu-hackers.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-6165375928183718102</id><published>2010-02-02T09:31:00.001-02:00</published><updated>2010-04-08T04:04:04.950-03:00</updated><title type='text'></title><content type='html'>&lt;h2&gt;Lamp matrix controller board properly working&lt;/h2&gt;&lt;br /&gt;Last night my friend DalPoz helped me figure out what was the issue with my lamp matrix controller board for the pinball machine. I fixed the software and now it is working great! I have also done some reverse engineering on Pinball Fantasies to map which palette indexes are used for each lamp in the game. Using this info, now the Arduino is controlling the lamps so that they flash in sync with the lamps of the game.&lt;br /&gt;&lt;br /&gt;&lt;object height="344" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/dHV8v5EIlH8&amp;amp;hl=en&amp;amp;fs=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/dHV8v5EIlH8&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;The issue with the board was that it was drawing too much current from the Arduino output pins.&lt;br /&gt;&lt;br /&gt;In my project, lamps are organized in a lamp matrix and 4 pins control the activation of columns while other 4 pins control activation of rows. The first group of pins draw 1mA in each pin, while the second group draws 25mA per pin. I was multiplexing the lamp matrix by activating one column at a time, which resulted in 1mA (for the column selection - only 1 pin activated at a time)&amp;nbsp; plus up to 4 times 25mA (the 4 row pins can be on/off in any configuration depending on the status of the lamps of the selected column). So, the worst case scenario was 1+4*25 = 101mA but the Arduino can only provide 40mA max.&lt;br /&gt;&lt;br /&gt;By inverting the multiplexing algorithm, that is, by multiplexing rows instead of columns, the worst case scenario becomes 25 + 1*4, which is only 29mA. That was the solution for the issue with the intensity of lamps noticed last week.&lt;br /&gt;&lt;br /&gt;The Arduino board has a limited number of i/o pins, so I'll have to find a way to extend it. One possible solution is to use i2c to communicate with the 4 lamp matrix controller boards that will be used to control the lamps of the whole playfield. But &lt;a href="http://www.fatmanandcircuitgirl.com/live/"&gt;Jeri Ellsworth&lt;/a&gt; told me that there might be some issues with using i2c on pinball machines, since there is a lot of noise in such machines, which could lead the i2c communications to eventually freeze. I might have to use long cables for the lamps and connect all of them to a central controller board.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-6165375928183718102?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/6165375928183718102/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/02/lamp-matrix-controller-board-properly.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/6165375928183718102'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/6165375928183718102'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/02/lamp-matrix-controller-board-properly.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-4924245718179943635</id><published>2010-01-26T04:59:00.000-02:00</published><updated>2010-01-26T04:59:44.850-02:00</updated><title type='text'></title><content type='html'>After some debugging, I have figured out what was the issue with the lamp matrix controller board. I was multiplexing it too fast. By lowering the frequency of multiplexing, I got the board to properly work.&lt;br /&gt;&lt;br /&gt;Next step is to map the palette events from Pinball Fantasies into lamp on / lamp off commands for the Arduino.&lt;br /&gt;&lt;br /&gt;Then I need to fix an issue with the intensity of lamps when they are turned on simultaneously.&lt;br /&gt;After that, I need to try I2C or some other communications protocol and then build 3 more of these boards for controlling the whole playfield.&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/wztuAgwg-eE&amp;hl=en&amp;fs=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/wztuAgwg-eE&amp;hl=en&amp;fs=1" 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/28814329-4924245718179943635?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/4924245718179943635/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/01/after-some-debugging-i-have-figured-out.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/4924245718179943635'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/4924245718179943635'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/01/after-some-debugging-i-have-figured-out.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-2368080132569695126</id><published>2010-01-25T15:43:00.001-02:00</published><updated>2010-04-08T04:06:01.560-03:00</updated><title type='text'></title><content type='html'>&lt;h2&gt;Lamp controler board, second try&lt;/h2&gt;&lt;br /&gt;Today I have rebuilt the lamp controller board taking care of placing high current lines far from low current lines in order to avoid induced currents. But that did not solve the issue.&lt;br /&gt;&lt;br /&gt;The new board is a complete 4x4 matrix controller. It was considerably faster to build this one. I am getting used to it, it is becoming easier to build :-)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Here is a video of the current status of the project, and a question for the electronics geeks:&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/fjRDi_Yn21k&amp;hl=pt_BR&amp;fs=1&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/fjRDi_Yn21k&amp;hl=pt_BR&amp;fs=1&amp;" 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/28814329-2368080132569695126?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/2368080132569695126/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/01/lamp-controler-board-second-try.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/2368080132569695126'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/2368080132569695126'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/01/lamp-controler-board-second-try.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-1001702383217135996</id><published>2010-01-24T22:49:00.000-02:00</published><updated>2010-01-24T22:58:34.155-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pinball fantasies remake PARTYland DIY dosbox'/><title type='text'></title><content type='html'>This weekend, my friend Rafael Moretti spent some time with me buying electronics materials and starting to build and test a lamp controller board for my pinball machine.&lt;br /&gt;&lt;br /&gt;This circuit was suggested to me by another friend, DalPoz, which explained to me how the circuit is supposed to work. Thanks!&lt;br /&gt;&lt;br /&gt;Here is a video of the board (not yet completely built yet, but already flashing 4 lamps of the playfield):&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;The video is in brazilian portuguese, but there are subtitles for it in english. It seems to me that, for some reason, YouTube does not show subtitles for embedded videos, so you might want to watch the video&lt;/b&gt; &lt;a hred="http://www.youtube.com/watch?v=fVucCDbumRw"&gt;directly in YouTube here (with subtitles)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/fVucCDbumRw&amp;hl=en_US&amp;fs=1&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/fVucCDbumRw&amp;hl=en_US&amp;fs=1&amp;" 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/28814329-1001702383217135996?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/1001702383217135996/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/01/this-weekend-my-friend-rafael-moretti.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/1001702383217135996'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/1001702383217135996'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/01/this-weekend-my-friend-rafael-moretti.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-7116625317031866701</id><published>2010-01-14T04:34:00.000-02:00</published><updated>2010-01-14T04:34:03.413-02:00</updated><title type='text'></title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://farm5.static.flickr.com/4013/4269421789_5e37559e63.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://farm5.static.flickr.com/4013/4269421789_5e37559e63.jpg" width="320" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;Yesterday i have installed the decorative acrilics that for the upper loop of my pinball machine.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://farm3.static.flickr.com/2760/4270739824_7cb49002dd.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="300" src="http://farm3.static.flickr.com/2760/4270739824_7cb49002dd.jpg" width="400" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;The acrylic parts are 29 milimiters above the playfield, the exact height of the posts I decided to use (the one I have modeled in FreeCad). I have chosen this one because it is higher than the diameter of the ball, so that the ball will not touch the acrylic parts which are fragile (unless it jumps for some reason). So, I'll need something to guide the ball in the upper loop. I though of using metal guides, but I need advice on that. What would you suggest?&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://farm5.static.flickr.com/4049/4270739838_33166d3419.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://farm5.static.flickr.com/4049/4270739838_33166d3419.jpg" width="320" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;More photos at http://www.flickr.com/photos/felipesanches&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-7116625317031866701?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/7116625317031866701/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/01/yesterday-i-have-installed-decorative.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/7116625317031866701'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/7116625317031866701'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/01/yesterday-i-have-installed-decorative.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm5.static.flickr.com/4013/4269421789_5e37559e63_t.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-7204832316531482954</id><published>2010-01-11T04:09:00.000-02:00</published><updated>2010-01-11T04:50:54.347-02:00</updated><title type='text'></title><content type='html'>Today I have started to learn how to use FreeCAD. My first exercise was drawing a 3d model of a pinball post similar to &lt;a href="http://pbresource.com/posts.html"&gt;these ones&lt;/a&gt;. Here it is:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;3d model of a pinball ribbed post&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/felipesanches/4264659833/"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: left; cursor: pointer; width: 240px; height: 193px;" src="http://farm5.static.flickr.com/4071/4264659833_423a8e8d47_m.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The CAD file is &lt;a href="http://how-to-build-a-pinball.googlecode.com/svn/trunk/cad/"&gt;here&lt;/a&gt;, released under public domain.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-7204832316531482954?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/7204832316531482954/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/01/today-i-have-started-to-learn-how-to.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/7204832316531482954'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/7204832316531482954'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/01/today-i-have-started-to-learn-how-to.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm5.static.flickr.com/4071/4264659833_423a8e8d47_t.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-6936017982992015677</id><published>2010-01-08T04:18:00.000-02:00</published><updated>2010-01-08T07:25:37.283-02:00</updated><title type='text'></title><content type='html'>This week I have been preparing acrylic parts for my pinball machine. The parts were drawn in Inkscape (both the artwork of the parts and their shape). I have sent the shapes to be laser cut in acrylic. The artwork was printed in 4 A3 sheets of paper in a professional print shop.&lt;br /&gt;&lt;br /&gt;There are some photos of the results here:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Laser-cut acrylic parts&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/felipesanches/4248757417/"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: left; cursor: pointer; width: 500px; height: 375px;" src="http://farm3.static.flickr.com/2768/4248757417_9cbd973384.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;An acrylic part and its printed artwork&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/felipesanches/4248757427/"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: left; cursor: pointer; width: 500px; height: 375px;" src="http://farm3.static.flickr.com/2788/4248757427_aa9e2f86fd.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;One acrylic part with art ready to be installed in the machine&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/felipesanches/4252291754/"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: left; cursor: pointer; width: 500px; height: 375px;" src="http://farm3.static.flickr.com/2709/4252291754_4382211c3f.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br/&gt;&lt;br /&gt;&lt;br /&gt;Also, this week I have discovered Jeri Ellsworth, a pinball-geek girl who is also notable for &lt;a href="http://en.wikipedia.org/wiki/Jeri_Ellsworth"&gt;some other hacks&lt;/a&gt;. She's building a pinball machine and posting videos on &lt;a href="http://www.youtube.com/user/jeriellsworth"&gt;her youtube channel&lt;/a&gt;. Check out this &lt;a href="http://www.fatmanandcircuitgirl.com/live/"&gt;live streaming of her lab&lt;/a&gt;. There's an IRC bot to control the webcam zoom and angles and also a text-to-speech bot.&lt;br /&gt;&lt;br /&gt;She's recently posted a video explaining how to &lt;a href="http://www.youtube.com/user/jeriellsworth#p/u/29/Eu_6K71Onfw"&gt;make coloured pinball parts using fabric dye&lt;/a&gt;. I will probably try to do that with the flipper rubber bands of my pinball which are black but were supposed to be red.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-6936017982992015677?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/6936017982992015677/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2010/01/this-week-i-have-been-preparing-acrylic.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/6936017982992015677'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/6936017982992015677'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2010/01/this-week-i-have-been-preparing-acrylic.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm3.static.flickr.com/2768/4248757417_9cbd973384_t.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-4349679972739448727</id><published>2009-09-26T21:31:00.000-03:00</published><updated>2009-09-26T21:49:18.274-03:00</updated><title type='text'></title><content type='html'>Esse email eu escrevi em resposta a uma pergunta que uma pessoa fez na lista de discussão brasileira de usuários do Inkscape.&lt;br /&gt;&lt;br /&gt;O cara perguntou sobre alternativas ao Flash. Algumas pessoas sugeriram usar&lt;br /&gt;SVG com javascript e foram trocados alguns exemplos (&lt;a href="http://jucablues.blogspot.com/2009/01/uns-10-anos-atrs-um-minigame-meu.html"&gt;eu, obviamente, também defendi o uso de SVG&lt;/a&gt;). Outra pessoa disse: "pois é... muito legal, mas SVG ainda não funciona no Internet Explorer então não rola fazer em SVG por que quem usa IE não vai conseguir ver". Então alguém falou sobre o projeto que o Google lançou recentemente chamado &lt;a href="http://code.google.com/p/svgweb/"&gt;SVGWeb&lt;/a&gt; e que permite que usuários de IE consigam visualizar conteúdo SVG.&lt;br /&gt;&lt;br /&gt;=======&lt;br /&gt;&lt;br /&gt;Eu não sei se eu já falei a respeito disso aqui na lista, mas algum tempo atrás eu pesquisei sobre esse tema e descobri algumas coisas importantes.&lt;br /&gt;&lt;br /&gt;* Flex é uma tecnologia implementada em software livre, mas as aplicações feitas com flex só são possíveis de ser executadas corretamente em uma máquina virtual Flash proprietária da Adobe. &lt;br /&gt;&lt;br /&gt;* O SVGWeb é um software livre renderizador de SVG feito em flex.&lt;br /&gt;&lt;br /&gt;Portanto, o SVGWeb tem tanto vantagens quanto desvantagens:&lt;br /&gt;&lt;br /&gt;A grande qualidade do SVGWeb é que ele permite que conteúdo SVG seja acessado em praticamente qualquer browser sem a necessidade de instalar absolutamente nada no cliente. Todo mundo que tem um Flash player consegue acessar SVG, desde que o SVGWeb tenha sido habilitado pela pessoa que criou a página SVG.&lt;br /&gt;&lt;br /&gt;A grande desvantagem é que hoje em dia não existe Flash player livre que seja capaz de rodar o SVGWeb.&lt;br /&gt;&lt;br /&gt;Sendo assim, ao usar o SVGWeb na sua página você pode ter a certeza de que as pessoas que se beneficiarão disso serão aquelas que ainda estão presas a um Flash player proprietário. Em compensação, isso cria uma situação onde você não está mais impossibilitado de utilizar o SVG. Ou&lt;br /&gt;seja, o SVGWeb retira o bloqueio que tínhamos no uso deste padrão aberto em função da não-aderência do Internet Explorer ao formato vetorial da W3C. &lt;a href="http://codedread.com/svg-support.php"&gt;Veja essa tabela de compatibilidade nativa a SVG nos principais browsers.&lt;/a&gt; Mas eu te pergunto: de quê adianta usar um padrão aberto, se ele depende duma máquina virtual Flash proprietária para ser exibido?&lt;br /&gt;&lt;br /&gt;Na verdade não depende. É possível configurar o SVGWeb para ser usado apenas quando o browser do usuário não tem suporte nativo a SVG. E isso é uma coisa fantástica!&lt;br /&gt;&lt;br /&gt;Bem... acho que isso deixa claro que eu considero sim o uso do SVGWeb benéfico, mas com fortes ressalvas, né? Acho que o SVGWeb não deve ser considerado uma solução definitiva. Mas&lt;br /&gt;sim funcionar como "ponte" para uma web mais aberta em um futuro próximo.&lt;br /&gt;&lt;br /&gt;Minha dica é: faça sua página usando SVG e coloque o SVGWeb lá configurado pra só ser usado no IE. O dia que o IE for varrido da face da Terra e todos os browsers tiverem suporte nativo a SVG, será possível simplesmente remover o SVGWeb, sem custos adicionais de desenvolvimento e teremos uma web melhor baseada em mais padrões abertos. Enquanto isso não se realiza, sejamos pelo menos amigáveis ao software livre. Tenha sempre em mente que você pode eventualmente ser o culpado por alguém ser obrigado a abrir mão da liberdade no uso de softwares (ou escolher a liberdade e ser excluído do acesso ao seu conteúdo).&lt;br /&gt;&lt;br /&gt;Portanto, a regra de ouro é sempre usar tecnologias que não obriguem as pessoas a instalar software proprietário pra acessar o seu conteúdo. Quando se lida com o público, é necessário tomar decisões responsáveis. Talvez você não se preocupe com o seu uso pessoal de software proprietário. Mas não permita que suas opções pessoais se transformem em imposições sobre outras pessoas (efetivamente deixando elas sem opção).&lt;br /&gt;&lt;br /&gt;Felipe "Juca" Sanches&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-4349679972739448727?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/4349679972739448727/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2009/09/esse-email-eu-escrevi-em-resposta-uma.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/4349679972739448727'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/4349679972739448727'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2009/09/esse-email-eu-escrevi-em-resposta-uma.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-8894966464389923140</id><published>2009-03-30T03:38:00.000-03:00</published><updated>2009-03-30T14:19:37.702-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ibayo'/><category scheme='http://www.blogger.com/atom/ns#' term='zinwell'/><category scheme='http://www.blogger.com/atom/ns#' term='5a57:4210'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='sniffer'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='libusb'/><category scheme='http://www.blogger.com/atom/ns#' term='tvdigital'/><category scheme='http://www.blogger.com/atom/ns#' term='perl'/><category scheme='http://www.blogger.com/atom/ns#' term='usb'/><category scheme='http://www.blogger.com/atom/ns#' term='hacking'/><title type='text'></title><content type='html'>Engenharia Reversa IB-200 (receptor de tv digital usb)&lt;br /&gt;&lt;br /&gt;If you need an english translation of this technical report or additional info on my reverse engineering efforts, please email me at felipe.sanches@gmail.com and I will gladly help people working on further developments towards support of this device under GNU/Linux.&lt;br /&gt;&lt;br /&gt;Comprei um receptor de tv digital usb OneSeg da IBAYO, modelo IB-200 e comecei a fazer engenharia reversa nele para tentar fazer um driver para Linux. Este post tem o objetivo de documentar minhas tentativas e convidar mais hackers para ajudar nesta tarefa que está dando nós na minha cabeça, mas que ao mesmo tempo está servindo para eu aprender um monte de coisas novas. Se você é um programador curioso, não tenha medo dos nomes feios que vão aparecer neste post. Eu também me assustei da primeira vez que vi isso, semana passada :-)&lt;br /&gt;&lt;br /&gt;Só pra constar aqui (e pra facilitar as buscas no google de gente procurando informações sobre esse dispositivo) ele é reconhecido pelo comando lsusb como ID 5a57:4210 Zinwell&lt;br /&gt;&lt;br /&gt;Usei um sniffer USB para Windows chamado usbsnoop. Com ele fiz alguns logs de operação do dispositivo no Windows usando o software proprietário que vem no CD de instalação. Em um desses logs eu cheguei a abrir o programa e assistir um pouco de vídeo para ter certeza de que no log constam todos os comandos necessários para inicializar o dispositivo, sintonizar um canal e exibir o vídeo recebido. No Linux, eu utilizei um script em perl chamado usbsnoop2libusb. Esse script lê um log do usbsnoop e gera automaticamente um código fonte em C utilizando a biblioteca libusb. Esse código, quando executado, repete as operações que constam no log. Obviamente fazer um driver não é tão fácil. Mas o código gerado automaticamente é um primeiro passo. É um esqueleto de código em cima do qual podemos trabalhar.&lt;br /&gt;&lt;br /&gt;Rodei o programa gerado automaticamente a partir do log que continha vídeo e não funcionou, mas o led azul do dispositivo chegou a acender. Sendo assim, resolvi olhar com mais calma para o conteúdo do log. Conversei com um amigo meu, o Lucas Villa Real (desenvolvedor da distro &lt;a href="http://www.packtpub.com/article/GoboLinux-An-Interview-with-Lucas-Villa"&gt;GoboLinux&lt;/a&gt;), que trabalhou comigo no Laboratório de TV Digital na USP. Ele me contou que eu deveria procurar informações que começassem com o byte 0x47 e que tivessem comprimento de 188 ou 204 bytes. Segundo o Lucas, essas são as características dos pacotes que compõem o transport stream da tv digital brasileira (variante do padrão ISDB-T japonês). Fiz isso visualmente e constatei que de fato haviam alguns pacotes de dados sendo enviados do dispositivo para o PC e que tinham essas características (com 188 bytes de comprimento). Fiz um script em python que filtra o log pegando só esses pacotes e salvando eles todos concatenados em um arquivo de saída binário (no log constam esses dados em ascii usando notação hexadecimal). Depois compilei e instalei o DemuxFS, que é um software livre desenvolvido pelo Lucas, que serve para auxiliar no debugging de sistemas de tv digital ISDB, especialmente no SBTVD (sistema brasileiro de tv digital).&lt;br /&gt;&lt;br /&gt;O &lt;a href="http://demuxfs.sourceforge.net/"&gt;DemuxFS&lt;/a&gt; é um filesystem virtual que exibe informações de um stream de tv digital na forma de entradas em um sistema de arquivos. Ele pode ser usado com um backend chamado filesrc ("file source") que lê o transport stream a partir de um arquivo (como o arquivo que eu gerei usando o script python) para ajudar no debugging, ou pode ser usado com um backend que leia o transport stream a partir de um dispositivo de recepção de tv digital (para ser usado na prática). A minha idéia é inicialmente escrever um backend para o demuxfs ler o transport stream a partir do IBAYO IB-200. Mas no momento isso ainda não foi feito.&lt;br /&gt;&lt;br /&gt;Usando o DemuxFS eu consegui com sucesso montar no Linux o arquivo de transport stream que foi extraído do log de operação no Windows do IB-200. Isso é um ótimo sinal!&lt;br /&gt;Observei que os pacotes que compõem o transport stream são enviados por meio de transferências isoch (isócronas). Eu nunca tinha ouvido falar disso antes, mas depois de um pouco de estudo, descobri que se trata de um dos modos de transferência disponíveis no protocolo USB. Nesse modo, a banda máxima de transmissão de dados é menor, mas há a garantia de que os dados serão enviados dentro de um determinado limite de tempo. Especialistas, corrijam-se se eu estiver falando besteira.&lt;br /&gt;&lt;br /&gt;Observei com atenção o log e inclusive modifiquei um pouco o script usbsnoop2libusb para que o programa gerado automaticamente exibisse na tela não apenas os dados retornados pelas chamadas feitas, mas também os dados que tinha sido retornados pelas respectivas chamadas originais quando executadas no Windows. Dessa forma eu pude não apenas repetir as chamadas que constam no log, mas também comparar as respostas que o dispositivo nos retorna no Linux pra ver se em algum lugar as reações do dispositivo divergem das respostas esperadas (as respostas que ele deu originalmente no Windows). No geral, as respostas foram bem parecidas com as originais. Houveram pouquíssimas respostas diferentes, mas acredito que elas não sejam um problema, pois eram mensagens onde apenas 1 ou 2 bytes eram diferentes da resposta esperada e isso até faz sentido, pois há certas informações que variam entre uma execução e outra, por exemplo o nível de qualidade do sinal de recepção de um determinado canal de tv. A cada execução, é de se esperar que o nível de qualidade seja diferente e, eventualmente esse dado será passado para o PC, o que pode caracterizar uma dessas pequenas divergências observadas.&lt;br /&gt;&lt;br /&gt;Em um determinado ponto surgiu uma divergência grande. No ponto onde deveriam começar a ser recebidos pacotes das transferências de dados isócronas contendo o transport stream, absolutamente nada está sendo retornado. Todas as transferências parecem estar dando timeout por algum motivo. É importante dizer aqui que houve ainda um outro problema. O script usbsnoop2libusb estava reclamando que o tamanho de algumas das tranferencias isoch era maior que o limite de 32kbytes. Achei isso muito estranho, pois no log constam transferências isoch de mais que 32kbytes e foi justamente dessas transferências que eu extraí corretamente o transport stream. Portanto, não é um erro no log e de fato no windows foi possível fazer transferências maiores que 32kb. Tentei aumentar esse limite para 64kb e recebi uma mensagem de erro da biblioteca libusb quando tentei executar o código gerado a partir dessa nova versão do script. Procurei na internet pelo código fonte da biblioteca e lá existe uma condição "retorne mensagem de erro caso usuário tente fazer uma transferência maior que 32kb" sem nenhuma explicação do motivo para a limitação.&lt;br /&gt;&lt;br /&gt;Pesquisei mais na internet e descobri que existe um projeto chamado libusb-1.0 que concorre com a libusb mais famosa (que tem pacote no ubuntu, por exemplo) que é a libusb-0.1. Apesar de terem o mesmo nome, aparentemente a 1.0 é uma versão reescrita da 0.1 e segundo consta no website do projeto ela tem várias melhorias quanto a  performance e a determinados bugs da 0.1. Sendo assim, resolvi experimentar a tal libusb-1.0. Baixei a versão de desenvolvimento, compilei e instalei. Depois portei o script usbsnoop2libusb para gerar código que use a biblioteca 1.0 (as chamadas de função dessa outra biblioteca são obviamente diferentes). &lt;a href="http://code.google.com/p/felipesanches/source/browse/#svn/trunk/usb-dev"&gt;Esta nova versão do script está disponível no meu svn do GoogleCode&lt;/a&gt;. Rodando a minha versão do script consegui gerar código com transferências isoch maiores que 32kb e a libusb1.0 não tem esta limitação. Entretanto, isso ainda não resolveu o problema do receptor de tv digital. Mas ouso dizer que provavelmente este é um problema que precisaria ser resolvido de qualquer forma antes de conseguir fazer o dispositivo funcionar, então considero isso como mais um passo dado rumo ao suporte do IB-200 no Linux.&lt;br /&gt;&lt;br /&gt;No momento, eu estou lutando com mais uma deficiência do script usbsnoop2libusb. Existe uma operação que consta no log e que o script ainda não implementou a respectiva conversão para código C. A operação é um USB_FUNCTION_ABORT_PIPE. Mais uma vez, fiquei naquela situação "WTF!?!?". Googlei um pouco e li a respeito do tal do "abort pipe". No protocolo USB, pipes são abstrações de canais de comunicação entre o host (driver no PC) e um endpoint (dispositivo). Por algum motivo que ainda não é muito claro pra mim, existe a possibilidade do host pedir para um determinado pipe ser abortado, ou reiniciado. Imagino que isso seja feito quando um pipe não vai mais ser usado, ou então quando um pipe será reconfigurado. Mais uma vez, peço o palpite dos especialistas :-)&lt;br /&gt;&lt;br /&gt;Enfim... uma dessas chamadas de "abort pipe" acontece bem no finalzinho do log que corresponde ao momento em que fechei o programa no Windows e isso faz todo sentido, pois ao fechar o programa, é de se esperar que o pipe usado para o fluxo de dados seja fechado. Mas a outra ocorrência desse comando acontece um pouco antes do início das transferências isoch problemáticas. Sendo assim, acho que não ter o "abort pipe" alí pode ser uma das razões para as transferências isoch não estarem funcionando pra mim no momento no Linux.&lt;br /&gt;&lt;br /&gt;A minha estratégia agora é tentar descobrir como se faz pra implementar suporte a "abort pipe" no script usbsnoop2libusb e ver se isso resolve a zica. O problema é que eu não tenho a menor idéia de como se faz para enviar um comando "abort pipe" usando a libusb. Assim que eu tiver mais avanços eu aviso. Por enquanto, aguardo comentários dos hackers de plantão :-)&lt;br /&gt;&lt;br /&gt;If you need an english translation of this technical report or additional info, please email me at felipe.sanches@gmail.com and I will gladly help people working on further developments towards support of this device under GNU/Linux.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-8894966464389923140?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/8894966464389923140/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2009/03/engenharia-reversa-ib-200-receptor-de.html#comment-form' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/8894966464389923140'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/8894966464389923140'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2009/03/engenharia-reversa-ib-200-receptor-de.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-3659211012283159474</id><published>2009-03-01T07:09:00.000-03:00</published><updated>2009-03-01T07:34:18.518-03:00</updated><title type='text'></title><content type='html'>Gostaria de dar notícias sobre o andamento do meu projeto de construir uma máquina de verdade com o tema da mesa &lt;a href="http://www.youtube.com/watch?v=uBb5ZuxgPXU"&gt;PARTY Land&lt;/a&gt; do jogo &lt;a href="http://www.abandonia.com/en/games/424/Pinball+Fantasies.html"&gt;Pinball Fantasies&lt;/a&gt; (jogo de Amiga, PC, e muitas outras plataformas).&lt;br /&gt;&lt;br /&gt;Visão geral de como está o PF (este video já foi postado anteriormente no blog):&lt;br /&gt;http://www.youtube.com/watch?v=91HUGSr1reQ&lt;br /&gt;&lt;br /&gt;Nesta semana terminei de montar um DMD para a máquina. Utilizei módulos de LED importados da China. &lt;a href="http://www.sureelectronics.net/goods.php?id=142"&gt;Cada módulo tem 24x16 leds&lt;/a&gt;. Como eu precisava de um display de 160x16, comprei 7 módulos, sendo assim, meu DMD tem 168x16. Deixei 4 colunas de LEDs sobrando de cada lado do display.&lt;br /&gt;&lt;br /&gt;Eu tinha comprado 2 desses módulos pra testar. Depois que eles chegaram e eu testei e deu tudo certo encomendei os outros 5 módulos. Entretanto, os módulos dessa segunda encomenda estão com a luminosidade bem mais forte que os 2 primeiros. Isso é bem chato, já mandei email pro fabricante reclamando, mas duvido que eles mandem outros 2 displays pra mim por causa disso. Vamos ver no que dá. Por enquanto, coloquei esses 2 displays mais fraquinhos, um de cada lado do DMD, pra pelo menos o problema ficar simétrico e ficar na região do DMD que costuma ter menos coisa acontecendo. A maioria das animações acontecem no meio do DMD.&lt;br /&gt;&lt;br /&gt;Vejam nesse vídeo o problema da luminosidade diferente nos módulos:&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/aThdS-WkqxQ&amp;hl=pt-br&amp;fs=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/aThdS-WkqxQ&amp;hl=pt-br&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;(eu deixei os módulos dispostos dessa forma levemente curvada só pra eles ficarem de pé. Depois vou fazer um suporte para aparafusá-los direitinho)&lt;br /&gt;&lt;br /&gt;Estes módulos são controlados pelo &lt;a href="http://en.wikipedia.org/wiki/Arduino"&gt;Arduino&lt;/a&gt; (um microcontrolador baseado em chip atmega) via interface &lt;a href="http://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus"&gt;SPI&lt;/a&gt;. O Arduino está conectado a um computador via USB. No computador eu rodo um emulador de MSDOS chamado &lt;a href="http://dosbox.sourceforge.net/"&gt;DosBox&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.dosbox.com"&gt;&lt;img style="float:left; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 499px; height: 102px;" src="http://www.dosbox.com/site_images/upper_logo.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Modifiquei o código do emulador (software livre) para que a cada quadro da emulação ele faça um dump do topo da memória de vídeo emulada e envie esta informação para o arduíno se comunicando pela porta USB. Eu rodo o jogo Pinball Fantasies nesse emulador e o jogo desenha o seu DMD (virtual) naquela região da memória que o emulador fica mandando pro DMD de verdade.&lt;br /&gt;&lt;br /&gt;Assim, eu consigo jogar o Pinball Fantasies no emulador e ter um DMD de verdade mostrando as animações do jogo emulado.&lt;br /&gt;&lt;br /&gt;Vocês podem ver isso em ação neste vídeo:&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/4s5p6tqikIk&amp;hl=pt-br&amp;fs=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/4s5p6tqikIk&amp;hl=pt-br&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;Esse outro é mais velho (de quando eu só tinha 2 módulos de LEDs):&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/mlUbG-nseSY&amp;hl=pt-br&amp;fs=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/mlUbG-nseSY&amp;hl=pt-br&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;Fotos do projeto em:&lt;br /&gt;http://www.flickr.com/photos/felipesanches&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-3659211012283159474?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/3659211012283159474/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2009/03/gostaria-de-dar-noticias-sobre-o.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/3659211012283159474'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/3659211012283159474'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2009/03/gostaria-de-dar-noticias-sobre-o.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-6149288681861075919</id><published>2009-01-30T10:21:00.000-02:00</published><updated>2009-01-30T10:28:47.181-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='campus party'/><category scheme='http://www.blogger.com/atom/ns#' term='nerdson'/><category scheme='http://www.blogger.com/atom/ns#' term='quadrinhos'/><category scheme='http://www.blogger.com/atom/ns#' term='karlisson'/><title type='text'></title><content type='html'>Virei personagem de quadrinhos:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_-y8FlCj2amY/SYLx9ZXJA7I/AAAAAAAAAME/sy4e6qt8VPc/s1600-h/blogpost-juca-nerdson.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 226px;" src="http://3.bp.blogspot.com/_-y8FlCj2amY/SYLx9ZXJA7I/AAAAAAAAAME/sy4e6qt8VPc/s400/blogpost-juca-nerdson.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5297062148823385010" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;tirinha completa em: &lt;a href="http://nerdson.com/blog/connection-closed/"&gt;Nerdson não vai à escola&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Valeu, Karlisson! A Campus Party foi demais!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-6149288681861075919?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/6149288681861075919/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2009/01/virei-personagem-de-quadrinhos.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/6149288681861075919'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/6149288681861075919'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2009/01/virei-personagem-de-quadrinhos.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_-y8FlCj2amY/SYLx9ZXJA7I/AAAAAAAAAME/sy4e6qt8VPc/s72-c/blogpost-juca-nerdson.png' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-8022177320612839798</id><published>2009-01-14T03:45:00.000-02:00</published><updated>2009-01-14T03:48:04.689-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='hollywood'/><category scheme='http://www.blogger.com/atom/ns#' term='&quot;the sweded bay&quot;'/><category scheme='http://www.blogger.com/atom/ns#' term='&quot;be kind rewind&quot;'/><category scheme='http://www.blogger.com/atom/ns#' term='&quot;the pirate bay&quot;'/><title type='text'></title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_-y8FlCj2amY/SW18HLk5YAI/AAAAAAAAALg/1O1EfD3iPVY/s1600-h/theswededbay.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 351px; height: 397px;" src="http://1.bp.blogspot.com/_-y8FlCj2amY/SW18HLk5YAI/AAAAAAAAALg/1O1EfD3iPVY/s400/theswededbay.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5291021600038674434" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-8022177320612839798?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/8022177320612839798/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2009/01/blog-post.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/8022177320612839798'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/8022177320612839798'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2009/01/blog-post.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_-y8FlCj2amY/SW18HLk5YAI/AAAAAAAAALg/1O1EfD3iPVY/s72-c/theswededbay.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-2809282518045369677</id><published>2009-01-10T19:25:00.000-02:00</published><updated>2009-01-10T19:45:27.142-02:00</updated><title type='text'></title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_-y8FlCj2amY/SWkW4TUNteI/AAAAAAAAALY/L3AHQ8VbYdk/s1600-h/TheCloud.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 282px;" src="http://2.bp.blogspot.com/_-y8FlCj2amY/SWkW4TUNteI/AAAAAAAAALY/L3AHQ8VbYdk/s400/TheCloud.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5289784393836901858" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Um amigo me mandou alguns emails nessa semana e depois de conversarmos um pouco sobre sistemas operacionais ele lançou o seguinte questionamento:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;a questão "windows X linux" foi só pra ilustrar.&lt;br /&gt;&lt;br /&gt;no longo prazo, acho sistemas operacionais (as we know them) nem&lt;br /&gt;existirão. Manja? Isso me parece uma briga por migalhas.&lt;br /&gt;&lt;br /&gt;Digo isso pq acredito q, no futuro, não teremos um windows para rodar&lt;br /&gt;programinhas. Não precisaremos de HD, OS, etc. Estará tudo no ar, tá&lt;br /&gt;ligado? Internet sem fio de banda gigantesca, faremos tudo por aí.&lt;br /&gt;&lt;br /&gt;Imagina:&lt;br /&gt;- quem brigava pelo mercado de PAPEL CARBONO há 40 anos atrás&lt;br /&gt;- quem tinha uma mina de sal e achava q estava dominando (depois q a&lt;br /&gt;refrigeração domiciliar ficou acessível à todos, a demanda&lt;br /&gt;praticamente sumiu)&lt;br /&gt;&lt;br /&gt;Portanto, o q tenho a dizer talvez seja: existe a possibilidade de vcs&lt;br /&gt;estarem se preocupando com MIGALHA.&lt;br /&gt;&lt;br /&gt;Já pensou nessa possibilidade?&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;E aqui está a minha resposta (achei interessante postar aqui no blog para mais pessoas também refletirem sobre esta questão):&lt;br /&gt;&lt;br /&gt;sim, já. É a tendência do "cloud computing".&lt;br /&gt;&lt;br /&gt;Sinceramente, acho que grande parte disso é baboseira. Estratégia de marketing mesmo. Uma pequena parte está correta. Por exemplo, o que temos hoje como gmail, flickr, youtube, etc. Existem serviços que realmente funcionam bem quando executados "na nuvem".&lt;br /&gt;Mas abrir mão totalmente de uma plataforma computacional local ainda é inviável. E deve continuar por muito tempo sendo assim pois há tarefas que são ideais para serem executadas localmente mesmo, por exemplo processamento de gráficos 3d. Há ainda impedimentos tecnológicos nesses casos mesmo que esses possam obviamente ser superados por &lt;a href="http://games.slashdot.org/article.pl?sid=09/01/10/011250"&gt;novas tecnologias&lt;/a&gt; no futuro.&lt;br /&gt;&lt;br /&gt;Além disso, eu tenho muito medo dessa tendência por que ela põe em risco justamente essa plataforma de incentivo à criatividade que é o computador pessoal hoje em dia. O computador pessoal é uma máquina maravilhosa justamente por ser uma máquina genérica que permite que se faça absolutamente qualquer coisa que um programador quiser. É como se fosse um mini-laboratório dentro da casa de cada pessoa. Aquelas pessoas que eventualmente se interessarem por computação têm todo o potencial e recursos ali já disponíveis com absolutamente nenhum custo monetário adicional. O único custo para criar é o próprio custo intelectual de se engajar na atividade criativa. É como se vc tivesse um ateliér de arte embutido em cada moldura de quadro do mundo. Todas as pessoas que têm quadros têm aquele potencial disponível. Algumas pessoas vão querer só apreciar a pintura que já está no quadro (análogo aos usuários que não têm interesse em desenvolver programas de computador), mas outras pessoas podem eventualmente se interessar em fazer suas próprias pinturas e, para estes, não haveria barreira de entrada pois todo o ateliér estaria ali embutido por padrão à espera de um surto de criatividade.&lt;br /&gt;&lt;br /&gt;É isso que temos em casa hoje em dia. Máquinas versáteis esperando por pessoas inovadoras que queiram produzir soluções computacionais para os mais diversos problemas. E há evidências de que pessoas de fato fazem isso motivadas pelos mais diversos aspectos e freqüentemente se agrupam para participar em atividades criativas coletivas (o que é hoje, por exemplo, o software livre). O cloud computing transforma o PC genérico em um terminal burro. Joga toda a capacidade de processamento para a "nuvem" e leva embora o "ateliér". Num ambiente 100% cloud computing, o custo de se inovar será mais alto, pois os meios de produção tecnológica estarão majoritariamente nas mãos apenas dos provedores de serviço. Computadores genéricos deixaram de estar presentes nos lares pois sua produção industrial será substituida pela produção em larga escala dos terminais burros. O poder computacional dedicado à criatividade caseira estagnará na geração atual de computadores que gradativamente se extinguirá devido às panes naturais do envelhecimento dos equipamentos.&lt;br /&gt;&lt;br /&gt;O quanto isso irá afetar a produção criativa é difícil de se dizer, mas a certeza é de que afetará negativamente, pois as pessoas não terão mais (por padrão) autonomia de criar suas próprias soluções computacionais. Isso eu não quero.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-2809282518045369677?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/2809282518045369677/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2009/01/um-amigo-me-mandou-alguns-emails-nessa.html#comment-form' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/2809282518045369677'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/2809282518045369677'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2009/01/um-amigo-me-mandou-alguns-emails-nessa.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_-y8FlCj2amY/SWkW4TUNteI/AAAAAAAAALY/L3AHQ8VbYdk/s72-c/TheCloud.png' height='72' width='72'/><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-400846362845664445</id><published>2009-01-08T15:13:00.000-02:00</published><updated>2009-01-08T15:14:47.116-02:00</updated><title type='text'></title><content type='html'>Vídeo mostrando como anda o meu projeto da máquina de pinball:&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/91HUGSr1reQ&amp;hl=pt-br&amp;fs=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/91HUGSr1reQ&amp;hl=pt-br&amp;fs=1" 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/28814329-400846362845664445?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/400846362845664445/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2009/01/vdeo-mostrando-como-anda-o-meu-projeto.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/400846362845664445'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/400846362845664445'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2009/01/vdeo-mostrando-como-anda-o-meu-projeto.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-7521275163258771428</id><published>2009-01-08T13:58:00.000-02:00</published><updated>2009-01-08T14:14:44.990-02:00</updated><title type='text'></title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_-y8FlCj2amY/SWYmThWsj9I/AAAAAAAAALQ/IC58kHqn7Ig/s1600-h/jamendo.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 227px; height: 54px;" src="http://3.bp.blogspot.com/_-y8FlCj2amY/SWYmThWsj9I/AAAAAAAAALQ/IC58kHqn7Ig/s400/jamendo.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5288956929206161362" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Hoje parei pra ouvir um pouco de música no &lt;a href="http://www.jamendo.com/"&gt;Jamendo&lt;/a&gt;. Trata-se de um site onde artistas podem hospedar seus álbuns desde que estes estejam licenciados sob alguma das licenças &lt;a href="http://creativecommons.org/"&gt;Creative Commons&lt;/a&gt;. Algum tempo atrás eu convenci meu amigo Guilherme Padovani, vocalista da banda &lt;a href="http://www.jamendo.com/en/artist/motocontinuo"&gt;Motocontínuo&lt;/a&gt;, a adotar uma licença &lt;a href="http://creativecommons.org/licenses/by-sa/3.0/"&gt;CC by-sa&lt;/a&gt; nas músicas da banda e depois ajudei a inscrever a banda no site.&lt;br /&gt;&lt;br /&gt;Um questionamento que nos fizemos na época foi que se estávamos, por meio da licença, permitindo a criação de obras derivadas, então deveríamos fornecer os meios para tal. Ou seja, deveríamos distribuir não apenas o CD pronto, mas também as faixas de estúdio, o "código fonte" do álbum. Sem isso, ficaria muito difícil fazer alterações nas músicas. A única alternativa que restaria para quem não tivesse acesso às faixas de estudio seria regravar a música em estúdio novamente já que tentar separar os canais seria bastante difícil e provavelmente não ficaria com boa qualidade.&lt;br /&gt;&lt;br /&gt;Sendo assim, o Guilherme me passou 7 CDs onde estavam os arquivos de áudio das gravações de estúdio separados em canais para cada um dos instrumentos. Como o conteúdo era pesado, decidimos distribuir por &lt;a href="http://en.wikipedia.org/wiki/Peer-to-peer"&gt;P2P&lt;/a&gt;. Criamos arquivos ISO dos CDs e fizemos upload no PirateBay. Entretanto, como não tem muita gente baixando este conteúdo, o torrent provavelmente está sem seeders nesse exato momento. Além disso, tem muita gente que não sabe baixar torrents. A tentativa de usar P2P foi fracassada. Imagino que o ideal seria um sistema que exigísse o mínimo possível de conhecimento técnico de seus usuários. Eu realmente espero que pessoas interessadas em música acessem este conteúdo. Não gostaria de limitar o acesso só por que eventualmente as pessoas não sabem lidar com arquivos torrent.&lt;br /&gt;&lt;br /&gt;Hoje fiquei pensando bastante sobre esse problema. Enquanto no software livre ocorrem de fato modificações, aprimoramentos, etc. na "música livre", essa prática parece ser quase inexistente (corrijam-me com contra-exemplos caso eu esteja errado). Quais seriam os motivos? Será que as pessoas simplesmente preferem criar música sempre do zero? Concordo que é totalmente subjetivo falar sobre aprimoramentos de uma obra artística. Na área técnica isso é certamente uma questão mais objetiva do que na música, por exemplo.&lt;br /&gt;&lt;br /&gt;Derivação incremental propriamente dita - modificações em detalhes como substituir uma linha de baixo deixando todo o resto intacto - eu acho que não teria muito valor. Talvez o maior valor da música livre esteja no acervo de recursos disponíveis para remixagem. Sendo assim, artistas criariam suas próprias obras originais com gravações de novas faixas em estúdio e as complementariam com samples retirados de outras obras livres disponíveis na rede. Ainda assim, para que isso seja produtivo continua sendo necessário publicar as faixas de estúdio na rede para enriquecer este acervo comum.&lt;br /&gt;&lt;br /&gt;Vejo muita gente falando a favor do uso de licenças livres, mas não vejo muitas pessoas com as mesmas preocupações que estou expondo neste post. Também ainda não vejo surgirem soluções tecnológicas para viabilizar essas idéias. Seria interessante (e útil) algo como uma &lt;a href="http://en.wikipedia.org/wiki/SourceForge"&gt;SourceForge&lt;/a&gt; para música. Ou talvez algo como o &lt;a href="http://www.openclipart.org/"&gt;Open Clipart Library&lt;/a&gt;. Como relatado anteriormente, minhas tentativas de por isso em prática junto com a banda Motocontínuo não tiveram sucesso. Tentei até entrar em contato com o pessoal do Jamendo propondo que o serviço deles contasse com uma área para upload das faixas de estúdio, mas eles também não providenciaram ainda uma solução para o problema já que aparentemente não há demanda suficiente.&lt;br /&gt;&lt;br /&gt;Na minha concepção, um sistema ideal além de fornecer para download as faixas de estúdio de um determinado álbum, também deveria ser capaz de indexar este conteúdo e permitir que os visitantes visualizassem o acervo de áudio classificado por tipos de instrumento, estilo musical, etc. Obviamente essa classificação poderia ser feita pelos próprios artistas no momento em que fazem o upload. Entretanto, aposto todas as minhas fichas que muito pouca gente se daria o trabalho de inserir estes metadados. Portanto, seria necessário criar tecnologia para inferir esses metadados automaticamente. O que falta pra concretizar essa tecnologia? Muita matemática! A solução não é trivial.&lt;br /&gt;&lt;br /&gt;No final das contas, isso parece ser mais uma tarefa para o Google: &lt;span style="font-style:italic;"&gt;"A missão do Google é organizar as informações do mundo todo e torná-las acessíveis e úteis em caráter universal."&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.ricbit.com/"&gt;RicBit&lt;/a&gt; talvez?!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-7521275163258771428?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/7521275163258771428/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2009/01/hoje-parei-pra-ouvir-um-pouco-de-msica.html#comment-form' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/7521275163258771428'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/7521275163258771428'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2009/01/hoje-parei-pra-ouvir-um-pouco-de-msica.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_-y8FlCj2amY/SWYmThWsj9I/AAAAAAAAALQ/IC58kHqn7Ig/s72-c/jamendo.png' height='72' width='72'/><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-8137090672698659703</id><published>2009-01-07T19:24:00.000-02:00</published><updated>2009-01-12T17:15:38.395-02:00</updated><title type='text'></title><content type='html'>Uns 10 anos atrás um minigame meu quebrou e na época eu abri pra ver como era por dentro. Acabei largando ele aberto por que na época eu me frustrei com o "chip bolha". Tudo o que dá pra ver ao abrir um minigame daqueles são os contatos dos botões, o cristal líquido e uma bolha de plastico derretido. Debaixo da bolha fica um chip minúsculo. Aquilo foi muito chato por que não satisfez minha curiosidade.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bighead.poli.usp.br/%7Ejuca/code/svg/minigame/minigame2.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 600px; height: 450px;" src="http://bighead.poli.usp.br/%7Ejuca/code/svg/minigame/minigame2.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Recentemente, brincando com o Inkscape e curtindo minha nostalgia, eu e a Bani criamos um minigame virtual feito em SVG e programado em javascript. Se você usa um browser que implementa o padrão SVG (padrão aberto para gráficos vetoriais na web), então você poderá jogar o nosso minigame &lt;a href="http://bighead.poli.usp.br/%7Ejuca/code/svg/minigame/minigame.svg"&gt;aqui&lt;/a&gt;. Recomendo usar o Firefox. Não funciona no Internet Explorer; ele é um dos únicos browsers hoje em dia que ainda está em 0% de suporte a SVG atrasando a evolução da web.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bighead.poli.usp.br/%7Ejuca/code/svg/minigame/tux-borboleta.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 300px; height: 250px;" src="http://bighead.poli.usp.br/%7Ejuca/code/svg/minigame/tux-borboleta.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;O jogo é inspirado numa charge famosa do Tux (mascote do kernel Linux) se preparando para bater com um mata-moscas na borboleta do MSN (da Miscrosoft). O jogo segue um formato tradicional de muitos dos jogos antigos de minigame: basicamente vc tem que bater em todas as borboletas conforme elas forem descendo na tela.&lt;br /&gt;&lt;br /&gt;Fazer o jogo foi bastante divertido e foi relativamente simples. Desenhamos tudo no Inkscape. Depois selecionamos cada um dos ícones do display de cristal líquido e atribuímos nomes por meio do atributo id (menu de contexto =&gt; Propriedades do Objeto). Depois escrevemos o código em javascript usando as funções de manipulação do DOM (Document Object Model) para controlar a visibilidade dos ícones. Assim o software pode fazer os ícones do display acenderem ou apagarem conforme mandar a lógica do jogo.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bighead.poli.usp.br/%7Ejuca/code/svg/minigame/minigame.svg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 373px; height: 326px;" src="http://bighead.poli.usp.br/%7Ejuca/code/svg/minigame/mg-screenshot.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;A única edição manual (em editor de texto) do arquivo SVG foi para adicionar a tag &amp;lt;script xlink:href="minigame.js" /&amp;gt; e o atributo onload="on_load(event);" na tag svg (análoga à tag body do HTML). Com isso, pudemos escrever todo o código javascript em um arquivo .js externo. Todo o resto da edição do SVG foi feita visualmente por meio do Inkscape.&lt;br /&gt;&lt;br /&gt;Já hoje, curtindo as férias da faculdade, resolvi voltar a mexer no minigame quebrado. Peguei o cristal líquido do minigame e tirei algumas fotos. Usei uma fonte de tensão pra acender manualmente os ícones do display. Na verdade, os ícones não acendem individualmente. O display é multiplexado e, portanto, as ligações formam uma matriz de ícones. A cada vez que eu aplico tensão em algum dos conectores do display, um certo grupo de ícones se acende. Tirei várias fotos e comecei a vetorizá-las. A idéia é fazer uma versão emulada em SVG+javascript do minigame do Megaman.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bighead.poli.usp.br/%7Ejuca/code/svg/minigame/megaman3.svg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 357px; height: 333px;" src="http://bighead.poli.usp.br/%7Ejuca/code/svg/minigame/megaman-incompleto.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Apesar do processo de vetorização ser um pouco cansativo, o maior problema vai ser programar o jogo. Extrair o código do jogo diretamente do minigame não parece ser possível (de se fazer em casa) pois todo o código fica dentro do chip bolha. Portanto vou ter que reprogramar. Além disso, outra dificuldade é eu não lembrar mais como funcionava o jogo. Talvez eu ainda consiga consertar o minigame e assim conseguir jogá-lo, pra relembrar a lógica. Eu acho que o único problema desse minigame é que os fios que são ligados às baterias se quebraram e os que ligam o speaker também. Depois que eu soldar esses fios, é possível que o minigame ainda funcione.&lt;br /&gt;&lt;br /&gt;Ahhh...! Outro problema para a emulação são os sons do jogo... mas isso fica pra depois.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-8137090672698659703?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/8137090672698659703/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2009/01/uns-10-anos-atrs-um-minigame-meu.html#comment-form' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/8137090672698659703'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/8137090672698659703'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2009/01/uns-10-anos-atrs-um-minigame-meu.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-461139336219281196</id><published>2008-12-20T04:29:00.000-02:00</published><updated>2008-12-20T04:53:28.519-02:00</updated><title type='text'></title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://farm1.static.flickr.com/138/330045766_4a321e5f8a.jpg?v=0"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 217px; height: 161px;" src="http://farm1.static.flickr.com/138/330045766_4a321e5f8a.jpg?v=0" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Estou ainda LENTAMENTE montando aquela &lt;a href="http://www.flickr.com/photos/felipesanches"&gt;máquina de pinball caseira&lt;/a&gt;: uma réplica da PARTYland do jogo Pinball Fantasies.&lt;br /&gt;&lt;br /&gt;Semana passada encomendei 2 displays de 24x16 LEDs cada um e estou escrevendo &lt;a href="http://code.google.com/p/how-to-build-a-pinball/source/browse/#svn/trunk/Led_matrix"&gt;software para controlá-lo usando o Arduino&lt;/a&gt;. A comunidade já ajudou bastante, e grande parte do código &lt;a href="http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1225239439/0"&gt;não fui eu que escrevi&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;O display que eu preciso é de 160x16. Portanto irei em breve comprar mais 5 desses displays de 24x16 e colocá-los lado a lado.&lt;br /&gt;&lt;br /&gt;7*24 = 168 que é apenas 8 colunas a mais do que os 160x16 que eu preciso (veja no screenshot do jogo).&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.abandonia.com/files/games/424/Pinball%20Fantasies_1.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://www.abandonia.com/files/games/424/Pinball%20Fantasies_1.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Os displays eu comprei &lt;a href="http://www.sureelectronics.net/goods.php?id=142"&gt;direto do fabricante chinês&lt;/a&gt; por US$15,75 cada um. O datasheet deles está &lt;a href="http://www.sureelectronics.net/pdfs/DE-DP016.pdf"&gt;aqui&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Preciso de ajuda para dimensionar a fonte externa que vou usar pra ligar todos esses displays ao mesmo tempo. Seria bom fazer uma fonte inteira para todo o pinball, mas eu ainda não tenho muita idéia de quanto que o pinball todo vai puxar da fonte. Pedi conselhos quanto a isso para o PJWerneck, do grupo de usuários de Python. Mas se qualquer outra pessoa estiver a fim de dar conselhos, toda ajuda é bem-vinda!&lt;br /&gt;&lt;br /&gt;&lt;object height="344" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/K9DI4feRN-M&amp;amp;hl=pt-br&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/K9DI4feRN-M&amp;amp;hl=pt-br&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" height="344" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Além disso, se alguém aí da turma do arduino se interessar, podemos encomendar alguns desses displays pra quem quiser, assim reduzimos os custos de frete e pegamos descontos oferecidos pelo site. Como eu já vou comprar 5 unidades e eles oferecem 3% de desconto pra compras de 5 a 9 unidades e 5% pra 10 ou mais, qualquer unidade extra já tem desconto automaticamente se for comprado junto.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-461139336219281196?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/461139336219281196/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2008/12/estou-ainda-lentamente-montando-aquela.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/461139336219281196'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/461139336219281196'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2008/12/estou-ainda-lentamente-montando-aquela.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-4858213268782753204</id><published>2007-10-03T13:56:00.000-03:00</published><updated>2007-10-03T13:58:58.141-03:00</updated><title type='text'></title><content type='html'>This tutorial teaches you how to install libxml2dom python module on windows machines.&lt;br /&gt;&lt;br /&gt;1) Install the latest python package available at python.org&lt;br /&gt;I am using http://python.org/ftp/python/2.5.1/python-2.5.1.msi&lt;br /&gt;&lt;br /&gt;2) Install the libxml2 python package available at:&lt;br /&gt;http://users.skynet.be/sbi/libxml-python/libxml2-python-2.6.27.win32-py2.5.exe&lt;br /&gt;&lt;br /&gt;3) Download the libxml2dom python package available at:&lt;br /&gt;http://www.boddie.org.uk/python/libxml2dom.html&lt;br /&gt;&lt;br /&gt;I am using this version: http://www.boddie.org.uk/python/downloads/libxml2dom-0.4.4.tar.gz&lt;br /&gt;&lt;br /&gt;4) You will need a software capable of unpacking .tar.gz files You can use WinRar to unpack it.&lt;br /&gt;&lt;br /&gt;5) After unpacking the tar.gz package on your Desktop, open the DOS command prompt (Start-&gt;Run "cmd")&lt;br /&gt;&lt;br /&gt;6) Then type the following commands on the command prompt:&lt;br /&gt;cd %USERPROFILE%&lt;br /&gt;cd Desktop\libxml2dom-0.4.4&lt;br /&gt;setup.py install&lt;br /&gt;exit&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-4858213268782753204?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/4858213268782753204/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2007/10/this-tutorial-teaches-you-how-to.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/4858213268782753204'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/4858213268782753204'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2007/10/this-tutorial-teaches-you-how-to.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-7054919520455392087</id><published>2007-05-09T15:06:00.000-03:00</published><updated>2007-05-09T15:12:55.967-03:00</updated><title type='text'></title><content type='html'>&lt;pre id="line1"&gt;&lt;a href="http://bighead.poli.usp.br/juca/gravit.html"&gt;http://bighead.poli.usp.br/juca/gravit.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Javascript gravitation code v.1.1 (May 9th, 2007)&lt;br /&gt;(c)2007 Felipe Sanches &amp;lt;felipe.sanches@poli.usp.br&gt;&lt;br /&gt;&lt;br /&gt;This program simulates gravitational effect.&lt;br /&gt;&lt;br /&gt;This program is licensed under the GNU General Public License&lt;br /&gt; version 2 or later.&lt;br /&gt;&lt;br /&gt;ChangeLog:&lt;br /&gt;v1.1 (May 9th, 2007)&lt;br /&gt;* Added tail effect&lt;br /&gt;&lt;br /&gt;v1.0 (May 3rd, 2007 - First release)&lt;br /&gt;* initial code&lt;br /&gt;** simulation core&lt;br /&gt;** basic rendering using &amp;lt;div&gt;s&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-7054919520455392087?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/7054919520455392087/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2007/05/httpbighead.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/7054919520455392087'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/7054919520455392087'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2007/05/httpbighead.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-7959444310944190545</id><published>2007-04-09T01:44:00.000-03:00</published><updated>2007-04-09T02:06:24.133-03:00</updated><title type='text'></title><content type='html'>&lt;div style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;"&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_-y8FlCj2amY/RhnIsebm4FI/AAAAAAAAAAM/92tmf81Y6BQ/s1600-h/1.200.jpg"&gt;&lt;img style="cursor: pointer;" src="http://bp2.blogger.com/_-y8FlCj2amY/RhnIsebm4FI/AAAAAAAAAAM/92tmf81Y6BQ/s400/1.200.jpg" alt="" id="BLOGGER_PHOTO_ID_5051289123481378898" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a rel="rdfs:seeAlso" href="http://www.jamendo.com/album/4861/"&gt;&lt;img style="border: 0pt none ;" alt="Jamendo : Free music" src="http://img.jamendo.com/ext/jamendo1.png" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_-y8FlCj2amY/RhnI3ebm4GI/AAAAAAAAAAU/HEOycvwNDCE/s1600-h/somerights20.png"&gt;&lt;img src="http://bp2.blogger.com/_-y8FlCj2amY/RhnI3ebm4GI/AAAAAAAAAAU/HEOycvwNDCE/s400/somerights20.png" alt="" id="BLOGGER_PHOTO_ID_5051289312459939938" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Eu sou um dos administradores da banda Motocontínuo, do Guilherme Padovani (Guinoupe), no site &lt;span style="font-weight: bold;"&gt;Jamendo.com&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Como o site da banda (www.motocontinuo.net) ainda não está pronto, estou colocando aqui no meu blog o link de validação requisitado pelo jamendo:&lt;br /&gt;&lt;br /&gt;Eu, Felipe Sanches, certifico que o álbum "&lt;span style="font-weight: bold;"&gt;A fantástica viagem trágica&lt;/span&gt;" da banda &lt;span style="font-weight: bold;"&gt;Motocontínuo&lt;/span&gt; (cujos direitos autorais pertencem a Guilerme Padovani e demais membros da banda) está, de fato, licenciado sob a &lt;span style="font-weight: bold;"&gt;Creative Commons by-sa 2.5&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-7959444310944190545?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/7959444310944190545/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2007/04/eu-sou-um-dos-administradores-da-banda.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/7959444310944190545'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/7959444310944190545'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2007/04/eu-sou-um-dos-administradores-da-banda.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp2.blogger.com/_-y8FlCj2amY/RhnIsebm4FI/AAAAAAAAAAM/92tmf81Y6BQ/s72-c/1.200.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-8181007457521567488</id><published>2007-02-24T18:54:00.000-02:00</published><updated>2007-02-24T18:57:02.092-02:00</updated><title type='text'></title><content type='html'>Esta é a seleção de músicas livres que estou fazendo. Vou chamá-la de "Som na Rede volume 1". Ainda não está pronta. Mas quem quiser já pode ir ouvindo o que eu já selecionei. Estou procurando músicas nos estilos acidjazz, groove ou funk.  &lt;br /&gt;&lt;br /&gt;&lt;div align="center"&gt;&lt;object width="350" height="170" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"  codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" align="middle"&gt; &lt;param name="allowScriptAccess" value="always" /&gt;&lt;param name="wmode" value="transparent" /&gt; &lt;param name="movie" value="http://www.jamendo.com/get/track/id/playlist/none/player/9428/?autoload=true&amp;amp;info_button_target=_top&amp;amp;info_button_text=INFO+ON+JAMENDO&amp;amp;item_o=playlist_track_no_asc&amp;amp;n=all&amp;amp;player_height=170&amp;amp;player_title=JAMENDO&amp;amp;player_type=xspfplayer_extended&amp;amp;player_width=350&amp;amp;playlist_url=http%3A%2F%2Fapi.jamendo.com%2Fget%2Ftrack%2Fid%2Fplaylist%2Faudio%2Fxspf%2F9428%2F%3Faue%3Dmp31%26item_o%3Dplaylist_track_no_asc%26n%3Dall&amp;amp;repeat_playlist=true" /&gt; &lt;param name="quality" value="high" /&gt; &lt;param name="bgcolor" value="#FFFFFF" /&gt; &lt;embed src="http://www.jamendo.com/get/track/id/playlist/none/player/9428/?autoload=true&amp;amp;info_button_target=_top&amp;amp;info_button_text=INFO+ON+JAMENDO&amp;amp;item_o=playlist_track_no_asc&amp;amp;n=all&amp;amp;player_height=170&amp;amp;player_title=JAMENDO&amp;amp;player_type=xspfplayer_extended&amp;amp;player_width=350&amp;amp;playlist_url=http%3A%2F%2Fapi.jamendo.com%2Fget%2Ftrack%2Fid%2Fplaylist%2Faudio%2Fxspf%2F9428%2F%3Faue%3Dmp31%26item_o%3Dplaylist_track_no_asc%26n%3Dall&amp;amp;repeat_playlist=true" base="http://www.jamendo.com/get/track/id/playlist/none/player/9428/"  quality="high" wmode="transparent" bgcolor="#FFFFFF" width="350" height="170" align="middle" allowScriptAccess="always" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"&gt;&amp;nbsp;&lt;/embed&gt;&amp;nbsp;&lt;/object&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-8181007457521567488?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/8181007457521567488/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2007/02/esta-seleo-de-msicas-livres-que-estou.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/8181007457521567488'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/8181007457521567488'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2007/02/esta-seleo-de-msicas-livres-que-estou.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-5595409074739962628</id><published>2007-02-15T14:13:00.000-02:00</published><updated>2007-02-15T14:38:27.949-02:00</updated><title type='text'></title><content type='html'>Hoje eu traduzi pro português um trecho de uma palestra do Stallman que achei bastante interessante. Podemos refletir sobre o "Computador para Todos" quando ele fala da adoção de software livre sem a devida educação sobre a importancia das liberdades que inspiram o movimento.&lt;br /&gt;&lt;br /&gt;Segue a tradução:&lt;br /&gt;----------------------------&lt;br /&gt;Para que as pessoas defendam sua liberdade, as pessoas precisam valorizar sua liberdade, precisam apreciá-la. E para que as pesoas apreciem e valorizem sua liberdade, primeiro elas precisam saber que liberdade é esta. Em outras áreas, a maioria das pessoas já ouviu falar de direitos humanos. Isso não significa que defender os direitos humanos seja uma tarefa fácil, mas pelo menos nós não precisamos sair por aí explicando para as pessoas o conceito. Nós não precisamos iniciar explicando pras pessoas o que significa liberdade de imprensa como se elas nunca antes tivessem ouvido falar a respeito. O conceito de liberdade de imprensa teve séculos para se desenvolver e espalhar-se pelo mundo.&lt;br /&gt;&lt;br /&gt;Mas a computação é algo novo. Faz apenas cerca de dez anos que um graende número de pessoas nos países mais ricos vêm usando computadores. E faz apenas algumas poucas décadas que existem computadores. Portanto, as idéias sobre quais direitos humanos devem acompanhar o uso de um software estão apenas começando a ser desenvolvidas. O movimento do Software Livre diz que há quatro direitos humanos essenciais para um usuário de software. [[ Nota do tradutor: mais informações sobre isso em &lt;a href="http://www.gnu.org/philosophy/free-sw.html"&gt;http://www.gnu.org/philosophy/free-sw.html&lt;/a&gt; ]] Esta é uma idéia nova. A maioria das pessoas que usam software nunca pensaram sobre a questão de quais direitos humanos um usuário e software deve ter. Eles simplesmente aceitam o que lhes foi dito, ou seja, os direitos humanos atribuídos ao usuário são: nenhum de fato.&lt;br /&gt;É isto que os desenvolvedores de software proprietário lhes dão. É isso que eles vêem quase todo mundo aceitando. É isso que eles fizeram. E eles nunca ouviram ninguém dizer que há outra idéia. Portanto nós precisamos de fato começar pelo passo número um, que é dizer às pessoas o que significa ter liberdade ao utilizar um software. E então podemos ter a esperança de que aquelas pessoas irão valorizar estas liberdades o suficiente para defendê-las de modo que elas possam continuar sendo livres. O futuro de nossa comunidade depende do que nós valorizamos, mais do que qualquer outra coisa.&lt;br /&gt;E é por isso que é tão importante hoje em dia ensinar as pessoas sobre os ideais do movimento do Software Livre. Não é suficiente apenas ensinar as pessoas a usar Software Livre. É claro que espero que as pessoas utilizem Software Livre, por que é uma vergonha se elas estiverem utilizando softwares não-livres que subjugam o usuário. Ma apenas utilizar Software Livre não é suficiente se queremos ter liberdade que dure muitos anos. Se amanhã nós dessemos liberdade a todas as pessoas que utilizam computadores, mas elas não soubessem o significado dessa liberdade, dentro de cinco anos muitas delas teriam perdido esta liberdade por que alguém teria dito a elas " Eu tenho um programa bacana que irá tornar as coisas mais fáceis, você quer? É claro que você vai ter que me prometer que não vai compartilhá-lo com ninguém, e eu não o deixarei ver o que há dentro dele, mas é um programa bacana, você não o quer? "&lt;br /&gt;Uma pessoa que não tenha aprendido a pensar que há algo errado ali poderia responder sim. E isto significa que sua liberdade teria parcialmente se perdido. Portanto, não é suficiente dar liberdade às pessoas. Nós precisamos ensinar as pessoas a reconhecê-la como liberdade de modo a aprenderem a valorizá-la e então defendê-la e não deixá-la fugir. É disso que precisamos se queremos ter liberdade não apenas amanhã mas permanentemente.&lt;br /&gt;&lt;br /&gt;Richard Stallman, 9 de março de 2006&lt;br /&gt;&lt;br /&gt;Richard Stallman iniciou o projeto GNU em 1983 e, com ele, o movimento do Software Livre.&lt;br /&gt; &lt;br /&gt;Fonte (com o texto e gravação em áudio da palestra completa em inglês): http://www.fsfeurope.org/documents/rms-fs-2006-03-09.en.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-5595409074739962628?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/5595409074739962628/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2007/02/hoje-eu-traduzi-pro-portugus-aquele.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/5595409074739962628'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/5595409074739962628'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2007/02/hoje-eu-traduzi-pro-portugus-aquele.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-3745128419336710140</id><published>2007-02-01T14:46:00.000-02:00</published><updated>2007-02-01T14:56:42.930-02:00</updated><title type='text'></title><content type='html'>Concordo que é, no mínimo, exagerada a posição sobre os danos ao meio ambiente que podem ser causados pelo Windows Vista. Mas quero ressaltar o que acredito ser o mais importante &lt;a href="http://yro.slashdot.org/article.pl?sid=07/01/31/034237"&gt;desta notícia da slashdot&lt;/a&gt; : o motivo. Pra que atualizar o hardware? Para aguentar a nova interface gráfica do Windows Vista? Também...&lt;br /&gt;&lt;br /&gt; Mas mais importante é notar aquela sigla que foi utilizada (DRM) que talvez nem todos conheçam. Significa "Digital Rights Management". Resumindo, são técnicas de proteção de conteúdo multimídia digital. O Vista virá com isso para melhor se adequar à crescente pressão da industria de entretenimento que vê na internet o possível colapso de seu império.&lt;br /&gt;&lt;br /&gt;Outro dia eu comprei um CD que usava uma dessas técnicas. O DRM simplesmente não permite que vc copie as músicas do CD para um mp3player portátil. Ele RESTRINGE os usos que vc pode fazer com a música que VOCÊ COMPROU! Sob o pretexto de combate à pirataria, eles cada vez mais limitam os usos legítimos que vc poderia fazer com sua mídia adquirida legalmente. No caso do CD que eu comprei, o DRM deles foi feito para Windows, e como no meu PC roda linux, o DRM simplesmente não funcionou. Mesmo no winXP seria possível se livrar do DRM apenas desabilitando o auto-run do CD.  Entretanto, a nova versão do  windows (o Vista) virá com novos mecanismos que, através de criptografia, torna virtualmente impossível para um usuário comum driblar estes bloqueios.  E por se tratar de um sistema de código fechado, eles conseguem garantir que o código de proteção não será removível, efetivando assim seu domínio sobre as atividades dos usuários.&lt;br /&gt;&lt;br /&gt;Obviamente, hackers conseguirão burlar estes mecanismos, mas não é isso que devemos esperar. Não devemos passivamente aguardas a "vitória" silenciosa do "dá-se um jeito". Pois não seria uma vitória. Seria a aceitação da submissão aos poderes destes grandões.  Devemos nos engajar a todo custo em barrar estes abusos. As pessoas precisam se manifestar e tornar claro tanto para estas megacorporações quanto para os governos que as regulam (ou que deveriam regulá-las) que estamos indignados e não aceitamos estes insultos.&lt;br /&gt;&lt;br /&gt;(aliás... só de passagem, em 1998 foi aprovado nos EUA o "DMCA = Digital Millenium Copyright Act" que torna ilegal a utilização, o desenvolvimento e a distribuição de tecnologias que permitam burlar mecanismos de DRM. Ou seja, em muitos casos, governos estão dando suporte a esse império)&lt;br /&gt;&lt;br /&gt;Como vc poderá ler nos 2 artigos abaixo (caso se interesse), muito do hardware  extra necessário no  Windows Vista não será  útil para melhorar desempenho, ou prover novas funcionalidades.  Será, na verdade, útil para garantir a continuidade do império. Para engordar mais os bolsos de Hollywood às custas de... "usuários inocentes"?&lt;br /&gt;&lt;br /&gt;Não é à toa que a campanha anti-DRM da FreeSoftwareFoundation chama-se "Defective by Design", em bom português, "Defeituoso por Projeto"  ( http://www.defectivebydesign.org )&lt;br /&gt;&lt;br /&gt;Windows Vista precisa de MAIS hardware pra ter MENOS funcionalidade!&lt;br /&gt;&lt;br /&gt;vejam os artigos:&lt;br /&gt;&lt;br /&gt;* http://www.theinquirer.net/default.aspx?article=25124&lt;br /&gt;* http://www.meiobit.com/industria/restricoes_usando_drm_no_windows_vista&lt;br /&gt;&lt;br /&gt;Juca&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-3745128419336710140?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/3745128419336710140/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2007/02/concordo-que-no-mnimo-exagerada-posio.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/3745128419336710140'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/3745128419336710140'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2007/02/concordo-que-no-mnimo-exagerada-posio.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-2570262911686466781</id><published>2007-02-01T14:44:00.000-02:00</published><updated>2007-02-01T14:45:06.509-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='yochai benkler urnas eletrônicas'/><title type='text'></title><content type='html'>A análise a seguir exemplifica o aprimoramento da participatividade e do poder de ação política propiciado pela Internet como ferramenta de interação na esfera pública em rede em contraposição às características da esfera pública mediada pela mídia de massa comercial.&lt;br /&gt;&lt;br /&gt;A história escolhida para tal trata da polêmica em torno do sistema de votação eletrônica produzido pela Diebold, uma das empresas fabricantes de urnas eletrônicas certificadas para as eleições de 2004 nos Estados Unidos. Apesar de ser um debate a respeito de votação eletrônica, não é isto que o torna pertinente à democracia. O debate poderia tratar de qualquer prática corporativa ou de governo que fosse difícil de investigar e analisar, tivesse graves implicações e que fosse amplamente ignorada pela grande mídia. O fato relevante aqui é que a esfera pública em rede se mobilizou e conseguiu, com sucesso, transformar algo que não era pauta de discussão pública séria em uma discussão pública que levou a ações públicas concretas.&lt;br /&gt;&lt;br /&gt;Urnas eletrônicas foram utilizadas em escala substancial pela primeira vez nas eleições de novembro de 2002 nos EUA. A cobertura da mídia ressaltava principalmente a novidade do mecanismo com leves referências à possibilidade de eventuais falhas, mas sem nenhum questionamento severo quanto à segurança do sistema. Sem dúvidas, uma análise profunda não seria uma tarefa fácil dada a necessidade de alto grau de conhecimento a respeito de segurança de computadores e o fato de o assunto ser tratado como altamente confidencial. Entretanto, devido a uma série de fatos, a tarefa mostrou-se viável para um grupo de voluntários organizados através da Internet.&lt;br /&gt;&lt;br /&gt;Ao final do mês de janeiro de 2003, Bev Harris, uma ativista especializada em urnas eletrônicas descobriu um site da Diebold onde encontravam-se milhares de arquivos com informações confidenciais sobre suas urnas indevidamente acessíveis ao público. Mo início do mês seguinte, ela publicou 2 artigos em um jornal online neo-zelandês. Além disso, organizou em seu site um espaço para pessoas com conhecimentos técnicos discutirem a respeito de suas descobertas. No início de julho, ela publicou uma análise dos resultados das discussões mostrando como o acesso ao material poderia ter sido usado para afetar os resultados das eleições de 2002 no estado da Georgia. Num editorial anexado à publicação os editores do jornal online adicionaram a seguinte nota que ressalta diversas características da esfera pública em rede:&lt;br /&gt;&lt;br /&gt;"Nós agora podemos, pela primeira vez, revelar a localização do site onde encontra-se todo o material. Como podemos prever tentativas por parte da Diebold de evitar a distribuição destas informações, nós encorajamos os apoiadores da democracia a fazer diversas cópias destes arquivos e disponibilizá-los em websites e redes de compartilhamento de arquivos: http://users.actrix.co.nz/dolly/. Como muitos destes arquivos estão protegidos por senhas você pode precisar de ajuda para abri-los. Nós descobrimos que a ferramenta disponível em http://www.lostpassword.com/ funciona bem. Por fim, alguns arquivos estão danificados, mas esta outra ferramenta pode ser útil para recuperá-los: http://www.zip-repair.com/. Neste estágio, acreditamos que ainda não chegamos nem remotamente próximo de investigar todos os aspectos destas informações; ou seja, não há razão para crer que as falhas de segurança encontradas até agora sejam as únicas. Portanto, esperamos novas descobertas em breve. Pedimos a assistência da comunidade online de especialistas em computação para nos auxiliar nesta busca e os encorajamos a arquivar suas descobertas em nosso fórum de discussões."&lt;br /&gt;&lt;br /&gt;Muitas características desta convocação seriam inviáveis na mídia de massa. Ao das acesso ao material cru completo e usar a estratégia de replicar a informação para que seja impraticável censurá-la leva-se o discurso público a nortear-se pelo "veja com seus próprios olhos" em vez do "confie em nós" típico da mídia de massa.&lt;br /&gt;&lt;br /&gt;Além disso, não foi necessário investir enormes quantias de dinheiro para contreatar especialistas. Ao contrário, voluntários que acreditavam na importância do assunto se dispuseram para a tarefa colaborativa. Este curto parágrafo delineia mecanismos radicalmente decentralizados e estratégicos de armazenamento, distribuição, análise e divulgação dos arquivos da Diebold.&lt;br /&gt;&lt;br /&gt;Enquanto isso, novos problemas estavam surgindo para a empresa. A revista norte-americana "Wired Magazine" informou em agosto de 2003 ter recebido de um hacker uma cópia de milhares de emails internos da Diebold e enfatizou este fato como outro exemplo do desleixo da Diebold em relação à segurança. A revista não publicou o conteúdo dos emails. Entretanto, a ativista Bev Harris, também recebeu cópias dos emails e os expôs ao escrutínio público em seu site. A empresa respondeu perante a justiça requisitando a retirada do material do site.&lt;br /&gt;&lt;br /&gt;Entretanto, os esforços da empresa foram fúteis perante a determinação dos ativistas engajados na distribuição irrestrita do material. Estudantes de diversas universidades dos EUA começaram a replicar cópias dos emails. As universidades receberam cartas requisitando a remoção do material de seus servidores. Os alunos foram obrigados a fazê-lo, mas , no que foi por eles descrito em 21 de outubro de 2003 como "desobediência civil eletrônica" cópias dos emails foram re-distribuídas em redes peer-to-peer de compartilhamento de arquivos (as mesmas redes que são freqüentemente criticadas por seu uso para pirataria de músicas e vídeos). Novamente, a participação de indivíduos de todo o país impossibilitou a censura do material.&lt;br /&gt;&lt;br /&gt;Estes emails continham, entre muitos outros relatos problemáticos, evidências de que algumas das urnas utilizadas nas eleições em 2004 haviam sido modificadas após a certificação. Estas informações levaram à decertificação de parte das urnas da Diebold.&lt;br /&gt;&lt;br /&gt;NOTA: A Diebold além de fornecer 75 mil urnas para as eleições nos EUA, foi responsável, em parceria com a PROCOMP, pelas urnas eletrônicas utilizadas no Brasil.&lt;br /&gt;&lt;br /&gt;------------&lt;br /&gt;Texto adaptado para o português a partir do original de Yochai Benkler no livro "Wealth of Networks: How Social Production Transforms Markets and Freedom" ("A riqueza das redes: Como a Produção Social Transforma os Mercados e a Liberdade")&lt;br /&gt;&lt;br /&gt;O livro está disponível na íntegra  para download em http://www.benkler.org/ sob a licença livre Creative Commons Attribution Noncommercial Sharealike http://creativecommons.org/licenses/by-nc-sa/2.5/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-2570262911686466781?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/2570262911686466781/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2007/02/anlise-seguir-exemplifica-o.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/2570262911686466781'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/2570262911686466781'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2007/02/anlise-seguir-exemplifica-o.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-9118411524246005274</id><published>2006-12-22T15:23:00.000-02:00</published><updated>2006-12-23T00:44:50.918-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pinball fantasies remake PARTYland DIY dosbox'/><title type='text'></title><content type='html'>This is how I intend to use &lt;a href="http://dosbox.sourceforge.net/"&gt;dosbox&lt;/a&gt; to control the real pinball machine that I am building based on the design of &lt;a href="http://koti.mbnet.fi/ktalo/kapseli/pelit/2001--2/pinballs/fantasies_screen_1.gif"&gt;Pinball Fantasies' PARTYland table&lt;/a&gt;:&lt;br /&gt;&lt;br /&gt;This is a yet unfinished hack. I am modifying dosbox to act as a light &amp;amp; sensor controller for the real &lt;span id="st" name="st" class="st"&gt;pinball&lt;/span&gt; machine. It would send on/off commands to real lights each time it detects an operation on the VGA pallete corresponding to the flashing lights in the game. It would also patch at runtime the variables that contain the x,y cordinates of the ball, each time the real  ball touches a sensor, in order to put the virtual ball over the corresponding virtual sensor. This way, the original game acts as the firmware for the real machine, and no new code needs to be written. This method guarantees fidelity to the original game behaviour.&lt;br /&gt;&lt;br /&gt;See photos of the pinball machine I am building on &lt;a href="http://www.flickr.com/photos/felipesanches"&gt;my flickr&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The following video shows me filling one of the light inserts using blue epoxy:&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="350"&gt; &lt;param name="movie" value="http://www.youtube.com/v/Ly3ztT7Xtbo"&gt; &lt;/param&gt; &lt;embed src="http://www.youtube.com/v/Ly3ztT7Xtbo" type="application/x-shockwave-flash" width="425" height="350"&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/28814329-9118411524246005274?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/9118411524246005274/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2006/12/using-dosbox-to-control-real-machine.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/9118411524246005274'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/9118411524246005274'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2006/12/using-dosbox-to-control-real-machine.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-832929547682329720</id><published>2006-11-17T23:49:00.000-02:00</published><updated>2006-11-18T01:39:08.379-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DRM'/><title type='text'></title><content type='html'>Hoje eu comprei um cd com DRM.&lt;br /&gt;&lt;span style="text-decoration: underline;"&gt;&lt;br /&gt;&lt;/span&gt;DRM = "&lt;a href="http://en.wikipedia.org/wiki/Digital_Rights_Management" title="Digital Rights Management"&gt;Digital Rights Management&lt;/a&gt;". Ou, na interpretação usualmente feita pelo Richard Stallman, "Digital Restritions Management"&lt;br /&gt;&lt;br /&gt;Definitivamente, o linux ainda não é o alvo. O DRM deles só funciona em win e mac. Entretanto, a licença de uso deles coloca qualquer usuário de linux na ilegalidade pq ela diz que vc DEVE utilizar o software de DRM deles caso queira fazer cópias (em uma quantidade tecnicamente limitada) em WMA das faixas do CD.&lt;br /&gt;&lt;br /&gt;E a licença está horripilantemente mal traduzida para o ptbr:&lt;br /&gt;Está traduzido "Digital Keys" como "Teclas Digitais" (deveria ser "Chaves Digitais"...)&lt;br /&gt;&lt;br /&gt;Bem... eles até são "legais" em dar permissão atravéz do EULA de fazer até 3 cópias do CD em outra mídia e ilimitadas cópias para dispositivos portáteis (mp3/wma players)&lt;br /&gt;&lt;br /&gt;MAS...&lt;br /&gt;&lt;br /&gt;precisam ser "compliant devices" (ou seja, players com suporte a DRM)&lt;br /&gt;&lt;br /&gt;E...&lt;br /&gt;&lt;br /&gt;essas cópias têm que ser feitas usando o software de DRM deles. Ou seja, é imposível respeitar o EULA se vc não usa Win ou Mac.&lt;br /&gt;&lt;br /&gt;Eles fazem isso por que as 3 cópias provavelmente são infectadas com DRM também pois essas 3 cópias NÃO PERMITEM ser copiadas mais vezes&lt;br /&gt;&lt;br /&gt;Eles estão no direito deles ao impor essas condições de uso. Entretanto, estão discriminando parte dos usuários.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-832929547682329720?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/832929547682329720/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2006/11/hoje-eu-comprei-um-cd-com-drm.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/832929547682329720'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/832929547682329720'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2006/11/hoje-eu-comprei-um-cd-com-drm.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-2764573652114675611</id><published>2006-10-05T20:07:00.000-03:00</published><updated>2006-10-05T20:22:26.972-03:00</updated><title type='text'></title><content type='html'>Por causa dessa coisa de proibição de p2p na poli, hoje eu fiquei tentando achar formas efetivas de bloquear pirataria sem matar a tecnologia como um todo.&lt;span class="down" style="display: block;" id="formatbar_CreateLink" title="Link" onmouseover="ButtonHoverOn(this);" onmouseout="ButtonHoverOff(this);" onmouseup="" onmousedown="CheckFormatting(event);FormatbarButton('richeditorframe', this, 8);ButtonMouseDown(this);"&gt;&lt;/span&gt;&lt;br /&gt;Tentei imaginar formas técnicas de autenticar material livre para permitir que apenas material não-pirata transite pela rede. Comecei pensando em utilizar tags como aquelas (machine-readable tags) que a &lt;a href="http://creativecommons.org/"&gt;creative commons&lt;/a&gt; pode colocar na seção de &lt;a href="http://en.wikipedia.org/wiki/metadata"&gt;metadados&lt;/a&gt; dos arquivos com informações sobre a licença.&lt;br /&gt;&lt;br /&gt;Entretanto, vi que isso rapidamente seria "exploitado" por piratas que aplicariam licenças falsas em arquivos de outrem apenas para poderem entrar na rede.&lt;span class="down" style="display: block;" id="formatbar_CreateLink" title="Link" onmouseover="ButtonHoverOn(this);" onmouseout="ButtonHoverOff(this);" onmouseup="" onmousedown="CheckFormatting(event);FormatbarButton('richeditorframe', this, 8);ButtonMouseDown(this);"&gt;&lt;/span&gt;&lt;br /&gt;Depois disso pensei em uma forma de fazer isso usando &lt;a href="http://pt.wikipedia.org/wiki/criptografia"&gt;assinaturas criptográficas&lt;/a&gt; e com uma entidade certificadora de materiais de livre circulação.&lt;br /&gt;&lt;br /&gt;Seria necessário que essa entidade fizesse a seleção de todo o material que entra em redes p2p e este processo muito dificilmente seria automatizável. Ou seja, seres humanos precisariam colaborar com esta entidade. &lt;span class="" style="display: block;" id="formatbar_CreateLink" title="Link" onmouseover="ButtonHoverOn(this);" onmouseout="ButtonHoverOff(this);" onmouseup="" onmousedown="CheckFormatting(event);FormatbarButton('richeditorframe', this, 8);ButtonMouseDown(this);"&gt;&lt;/span&gt;&lt;br /&gt;Então pensei na possibilidade de usar peer-review, similar ao mecanismo usado em sites como a &lt;a href="http://slashdot.org/"&gt;slashdot&lt;/a&gt; para gerar relevância. Obviamente os piratas tentariam burlar o mecanismo marcando material pirata como livre. Entretanto, o sistema iria eliminá-los consistentemente do processo pois os detentores dos direitos autorais destas obrar (ou quaisquer outros bons usuários) iriam denunciar as más contribuições, o que acarretaria na diminuição do karma destes piratas.&lt;br /&gt;&lt;br /&gt;ATENÇAO! Esta ainda é uma idéia bruta, recém-concebida, ainda muito pouco lapidada. Pode até mesmo ser uma idéia inocente, mas não deixa de ser uma idéia a ser analisada. Por favor, indiquem-me os eventuais problemas que vcs encontrarem nela e sintam-se à vontade para aprimorá-la.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-2764573652114675611?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/2764573652114675611/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2006/10/por-causa-dessa-coisa-de-proibio-de-p2p.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/2764573652114675611'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/2764573652114675611'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2006/10/por-causa-dessa-coisa-de-proibio-de-p2p.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-7392616016810443089</id><published>2006-10-04T23:22:00.000-03:00</published><updated>2006-10-05T00:06:57.524-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='poli usp p2p proibido software livre'/><title type='text'></title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger2/3065/3517/1600/sentido_proibido-160x160.2.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://photos1.blogger.com/blogger2/3065/3517/400/sentido_proibido-160x160.2.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;É um absurdo!&lt;br /&gt;&lt;br /&gt;Hoje fui informado que no último 29 de setembro o Professor Doutor Ivan Gilberto Sandoval Falleiros, diretor da Escola Politécnica da USP, assinou a portaria interna 942 que, entre outros pontos, proibe o uso de p2p (peer-to-peer) na poli.&lt;br /&gt;&lt;br /&gt;Eu, pessoalmente, discordo deste tipo de política que, ao abaixar a cabeça às pressões da indústria de entretenimento, acaba prejudicando usos legítimos da tecnologia.&lt;br /&gt;&lt;br /&gt;Concordo com o termo 2 da portaria. Devemos respeitar o direito autoral e a propriedade intelectual. Entretanto, a solução proposta (e, nesta portaria, imposta) para o problema é um retrocesso.&lt;br /&gt;&lt;br /&gt;Nas redes de peer-to-peer não trafega apenas material ilegal. Elas são também usadas para distribuição eficiente de arquivos públicos ou cuja licença de uso permite a livre distribuição. Apenas para exemplificar, a comunidade de software livre utiliza redes peer-to-peer para otimizar a distribuição de seus softwares. Veja, por exemplo, esta página do Debian (distribuição GNU/Linux): &lt;a href="http://www.debian.org/CD/torrent-cd/"&gt;http://www.debian.org/CD/torrent-cd/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;O peer-to-peer possibilita prover as necessidades da comunidade a um custo muito menor do que o de manutenção de servidores de hospedagem de desempenho equivalente.&lt;br /&gt;&lt;br /&gt;Vale citar a seguinte analogia: "Não devemos proibir a faca para evitar o esfaqueamento. Devemos, sim, permitir que o cozinheiro use a faca e condenar o assassino."&lt;br /&gt;&lt;br /&gt;E como um colega meu observou, percebam também que seria absolutamente possível algum dia aparecer uma portaria proibindo a instalação e uso de scanners pois eles podem eventualmente (mas, lembrem-se, nem sempre!) ser usados para fazer cópias ilegais de livros.&lt;br /&gt;&lt;br /&gt;Acredito que o peer-to-peer deve voltar a ser permitido na poli e devemos definir uma alternativa tecnologica para combater a pirataria que não seja danosa àqueles que fazem o uso legal da tecnologia em questão. Além disso, sinto-me na obrigação de alertar as pessoas de outras unidades da USP sobre esta questão para que não permitam que portarias similares sejam-lhes impostas em suas respectivas unidades.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/28814329-7392616016810443089?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/7392616016810443089/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2006/10/um-absurdo-hoje-fui-informado-que-no.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/7392616016810443089'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/7392616016810443089'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2006/10/um-absurdo-hoje-fui-informado-que-no.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-28814329.post-114869290283447758</id><published>2006-05-26T22:03:00.000-03:00</published><updated>2006-05-26T22:21:42.846-03:00</updated><title type='text'></title><content type='html'>O UOL Messenger, lançado recentemente pela UOL, é software livre licenciado sob a GPL. Portanto, não existe a possibilidade de ele se tornar exclusividade dos assinantes pois o código dele está disponível e qualquer pessoa pode modificá-lo (desde que saiba programar).&lt;br /&gt;&lt;br /&gt;Diferentemente do que é possível de se entender pelo anúncio no site da UOL (http://messenger.uol.com.br), o UOL Messenger não foi 100% desenvolvido pelo UOL. Na verdade, a maior parte do código do UOL Messenger é derivada do Gaim (http://gaim.sf.net), outro software livre. A UOL diz que "optou" por liberar o UOL Messenger como software livre, mas, na verdade, ela é obrigada a fazer isso, pois se assim não fizesse poderia ser (com razão) processada pelos desenvolvedores do Gaim por desobedecer às condições de uso descritas pela licença de software livre GNU GPL, sob a qual o Gaim (assim como cerca de 70% dos softwares livres existentes) é licenciado.&lt;br /&gt;&lt;br /&gt;Uma das coisas que mais me chateia é que a UOL transformou um software multiplataforma que é o Gaim em uma aplicação Windows-only. Eles removeram a infraestrutura de compilação da GNU (configure, make, etc...) e substituiram por arquivos de projeto do MSVisualC++. Nada contra o visual C++, além do fato de ele só ser útil no windows... Podiam manter os Makefiles lá pelomenos, né? &lt;div class="content"&gt; &lt;p&gt;Removeram suporte a vários protocolos deixando só o que a UOL considera interessante pros seus usuários. (Óbvio que podemos ir lá e botar tudo de volta...)&lt;br /&gt;O Jabber só tá lá por causa do gtalk. Pq se não fosse isso ele teria sido cortado também.&lt;/p&gt; &lt;p&gt;Deixaram a interface mais bonita, mas a usabilidade não é necessariamente melhor. Eu até arrisco dizer que tá pior. As abas de conversas ficaram minúsculas. E as barras com os nomes de grupos ocupam muito espaço na lista. Felizmente há uma opção de ocultar os nomes dos grupos. Isso foi uma coisa que me incomodou em particular no início...&lt;/p&gt; &lt;p&gt;Aliás... é impressão minha ou eles removeram a GTK? Será que usaram alguma biblioteca gráfica windows-only também?&lt;/p&gt;Um elogio: na configuração do Jabber eles fizeram algo legal. Se vc insere um email gmail.com no campo Identificador do usuário , ele automaticamente preenche "talk.google.com" nas configs avançadas. Isso é bom pq ajuda bastante os usuários leigos que não leram as instruções no site do google sobre como configurar no gaim e que se forem procurar sobre como fazer isso no UOLMessenger, provavelmente não vão achar. &lt;p&gt;outro elogio: o gaim pra windows sempre foi incômodo para usuários que compartilham uma mesma conta de usuário do windows. O uol messenger acrescentou uma tela inicial de seleção de perfis que ajuda bastante esse tipo de usuário. Isso é algo legal a se copiar para o gaim.&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/28814329-114869290283447758?l=jucablues.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://jucablues.blogspot.com/feeds/114869290283447758/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://jucablues.blogspot.com/2006/05/uol-messenger-gaim-monoplataforma.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/114869290283447758'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/28814329/posts/default/114869290283447758'/><link rel='alternate' type='text/html' href='http://jucablues.blogspot.com/2006/05/uol-messenger-gaim-monoplataforma.html' title=''/><author><name>Felipe Sanches</name><uri>http://www.blogger.com/profile/02984971823775625000</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
