<?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-9469372</id><updated>2012-01-26T04:21:20.904-08:00</updated><title type='text'>Ten is a good number</title><subtitle type='html'>... then let's see how he does, up there, without all the assistance!</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default?start-index=101&amp;max-results=100'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>976</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-9469372.post-3014228368506958431</id><published>2012-01-12T03:25:00.000-08:00</published><updated>2012-01-12T03:27:06.284-08:00</updated><title type='text'>From the strange source code department</title><content type='html'>Download this &lt;a href="http://robert.martin-legene.dk/files/impossible.c"&gt;source code&lt;/a&gt;, compile and execute.  Betcha you didn't expect that result.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-3014228368506958431?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/3014228368506958431/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=3014228368506958431' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3014228368506958431'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3014228368506958431'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2012/01/from-strange-source-code-department.html' title='From the strange source code department'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-8694688536498135503</id><published>2012-01-06T21:25:00.000-08:00</published><updated>2012-01-06T21:37:23.695-08:00</updated><title type='text'>Update on the scanvenger</title><content type='html'>Back in October I made some comments about the coming work on Cincom Smalltalk's new space generational scavenger.  Today, the bulk of the work got integrated into our development branches.  Here are some highlights.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The generational scavenger is essentially rewritten.  Major wins include a net code loss of about 10% for the scavenger alone, elimination of all sorts of weird edge cases, and generally more efficient operation.&lt;/li&gt;&lt;li&gt;For 64 bit platforms, we now have a completely new, significantly better and far more concise class table management mechanism for the scavenger.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;These changes come with about 1850 new VM tests.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;In addition, we fixed several smaller bugs that will just never come back to bother us.  There are also some performance and stability improvements for the GC / IGC in particular, and the memory manager in general.  I still have a list of pending cleanup items, and we still have the opportunity to delete more code and extract more efficiency out of the code.&lt;/p&gt;&lt;p&gt;Moving along!&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-8694688536498135503?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/8694688536498135503/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=8694688536498135503' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/8694688536498135503'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/8694688536498135503'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2012/01/update-on-scanvenger.html' title='Update on the scanvenger'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-1273259934007884120</id><published>2012-01-06T02:53:00.000-08:00</published><updated>2012-01-06T03:06:26.353-08:00</updated><title type='text'>A couple Smalltalk apps on the web</title><content type='html'>Via German Arduino, check these two Smalltalk powered websites: &lt;a href="http://www.getitmade.com/"&gt;Get It Made&lt;/a&gt;, and &lt;a href="http://www.airflowing.com/"&gt;Airflowing&lt;/a&gt;. They look really nice, don't they?&lt;br /&gt;&lt;br /&gt;Update... these three Smalltalk powered websites: &lt;a href="http://www.objectfusion.fr/en/odyssey.html"&gt;Objectfusion&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-1273259934007884120?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/1273259934007884120/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=1273259934007884120' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/1273259934007884120'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/1273259934007884120'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2012/01/couple-smalltalk-apps-on-web.html' title='A couple Smalltalk apps on the web'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-4470519482419841527</id><published>2011-12-29T17:38:00.000-08:00</published><updated>2011-12-29T23:34:22.907-08:00</updated><title type='text'>Happy new year from the book publishing department</title><content type='html'>My first book, A Mentoring Course on Smalltalk, is now available in PDF format.  You can get it &lt;a href="http://www.lulu.com/product/ebook/a-mentoring-course-on-smalltalk-%28pdf%29/18783337"&gt;here&lt;/a&gt; (plus all my books are listed &lt;a href="http://www.lulu.com/spotlight/avsmalltalkbooks"&gt;here&lt;/a&gt;).  Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-4470519482419841527?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/4470519482419841527/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=4470519482419841527' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4470519482419841527'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4470519482419841527'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/12/happy-new-year-from-book-publishing.html' title='Happy new year from the book publishing department'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-8226411694974233490</id><published>2011-12-16T23:07:00.001-08:00</published><updated>2011-12-16T23:23:13.090-08:00</updated><title type='text'>Firefox 8 data cache cleaning</title><content type='html'>By default, my installation of Firefox uses up to 1 gb for file caching.  Firefox uses a nice 16x256 (or similar) directory structure so that not all files are stored in the same directory.  This is nice!  However, when you ask Firefox to clear the cache, Firefox deletes files from this directory structure in (apparently) random order.  This is Bad(TM):&lt;br /&gt;&lt;ul&gt;&lt;li&gt;That's a lot of directories!  Using du -sh ? at the root cache directory will show that progress is made in a random fashion.  Moreover, if you keep doing du -sh ? on the command line, then directories stay mostly cached and you can see progress is fast (meaning: slow, but not frozen molasses slow).  If you wait a while, then directories don't stay cached and progress becomes (frozen molasses) slow again.&lt;/li&gt;&lt;li&gt;For some reason, it looks like OS X won't do write combining anywhere as efficiently if you delete files at random from the directory structure.  The activity monitor showed about 4mb / sec disk writes throughout.  However, the result was super slow deleting.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;After about an hour, Firefox still had to delete about 700 mb of files.  So I decided to help, and run commands such as rm `find F -type f -print` at the root of the cache directory.  Apparently Firefox doesn't mind not finding files it wants to delete,  and rm keeps going if it can't find a file to delete, so things went  well.  The rm command deletes files sequentially in the same directories, so I expected it to run faster.  And yes indeed, it was quicker by a &lt;span style="font-weight: bold;"&gt;lot&lt;/span&gt;.  I was done deleting the rest of the files in no time.  I should also point out that, even though at times there were effectively two rm threads (Firefox, and the command line), actual disk i/o throughput was not higher and remained at about 4 mb / sec.  Nevertheless, actual deleting performance was way faster.&lt;/p&gt;&lt;p&gt;Firefox developers: please delete cache files sequentially, yes?  Also, Memshrink is awesome and it makes a huge difference, please keep going!&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-8226411694974233490?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/8226411694974233490/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=8226411694974233490' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/8226411694974233490'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/8226411694974233490'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/12/firefox-data-cache-cleaning.html' title='Firefox 8 data cache cleaning'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-1863114865896946587</id><published>2011-12-11T01:40:00.000-08:00</published><updated>2011-12-11T01:53:26.642-08:00</updated><title type='text'>Windows 7 32 bit install freeze while "Completing installation..."</title><content type='html'>On a Macbook Pro, installing Windows 7 32 bits on the boot camp partition may freeze after the first successful reboot at the "Completing installation..." phase.  Also, when you kill the computer to unfreeze it, your installation is trashed and you have to start over again.  There are a multitude of suggestions on how to deal with this problem on the web.  This is a summary of what I figured out.&lt;br /&gt;&lt;br /&gt;After the first reboot, I told the installer to boot into safe mode.  This stops the installation from proceeding and trashing the install when it crashes.  With e.g.: shift+f10, open a command prompt and then execute compmgmtlauncher.  This brings up the computer management console.  Look under the device manager and browse through the devices.  In my case, I could freeze the computer just by looking at the ethernet controller.  Interesting...&lt;br /&gt;&lt;br /&gt;But how to work around it?  Disabling the device didn't help because the installer crashed anyway.  So I took out memory from the machine and left it with 2 gb of RAM (and no, the memory is not bad).  At this point, the device manager didn't hang anymore after browsing the ethernet controller.  When I rebooted and let the installation proceed, this time it completed successfully. Note that the installer recognized and installed the ethernet controller drivers correctly. Once Windows 7 was installed, I restored the memory back to what it was before.  Everything seems to work fine so far.&lt;br /&gt;&lt;br /&gt;From this experience, it looks like device recognition during the installation may induce failures when you have more than 2 gb of RAM.  How bothersome :(.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-1863114865896946587?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/1863114865896946587/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=1863114865896946587' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/1863114865896946587'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/1863114865896946587'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/12/windows-7-32-bit-install-freeze-while.html' title='Windows 7 32 bit install freeze while &quot;Completing installation...&quot;'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-5494921761980325787</id><published>2011-12-09T15:40:00.000-08:00</published><updated>2011-12-09T15:41:46.561-08:00</updated><title type='text'>Dumb, and carbon copy</title><content type='html'>How about this one: &lt;a href="http://blogs.wsj.com/ideas-market/2011/06/15/contagiously-stupid-characters/"&gt;turning on the TV may be similar to pressing the green button on a copy machine&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-5494921761980325787?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/5494921761980325787/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=5494921761980325787' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/5494921761980325787'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/5494921761980325787'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/12/dumb-and-carbon-copy.html' title='Dumb, and carbon copy'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-3289434477233567060</id><published>2011-12-06T01:11:00.001-08:00</published><updated>2011-12-06T01:12:20.388-08:00</updated><title type='text'>Holiday Lulu coupons</title><content type='html'>FYI, Lulu is running interesting coupons these days.  First they had free shipping, and now they offer 30% off until Wednesday with the coupon WINTERSAVE305.  So if you wanted to get anything from Lulu you didn't get before, this is a good time to do that.&lt;span style="font-family:'Lucida Grande',Arial,sans-serif;font-size:14px;color:#666666;text-align:left"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-3289434477233567060?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/3289434477233567060/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=3289434477233567060' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3289434477233567060'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3289434477233567060'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/12/holiday-lulu-coupons.html' title='Holiday Lulu coupons'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-8814146828225551877</id><published>2011-12-05T00:09:00.000-08:00</published><updated>2011-12-08T20:53:09.765-08:00</updated><title type='text'>Talking about GC at Willamette University on 9/12</title><content type='html'>&lt;a href="http://www.willamette.edu/"&gt;Willamette University&lt;/a&gt;'s Math Department graciously gave me a slot in their colloquiums.  I will be speaking about garbage collection on December 9th at 4pm.  I hope you can make it!  See you at the Ford building on Thursday.&lt;br /&gt;&lt;br /&gt;Update: the talk was well received by an audience of mostly students from the Math and CS departments. I'd guess there were between 40 and 50 people, it was hard to tell because the room was full all the way to the back. I'd like to thank Willamette University again for this opportunity.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-8814146828225551877?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/8814146828225551877/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=8814146828225551877' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/8814146828225551877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/8814146828225551877'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/12/talking-about-gc-at-willamette.html' title='Talking about GC at Willamette University on 9/12'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-6832606919468808774</id><published>2011-11-28T19:43:00.000-08:00</published><updated>2011-11-28T20:42:20.121-08:00</updated><title type='text'>The wonderful world of e^x cores and threads</title><content type='html'>Let's compare the performance of several SPARC machines at running some integer workloads.  Fortunately the SPEC folks already compiled the relevant (and voluminous) &lt;a href="http://www.spec.org/cpu2006/results/rint2006.html"&gt;results&lt;/a&gt;.  In particular, we will look at the SPARC T2, T2+ and T3 CPUs against the Fujitsu SPARC64-VII and SPARC64-VII+ CPUs.&lt;br /&gt;&lt;br /&gt;Unfortunately there are a multitude of numbers to look at.  How many CPUs does the machine have?  How many cores per CPU?  How many threads per core?  What's the speed of the CPU in question?  How many concurrent test instances are running?  And, finally, how long did it take for the machine to finish the workload?  To simplify these matters, first we will look at three figures:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Throughput, defined as concurrent test instances over time taken.&lt;/li&gt;&lt;li&gt;Throughput per core per GHz * 1000.  This number gives us how much performance is being driven by core.&lt;/li&gt;&lt;li&gt;Throughput per thread per GHz * 1000.  This number gives us how much performance is being driven per theoretically executable thread.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;With these 3, the higher the better.  To simplify, we will note the results as follows.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Chip name (chips x cores x threads @ GHz): #1, #2, #3.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;First, lets' look at some GCC batch runs.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;SPARC T2 (1x8x8 @ 1.582): 0.008, 0.646, 0.081.&lt;/li&gt;&lt;li&gt;SPARC T2+ (2x8x8 @ 1.582): 0.014, 0.555, 0.069.&lt;/li&gt;&lt;li&gt;SPARC T2+ (4x8x8 @ 1.596): 0.030, 0.589, 0.074.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;We can see a number of things in these.  For example, looking at raw throughput is misleading in a number of ways.  First, it hides the number of threads the CPU is capable of running, so it doesn't give us a good idea of how efficient the CPU is.  Second, compare the first two lines: we added another CPU, but we did not get 2x the throughput (0.008 to 0.014).  In other words, adding CPUs is not necessarily making your box more efficient.  We should also look at the throughput per core and thread.  Between the first two lines, we added twice as many cores and yet we lost a bunch of throughput.  The last result for the T2+ shows some improvement, although the base GHz is higher by roughly 7%...&lt;/p&gt;&lt;p&gt;But we have more, we can look at some T3 SPARCs.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;SPARC T3 (1x16x8 @ 1.649): 0.012, 0.472, 0.059.&lt;/li&gt;&lt;li&gt;SPARC T3 (2x16x8 @ 1.649): 0.025, 0.465, 0.058.&lt;/li&gt;&lt;li&gt;SPARC T3 (4x16x8 @ 1.649): 0.049, 0.464, 0.058.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Nice, we can see the T3s have twice as many cores as the T2s, and yet as we add chips the performance does not suffer as much as with the T2s.  However, we should also note the T2s had better throughput per core-GHz and per thread-GHz.  So, again, we see we add more computing resources but the effective efficiency is lower.&lt;/p&gt;&lt;p&gt;There are basically two vendors of SPARC CPUs that I could find.  One is &lt;s&gt;Sun&lt;/s&gt; Oracle and it sells the SPARC T CPUs. Another vendor is Fujitsu, and it sells SPARC64 CPUs.  Through several iterations, they've taken an older SPARC64-V all the way to a SPARC64-IX.  This last CPU was recently used in a top 500 super computer entry.  How does it stack up to Oracle's offerings?  Well, at first it's hard to tell because SPARC64s run much faster than T2, T2+ and T3 CPUs, yet they have less cores and their cores run less concurrent threads.  What a mess!  But our 3 figures are discriminating enough.  Let's take a look.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;SPARC64-VII (4x4x2 @ 2.53): 0.012, 0.304, 0.152.&lt;/li&gt;&lt;li&gt;SPARC64-VII (8x4x2 @ 2.53): 0.024, 0.298, 0.149.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;At first glance, it would seem as if the T2+ and T3 CPU configurations above achieve more throughput than the SPARC64-VII.  In fact, the SPARC64-VII scores less throughput per core-GHz.  But a closer look will reveal the SPARC64-VII above pushes between 2 and 3 times more work per thread-GHz.  And that's &lt;span style="font-style: italic;"&gt;after&lt;/span&gt; taking out the effect of the GHz difference, which is not even 2x in favor of the SPARC64.  In other words, the SPARC64-VII's thread execution is just more efficient than that of &lt;s&gt;Sun&lt;/s&gt; Oracle's SPARC offerings.  And that's for a somewhat slow SPARC64-VII, here are a couple more numbers.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;SPARC64-VII (16x4x2 @ 2.88): 0.066, 0.360, 0.180.&lt;/li&gt;&lt;li&gt;SPARC64-VII (32x4x2 @ 2.88): 0.126, 0.340, 0.170.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Here we see the effect of the speed increase in terms of throughput per GHz figures.  And again we see that with more execution capabilities, there is less effective throughput.  Fortunately the T3 and the SPARC64-VII chips scale well with increased CPUs.  Nevertheless, the net efficiency of the SPARC64-VII is higher, and I'm guessing it's because with less execution machinery the CPU can spend more energy just plowing forward.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Unfortunately there are no results for SPARC T4 CPUs.  However, we know they will run at 2.8GHz or higher, and have 8 cores per CPU each of which can run 8 threads.  Plugging in the numbers for the T2s (which have the same number of threads per CPU), we can see the individual cores should be about 2x faster than those in T2s to match a SPARC64-VII on throughput per thread. Moreover, SPARC64-VII+ chips are faster and seem a bit more efficient as well.  Unfortunately I could not find results for SPARC-VIII or SPARC-IX chips.  In the mean time, though... &lt;s&gt;Sun&lt;/s&gt; Oracle SPARC chips don't necessarily look all that great :(...&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-6832606919468808774?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/6832606919468808774/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=6832606919468808774' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/6832606919468808774'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/6832606919468808774'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/11/wonderful-world-of-ex-cores-and-threads.html' title='The wonderful world of e^x cores and threads'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-4570846008839414063</id><published>2011-11-17T15:39:00.001-08:00</published><updated>2011-11-17T15:40:04.446-08:00</updated><title type='text'>Assessments 1.53</title><content type='html'>Changes with this version: improved the RB status bar to report skipped checks, and also deleted some dead code from the RB status bar.&lt;br /&gt;&lt;br /&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-4570846008839414063?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/4570846008839414063/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=4570846008839414063' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4570846008839414063'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4570846008839414063'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/11/assessments-153.html' title='Assessments 1.53'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-8400243571314471875</id><published>2011-11-17T13:51:00.001-08:00</published><updated>2011-11-22T13:45:33.931-08:00</updated><title type='text'>Due diligence continues to pay off</title><content type='html'>At work, we recently fixed a number of instances of memcpy() that should have been memmove() because the objects involved overlapped (thus violating e.g.: POSIX and C99).  One particular instance of memcpy() had been wrong since at least 1990, only to be exposed by relatively recent versions of glibc.  The fact that wrong code has been undetected for at least 21 years illustrates that it is very easy for programs to merely &lt;span style="font-weight: bold;"&gt;appear&lt;/span&gt; to work and, thus, that it is incredibly important to always pay attention to the relevant specifications.&lt;br /&gt;&lt;br /&gt;Speaking of paying attention, we also found sometimes we use a Duff device instead of memcpy() / memmove() / memset() because of an interface impedance mismatch: the C library functions work with bytes, and we need to copy, move or set pointer size values.  Alas, our Duff device is currently written in a way that requires way too many assembler instructions.  So now I have a new Duff device prototype that does the same work in about half the instructions on x86, Power and SPARC.  Preliminary tests show a measurable performance improvement, which is visible both on micro and macro benchmarks.&lt;br /&gt;&lt;br /&gt;Moving along...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-8400243571314471875?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/8400243571314471875/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=8400243571314471875' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/8400243571314471875'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/8400243571314471875'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/11/due-diligence-continues-to-pay-off.html' title='Due diligence continues to pay off'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-3617702630982233656</id><published>2011-11-17T12:44:00.000-08:00</published><updated>2011-11-17T13:50:54.128-08:00</updated><title type='text'>Doctoral Symposium CIBSE 2012</title><content type='html'>&lt;div style="font-weight: bold;"&gt;DOCTORAL SYMPOSIUM CIBSE 2012 (Buenos Aires, Argentina)&lt;/div&gt; &lt;div&gt;&lt;a href="http://cibse2012.unlam.edu.ar/program/d_symp.php" target="_blank"&gt;http://cibse2012.unlam.edu.ar/&lt;wbr&gt;program/d_symp.php&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-weight: bold;"&gt;CALL FOR SUBMISSIONS&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The  Organizing Committee of the XIVIbero-American Conference on Software  Engineering (CIbSE 2012) are pleased to invite PhD students in the  Software Engineering and related areas to participate actively in the  Doctoral Symposium CIbSE 2012 by submitting papers describing their  doctoral work.&lt;/div&gt;  &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The CIbSE 2012 Doctoral Symposium is an  international forum for PhD students to discuss their research goals,  methodology, and early results, in a critical but supportive and  constructive environment. It will be performed in a one-day session.  Selected students will present their work and receive constructive  feedback both from a panel of experts and from other Doctoral Symposium  students. The students will also have the opportunity to seek advice on  various aspects of completing a Ph.D. and performing research in  Software Engineering. &lt;/div&gt;  &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-weight: bold;"&gt;Format of the Submissions&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The  PhD students interested in participating in the Doctoral Symposium  should take into account the following items to submit their works.&lt;/div&gt; &lt;div&gt;•&lt;span style="white-space:pre-wrap"&gt; &lt;/span&gt;Provide a clear description of the research problem being addressed. &lt;/div&gt; &lt;div&gt;•&lt;span style="white-space:pre-wrap"&gt; &lt;/span&gt;Motivate the proposed  research (i.e. state why the research work is being conducted, and what  benefits the research will bring). &lt;/div&gt;&lt;div&gt;•&lt;span style="white-space:pre-wrap"&gt; &lt;/span&gt;Outline  the current knowledge of the problem domain, briefly describe what  existing work the research builds upon (citing key papers), and also  briefly describe any existing solutions that have been developed or are  currently being developed (citing key papers). &lt;/div&gt;  &lt;div&gt;•&lt;span style="white-space:pre-wrap"&gt; &lt;/span&gt;Clearly present preliminary results from the research work, and propose a plan of research for completing the PhD. &lt;/div&gt;&lt;div&gt;•&lt;span style="white-space:pre-wrap"&gt; &lt;/span&gt;Point  out the contributions of the applicant to the solution of the problem,  and state in what aspects the suggested solution is different, new or  better as compared to existing approaches to the problem. &lt;/div&gt;  &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Submitted papers must not exceed 6 pages in Springer LNCS format (&lt;a href="http://www.springer.de/comp/lncs/authors.html" target="_blank"&gt;http://www.springer.de/comp/&lt;wbr&gt;lncs/authors.html&lt;/a&gt;). Papers may be written in English, Spanish or Portuguese. &lt;/div&gt;  &lt;div style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-weight: bold;"&gt;What and how to Submit &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Papers must be sent in PDF format to Gabriela Arévalo (gabriela (dot) b (dot) arevalo (at) gmail.com)  by December 20th, 2011. In addition, you must also attach an  “expectation and benefits” statement (1 page maximum, in PDF format)  describing the kind of advice you would like to receive and how this  would help you in your research. You should seek your supervisor’s  guidance when preparing this statement. So, each submission must consist  of the following files: &lt;/div&gt;  &lt;div&gt;•&lt;span style="white-space:pre-wrap"&gt; &lt;/span&gt;Attached PDF with your research paper submission (maximum 6 pages) &lt;/div&gt;&lt;div&gt;•&lt;span style="white-space:pre-wrap"&gt; &lt;/span&gt;Attached PDF with your expectation and benefits statement (maximum 1 page) &lt;/div&gt;  &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Please state [CIbSE 2012] Doctoral Symposium-  Submission &lt;last name="" of="" the="" phd="" student=""&gt; as the subject of the  e-mail. The body of the email should also contain: Title, abstract (200  words), keywords, and student and advisor (name, e-mail address,  affiliation and postal address). &lt;/last&gt;&lt;/div&gt;  &lt;div style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-weight: bold;"&gt;Evaluation of Submissions&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Submitted  papers will be subject to a review process by an international Program  Committee. The selected submissions will be published as part of the  proceedings of the CIbSE 2012 Conference. &lt;/div&gt; &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-weight: bold;"&gt;Program Committee&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;•&lt;span style="white-space:pre-wrap"&gt; &lt;/span&gt;Alejandra Garrido (Universidad Nacional de La Plata, Argentina)&lt;/div&gt; &lt;div&gt;•&lt;span style="white-space:pre-wrap"&gt; &lt;/span&gt;Alexandre Bergel (Universidad de Chile, Chile)&lt;/div&gt;&lt;div&gt;•&lt;span style="white-space:pre-wrap"&gt; &lt;/span&gt;Catalina Mostaccio (Universidad Nacional de La Plata, Argentina)&lt;/div&gt;  &lt;div&gt;•&lt;span style="white-space:pre-wrap"&gt; &lt;/span&gt;Eduardo Bonelli (Universidad Nacional de Quilmes, Argentina)&lt;/div&gt;&lt;div&gt;•&lt;span style="white-space:pre-wrap"&gt; &lt;/span&gt;Gabriela Robiolo (Universidad Austral, Argentina)&lt;/div&gt; &lt;div&gt;•&lt;span style="white-space:pre-wrap"&gt; &lt;/span&gt;Hernán Astudillo (Universidad Técnica Federico Santa María, Chile)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-weight: bold;"&gt;Important Dates&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Submission Deadline: December 20th, 2011 &lt;/div&gt;  &lt;div&gt;Notification: February 20th, 2012 &lt;/div&gt;&lt;div&gt;Camera Ready version: February 28th, 2012&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-3617702630982233656?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/3617702630982233656/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=3617702630982233656' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3617702630982233656'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3617702630982233656'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/11/doctoral-symposium-cibse-2012.html' title='Doctoral Symposium CIBSE 2012'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-7935373105968873833</id><published>2011-11-08T11:09:00.000-08:00</published><updated>2011-11-08T11:33:57.060-08:00</updated><title type='text'>Smalltalks 2011 (short) report</title><content type='html'>Hello, this is the Smalltalks 2011 report.&lt;br /&gt;&lt;br /&gt;The conference was quite good, we had a good time.  I did not attend all  the talks due to hosting duties.  Talks were fantastic.  We had at least  310 registrations.  By the second day we had around 210 unique attendees,  which is awesome.  We're still working on the final tally, so it's probably a bit higher than that.  Here are some random comments.&lt;br /&gt;&lt;br /&gt;Ian Piumarta's To Trap A Better Mouse was awesome.  He examined how  languages are divided into an open class of words (nouns, verbs etc)  which change all the time and which describe the entities we want to  talk about, and a closed class of words (prepositions, articles,  pronouns) which hardly ever changes.  The closed class effectively  dictates what thoughts can be expressed in the language, because they  encode the possible relational patterns between words in sentences.  With that in mind, he took a look at open / closed word classes in  &lt;b class="moz-txt-star"&gt;&lt;span class="moz-txt-tag"&gt;*&lt;/span&gt;computer&lt;span class="moz-txt-tag"&gt;*&lt;/span&gt;&lt;/b&gt; languages and the effect those have in how easy it is to  express a certain program in a given language.  He emphasized that text  substitution with ad-hoc parsers can have a tremendous power because  then we can easily change from a bad (limiting) representation to a  better (enabling) representation.  He suggested looking at Earley  parsers in favor of PEGs, LL, LR, and similar parsers because Earley  parsers can eat both left and right recursive grammars, plus all context  free languages, see &lt;a href="http://en.wikipedia.org/wiki/Earley_parser"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Gerardo Richarte and Javier Burroni posted updates on their Smalltalk  based GC implementation.  Now they have limited forms of multithreaded  GCs.  Interestingly, they tend to go slower.  We speculated cache  poisoning is the culprit, because usually GC algorithms end up looking  like "couple instructions, uncached memory fetch" cycles.  If you cannot  easily partition spaces so that different CPUs go after memory areas,  things look like they will be more painful.&lt;br /&gt;&lt;br /&gt;On Saturday, I really liked Ian Piumarta and Kim Rose's talk on what  happens when technological advances are promised to revolutionize  education.  Almost immediately, they are trivialized and dumbed down so  that all kids (and adults) have to do is to mash up pre-existing stuff  (think of clip art collages) instead of doing anything creative.  This  is a problem because it builds up the inertia that causes training to  pass for an actual education.  There were plenty of examples, and plenty  of evidence.  The situation is somewhat depressing, really, because with  things like Facebook, Twitter, and SMS, all we do is emphasize immediate  gratification and zero effort as a successful or productive expenditure  of time.  Without the time (and, thanks to dumbed down technology,  without the incentive) to concentrate on anything, we cannot really hope  for much.  This is an issue that really resonated with Alan Kay's  observation that when technology is too easy then there's no effort to  actually do something good, so the vast majority of the results are trivial.&lt;br /&gt;&lt;br /&gt;You can see the rest of the schedule at &lt;a href="http://www.fast.org.ar/"&gt;FAST's website&lt;/a&gt;.  Some talks have been shown  at other conferences, and videos of such talks are either available now or should  become available soon at e.g.: &lt;a href="http://www.youtube.com/user/esugboard"&gt;ESUG's youtube video channel&lt;/a&gt;.  I apologize in advance for not writing up reports on every talk I attended, but we will  also post the videos from Smalltalks 2011 at our website soon and I don't want to give out (too many) spoilers :).&lt;br /&gt;&lt;br /&gt;From all of us at FAST, we thank you for coming and making this conference a success.  See you in Smalltalks 2012!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-7935373105968873833?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/7935373105968873833/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=7935373105968873833' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7935373105968873833'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7935373105968873833'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/11/smalltalks-2011-short-report.html' title='Smalltalks 2011 (short) report'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-7381733340141754182</id><published>2011-11-02T10:15:00.001-07:00</published><updated>2011-11-02T10:16:55.212-07:00</updated><title type='text'>Smalltalks 2011 streamed live starting tomorrow</title><content type='html'>Smalltalks 2011 starts tomorrow, and will be shown live &lt;a href="http://tv.unq.edu.ar/"&gt;here&lt;/a&gt;.  Enjoy, and see you in the morning!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-7381733340141754182?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/7381733340141754182/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=7381733340141754182' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7381733340141754182'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7381733340141754182'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/11/smalltalks-2011-streamed-live-starting.html' title='Smalltalks 2011 streamed live starting tomorrow'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-3117124377718082768</id><published>2011-10-31T21:43:00.001-07:00</published><updated>2011-10-31T21:44:00.759-07:00</updated><title type='text'>Do you dare try these puzzles?</title><content type='html'>Whoa... &lt;a href="http://www.shapeways.com/gallery?mg[search][categories]=29&amp;amp;mg[search][clear]"&gt;seriously sophisticated Rubik-like cubes and other mind bending puzzles&lt;/a&gt;!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-3117124377718082768?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/3117124377718082768/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=3117124377718082768' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3117124377718082768'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3117124377718082768'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/10/do-you-dare-try-these-puzzles.html' title='Do you dare try these puzzles?'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-2095770545251086254</id><published>2011-10-26T14:41:00.001-07:00</published><updated>2011-10-26T14:42:05.076-07:00</updated><title type='text'>Overheard the other day</title><content type='html'>"... I would like to be a genius but I'm only gifted, so I work hard..." --- Unknown&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-2095770545251086254?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/2095770545251086254/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=2095770545251086254' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/2095770545251086254'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/2095770545251086254'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/10/overheard-other-day.html' title='Overheard the other day'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-1663575075847957225</id><published>2011-10-10T02:11:00.000-07:00</published><updated>2011-10-10T04:06:48.186-07:00</updated><title type='text'>Update on the garbage</title><content type='html'>I have been working on Cincom Smalltalk garbage collection for a while. Here is a quick summary:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;On the image side, I retuned the memory management and got real application code speed ups ranging from 10% to 2.5x.  Some particular cases run O(10x) faster.&lt;/li&gt;&lt;li&gt;On the VM side, I enhanced stack overflow management on both the incremental and stop-the-world GCs.  The improvements easily scored 20% faster execution.&lt;/li&gt;&lt;li&gt;A while ago, I posted about a prototype for a new GC implementation that ran up to 35% faster in the common case.  This new GC is already shipping with our next release's internal builds. The finished product runs up to 40% faster.  &lt;/li&gt;&lt;/ul&gt;As part of this effort, I fixed several subtle bugs that will no longer pester our customers from time to time.&lt;br /&gt;&lt;br /&gt;Lately, the scavenger has been getting some attention because we found a couple small problems that should be fixed. Working with something like the scavenger requires thorough attention to details, because the end product must Work No Matter What(TM).  But it is not efficient to put in this kind of effort for just a few tiny changes, to then forget about the scavenger and move on to something else.  Thus, we will take this opportunity to improve several scavenger sections I had already identified as needing work.&lt;br /&gt;&lt;br /&gt;There is always the unexpected with these type of endeavors. Back when I was working on the incremental and stop-the-world GCs, the existing implementation did not initially suggest there would be a lot to optimize. I could not have predicted the stack overflow improvements or the 40% speed up for the GC.  These were surprise realizations that came from paying close attention to the code. Due diligence does pay off.&lt;br /&gt;&lt;br /&gt;I've been wondering what I will run into with the new space scavenger.  So far, the changes result in a net deletion of about 250 LOC.  This includes removing effectively duplicated code that, if all goes well, will not come back.  But why bother deleting code?  Because deleting code you don't need is critical. If you don't have to pay attention to unnecessary code, you can spend more time concentrating on the code that is actually useful, and the result is a significantly better product. In the past few years, the VisualWorks VM's source code base has shrunk by about 30%.&lt;br /&gt;&lt;br /&gt;But back to the scavenger.  Besides code deletion and clarification, I did some rewriting to improve algorithmic efficiency. In one particular case, the new improved implementation also causes optimizing compilers to output about 15% less assembler instructions. And, right now, I'm working on an improved class table management mechanism for our 64 bit VMs. Already, it looks like a slightly faster 64 bit scavenger is possible.&lt;br /&gt;&lt;br /&gt;More to come!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-1663575075847957225?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/1663575075847957225/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=1663575075847957225' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/1663575075847957225'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/1663575075847957225'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/10/update-on-garbage.html' title='Update on the garbage'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-2190704015724005457</id><published>2011-07-02T19:30:00.000-07:00</published><updated>2011-07-02T19:31:04.251-07:00</updated><title type='text'>Feeling lucky?</title><content type='html'>Check out &lt;a href="http://glyphobet.net/store/dice/"&gt;these dice&lt;/a&gt;...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-2190704015724005457?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/2190704015724005457/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=2190704015724005457' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/2190704015724005457'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/2190704015724005457'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/07/feeling-lucky.html' title='Feeling lucky?'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-7816004307588833034</id><published>2011-06-29T21:46:00.000-07:00</published><updated>2011-06-29T21:47:38.015-07:00</updated><title type='text'>And this doesn't just apply to phones</title><content type='html'>Here is this article stating phones are basically &lt;a href="http://www.tomsguide.com/us/cellphon-smartphone-passive-entertainment-tamagotchi-iphone-android,news-11684.html"&gt;tamagotchis for adults&lt;/a&gt;.  Really, just phones?  How many of our other gadgets are &lt;span style="font-style: italic;"&gt;also&lt;/span&gt; tamagotchis?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-7816004307588833034?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/7816004307588833034/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=7816004307588833034' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7816004307588833034'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7816004307588833034'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/06/and-this-doesnt-just-apply-to-phones.html' title='And this doesn&apos;t just apply to phones'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-8814275884625917406</id><published>2011-06-28T07:28:00.000-07:00</published><updated>2011-06-28T07:29:22.816-07:00</updated><title type='text'>To cloud, or not to cloud...</title><content type='html'>Since storage prices are falling faster than bandwidth prices, the suggestion is that local storage is cheaper than cloud storage --- &lt;a href="http://www.theregister.co.uk/2011/06/28/backblaze_cloud_computing/"&gt;says cloud storage company report&lt;/a&gt;...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-8814275884625917406?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/8814275884625917406/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=8814275884625917406' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/8814275884625917406'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/8814275884625917406'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/06/to-cloud-or-not-to-cloud.html' title='To cloud, or not to cloud...'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-7293294659893793099</id><published>2011-06-21T15:20:00.001-07:00</published><updated>2011-06-21T15:20:55.924-07:00</updated><title type='text'>Smalltalks 2011 invitation</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/-ofA3u6yOGKM/TgEZPMmMM7I/AAAAAAAACog/6R9ZcDjYipA/s1600/Smalltalks%2B2011%2Bflier.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 309px; height: 400px;" src="http://4.bp.blogspot.com/-ofA3u6yOGKM/TgEZPMmMM7I/AAAAAAAACog/6R9ZcDjYipA/s400/Smalltalks%2B2011%2Bflier.png" alt="" id="BLOGGER_PHOTO_ID_5620801558805230514" 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/9469372-7293294659893793099?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/7293294659893793099/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=7293294659893793099' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7293294659893793099'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7293294659893793099'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/06/smalltalks-2011-invitation.html' title='Smalltalks 2011 invitation'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-ofA3u6yOGKM/TgEZPMmMM7I/AAAAAAAACog/6R9ZcDjYipA/s72-c/Smalltalks%2B2011%2Bflier.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-1614951509125669462</id><published>2011-06-14T18:50:00.001-07:00</published><updated>2011-06-14T18:51:00.429-07:00</updated><title type='text'>Assessments 1.50</title><content type='html'>I just published Assessments 1.50 with a compatibility improvement for SUnit 4.x.  Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-1614951509125669462?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/1614951509125669462/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=1614951509125669462' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/1614951509125669462'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/1614951509125669462'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/06/assessments-150.html' title='Assessments 1.50'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-4655159434604796219</id><published>2011-06-10T12:00:00.000-07:00</published><updated>2011-06-10T12:01:12.516-07:00</updated><title type='text'>Factorial tuning competition</title><content type='html'>Paul Baumann is running a competition to speed up #factorial.  Here are the &lt;a href="http://www.parcplace.net/list/vwnc-archive/1106/msg00080.html"&gt;rules&lt;/a&gt;, check it out!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-4655159434604796219?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/4655159434604796219/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=4655159434604796219' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4655159434604796219'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4655159434604796219'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/06/factorial-tuning-competition.html' title='Factorial tuning competition'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-5087805324771760445</id><published>2011-05-24T20:40:00.001-07:00</published><updated>2011-05-24T20:45:29.865-07:00</updated><title type='text'>One liner</title><content type='html'>&lt;span class="onelinertext"&gt;Someone gave this to me today.  On Linux, compile the following viznut.c:&lt;br /&gt;&lt;br /&gt;#include &amp;lt;math.h&amp;gt;&lt;math.h&gt;&lt;math.h&gt;&lt;br /&gt;&lt;br /&gt;main(v,i,z,n,u,t){for(v=-1;;)for(n=pow(1.06,"`cW`g[`cgcg[eYcb^bV^eW^be^bVecb^"[++v&amp;amp;31]+(v&amp;amp;64)/21),i=999;i;putchar(128+((8191&amp;amp;u)&amp;gt;i?0:i/8)-((8191&amp;amp;(z+=n))*i--&amp;gt;&amp;gt;16)))u+=v&amp;amp;1?t/2:  (t=v&amp;amp;6?t:n/4);}&lt;br /&gt;&lt;br /&gt;like this: gcc -lm viznut.c -o viznut.&lt;br /&gt;&lt;br /&gt;Then, execute ./viznut &amp;gt;/dev/dsp.&lt;/math.h&gt;&lt;/math.h&gt;&lt;/span&gt;&lt;span class="onelinertext"&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-5087805324771760445?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/5087805324771760445/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=5087805324771760445' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/5087805324771760445'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/5087805324771760445'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/05/one-liner.html' title='One liner'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-235755557044806041</id><published>2011-05-20T01:52:00.001-07:00</published><updated>2011-05-20T11:49:29.685-07:00</updated><title type='text'>VM memory management update</title><content type='html'>As some of you know, I've been working on VisualWorks' memory policies and garbage collectors for a while.  I gave a talk on the subject at Smalltalks 2010 (see &lt;a href="http://www.fast.org.ar/smalltalks2010/videos/VisualWorks+Object+Memory+Management"&gt;here&lt;/a&gt;), and I was quite happy to report significant performance improvements: faster allocation, faster code execution, and faster (e.g.: 2.5x) real applications.&lt;br /&gt;&lt;br /&gt;For the next release (after VW 7.8), I added a time-constrained, self-adjusting IGC mechanism to the memory policies. Also, I added the possibility to turn off the IGC on demand, which is useful for performance considerations.  And now, I have a working prototype for a more efficient GC.  For example, in a reasonably configured image with about 30mb of perm space and 100mb of old space, the new GC runs 35% faster.  Although the new code has not gone through all the testing necessary for a GC yet, the 35% performance improvement should hold barring major surprises.  There are a few things to do that should help edge case performance further.&lt;br /&gt;&lt;br /&gt;Moving along...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-235755557044806041?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/235755557044806041/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=235755557044806041' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/235755557044806041'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/235755557044806041'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/05/vm-memory-management-update.html' title='VM memory management update'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-7698748507237528931</id><published>2011-05-09T01:03:00.000-07:00</published><updated>2011-05-09T01:05:22.231-07:00</updated><title type='text'>Impressive hardware...</title><content type='html'>A workable computer running Linux and OpenGL, basically as large as a USB flash drive, for $25.  &lt;a href="http://www.geek.com/articles/games/game-developer-david-braben-creates-a-usb-stick-pc-for-25-2011055/"&gt;Impressive&lt;/a&gt;... now if we could mostly write equally impressive software to solve problems worthy of our attention...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-7698748507237528931?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/7698748507237528931/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=7698748507237528931' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7698748507237528931'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7698748507237528931'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/05/impressive-hardware.html' title='Impressive hardware...'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-1741639229733539994</id><published>2011-04-29T14:31:00.001-07:00</published><updated>2011-04-29T14:31:28.558-07:00</updated><title type='text'>FTP server address change</title><content type='html'>The FTP server can now be reached at ftp://sqrmax.dyndns.org.  Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-1741639229733539994?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/1741639229733539994/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=1741639229733539994' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/1741639229733539994'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/1741639229733539994'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/04/ftp-server-address-change.html' title='FTP server address change'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-9011431013960273327</id><published>2011-04-08T10:10:00.000-07:00</published><updated>2011-04-08T10:11:27.431-07:00</updated><title type='text'>Plug me back to the Matrix fantasy pleeeease!</title><content type='html'>&lt;a href="http://theworldunplugged.wordpress.com/"&gt;Read what happens when young folks try not to use their gadgets for 24 hours&lt;/a&gt;...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-9011431013960273327?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/9011431013960273327/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=9011431013960273327' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/9011431013960273327'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/9011431013960273327'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/04/plug-me-back-to-matrix-fantasy.html' title='Plug me back to the Matrix fantasy pleeeease!'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-1561006034808044648</id><published>2011-04-01T12:52:00.000-07:00</published><updated>2011-04-01T13:00:22.522-07:00</updated><title type='text'>6581 SID, the gift that keeps on giving</title><content type='html'>A &lt;a href="http://en.wikipedia.org/wiki/MOS_Technology_SID"&gt;SID&lt;/a&gt; chip, famously used for sound on the C64, has 3 synthetized voices.  The older 6581 chips had a number of design defects because there was no time to finalize the implementation.  For example, the filter didn't work right, and the output had DC bias because of electronic issues.  However, these problems allowed people to hack the 6581 SID to no end.  Here's an example, achieved about 25 years after the C64 was introduced.  On a C64, you can have:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;4 channels of 8 bit sampled digital output,&lt;/li&gt;&lt;li&gt;2 channels of SID sound,&lt;/li&gt;&lt;li&gt;have the filter apply to the sampled output as well,&lt;/li&gt;&lt;li&gt;and still have enough CPU time to do your own stuff.&lt;/li&gt;&lt;/ul&gt;This page &lt;a href="http://c64music.blogspot.com/2008/11/new-revolutionary-c64-music-routine.html"&gt;here&lt;/a&gt; has this link to an &lt;a href="http://oxyron-party.untergrund.net/fanta_in_space.mp3"&gt;mp3&lt;/a&gt; file that has been taken off from a C64.  At first you do not think much of it, but the C64 I know *never* sounded like that... the mp3 sounds like it belongs to an Amiga instead!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-1561006034808044648?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/1561006034808044648/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=1561006034808044648' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/1561006034808044648'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/1561006034808044648'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/04/6581-sid-gift-that-keeps-on-giving.html' title='6581 SID, the gift that keeps on giving'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-9014678522756188196</id><published>2011-03-15T13:48:00.000-07:00</published><updated>2011-03-15T13:50:14.632-07:00</updated><title type='text'>Old joke for a world that does not change</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://quebellassontustiendas.files.wordpress.com/2010/12/mafalda_manicomio-redondo.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 414px; height: 465px;" src="http://quebellassontustiendas.files.wordpress.com/2010/12/mafalda_manicomio-redondo.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Might God have patented this round nuthouse idea?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-9014678522756188196?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/9014678522756188196/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=9014678522756188196' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/9014678522756188196'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/9014678522756188196'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/03/old-joke-for-world-that-does-not-change.html' title='Old joke for a world that does not change'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-5140343222317196122</id><published>2011-03-05T12:25:00.000-08:00</published><updated>2011-03-05T17:17:45.694-08:00</updated><title type='text'>Fundamentally, we do not understand</title><content type='html'>A lot of what we do is simple in nature but complex in practice because our workload is huge.  For example, preparing an invoice is simple but preparing 10^7 invoices requires computers.&lt;br /&gt;&lt;br /&gt;Similarly, in computer programming, it's relatively simple to write a function such as printf().  But to use that function effectively is much more difficult because of the possible interactions with other pieces of software.  Evaluating each possible interaction does not take much time.  But in today's software world, in which nobody has the time and energy to read and understand every single specification involved, doing a perfect job of interaction evaluation becomes impossible.  Even if you think you are done, how do you know you did not miss something?&lt;br /&gt;&lt;br /&gt;With this in mind, check out this article: &lt;a href="http://www.nytimes.com/2011/03/05/science/05legal.html?pagewanted=1&amp;amp;_r=1&amp;amp;hp"&gt;software is being used by law firms to analyze documents&lt;/a&gt;, precisely because of the above problems.  Ah, how I would like some software to show me all the specification violations implied in a program.&lt;br /&gt;&lt;br /&gt;But the real issue is not that I can't beat a computer at chess or at Jeopardy.  The real issue is why we have engineered our existence so that, even when considering every day tasks, it is not possible to understand what's going on. Why do we need so much complexity? What is the ultimate goal attained by playing this game?  We should also consider the consequences of our actions. Are we sure we like the outcome?&lt;br /&gt;&lt;br /&gt;In the future, software will be able to do much more than merely "google" documents.  What would happen if the only way to change your world was to get an extremely advanced software degree (or equivalent expertise), so that you can write some software that beats other software at behaving like a human?  What does that even mean? For instance, in a lawsuit, is your success predicated on the software you can afford? Phrases such as "a lawyer will be appointed to represent you" fundamentally assume all lawyers are at least competent.  What happens when "competent" is far removed from what you can buy if you have enough money?  And what happens when you can buy an AI that will tirelessly prove you right irrespective of the circumstance?&lt;br /&gt;&lt;br /&gt;To me, this situation seems like some optimization challenge.  Perhaps the way to optimize is not to help us solve larger piles of relatively simple problems faster but to eliminate the simple problems altogether.  After all, we do not determine 1000 mod 5  is zero by repeated subtraction.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-5140343222317196122?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/5140343222317196122/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=5140343222317196122' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/5140343222317196122'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/5140343222317196122'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/03/fundamentally-we-do-not-understand.html' title='Fundamentally, we do not understand'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-1580689232859259007</id><published>2011-03-04T13:05:00.000-08:00</published><updated>2011-03-04T13:27:47.041-08:00</updated><title type='text'>Follow the herd, lose your individuality</title><content type='html'>Check it out: evidence that agreeing to a "popular" opinion, even half-heartedly, &lt;a href="http://www.newscientist.com/article/mg20928024.600-following-the-herd-actually-shifts-your-opinion.html"&gt;actually changes your point of view&lt;/a&gt;.  So, for example, &lt;a href="http://www.youtube.com/watch?v=3Gmex_4hreQ"&gt;louder music is better&lt;/a&gt;, and &lt;a href="http://www.youtube.com/watch?v=xAW8XrTsCs0"&gt;dynamic range compressed remasterings of old music are better&lt;/a&gt;.  It doesn't matter that you think different, as long as you're exposed to other people that think these crappy recordings are good.  Eventually, your brain will adapt to match.&lt;br /&gt;&lt;br /&gt;Huh... so should we even listen to statements such as these?&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://money.cnn.com/2011/03/04/news/economy/february_jobs_report/index.htm?hpt=T2"&gt;The US unemployment rate is improving&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;However, &lt;a href="http://www.therealestatebloggers.com/housing-general/the-real-estate-double-dip-is-here/"&gt;real estate will go through a double-dip&lt;/a&gt; even though unemployment was deemed the primary cause of buyer uncertainty.&lt;/li&gt;&lt;li&gt;Government employee unions caused huge budget deficits, so we need to cut their benefits while we cut business taxes so that more jobs are created.  Or we need to cut business taxes because there isn't enough consumption to support more hires.  Take your pick.  But if we cut government employee salaries, those government employees will pay less for other things, so really it's a spending cut that ultimately will affect businesses... huh?&lt;/li&gt;&lt;li&gt;When you're done with the above, how about &lt;a href="http://money.cnn.com/2011/03/04/news/companies/blue_shield_rate_hike/index.htm"&gt;Blue Shield increasing health insurance premiums by 59%&lt;/a&gt;?  Those are claimed to be "fair" increases.  But how about unemployment and already low salaries, who's going to pay that?  In any case, even the article spells out the truth: "&lt;span style="font-style: italic;"&gt;California, which has 7 million uninsured people, the largest number of any single state, is mired in a $6 billion budget shortfall. "Until then, insurers continue to have the power to say 'No, we won't reduce rates,' and consumers have to say 'Yes, we will pay these higher rates,'" said Heller.&lt;/span&gt;".  So, in other words, because we cut business taxes (or because of unions, or whatever you picked from before), then we the people have to either pay more taxes, or pay more health insurance.  Huh.  Where's my salary hike to put up with that?  And why shouldn't businesses pay more taxes too?&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;And after you consider all these issues, and after you listen to all the published "popular" opinions, what happens to your brain?  How do you know if you can even claim to be an "independent" thinker anymore?&lt;br /&gt;&lt;br /&gt;I tell you, watch what you listen to, because it may corrupt your mind.  And now, stop watching TV.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-1580689232859259007?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/1580689232859259007/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=1580689232859259007' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/1580689232859259007'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/1580689232859259007'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/03/follow-herd-lose-your-individuality.html' title='Follow the herd, lose your individuality'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-7121544162989301970</id><published>2011-01-29T13:26:00.000-08:00</published><updated>2011-01-29T13:27:42.125-08:00</updated><title type='text'>FTP server changes</title><content type='html'>I will be retiring the old FTP server and replacing it with a new one.  Anonymous FTP will replace the old smalltalk account.  This change should be finalized in a bit.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-7121544162989301970?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/7121544162989301970/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=7121544162989301970' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7121544162989301970'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7121544162989301970'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/01/ftp-server-changes.html' title='FTP server changes'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-7533346742393398495</id><published>2011-01-12T12:51:00.001-08:00</published><updated>2011-01-12T13:08:16.198-08:00</updated><title type='text'>Hard lesson to learn</title><content type='html'>See here: &lt;a href="http://www.youtube.com/watch?v=4loZGYqaZ7I"&gt;what happens when you think the spec does not apply to you because you are special*&lt;/a&gt;.  In short: huge computer security problems, and huge embarrassment...&lt;br /&gt;&lt;br /&gt;But it's such a valuable lesson, you know?  Realizing there are many more specs than any human can possibly read, and the full extent of the consequences, is a sobering experience.  These specs tell you how to write C code, how to call OS APIs, how to boot a machine, how to use a graphics card, how to use a compiler, etc.  Those specs also state how you're supposed to do stuff so that the resulting behavior is well defined, as opposed to undefined (see video above).  That also means we do not have the means to ensure proper software behavior because ultimately we do not understand how it is meant to work correctly.&lt;br /&gt;&lt;br /&gt;Thus, regardless of typing and safe compilers and whatever, how can we make sure our software really works when we &lt;span style="font-style: italic;"&gt;cannot&lt;/span&gt; absorb all the material necessary to prove our software correct? Alas, in the mean time, this is the world we live in today.  Back to reading more specs...&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;* e.g.: because you can sue anybody who disagrees into compliance.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-7533346742393398495?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/7533346742393398495/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=7533346742393398495' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7533346742393398495'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7533346742393398495'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/01/hard-lesson-to-learn.html' title='Hard lesson to learn'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-3139880524562571614</id><published>2011-01-01T16:38:00.000-08:00</published><updated>2011-01-02T02:50:05.588-08:00</updated><title type='text'>Chapter 6 is done</title><content type='html'>I just finished Fundamentals II's chapter 6.  Besides all the wonderful material, this chapter weighs in at 78 exercises of all kinds.  I really like the result.  The draft is at 158 pages right now.  It's time for a little break before I start with chapter 7, on threading.&lt;br /&gt;&lt;br /&gt;By the way, how fitting that I get to write about threading now.  At work, I have to fix this condition that leads to HPS scheduling the wrong Smalltalk process until you hit ctrl-y.  Fortunately it's rare, but it should never happen to begin with.  I had fixed a problem where signal handlers would smash the wrong stack page's stack limit, but there are some critical section style holes that need to be closed before the general scheduling functionality can be proven to work in every single case.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-3139880524562571614?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/3139880524562571614/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=3139880524562571614' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3139880524562571614'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3139880524562571614'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2011/01/chapter-6-is-done.html' title='Chapter 6 is done'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-3263148214813433192</id><published>2010-12-31T13:42:00.001-08:00</published><updated>2010-12-31T14:07:33.169-08:00</updated><title type='text'>The non-discriminating audience</title><content type='html'>Check out this patent from Apple: &lt;a href="http://www.theregister.co.uk/2010/12/31/apple_product_performance_prediction_patent/"&gt;let's reward reviewers of products when their prediction of product success matches actual product success&lt;/a&gt;.  This approach has a number of problems.&lt;br /&gt;&lt;br /&gt;First, it's a well known fact that you can get any junk sold by the millions with a proper marketing campaign, e.g.: Britney Spears (with all due respect).  Thus, we conclude people will do effectively as they are told.&lt;br /&gt;&lt;br /&gt;Second, as per the item above, if many reviewers give glowing reviews of product X then it's more likely product X will succeed, so the reviewers stand to benefit.  It does not matter whether product X is good as long as it sells, e.g.: Lady Gaga (with all due respect).&lt;br /&gt;&lt;br /&gt;Third, it's yet another obvious sign that shows today's audience is non-discriminating.  Rather, it's like this plant that grows towards light.  Marketing is trying to shine the light the plant will grow towards the most.  Again, it does not matter what plant it is, or what light it is.  All that matters is that money keeps flowing.&lt;br /&gt;&lt;br /&gt;Therefore, this patent is about maximizing the flow of money and, thus, Apple's profits because they have a toll booth position controlling access to the things being bought.  It does not have anything to do with content quality.&lt;br /&gt;&lt;br /&gt;Why can this happen to begin with?  Because the audience is non-discriminating.  In other words, the audience is a poor judge of quality.  Or, in perhaps more direct terms, what Apple and many others do is to target an uneducated audience.  Because if the audience was more educated, then we wouldn't have to think music was good because somebody else likes it.  We would not even hear about Britney Spears, or Lady Gaga, or...&lt;br /&gt;&lt;br /&gt;... well?  It's not just about music, is it?  How about our crappy politicians, political parties, laws, justice, health care, salaries, jobs, environment, energy efficiency, journalism, etc?  How will this uneducated audience deal with today's very complex problems using their US-standard high school education?  It's just not possible, and so we get what we deserve: an exploitation marketplace like that set up for teenagers.&lt;br /&gt;&lt;br /&gt;But folks at Apple and similar places are not to blame (at least not entirely).  Rather, the non-discriminating audience is to blame.  Because if that same audience would stop accepting crappy stuff, then the producers of said crappy stuff would go out of business.  But, oh, alas... how do you fix the non-discriminating audience when it is so convenient to so many that it remains non-discriminating...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-3263148214813433192?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/3263148214813433192/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=3263148214813433192' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3263148214813433192'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3263148214813433192'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/12/non-discriminating-audience.html' title='The non-discriminating audience'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-6107059499601348619</id><published>2010-12-28T22:20:00.000-08:00</published><updated>2010-12-28T22:21:15.727-08:00</updated><title type='text'>Assessments 1.49</title><content type='html'>I just published a fix so that the Assessments RB extension works when Store is not loaded.  Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-6107059499601348619?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/6107059499601348619/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=6107059499601348619' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/6107059499601348619'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/6107059499601348619'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/12/assessments-149.html' title='Assessments 1.49'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-5720632092702712792</id><published>2010-12-27T15:19:00.001-08:00</published><updated>2010-12-27T23:37:43.115-08:00</updated><title type='text'>Smalltalk is typed</title><content type='html'>In the last post, I mentioned that I had found some fascinating material for chapter 6 (in Fundamentals' volume 2).  Here's a bit that has profound consequences: &lt;span style="font-style: italic;"&gt;Smalltalk is typed&lt;/span&gt;.  Well, of course, receivers have to be of the same type, right?  Yes, of course.  And that means one of the most fundamental types of objects in the image will cause endless performance issues because each one of them is an instance of a different class.  But which objects are singletons and instances of a singleton class?&lt;br /&gt;&lt;br /&gt;Classes.&lt;br /&gt;&lt;br /&gt;So that means that whenever you send messages like #respondsTo:, or #withAllSubclasses, or #superclass, or #isKindOf:, you will effectively cause message sends that cannot possibly be cached (particularly when you do them in a loop).  Consequently, performance stinks.  I know, because I did the experiment of replacing VisualWorks' sorted collection method dictionaries with actually hashed method dictionaries.  The performance of the enumeration part of this expression&lt;br /&gt;&lt;br /&gt;Object withAllSubclasses reverse do: [:each | each yourself]&lt;br /&gt;&lt;br /&gt;went up by 60-70%!  But there are many other such cases hidden all over the place.  For example, put all those classes in a Set and then look them up to see if they are there.  It happens --- slowly, but it does.  Now do the same with an identity set.  Bam!!!  It's two times faster!!!  But why?&lt;br /&gt;&lt;br /&gt;The message #= is implemented in Object as #==.  However, when the message #= is sent with a multitude of receiver classes, each send requires a lookup (and an expensive lookup at that, because you have to go all the way up to Object).  If you use an identity set, then you send #== directly --- which in most Smalltalks is not even a message send.  Thus, there are no lookups when comparing objects, and no wonder the code runs way faster.&lt;br /&gt;&lt;br /&gt;Huh... Smalltalk is typed, and there are consequences to that...&lt;br /&gt;&lt;br /&gt;Among other things, chapter 6 explores actual production problems in which this kind of stuff makes a huge difference.  Hopefully I can finish it off soon so I can move on to chapter 7, On Threading.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-5720632092702712792?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/5720632092702712792/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=5720632092702712792' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/5720632092702712792'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/5720632092702712792'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/12/smalltalk-is-typed.html' title='Smalltalk is typed'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-6360976830300386534</id><published>2010-12-26T20:36:00.001-08:00</published><updated>2010-12-26T20:38:23.242-08:00</updated><title type='text'>Book writing update...</title><content type='html'>I just finished the next to last section of chapter 6.  It turned out to be yet another example of fascinating material.  The draft is now 150 pages.  I hope to have the last section finished soon, and after that it's chapter 7 which, for some reason, I had previously decided to write on threading.  Semaphores, shared queues, critical sections, that's a lot of fun!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-6360976830300386534?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/6360976830300386534/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=6360976830300386534' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/6360976830300386534'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/6360976830300386534'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/12/book-writing-update.html' title='Book writing update...'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-6833690386095314115</id><published>2010-12-18T15:37:00.001-08:00</published><updated>2010-12-18T15:49:38.182-08:00</updated><title type='text'>How long is that name field?</title><content type='html'>Oh, everybody knows first and last names fit in 20 characters, right?  Well, ok, maybe 32.  Or maybe 50, to account for some edge cases &lt;a href="http://en.wikipedia.org/wiki/Naming_law_in_Sweden#Brfxxccxxmnpcccclllmmnprxvclmnckssqlbb11116"&gt;like this&lt;/a&gt;.  Right?  No, wrong.  &lt;a href="http://en.wikipedia.org/wiki/Wolfe%2B585,_Senior"&gt;How about 590 characters for a last name&lt;/a&gt;, plus 25 middle names and a suffix of Senior?  What happens to this guy's identity when he comes into the office to be registered in some computer system?&lt;br /&gt;&lt;br /&gt;And everybody knows that, in the US, everyone has a social security number, right?  Well, at least those on some payroll database.  Sure, unless you're one of those that has many, or one of those whose social security number has changed over time.  Does that mean that the HR department cannot keep track of your identity because someone in the IT department assumed that "one person" is identical to "one social security number"?&lt;br /&gt;&lt;br /&gt;If the software cannot handle the identifiers used to determine your identity, does that mean you don't exist?  For example, what happens if you are Chinese, &lt;a href="http://en.wikipedia.org/wiki/Naming_laws_in_the_People%27s_Republic_of_China"&gt;but the characters used in your name are not supported for input in computer systems&lt;/a&gt;?&lt;br /&gt;&lt;br /&gt;These are fascinating problems, because they illustrate how absolutely limited (and limiting) our software can be when we allow reality to be defined by computer programs.  You might want to read Data and Reality, by William Kent.  Some excerpts are available &lt;a href="http://www.bkent.net/Doc/darxrp.htm"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Now, what happens when we allow software to alter our behavior so it fits into certain patterns?  Don't we become a mindless gear in someone else's machinery?  For what purpose?  And who benefits?  Maybe we shouldn't celebrate some of today's "technological advances" so much...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-6833690386095314115?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/6833690386095314115/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=6833690386095314115' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/6833690386095314115'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/6833690386095314115'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/12/how-long-is-that-name-field.html' title='How long is that name field?'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-287518792834860867</id><published>2010-12-15T13:00:00.000-08:00</published><updated>2010-12-15T13:09:47.524-08:00</updated><title type='text'>About a couple of my books</title><content type='html'>I recently got a question about how the Fundamentals and the Mentoring Course books are different.  I thought I'd share the answer here.  But before I do, I want to thank you for your interest in my books.  I really appreciate the nice feedback I've received, and I hope to continue writing books that earn this kind of praise in the future.&lt;br /&gt;&lt;br /&gt;The Fundamentals and the Mentoring Course books focus on different aspects of programming.  For example, the Fundamentals books focus more on techique aspects such as how to use inheritance, polymorphism, enumeration, threading, weak references and similar features.  It is meant more as a training course on the material I think one should be able to do automatically and without thinking, with the intention of freeing up thinking resources for attacking the design problems that usually drive the choice of which technique to use in the first place.  In short, the Fundamentals books say "if you learn all this stuff so it's automatic, you will have more time to think about better designs for your programs".&lt;br /&gt;&lt;br /&gt;The Mentoring course takes a different approach.  It assumes readers already have a reasonable grasp on Smalltalk, and explores different design methodologies that have an impact in how programs come to be.  In particular, the book traces important influences that acted at the time Smalltalk was designed, but which usually remain hidden from view nowadays.  For example, the relevance of Laws of Form in Design Principles Behind Smalltalk is evident, and yet few people consider why it was so important that Dan Ingalls paraphrased Laws of Form in his paper.  There is a lot of energy behind techniques like test driven development, which emphasizes that one should start by writing tests, but it's much more effective to design and distribute object responsibilities first.  It's critical to be more aware of how these factors affect the code we write, because it is only when we consciously use these data points that Smalltalk's powers can be fully realized.  In short, the Mentoring Course book says "if you design your programs taking into account these bits of information, the resulting programs will be substantially and measurably better".&lt;br /&gt;&lt;br /&gt;So, as you can see, the books focus on different aspects of the problem of how to write effective Smalltalk code.  It's hard for me to make recommendations, but I hope these bits can help you choose if you have to.&lt;br /&gt;&lt;br /&gt;Now on to other questions I have received.  I am currently working on Fundamentals volume 2, and I am having a lot of fun.  The draft recently reached 130 pages, and I am getting closer to finishing off chapter 6 (on enumeration).  As soon as I am done with that, the next chapter is about recursion.  I have so much awesome material to write about, I can't wait!  I'd like to be done with volume 2 sometime next year.  Volume 3 should be quicker, as (so far) it will have the last chapter of the Fundamentals books, which is about optimization.  I hope I won't have to add another chapter, the chapter count is 10 and ten is a good number :).&lt;br /&gt;&lt;br /&gt;The code shown in the books was written mostly in VisualWorks.  However, I did not mean the code to be tied to any particular dialect.  In particular, the books do not talk about any UI specific material, so I think the code should work well on Pharo and others (perhaps with just a small change here and there).  I know some readers have already ported some of the code to Squeak / Pharo, so check out the usual code repositories and see if the code is already there.&lt;br /&gt;&lt;br /&gt;Regarding coupons, Lulu has a series of coupons for December, and they are running a different coupon a day.  I'd check their website and see what's the coupon of the day.  For example, today they are offering free second day shipping.&lt;br /&gt;&lt;br /&gt;Thank you again for your interest and appreciation.  Now, back to the scheduled programming.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-287518792834860867?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/287518792834860867/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=287518792834860867' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/287518792834860867'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/287518792834860867'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/12/about-couple-of-my-books.html' title='About a couple of my books'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-5663660746804048431</id><published>2010-12-06T12:39:00.000-08:00</published><updated>2010-12-06T12:44:37.555-08:00</updated><title type='text'>Smalltalks 2010 videos online</title><content type='html'>You can check Smalltalks 2010's videos at &lt;a href="http://www.fast.org.ar"&gt;FAST's website&lt;/a&gt;.  Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-5663660746804048431?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/5663660746804048431/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=5663660746804048431' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/5663660746804048431'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/5663660746804048431'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/12/smalltalks-2010-videos-online.html' title='Smalltalks 2010 videos online'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-149719937715947126</id><published>2010-12-01T09:13:00.000-08:00</published><updated>2010-12-01T09:14:25.840-08:00</updated><title type='text'>Lulu coupon campaign</title><content type='html'>Lulu started a campaign in which it will offer one coupon per day.  &lt;a href="http://www.lulu.com/holiday_coupons/?cid=eng_dbp1_advent_120110"&gt;Here's the link&lt;/a&gt;.  Today, they offer free shipping for anything over $35...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-149719937715947126?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/149719937715947126/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=149719937715947126' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/149719937715947126'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/149719937715947126'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/12/lulu-coupon-campaign.html' title='Lulu coupon campaign'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-2454913392015656232</id><published>2010-11-30T17:13:00.000-08:00</published><updated>2010-11-30T17:14:35.685-08:00</updated><title type='text'>Coming to Smalltalks 2011?</title><content type='html'>Who knows, you might end up going to Tigre.  The New York Times &lt;a href="http://travel.nytimes.com/2010/11/28/travel/28tigre-overnighter.html?pagewanted=1&amp;amp;src=dayp"&gt;explains&lt;/a&gt;...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-2454913392015656232?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/2454913392015656232/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=2454913392015656232' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/2454913392015656232'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/2454913392015656232'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/11/coming-to-smalltalks-2011.html' title='Coming to Smalltalks 2011?'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-132508958073149395</id><published>2010-11-30T16:38:00.001-08:00</published><updated>2010-11-30T16:39:34.513-08:00</updated><title type='text'>20th anniversary</title><content type='html'>I started playing Football Champ on November 30th, 20 years ago.  What a trip :).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-132508958073149395?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/132508958073149395/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=132508958073149395' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/132508958073149395'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/132508958073149395'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/11/20th-anniversary.html' title='20th anniversary'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-7593486420348177009</id><published>2010-11-28T12:30:00.000-08:00</published><updated>2010-11-28T12:31:23.232-08:00</updated><title type='text'>Lulu offers 25% off coupon</title><content type='html'>Enter coupon code &lt;b&gt;CYBER305&lt;/b&gt; at checkout and receive 25% off any order. The maximum savings for this offer is $185. Enter coupon code &lt;b&gt;MONDAY305&lt;/b&gt;  at checkout and receive 30% off your order of $750 or more. The maximum  savings for this offer is $750. Sorry, but these offers are only valid  in US dollars and cannot be applied to previous orders. You can only use  these codes once per account, and unfortunately you can't use these  coupons in combination with other coupon codes. These great offers  expire on November 29, 2010 at 11:59 PM PST, so don't miss out! While  very unlikely, we do reserve the right to change or revoke this offer at anytime, and of course we cannot offer this coupon where  it is against the law to do so.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-7593486420348177009?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/7593486420348177009/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=7593486420348177009' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7593486420348177009'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7593486420348177009'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/11/lulu-offers-25-off-coupon.html' title='Lulu offers 25% off coupon'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-8631427359303988443</id><published>2010-11-27T15:13:00.001-08:00</published><updated>2010-11-27T15:18:37.261-08:00</updated><title type='text'>Smalltalks 2010 photos available!</title><content type='html'>I just uploaded a bunch of photos taken at Smalltalks 2010 &lt;a href="http://picasaweb.google.com/andres.valloud/Smalltalks2010#"&gt;here&lt;/a&gt;.  Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-8631427359303988443?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/8631427359303988443/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=8631427359303988443' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/8631427359303988443'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/8631427359303988443'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/11/smalltalks-2010-photos-available.html' title='Smalltalks 2010 photos available!'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-4443837613278842019</id><published>2010-11-24T11:47:00.001-08:00</published><updated>2010-11-24T11:48:14.786-08:00</updated><title type='text'>Lulu offers free shipping within the US</title><content type='html'>Enter coupon code &lt;b&gt;GROUNDFREE305&lt;/b&gt; at checkout and receive free  ground shipping on orders of $50 or more. The maximum savings for this  offer is $100. Shipping destinations must be within the United States.   Sorry, but this offer is only valid in US dollars and cannot be applied  to previous orders. You can only use this code once per account, and  unfortunately you can't use this coupon in combination with other coupon  codes. This great offer expires on November 26, 2010 at 11:59 PM PST,  so don't miss out! While very unlikely, we do reserve the right to  change or revoke this offer at anytime, and of course we cannot offer  this coupon where it is against the law to do so.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-4443837613278842019?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/4443837613278842019/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=4443837613278842019' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4443837613278842019'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4443837613278842019'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/11/lulu-offers-free-shipping-within-us.html' title='Lulu offers free shipping within the US'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-202790134865071311</id><published>2010-11-12T21:00:00.000-08:00</published><updated>2010-11-13T07:24:43.056-08:00</updated><title type='text'>Smalltalks 2010: were you there when it happened?</title><content type='html'>So you thought you'd be ok missing this conference, right?  Really?   Maybe you should reconsider.  We just came back from the social event,  in which Eliot Miranda played guitar for us.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_r5DNHApjU60/TN4f4XmU8sI/AAAAAAAACQs/dvVx0vjqboA/s1600/DSC_8020.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 266px;" src="http://2.bp.blogspot.com/_r5DNHApjU60/TN4f4XmU8sI/AAAAAAAACQs/dvVx0vjqboA/s400/DSC_8020.jpg" alt="" id="BLOGGER_PHOTO_ID_5538899644980196034" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Moreover, Eliot was joined by  Eleazar Madriz.  Eleazar is originally from Venezuela, although he came to the conference from Brazil.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_r5DNHApjU60/TN4gTFDwaOI/AAAAAAAACQ0/HRlAIjhYHjQ/s1600/DSC_8028.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 266px;" src="http://1.bp.blogspot.com/_r5DNHApjU60/TN4gTFDwaOI/AAAAAAAACQ0/HRlAIjhYHjQ/s400/DSC_8028.jpg" alt="" id="BLOGGER_PHOTO_ID_5538900103859824866" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;If you were not there, then you missed Eliot's tune and the subsequent jam session.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_r5DNHApjU60/TN4gvk1V0WI/AAAAAAAACQ8/CKa-tspd32w/s1600/DSC_8047.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 266px;" src="http://4.bp.blogspot.com/_r5DNHApjU60/TN4gvk1V0WI/AAAAAAAACQ8/CKa-tspd32w/s400/DSC_8047.jpg" alt="" id="BLOGGER_PHOTO_ID_5538900593425633634" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;... empezó un plano, un plano en R^2...&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_r5DNHApjU60/TN4hDuC2vgI/AAAAAAAACRE/9oF6a8FQgOY/s1600/DSC_8031.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 266px; height: 400px;" src="http://1.bp.blogspot.com/_r5DNHApjU60/TN4hDuC2vgI/AAAAAAAACRE/9oF6a8FQgOY/s400/DSC_8031.jpg" alt="" id="BLOGGER_PHOTO_ID_5538900939495620098" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;What is the meta-problem?  Smalltalk, baby!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-202790134865071311?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/202790134865071311/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=202790134865071311' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/202790134865071311'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/202790134865071311'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/11/smalltalks-2010-were-you-there-when-it.html' title='Smalltalks 2010: were you there when it happened?'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_r5DNHApjU60/TN4f4XmU8sI/AAAAAAAACQs/dvVx0vjqboA/s72-c/DSC_8020.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-4518252166166077795</id><published>2010-11-12T20:58:00.001-08:00</published><updated>2010-11-12T20:59:08.669-08:00</updated><title type='text'>Smalltalks 2010 makes the newspaper</title><content type='html'>Here is the article, including some video and an interview.  &lt;a href="http://www.lacalle-online.com/interior.php?ID=199430"&gt;Check it out&lt;/a&gt;!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-4518252166166077795?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/4518252166166077795/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=4518252166166077795' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4518252166166077795'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4518252166166077795'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/11/smalltalks-2010-makes-newspaper.html' title='Smalltalks 2010 makes the newspaper'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-4982389576131171821</id><published>2010-11-10T07:02:00.000-08:00</published><updated>2010-11-10T07:03:08.674-08:00</updated><title type='text'>Lulu's November coupon</title><content type='html'>Enter coupon code "TURKEY" during checkout and save 10% off the purchase price.  Discount cannot be used to pay for, nor shall be applied to, applicable taxes or shipping and handling charges.  Maximum amount that may be applied to discount is $10.00 per account. Promotional codes cannot be applied to any previous orders.  No exchanges or substitutions allowed.  Only one valid promotional code may be used per order.  Offer expires November 30, 2010 at 11:59 PM EDT.  Lulu.com reserves the right to change or revoke this offer at any time.  Void where prohibited.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-4982389576131171821?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/4982389576131171821/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=4982389576131171821' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4982389576131171821'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4982389576131171821'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/11/lulus-november-coupon.html' title='Lulu&apos;s November coupon'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-2168598572905990869</id><published>2010-11-06T13:35:00.001-07:00</published><updated>2010-11-06T13:35:34.271-07:00</updated><title type='text'>FTP server down for a few weeks</title><content type='html'>The FTP server will be unavailable for a few weeks.  It should be back up after thanksgiving.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-2168598572905990869?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/2168598572905990869/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=2168598572905990869' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/2168598572905990869'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/2168598572905990869'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/11/ftp-server-down-for-few-weeks.html' title='FTP server down for a few weeks'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-665095428594825766</id><published>2010-11-04T22:26:00.000-07:00</published><updated>2010-11-04T22:33:16.953-07:00</updated><title type='text'>Did you see Smalltalks 2010's schedule?</title><content type='html'>Seriously, what an amazing lineup for the talks, which also include a GemStone tutorial.  And did I mention there is a formal research track too?  Check it out at the &lt;a href="http://www.fast.org.ar"&gt;FAST foundation's website&lt;/a&gt;, under the schedule section.&lt;br /&gt;&lt;br /&gt;So, you are not coming?...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-665095428594825766?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/665095428594825766/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=665095428594825766' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/665095428594825766'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/665095428594825766'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/11/did-you-see-smalltalks-2010s-schedule.html' title='Did you see Smalltalks 2010&apos;s schedule?'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-8787403765093262551</id><published>2010-11-02T10:38:00.000-07:00</published><updated>2010-11-02T10:48:10.787-07:00</updated><title type='text'>This is a problem (mod the hyperbole)</title><content type='html'>Here is a neat &lt;a href="http://www.theregister.co.uk/2010/11/01/comp_sci_graduates_need_more_skills/"&gt;article&lt;/a&gt; complaining that CS students these days "don't study algorithms", can't spell or write properly, etc.  I do not know to what extent the assertions hold, but it seems to me they cannot be &lt;span style="font-style: italic;"&gt;that&lt;/span&gt; far from reality.  I remember looking at 4 year college/university graduation works (thesis, or whatever else they are called depending on the college/university) at one point, and finding something equivalent to "how I spell checked XML documents using the standard Microsoft tool set".  Just sad...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-8787403765093262551?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/8787403765093262551/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=8787403765093262551' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/8787403765093262551'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/8787403765093262551'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/11/this-is-problem-mod-hyperbole.html' title='This is a problem (mod the hyperbole)'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-4644865245591259867</id><published>2010-10-29T00:27:00.000-07:00</published><updated>2010-10-29T01:10:58.785-07:00</updated><title type='text'>Definition of negligence, please?</title><content type='html'>Check this out: &lt;a href="http://www.nytimes.com/2010/10/29/nyregion/29young.html?hp"&gt;you can sue a 4 year old for negligence if the child crashes into a senior citizen &lt;/a&gt;&lt;a href="http://www.nytimes.com/2010/10/29/nyregion/29young.html?hp"&gt;while riding a bicycle with training wheels &lt;/a&gt;&lt;a href="http://www.nytimes.com/2010/10/29/nyregion/29young.html?hp"&gt;causing injury leading to death&lt;/a&gt;.  If that's negligent enough to merit a lawsuit, then what escapes this criterion for what constitutes negligence (other than acts committed by a child less than 4 years old)?&lt;br /&gt;&lt;br /&gt;During soccer matches, heart attacks are more likely.  Are players negligent because their playing leads to death of others?  Or are TV stations negligent for knowingly broadcasting the game?  Or are TV manufacturers negligent for creating devices that are too realistic, which lead to excessive stress and death?  Is the dead viewer negligent because they committed suicide?&lt;br /&gt;&lt;br /&gt;What if the person suffering the heart attack was a train driver listening to the game on the radio?   Is the deceased guilty of involuntary (negligent) mass manslaughter because the train did not stop at a signal?  Or are the train line managers negligent for not installing proper fail safe train stop devices?&lt;br /&gt;&lt;br /&gt;Basically everything you eat or drink has some substance that makes you sick.  For example, tap water has traces of several prescription drugs.  Are you negligent for drinking?  Are the drug companies negligent for not making the drugs biodegradable?  Are the municipalities negligent for not filtering the water enough?  What about the bottled water companies that merely bottle tap water, are they negligent too?  Are those that throw out prescription drugs in the garbage (landfills) or toilet / sink (sewer) negligent?&lt;br /&gt;&lt;br /&gt;Assume you vote for someone that does something that in the end is a bad idea.  Are you negligent for voting "wrong"?  In other words, let's say that in the 2100 elections the Politicians United Party's candidate is elected president, and that during the tenure the PUP's president decides to raise taxes to 200%.  Are all PUP voters negligent for voting in this president?  What about the opposition, those who voted the Allied Politician Party?  Are all APP voters negligent for not winning the election against the PUP?  Or, on the flip side, are APP voters now proven non-negligent because their candidate was better, even if the candidate did not get a chance to perform and prove to be a better choice?  Does that prove PUP voters were negligent? Or are PUP voters proven non-negligent because the APP's candidate had negligently promised to increase the retirement age to 100?&lt;br /&gt;&lt;br /&gt;Hindsight is always 20-20, but there is more than that.  The issue is one of expectations.  IME, the more you learn about different things, the more you see you cannot take things for granted.  In particular, you cannot take impeccable performance as a given.  We're merely human, and we make mistakes.  So where is this expectation of perfect behavior coming from?  Is that even reasonable to begin with?  And don't forget that the only way to stop making mistakes at your job is to not do your work.&lt;br /&gt;&lt;br /&gt;But what about the senior citizen run over by a 4 year old on a bicycle?  Should we think the senior citizen was negligent for not having bodyguards?  Why wasn't the senior citizen equipped with a siren / rotating light hat to make children riding bicycles aware of the road hazard?  Why wasn't there a slow moving vehicle sign attached to the senior citizen's clothing?  Why wasn't the estate of the senior citizen (the plaintiffs in the lawsuit) concerned enough with the senior citizen so as to provide a safe environment for the senior citizen to walk in?&lt;br /&gt;&lt;br /&gt;The issue is that if you push the argument too much, then you prove everyone is negligent, the term "negligent" loses its meaning... and everyone can sue everyone else for negligence. That does not seem like a desirable conclusion, so maybe we need to look at things differently.  So, is the lawsuit's matter ultimately an issue of taking risks (getting run over) in exchange for quality of life (being able to walk on your own) instead?  If so, why is negligence in the picture at all?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-4644865245591259867?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/4644865245591259867/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=4644865245591259867' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4644865245591259867'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4644865245591259867'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/10/definition-of-negligence-please.html' title='Definition of negligence, please?'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-5184838618998546215</id><published>2010-10-28T16:41:00.000-07:00</published><updated>2010-10-28T16:42:06.825-07:00</updated><title type='text'>20-25% discount at Lulu</title><content type='html'>Enter coupon code &lt;b&gt;TRICK305&lt;/b&gt; at checkout and receive 20% off your order. The maximum savings for this offer is $100. Enter coupon code &lt;b&gt;TREAT305&lt;/b&gt;  at checkout and receive 25% off your order of $500 or more. The maximum  savings for this offer is $500. Sorry, but these offers are only valid  in US dollars and cannot be applied to previous orders. You can only use  these codes once per account, and unfortunately you can't use these  coupons in combination with other coupon codes. These great offers  expire on November 1, 2010 at 11:59 PM, so don't miss out! While very  unlikely, we do reserve the right to change or revoke this offer at anytime, and of course we cannot offer this coupon where it is  against the law to do so.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-5184838618998546215?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/5184838618998546215/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=5184838618998546215' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/5184838618998546215'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/5184838618998546215'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/10/20-25-discount-at-lulu.html' title='20-25% discount at Lulu'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-7737853086819716888</id><published>2010-10-26T14:13:00.001-07:00</published><updated>2010-10-26T14:13:49.179-07:00</updated><title type='text'>ReferenceFinder 1.25</title><content type='html'>I added the special object array as a scanning root.  Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-7737853086819716888?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/7737853086819716888/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=7737853086819716888' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7737853086819716888'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7737853086819716888'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/10/referencefinder-125.html' title='ReferenceFinder 1.25'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-3332233979927321484</id><published>2010-10-19T00:28:00.000-07:00</published><updated>2010-10-19T00:44:12.840-07:00</updated><title type='text'>Thank you, Benoît</title><content type='html'>Benoît Mandelbrot has passed away.  In reading this &lt;a href="http://www.newscientist.com/blogs/shortsharpscience/2010/10/fractalist-benoit-mandelbrot-d.html"&gt;article&lt;/a&gt;, I ran into the following.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center; font-style: italic;"&gt;&lt;span&gt;He called himself a maverick because he spent his life doing only what  he felt was right &lt;/span&gt;and never belonging to a particular scientific community.&lt;/div&gt;&lt;br /&gt;Well, exactly what would you do in your life, what you feel is wrong?  It's so obvious that you should do what you feel is best, right?  And yet, how many of us fall short of this standard for a multitude of excu I mean reasons?  This statement reminds me of &lt;a href="http://blogten.blogspot.com/2010/04/knuth-quote.html"&gt;what Knuth said in an interview&lt;/a&gt;: that you should do what you think is valuable because then you will care and, in the long run, your efforts will show.  And before you wonder if Mandelbrot had issues with "communities", check the actual Knuth quote:&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-style: italic;"&gt;[...] too often [...] people will do  something against their own gut instincts because  they think the  community wants them to do it that way, so people will  work on a  certain subject even though they aren't terribly interested in  it  because they think that they'll get more prestige by working on it. I   think you get more prestige by doing good science than by doing popular   science because if you go with what you really think is important then   it's a higher chance that it really is important in the long run and   it's the long run which has the most benefit to the world.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Do not simply go along whatever the "majority" thinks, because clearly this "majority" is not producing original knowledge.  Nobody will do your thinking and creating for you, that is something you must develop on your own.  But, you know, the clock is ticking.  Are you done yet?...&lt;br /&gt;&lt;br /&gt;Thank you for fractals, Benoît!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-3332233979927321484?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/3332233979927321484/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=3332233979927321484' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3332233979927321484'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3332233979927321484'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/10/thank-you-benoit.html' title='Thank you, Benoît'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-4427812935522412791</id><published>2010-10-18T00:39:00.000-07:00</published><updated>2010-10-18T00:46:50.684-07:00</updated><title type='text'>Assessments 1.48</title><content type='html'>I added timestamps to the file logging result policies.  Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-4427812935522412791?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/4427812935522412791/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=4427812935522412791' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4427812935522412791'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4427812935522412791'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/10/assessments-148.html' title='Assessments 1.48'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-3163556309917564154</id><published>2010-10-16T00:18:00.000-07:00</published><updated>2010-10-16T00:19:30.299-07:00</updated><title type='text'>Excellent</title><content type='html'>I had forgotten about &lt;a href="http://www.geocities.jp/nchikada/pac/"&gt;this&lt;/a&gt;, but I think it's really cool.&lt;br /&gt;&lt;br /&gt;So, if they can do that with Excel, then what can we do?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-3163556309917564154?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/3163556309917564154/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=3163556309917564154' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3163556309917564154'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3163556309917564154'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/10/excellent.html' title='Excellent'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-3061197011251371652</id><published>2010-10-15T15:28:00.000-07:00</published><updated>2010-10-15T15:29:29.436-07:00</updated><title type='text'>Argentine Smalltalk Community Interview at ESUG 2010</title><content type='html'>Sometimes people wonder how come Smalltalk is so popular in Argentina.  Hernán Wilkinson and Leandro Caniglia explain this at ESUG 2010 &lt;a href="http://blip.tv/file/4211623/"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-3061197011251371652?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/3061197011251371652/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=3061197011251371652' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3061197011251371652'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3061197011251371652'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/10/argentine-smalltalk-community-interview.html' title='Argentine Smalltalk Community Interview at ESUG 2010'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-5340131903621831850</id><published>2010-10-14T23:30:00.001-07:00</published><updated>2010-10-14T23:32:46.822-07:00</updated><title type='text'>ReferenceFinder 1.24</title><content type='html'>I have been trying to track down some leak problems lately, so I went back to my ReferenceFinder package to find the source of the problem.  In the process, I updated it to use the reflection API as much as possible so it can work around proxy objects without disturbing them.  Also, for those interested, I updated the Distinctions package.  This package implements Form and Distinction, the objects that Spencer-Brown talks about in his book Laws of Form.  The reference finder is implemented on top of Form and Distinction, as per the &lt;a href="http://www.lulu.com/avSmalltalkBooks"&gt;mentoring course book&lt;/a&gt;'s chapter 5.  Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-5340131903621831850?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/5340131903621831850/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=5340131903621831850' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/5340131903621831850'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/5340131903621831850'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/10/referencefinder-124.html' title='ReferenceFinder 1.24'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-4089239994162526365</id><published>2010-10-13T17:42:00.000-07:00</published><updated>2010-10-13T17:45:23.162-07:00</updated><title type='text'>That school that spied students with their own laptops...</title><content type='html'>Remember that Philadelphia school that gave laptops to its students, only to turn on the machines' cameras on the kids at their own homes?  And how the people involved, when questioned because they would be witnesses to the school's "soap opera" replied "I know, I love it!"?&lt;br /&gt;&lt;br /&gt;Well, here we go.  First, the lawsuit was &lt;a href="http://www.theregister.co.uk/2010/10/13/spycam_school_damages/"&gt;settled&lt;/a&gt; in apparently everyone's best interest.  However, what is not so clear to me, is that there was &lt;a href="http://www.theregister.co.uk/2010/08/19/school_webcam_spying_no_crime/"&gt;no criminal intent&lt;/a&gt; in spying the kids.  Really?  &lt;a href="http://www.youtube.com/watch?v=6wXkI4t7nuc"&gt;It is a crime to possess a certain lobster&lt;/a&gt;, but it is not a crime to spy on students?  Huh?  I don't get it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-4089239994162526365?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/4089239994162526365/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=4089239994162526365' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4089239994162526365'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4089239994162526365'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/10/that-school-that-spied-students-with.html' title='That school that spied students with their own laptops...'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-2089730127879018428</id><published>2010-10-11T10:19:00.000-07:00</published><updated>2010-10-12T18:02:10.573-07:00</updated><title type='text'>Deutsch's criteria for fixing bugs</title><content type='html'>Peter Deutsch did a lot of things, such as coming up with a JIT Smalltalk VM.  There are other smaller things, like the &lt;a href="http://en.wikipedia.org/wiki/Fallacies_of_Distributed_Computing"&gt;8 fallacies of distributed computing&lt;/a&gt;, or his criteria to evaluate bug fixes.  I couldn't find a reference to the bug criteria, though.  Thus, in short, Deutsch states you fix a bug when:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;you can completely explain how the bug occurs, and&lt;br /&gt;&lt;/li&gt;&lt;li&gt;you can prove the change you make addresses the verifiable cause of the bug.&lt;/li&gt;&lt;/ul&gt;Unfortunately, it is common to hear claims of having fixed a bug just because "I made a change and the bug went away, therefore I addressed the source of the bug".  In other words, an instance of the &lt;a href="http://en.wikipedia.org/wiki/Post_hoc_ergo_propter_hoc"&gt;post hoc ergo propter hoc&lt;/a&gt; logical fallacy.&lt;br /&gt;&lt;br /&gt;This type of fallacy comes up quite often.  For instance, when working with C, you can make a C pointer aliasing problem evident by changing code that is far away from where the issue manifests.  I found a case of this phenomenon not long ago. The inclusion of code that would be optimized away to nothing in one function affected register allocation in some other function that had nothing to do with the first one.  In the second function, you would see a bug.&lt;br /&gt;&lt;br /&gt;Should you claim that changing the first function fixes the bug in the second one?  Or that the change in the first function somehow controls a compiler bug?  Or would it be better to determine the source of the bug, in which case you can be sure that the change you make actually addresses the problem?&lt;br /&gt;&lt;br /&gt;Alas, since sometimes these investigations take a long time, you often see things like "well I changed the compiler flags and that made the bug go away, therefore it's a compiler bug".  Maybe, but you have to prove it, not merely state it.  In the above case, the real issue was the source code was in violation of the C99 spec, which defines what the C language is to begin with. Clearly, as far as the compiler is concerned, the "bug" was a case of garbage in =&gt; garbage out. But, of course, as soon as you fix the source code so it does not rely on pointer aliasing, the compiler magically produces the intended code regardless of the optimization level.  Sigh...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-2089730127879018428?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/2089730127879018428/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=2089730127879018428' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/2089730127879018428'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/2089730127879018428'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/10/deutschs-criteria-for-fixing-bugs.html' title='Deutsch&apos;s criteria for fixing bugs'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-2388526343265980585</id><published>2010-10-10T15:44:00.000-07:00</published><updated>2010-10-10T15:45:43.611-07:00</updated><title type='text'>Ten is a really good number</title><content type='html'>I've been told that ten is a really good number.  Apparently I had missed this completely.  But, yes.  Today is 10/10/10.  Long life ten the number!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-2388526343265980585?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/2388526343265980585/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=2388526343265980585' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/2388526343265980585'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/2388526343265980585'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/10/ten-is-really-good-number.html' title='Ten is a really good number'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-1604023547505428942</id><published>2010-10-08T15:41:00.001-07:00</published><updated>2010-10-08T15:58:29.258-07:00</updated><title type='text'>Smalltalk 2010 declared of provincial interest</title><content type='html'>A bit ago, the city of Concepción del Uruguay declared Smalltalks 2010 of municipal interest.  Then, the &lt;a href="http://www.entrerios.gov.ar/msyas/actier/"&gt;Science, Technology and Innovation Agency of Entre Ríos (ACTIER)&lt;/a&gt; agency declared Smalltalks 2010 of interest as detailed &lt;a href="http://blogten.blogspot.com/2010/09/smalltalks-2010-declared-of-provincial.html"&gt;here&lt;/a&gt;.  Now, the Province (State) of Entre Ríos has just declared Smalltalks 2010 of provincial interest on the grounds that:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The faculty of the conference's site, the Universidad Tecnológica Nacional site at Concepción del Uruguay, proposes the motion to declare Smalltalks 2010 of provincial interest, as organized by the Fundación Argentina de Smalltalk (&lt;a href="http://www.fast.org.ar/"&gt;FAST&lt;/a&gt;), and to be carried out in Concepción del Uruguay, from November 11th through November 13th;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Said foundation is dedicated to to support and communicate the work of Argentine Smalltalk developers, faculty and researchers within the international Smalltalk community;&lt;/li&gt;&lt;li&gt;Said event has been organized annually since 2007, with local and international attendance including students, developers, faculty and researchers, who offer Smalltalk technology presentations and tutorials of great interest to the audience.&lt;/li&gt;&lt;/ul&gt;Many thanks go to Entre Ríos' Governor Don Sergio Daniel Urribarri, and to Entre Ríos Secretary of State and Minister of Education and Justice Cr. Adán Humberto Bahl.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-1604023547505428942?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/1604023547505428942/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=1604023547505428942' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/1604023547505428942'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/1604023547505428942'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/10/smalltalk-2010-declared-of-provincial.html' title='Smalltalk 2010 declared of provincial interest'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-4137509756731029271</id><published>2010-10-08T01:34:00.001-07:00</published><updated>2010-10-08T01:34:57.429-07:00</updated><title type='text'>New Lulu coupon, expires October 11th</title><content type='html'>Enter coupon code &lt;b&gt;EXPLORE305&lt;/b&gt; at checkout and receive 14.92% off any order. Maximum savings is $50.  Expires on October 11, 2010 at 11:59 PM.  Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-4137509756731029271?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/4137509756731029271/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=4137509756731029271' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4137509756731029271'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4137509756731029271'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/10/new-lulu-coupon-expires-october-11th.html' title='New Lulu coupon, expires October 11th'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-6917183869183224535</id><published>2010-10-03T13:52:00.000-07:00</published><updated>2010-10-04T17:34:14.300-07:00</updated><title type='text'>About Google's new WebP photo format</title><content type='html'>Google has recently released a new lossy photo format called &lt;a href="http://code.google.com/speed/webp/"&gt;WebP&lt;/a&gt;.  The claim is that it compresses photos more effectively than JPG, thus reducing the file size, and yet the resulting file could be mistaken for a JPG file in terms of quality.  Sometimes, size gains of about 40% are claimed.  How much of this is actually an advantage of WebP?&lt;br /&gt;&lt;br /&gt;Generally speaking, there are several problems with this type of assertion.  First, over time, it has become clear to me that several sources of JPG files do a terrible compression job.  Usually, the problem is that, after the lossy image representation is derived, this lossy representation has to be packed losslessly to produce the JPG file, and the lossless compression method is not very good.  For example, let's take Photoshop.  If I save an "optimized baseline" medium quality JPG file of the mentoring course book's cover, I get a 194kb file.  If I look into it with some sort of hex editor, I see several sections that are obviously not compressed very well.  To prove the point, if I compress Photoshop's JPG 194kb file with rar, I get a 108kb archive.  Similarly, digital cameras typically produce huge JPG files that, upon inspection,  look as if the firmware was prioritizing coding speed over coding  efficiency.  In short, some JPG files are compressible enough that WebP's file size advantage may be a result of poor internal JPG lossless compression.  But then, why not fix JPG's lossless compression?&lt;br /&gt;&lt;br /&gt;Moreover, Google used specific JPG encoder libraries in their benchmarks.  How do you know these  are coding the image effectively?  For instance, I remember that an old  program called Image Alchemy had a normal JPG mode, and an "optimized  Huffman" mode that regularly produced smaller files than the normal  mode.  The "Huffman optimization" was a secondary pass over the already  lossy representation, so this optimization did not result in additional  information loss.  In addition, JPG provides for arithmetic coding,  which should result in smaller files.  However, arithmetic coding is not  always used for compatibility reasons.  And, even if it were,  arithmetic coding's representation efficiency is critically dependent on  the compression model driving the probability predictions.  When Google  compares effectively random JPG files from the web with their WebP  counterparts, how much of the comparison is between a &lt;span style="font-style: italic;"&gt;specific&lt;/span&gt; JPG encoder library and WebP, as opposed to between JPG's &lt;span style="font-style: italic;"&gt;intrinsic&lt;/span&gt; efficiency and WebP's &lt;span style="font-style: italic;"&gt;intrinsic&lt;/span&gt;  efficiency?  In the case of JPG with arithmetic coding, how much of the  comparison is between a (probably unsophisticated) probability model  driving the arithmetic coder and WebP's compression format?&lt;br /&gt;&lt;br /&gt;Sometimes, recompressing a JPG file with a more efficient JPG compressor makes a huge difference.  I have personally seen 7mb JPG Photoshop files go down to 1mb JPG files that cannot be distinguished from the original.  Part of the problem with recompressing JPG files is, well, how do you know that the first JPG compression pass did not make it easier for the second compressor to make a smaller file?  Would different compressors produce significantly different files if they started with the same original photo?  This is a problem because Google used WebP to recompress existing JPG files.  It would have been more interesting to, say, obtain a significant sample of photos stored in raw format first, and then compare the results of packing the raw files with JPG and WebP.  As it is presented, Google's presentation of WebP in contrast with JPG is not a true apples to apples comparison.&lt;br /&gt;&lt;br /&gt;Finally, different JPG encoders have varying ideas of what "quality" means.  For instance, if quality in encoder A is specified with a number between 0 and 100, is using 30 equivalent to encoder B's quality of 3 in a scale from 0 to 10?  How do the "quality" settings of various JPG encoders compare to that of WebP?  If this is not known, then what does it mean when Google claims WebP produces smaller files?  Similarly, I do not think there is a clear notion of what "photo  quality" means.  How can you tell what JPG's SNR is compared to WebP's  SNR if you do not have access to the original photo?  And if you do not  have SNR information, how do you know that WebP is doing a better  encoding job, and how do you assess the smaller file size claim? For instance, the chroma information in the sample photo with the guy against the blue background is obviously very different in WebP.  Why? Also, note that SNR is not the only way to measure picture quality.  What about the psychovisual enhancements provided by e.g.: DivX and x264?  Those can make photos and video (I get to say video because WebP is derived from VP8) look better, even if the PSNR is lower.&lt;br /&gt;&lt;br /&gt;For these reasons, it's not clear to me that WebP is necessarily all that it's claimed to be.  And if you cannot tell, then why is the introduction of another compression format preferable over providing improved JPG coders that produce results similar to WebP?  For example, I took one of Google's comparison JPG photos and repacked it with a more efficient JPG encoder.  I got a file size essentially equal to that of WebP.  Why bother with WebP if the same results can be achieved with an existing format?&lt;br /&gt;&lt;br /&gt;I wish Google would provide a more in depth analysis in its WebP page.  I do not mean to imply that WebP is not a better encoding mechanism than JPG.  Given that it has the benefit of ~20 years of research compared to JPG's original 1990s specification, it probably is better.  However, the main claim of WebP is that it produces smaller files thus alleviating the problem of transmitting JPG files over the internet, and I have not seen enough evidence to support this claim other than "we recompressed a random sample of photos already compressed with random JPG packers and we got smaller files".  Sure, but you could have achieved that with a better JPG coder or even gzip.  Thus, I can't help wondering whether the format is really an attempt to further popularize their VP8 video codec, from which WebP is derived...&lt;br /&gt;&lt;br /&gt;Speaking of video codecs, one of JPG's criticisms is that it introduces blockiness because it uses 8x8 chunks to compress the photo.  WebP seems to handle blockiness better.  But WebP is derived from a video codec, and many modern video codecs do deblocking when decompressing.  If WebP is using a deblocker, then the comparison with JPG is further suspect.  In other words, if you added a deblocker to your standard JPG decoder, would you achieve results comparable to that of WebP?  Without technical details, how do you know?&lt;br /&gt;&lt;br /&gt;For more details, see for example &lt;a href="http://englishhard.com/2010/10/01/real-world-analysis-of-googles-webp-versus-jpg/"&gt;here&lt;/a&gt; (and make sure to read the comments!).  Also, for an analysis of WebP seen as a VP8 I-frame, see &lt;a href="http://x264dev.multimedia.cx/archives/541"&gt;here&lt;/a&gt;.  Ouch!&lt;br /&gt;&lt;br /&gt;Meanwhile, if the goal is to speed up the web, could we please have an HTTP extension such that loading a website requires only one request?  Certainly, opening numerous connections for every single page element is going to introduce round trip latencies and other problems such as suboptimal use of frames that do not reach the MTU packet size.  If we switched to a single connection, with the individual files streamed over it with some sort of tar transport, then we could run some form of even a very simple compression scheme such as &lt;a href="http://en.wikipedia.org/wiki/ITU-T_V-Series_Recommendations"&gt;v.42bis or v.44&lt;/a&gt; on the stream so that all the easily compressible information is crunched on the fly for faster throughput... for compression examples, see &lt;a href="http://www.websiteoptimization.com/speed/tweak/compress/"&gt;here&lt;/a&gt; (although note this one does not seem to provide the tar capability) and Google's own research &lt;a href="http://code.google.com/speed/articles/web-metrics.html"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-6917183869183224535?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/6917183869183224535/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=6917183869183224535' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/6917183869183224535'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/6917183869183224535'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/10/new-webp-format.html' title='About Google&apos;s new WebP photo format'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-4155502328211354321</id><published>2010-10-01T00:30:00.000-07:00</published><updated>2010-10-01T00:32:59.559-07:00</updated><title type='text'>Lulu's October 10% off coupon</title><content type='html'>Lulu's 10% off coupon for October is HARVEST.  &lt;a href="http://www.lulu.com/avSmalltalkBooks"&gt;Enjoy&lt;/a&gt;!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Enter coupon code "HARVEST" during checkout and save 10% off the purchase price.  Discount cannot be used to pay for, nor shall be applied to, applicable taxes or shipping and handling charges.  Maximum amount that may be applied to discount is $10.00 per account. Promotional codes cannot be applied to any previous orders.  No exchanges or substitutions allowed.  Only one valid promotional code may be used per order.  Offer expires October 31, 2010 at 11:59 PM EDT.  Lulu.com reserves the right to change or revoke this offer at any time.  Void where prohibited.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-4155502328211354321?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/4155502328211354321/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=4155502328211354321' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4155502328211354321'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4155502328211354321'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/10/lulus-october-10-off-coupon.html' title='Lulu&apos;s October 10% off coupon'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-879842454661926355</id><published>2010-09-27T17:39:00.000-07:00</published><updated>2010-09-27T18:04:48.141-07:00</updated><title type='text'>Smalltalks 2010 declared of provincial interest</title><content type='html'>The Smalltalks 2010 conference in Argentina has been declared of interest by the &lt;a href="http://www.entrerios.gov.ar/msyas/actier/"&gt;Science, Technology and Innovation Agency of Entre Ríos (ACTIER)&lt;/a&gt; on the grounds that:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;The main objectives of this event are to create an environment conducive to promote research and development, to integrate the Argentine and international Smalltalk communities, and to stimulate the publication of educative and research works;&lt;/li&gt;&lt;li&gt;That the organization entities (namely: &lt;a href="http://www.fast.org.ar/"&gt;the FAST foundation&lt;/a&gt; and the &lt;a href="http://www.frcu.utn.edu.ar/"&gt;Concepción del Uruguay Regional site of the Universidad Tecnológica Nacional&lt;/a&gt;) support the event with their reputation, guaranteeing the participation of programmers, students, faculty members and scientific researchers, and national and international experts who will present, give tutorials and courses which, because of the quality and precedent set by past editions of the conference, will have a large impact thus causing regional interest;&lt;/li&gt;&lt;li&gt;That because of its charter to promote research, development and the spreading of technology, to provide technical assistance and to promote all innovative activities that emphasize the social importance of the work done by scientists, technologists and entrepeneurs, the Science, Technology and Innovation Agency of Entre Ríos (ACTIER) is competent to declare the Smalltalks 2010 an event of regional interest.&lt;/li&gt;&lt;/ul&gt;Many thanks to ACTIER's director Profesora Silvia Kupervaser and subdirector Licenciada Ana María Laffitte, as well as everyone involved in this official declaration and the ongoing success of the Argentine Smalltalk community and the Smalltalks conference.&lt;br /&gt;&lt;br /&gt;See you at Smalltalks 2010 in Concepción del Uruguay, and go Smalltalk!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-879842454661926355?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/879842454661926355/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=879842454661926355' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/879842454661926355'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/879842454661926355'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/09/smalltalks-2010-declared-of-provincial.html' title='Smalltalks 2010 declared of provincial interest'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-2525433103870186317</id><published>2010-09-17T22:05:00.001-07:00</published><updated>2010-09-17T22:07:07.767-07:00</updated><title type='text'>New Hash Analysis Tool manual location</title><content type='html'>I noticed the Hash Analysis Tool manual link was broken.  You can get it at the FTP server, ftp://sqrmax.homeip.net (user smalltalk, password now).  Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-2525433103870186317?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/2525433103870186317/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=2525433103870186317' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/2525433103870186317'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/2525433103870186317'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/09/new-hash-analysis-tool-manual-location.html' title='New Hash Analysis Tool manual location'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-8805727022247846463</id><published>2010-09-17T00:00:00.001-07:00</published><updated>2010-09-17T00:05:42.574-07:00</updated><title type='text'>Hash Analysis Tool update</title><content type='html'>It's been a while, but today I ran into hash functions again.  I just published Hash Analysis Tool 3.27 so it does not rely on Integer&gt;&gt;asByteArray (it's currently deprecated in VisualWorks), together with a method lookup dataset and a hash function I tested today.  Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-8805727022247846463?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/8805727022247846463/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=8805727022247846463' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/8805727022247846463'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/8805727022247846463'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/09/hash-analysis-tool-update.html' title='Hash Analysis Tool update'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-7939463581335201374</id><published>2010-09-10T09:45:00.001-07:00</published><updated>2010-09-10T09:46:28.515-07:00</updated><title type='text'>Invitation to Smalltalks 2010</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_r5DNHApjU60/TIpg0xdllnI/AAAAAAAACQE/dc-P32VeLLQ/s1600/Smalltalks+2010+flier+-+small.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 309px; height: 400px;" src="http://1.bp.blogspot.com/_r5DNHApjU60/TIpg0xdllnI/AAAAAAAACQE/dc-P32VeLLQ/s400/Smalltalks+2010+flier+-+small.png" alt="" id="BLOGGER_PHOTO_ID_5515327153415493234" 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/9469372-7939463581335201374?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/7939463581335201374/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=7939463581335201374' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7939463581335201374'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7939463581335201374'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/09/invitation-to-smalltalks-2010.html' title='Invitation to Smalltalks 2010'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_r5DNHApjU60/TIpg0xdllnI/AAAAAAAACQE/dc-P32VeLLQ/s72-c/Smalltalks+2010+flier+-+small.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-2791966011904010369</id><published>2010-09-06T12:49:00.000-07:00</published><updated>2010-09-06T12:50:43.547-07:00</updated><title type='text'>Nice article on the importance of choosing proper names</title><content type='html'>Here is the &lt;a href="http://www.newscientist.com/article/mg20727761.500-whats-in-a-name-the-words-behind-thought.html"&gt;link&lt;/a&gt;.  Also, the article goes on to detail that a significant chunk of our thought processes are affected by words we hear.  Would you please shut down that TV already? :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-2791966011904010369?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/2791966011904010369/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=2791966011904010369' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/2791966011904010369'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/2791966011904010369'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/09/nice-article-on-importance-of-choosing.html' title='Nice article on the importance of choosing proper names'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-2811980600648437819</id><published>2010-09-03T16:30:00.000-07:00</published><updated>2010-09-03T16:32:04.478-07:00</updated><title type='text'>15% and 20% off Lulu this weekend</title><content type='html'>If you use the code EXTRAPOINT, then Lulu will give you 15% off this weekend.  Also, if you use TOUCHDOWN305, you will get 20% off on purchases of $250 or more.  Note that the usual disclaimers seem to apply.  Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-2811980600648437819?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/2811980600648437819/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=2811980600648437819' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/2811980600648437819'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/2811980600648437819'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/09/15-and-20-off-lulu-this-weekend.html' title='15% and 20% off Lulu this weekend'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-5472644337625087594</id><published>2010-09-02T00:31:00.003-07:00</published><updated>2010-09-02T00:32:47.056-07:00</updated><title type='text'>September's Lulu discount code</title><content type='html'>If you use the code AUTUMN, you can get a 10% discount at Lulu during the month of September*.  Enjoy!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;* Disclaimer:   Enter coupon code "AUTUMN" during checkout and save 10% off the purchase price.  Discount cannot be used to pay for, nor shall be applied to, applicable taxes or shipping and handling charges.  Maximum amount that may be applied to discount is $10.00 per account. Promotional codes cannot be applied to any previous orders.  No exchanges or substitutions allowed.  Only one valid promotional code may be used per order.  Offer expires September 30, 2010 at 11:59 PM EDT.  Lulu.com reserves the right to change or revoke this offer at any time.  Void where prohibited.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-5472644337625087594?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/5472644337625087594/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=5472644337625087594' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/5472644337625087594'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/5472644337625087594'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/09/septembers-lulu-discount-code.html' title='September&apos;s Lulu discount code'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-7620101965816633482</id><published>2010-09-02T00:31:00.001-07:00</published><updated>2010-09-02T00:31:10.794-07:00</updated><title type='text'>FTP server back up</title><content type='html'>Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-7620101965816633482?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/7620101965816633482/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=7620101965816633482' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7620101965816633482'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7620101965816633482'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/09/ftp-server-back-up.html' title='FTP server back up'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-858947973233516265</id><published>2010-08-09T03:23:00.001-07:00</published><updated>2010-08-09T03:23:24.171-07:00</updated><title type='text'>FTP server down for a while</title><content type='html'>The FTP server will be back up in a couple weeks...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-858947973233516265?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/858947973233516265/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=858947973233516265' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/858947973233516265'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/858947973233516265'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/08/ftp-server-down-for-while.html' title='FTP server down for a while'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-151250865525279933</id><published>2010-08-08T03:22:00.001-07:00</published><updated>2010-08-08T03:23:04.365-07:00</updated><title type='text'>Assessments 1.47</title><content type='html'>I just published a small fix for Assessments.  In the RB extensions, the defect list will now appear when the result includes prerequisite failures.  Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-151250865525279933?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/151250865525279933/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=151250865525279933' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/151250865525279933'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/151250865525279933'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/08/assessments-147.html' title='Assessments 1.47'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-5066156876062320540</id><published>2010-07-29T02:28:00.001-07:00</published><updated>2010-07-29T02:28:56.812-07:00</updated><title type='text'>20% off coupon at Lulu</title><content type='html'>I just saw that Lulu has a new code for 20% off "site-wide".  The coupon code is SANTA.  Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-5066156876062320540?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/5066156876062320540/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=5066156876062320540' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/5066156876062320540'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/5066156876062320540'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/07/20-off-coupon-at-lulu.html' title='20% off coupon at Lulu'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-4180480208915928798</id><published>2010-07-25T19:57:00.000-07:00</published><updated>2010-07-25T19:58:14.096-07:00</updated><title type='text'>Assessments 1.46</title><content type='html'>I just published an improvement to the RB extensions so the RB is snappier.  Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-4180480208915928798?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/4180480208915928798/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=4180480208915928798' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4180480208915928798'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4180480208915928798'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/07/assessments-146.html' title='Assessments 1.46'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-100586731578533850</id><published>2010-07-24T01:49:00.000-07:00</published><updated>2010-07-24T01:50:08.730-07:00</updated><title type='text'>Assessments 1.45</title><content type='html'>I just published a small visual change to the Assessments' RB extensions.  Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-100586731578533850?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/100586731578533850/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=100586731578533850' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/100586731578533850'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/100586731578533850'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/07/assessments-145.html' title='Assessments 1.45'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-19077753565995830</id><published>2010-07-12T23:53:00.000-07:00</published><updated>2010-07-13T00:10:37.467-07:00</updated><title type='text'>e^x in action</title><content type='html'>Not long ago, I read an article that said the hard drive industry executives expected (!!!) capacity to increase by 50% every year or something like that.  I thought these were ridiculous claims because the quoted growth rate is an exponential function and those will eat you alive in no time.  But, you know, sometimes these claims are made, most likely by people that do not understand their consequences.  So here we are, not two years later, and guess what: &lt;a href="http://www.theregister.co.uk/2010/07/12/adding_platters/"&gt;hard drives are now having a hard time increasing capacity&lt;/a&gt;.  The techniques necessary to keep growing are very expensive, and are many years and a lot of investment away.  Should we be surprised?  Nah...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-19077753565995830?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/19077753565995830/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=19077753565995830' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/19077753565995830'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/19077753565995830'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/07/ex-in-action.html' title='e^x in action'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-3677398103082922359</id><published>2010-07-11T21:47:00.000-07:00</published><updated>2010-07-11T23:44:28.188-07:00</updated><title type='text'>Assessments 1.41 through 1.44</title><content type='html'>Version 1.41 of Assessments adds the equivalent of RBSUnitExtensions to the Assessments tools.  Also, since the last update, I fixed a couple small bugs.  Enjoy!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Update&lt;/span&gt;: Assessments 1.42 has visual optimizations that make the UI much snappier.  Assessments 1.43 takes the speedup a step further and provides a significant performance boost.  Assessments 1.44 has additional speedups and a bug fix for assessment creation with filtered selectors.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-3677398103082922359?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/3677398103082922359/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=3677398103082922359' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3677398103082922359'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3677398103082922359'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/07/assessments-141.html' title='Assessments 1.41 through 1.44'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-2155392222100319565</id><published>2010-07-11T16:03:00.000-07:00</published><updated>2010-07-11T19:14:29.058-07:00</updated><title type='text'>A comic by Quino</title><content type='html'>Quino is the nickname of &lt;a href="http://en.wikipedia.org/wiki/Quino"&gt;Joaquín Salvador Lavado&lt;/a&gt;, who became famous for  making comic strips about a little girl called Mafalda.  He also makes  comic strips for Sunday newspapers and magazines.  Here's one such  comic which I like quite a bit... the translated dialog is below.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_r5DNHApjU60/TDpOF0qOPdI/AAAAAAAACPw/n63jMccxh1Q/s1600/quino.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 297px; height: 400px;" src="http://2.bp.blogspot.com/_r5DNHApjU60/TDpOF0qOPdI/AAAAAAAACPw/n63jMccxh1Q/s400/quino.jpg" alt="" id="BLOGGER_PHOTO_ID_5492788557473791442" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;- Hel...&lt;br /&gt;- I BOUGHT IT!  FINALLY, I BOUGHT IT!!&lt;br /&gt;&lt;br /&gt;- In installments, of course.  Now we will have to cut back on our expenses a bit but, isn't it wonderful?&lt;br /&gt;&lt;br /&gt;- No cables, no plugs, nothing!  It feeds by itself with disposable batteries that last almost a month!  I subscribed to the service so they will not be so expensive.&lt;br /&gt;&lt;br /&gt;- And on top of that, you will see...&lt;br /&gt;&lt;br /&gt;- THERE IT IS!  It comes with an electronic, bidirectional, servo-stabilized horizontability modifier!&lt;br /&gt;&lt;br /&gt;- Ok, but... and this device, what is it good for?&lt;br /&gt;&lt;br /&gt;- ...&lt;br /&gt;&lt;br /&gt;- I understand.  We can't have it, isn't that true?  The neighbors from apartment 9A have it, and the sister in law of Dr. Tissera, and Engineer Villalta's wife... but we cannot, right...&lt;br /&gt;&lt;br /&gt;- We will have to take it back.  In the end, why does it matter?  I am already used to us living a life of sacrifices to never be like everybody else!&lt;br /&gt;&lt;br /&gt;- ...&lt;br /&gt;&lt;br /&gt;- Nobody said anything about taking it back, nobody said anything about taking it back...&lt;br /&gt;&lt;br /&gt;- ...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-2155392222100319565?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/2155392222100319565/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=2155392222100319565' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/2155392222100319565'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/2155392222100319565'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/07/comic-by-quino.html' title='A comic by Quino'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_r5DNHApjU60/TDpOF0qOPdI/AAAAAAAACPw/n63jMccxh1Q/s72-c/quino.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-3984724728651347423</id><published>2010-07-10T16:50:00.001-07:00</published><updated>2010-07-10T16:51:08.019-07:00</updated><title type='text'>A graphical programming language</title><content type='html'>The computer programming language &lt;a href="http://www.dangermouse.net/esoteric/piet/samples.html"&gt;Piet&lt;/a&gt; produces nice looking programs.  Wow...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-3984724728651347423?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/3984724728651347423/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=3984724728651347423' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3984724728651347423'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3984724728651347423'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/07/graphical-programming-language.html' title='A graphical programming language'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-7212122775536980308</id><published>2010-07-06T19:38:00.001-07:00</published><updated>2010-07-06T19:51:24.497-07:00</updated><title type='text'>I wish this was fixed...</title><content type='html'>Sometimes, I get asked about New York.  Isn't it a great place to be? Certainly: there's the Met, the Guggenheim, the Museum of Modern Art, and many other wonderful cultural icons.  But one of the things that comes to mind is the smell.  It's like a well kept secret, but in summer the city (Manhattan in particular) smells.  Or, rather, stinks.  Every so often I get a look when I describe the stench. How can I say that about New York?  Isn't "stink" a bit harsh?  Well, thanks to the New York Times, now I can say that the term "stink" is appropriate.  Check it out &lt;a href="http://www.nytimes.com/2010/07/07/nyregion/07putridity.html?hp"&gt;here&lt;/a&gt;.  Some snippets:&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;div style="text-align: center; font-style: italic;"&gt;As mounds of refuse go, this one was neither unusually tall nor  unusually messy. At about five bags, it rose about two feet off the  ground.[...] But by mid afternoon, the temperature had reached 103 in Central Park,  and the heat that cooked people’s nerves and the city’s subway platforms  roasted this mound of trash, and hundreds like it around New York City.[...] “We don’t have enough trucks and personnel to do everything at once,”  Mr. McKeon said. “It takes some time. We do have a large amount of extra  trucks today. We’ll put out extra trucks tomorrow also. We’ll be  working around the clock until we catch up.” In the heat, the trash that the department and the commercial haulers  had not yet collected proved both an olfactory and linguistic problem  for New Yorkers. People tried to explain just how awful it was when a  piece of chicken sat in a plastic bag on a sidewalk in 103-degree  weather. [...] She was at a loss to explain why the nine empty trash bins she stood  next to still emitted a repulsive odor. She figured it had something to  do with the mysterious liquid dripping from them. “It smells like cat or dog feces mixed with food that been there for  weeks or something,” Ms. Bumbury said. [...]   “Last night it was smelling something rotten,” Mr. Morales said. “My  kids were crying, ‘What’s that smell, Daddy? It smells like a rat that’s  dead.’ I said, ‘No, mami, it’s not a rat, it’s the garbage.’ ”  &lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;How about doing trash collection at night, when it's cool and trash doesn't have to stand in the heat all day, making the stench unbearable?  Or how about not dumping all the bags on the street grates?  They puncture the bags, and all the juices go down into the trains and subways just to come up later as hot, sticky, humid stench.  I swear am not making this up.  Fix it, yes?  Please?  You can't say there's nobody rich enough to collect taxes from...&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-7212122775536980308?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/7212122775536980308/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=7212122775536980308' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7212122775536980308'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7212122775536980308'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/07/i-wish-this-was-fixed.html' title='I wish this was fixed...'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-4378772706333036370</id><published>2010-07-06T18:57:00.000-07:00</published><updated>2010-07-06T19:36:23.437-07:00</updated><title type='text'>Looks like e^x to me...</title><content type='html'>Check this out: &lt;a href="http://money.cnn.com/2010/07/06/news/economy/postal_rate_increase/index.htm?source=cnn_bin&amp;amp;hpt=Sbin"&gt;the post office is raising stamp prices again&lt;/a&gt;.  And, if you look at the price graph carefully, you will recognize a friend of mine: &lt;a href="http://en.wikipedia.org/wiki/Exponential_function"&gt;e^x&lt;/a&gt;.  Really?  You wouldn't think the post office has to raise postage by more or less the rate of inflation, which is itself an exponential function.  But it's so hard to think about these things properly when we do not have the tools to understand what's going on.  Sometimes, it is just hard to get even simple things right.  For example, check out the following graph of a^x: &lt;span style="text-decoration: underline;"&gt;h&lt;/span&gt;&lt;a href="http://www.bced.gov.bc.ca/irp/mathk7/icons/f26.gif"&gt;ow is it possible for a^x to have a negative derivative for some negative values of x&lt;/a&gt;?  And how about &lt;a href="http://www.ehow.com/how_4592663_graph-exponential-functions-easy-way.html"&gt;this eHow.com 2^x plot that doesn't add up&lt;/a&gt;?  But no.  It's not inflation, and nobody mentions e^x because we're not supposed to think for ourselves or something.  Instead, we get this:&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center; font-style: italic;"&gt;"This proposed rate increase amounts to another tax imposed on Americans  at a time when the economy can least afford it," said Tony Conway, a  spokesman for the alliance and executive director of the Alliance of  Nonprofit Mailers.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Tax?  How about inflation, isn't that the real tax? How can it be a tax unless wages are not going up in the same way?  Isn't that the real problem?  And it's not like the private mail carriers are cheap.  I dare you to send a sheet of paper to Argentina via FedEx.  Sigh...&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center; font-style: italic;"&gt;"Why are you picking on the Post Office?  For 44 cents, someone comes to  your house, picks up some piece of crap you wrote, &lt;span style="font-weight: bold;"&gt;and takes it to  Wyoming on a plane&lt;/span&gt;!" --- Jon Stewart&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-4378772706333036370?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/4378772706333036370/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=4378772706333036370' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4378772706333036370'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4378772706333036370'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/07/looks-like-ex-to-me.html' title='Looks like e^x to me...'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-1811069451520031157</id><published>2010-07-05T15:13:00.000-07:00</published><updated>2010-07-05T15:21:31.815-07:00</updated><title type='text'>eBooks appear to handicap reading speed</title><content type='html'>You'd expect that reading a book is faster on an eBook device, or would at least match the readability of a book, &lt;a href="http://www.cnn.com/2010/TECH/gaming.gadgets/07/05/kindle.ipad.reading.mashable/index.html?hpt=C2"&gt;but apparently no&lt;/a&gt;.  How about that... this is probably a problem far more complex than it appears.  Nevertheless, not all that glitters is iGold...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-1811069451520031157?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/1811069451520031157/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=1811069451520031157' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/1811069451520031157'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/1811069451520031157'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/07/ebooks-appear-to-handicap-reading-speed.html' title='eBooks appear to handicap reading speed'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-6973570155670198457</id><published>2010-06-30T03:38:00.000-07:00</published><updated>2010-06-30T03:59:15.188-07:00</updated><title type='text'>A problem with public discourse</title><content type='html'>Take a look at &lt;a href="http://edition.cnn.com/2010/POLITICS/06/16/obama.speech.analysis/?hpt=C1"&gt;this article&lt;/a&gt; that appeared in CNN, regarding a speech by Barack Obama about the oil spill in the Gulf of Mexico&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;.  What bugs me about the article is reading the following:&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center; font-style: italic;"&gt;Obama's nearly 10th-grade-level rating was the highest of any of his major speeches and well above the grade 7.4 of his 2008 "Yes, we can" victory speech, which many consider his best effort, Payack said.&lt;br /&gt;&lt;br /&gt;"The scores indicate that this was not Obama at his best, especially when attempting to make an emotional connection to the American people," he added.&lt;br /&gt;&lt;br /&gt;Though the president used slightly less than four sentences per paragraph, his 19.8 words per sentence "added some difficulty for his target audience," Payack said.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;In other words, if a president does not talk to the general population as if they had not yet finished 7th grade, then we will not understand.  And if we cannot understand anything more complex than what a 7th grader would understand, exactly why do we claim we can solve &lt;span style="font-style: italic;"&gt;any&lt;/span&gt; complex problem such as the following?&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Problems regarding the interpretation of the Constitution, the law that ultimately rules our lives and gives us wonderful things such as the 5th amendment.&lt;/li&gt;&lt;li&gt;Problems regarding the workings of financial institutions as well as the workings of our checking account and the national budget.&lt;/li&gt;&lt;li&gt;Problems regarding science, such as whether we should allow creationism, or whether we should send people to Mars, or climate change, or renewable sources of energy and raw materials, or whether the latest genetic manipulation will result in food we can safely consume.&lt;/li&gt;&lt;li&gt;Problems regarding more politicized issues, such as health care, affirmative action, gun control, law enforcement, media conglomerates, education, and religion.&lt;/li&gt;&lt;li&gt;Problems regarding the use of the military and international diplomacy.&lt;/li&gt;&lt;/ul&gt;See?  If we are really a bunch of 7th graders, then we &lt;span style="font-weight: bold;"&gt;cannot&lt;/span&gt; deal with these problems.  Consequently, we have to be talked to as if we were not adults capable of reasonably exercising their right to vote.  Instead, we have to be talked to as if we were children that can only deal with the world around them in emotional terms.  Besides, what do we actually vote for, exactly?&lt;br /&gt;&lt;br /&gt;Ultimately, and most disturbingly, there is the implication that the president (or any other figure we listen to) must make an emotional connection with us, rather than engage in adult conversation.  Consequently, that means we are not supposed to hear something like "look, we know X, Y and Z, so we can do A, B and C but not D".  Rather, we are supposed to hear "yes we can", or "America is great", or "land of opportunity", or "democrat", or "republican", or "liberal", or who knows what else.  All sorts of decisions regarding the above problems are possible with 7th grader tools, except good ones.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-6973570155670198457?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/6973570155670198457/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=6973570155670198457' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/6973570155670198457'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/6973570155670198457'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/06/problem-with-public-discourse.html' title='A problem with public discourse'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-6025316708673771057</id><published>2010-06-24T17:40:00.000-07:00</published><updated>2010-06-24T17:49:39.781-07:00</updated><title type='text'>Smalltalks 2010 Research Track: Call for Papers</title><content type='html'>&lt;span style="font-weight: bold;"&gt;CALL FOR PAPERS&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;SMALLTALKS 2010&lt;br /&gt;4th Argentinian Smalltalk Conference&lt;br /&gt;Research Track: Call for Papers&lt;br /&gt;November 11th – 13th, 2010&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Important dates:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Submission (Hard Deadline): September 7th, 2010 (Argentinian time: UTC/GMT -3 hours).&lt;br /&gt;Notification of acceptance: October 6th, 2010.&lt;br /&gt;Camera Ready Submission: October 20th, 2010.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Conference Site:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Universidad Tecnológica Nacional (UTN), Concepción del Uruguay (Entre Ríos, Argentina)&lt;br /&gt;&lt;br /&gt;In the past three years &lt;a href="http://www.fast.org.ar/"&gt;the Smalltalks series of conferences&lt;/a&gt; have been a lively forum on Smalltalk-based software technologies that attracted over more than 200 people from both academia and industry for three days.&lt;br /&gt;&lt;br /&gt;During the first three conferences, the industrial partners showed the applicability of Smalltalk in business, while researches (both students and professors) showed their advances and didactic uses of Smalltalk. The presented approaches and methodologies concerned the language, its implementation technology, its programming tools as well as the software development culture it supports.&lt;br /&gt;&lt;br /&gt;This year the accepted papers not only will be available in the website but also the best ranked ones will be published in a special edition of Elsevier COMLAN Journal. Thus, we invite to submit papers in the research track on original scientific research conducted in and/or for Smalltalk in general.&lt;br /&gt;&lt;br /&gt;Topics of interest include, but are not restricted to:&lt;br /&gt;&lt;br /&gt;• Aspects, Aspect Languages and Applications.&lt;br /&gt;• Ambient Intelligence, Ubiquitous / Pervasive Computing and Embedded Systems.&lt;br /&gt;• Compilation Technology, Optimization, Virtual Machines.&lt;br /&gt;• Educational Material.&lt;br /&gt;• Language Engineering, Extensions.&lt;br /&gt;• Model Driven Engineering / Development.&lt;br /&gt;• Meta-Modeling, Reflection and Meta-programming.&lt;br /&gt;• Programming in the Large, Design, Architectures and Components.&lt;br /&gt;• Programming Environments, Browsers, User Interfaces, UI Frameworks.&lt;br /&gt;• Reasoning About Code (Analysis, Refactoring, Type Inference, Metrics).&lt;br /&gt;• Team Management.&lt;br /&gt;• Testing, Extreme Programming / Practices.&lt;br /&gt;• Web Services, Internet Applications, Event-driven Programming.&lt;br /&gt;• Experience Reports.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Important dates:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Submission (Hard Deadline): September 7th, 2010 (Argentinian time: UTC/GMT -3 hours).&lt;br /&gt;Notification of acceptance: October 6th, 2010.&lt;br /&gt;Camera Ready Submission: October 20th, 2010.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Papers:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Papers should be written in English, in pdf-format and not exceed 15 pages (including references and figures), using Elsevier journal format.&lt;br /&gt;&lt;br /&gt;Templates for LaTeX formats can be found &lt;a href="http://www.elsevier.com/wps/find/authorsview.authors/elsart"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Papers must be submitted through the EasyChair submission web site &lt;a href="http://www.easychair.org/conferences/?conf=smalltalks10"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The accepted papers will be digitally available in the conference website. From accepted papers, selected ones will be published in a special edition of Elsevier COMLAN Journal.&lt;br /&gt;&lt;br /&gt;Papers submitted must not have been previously published and must not be under review for publication elsewhere. Papers must strictly adhere to submission guidelines. If you have questions, please send an e-mail to Marcus Denker and Gabriela Arévalo to smalltalks2010-chair (at) fast (dot) org (dot) ar using [Smalltalks2010-RT] as tag in the e-mail subject.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Program Committee&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;• Alexandre Bergel (DCC, Universidad de Chile, Chile)&lt;br /&gt;• Noury Bouraqadi (Ecole des Mines, Douai, France)&lt;br /&gt;• Gilad Bracha (Ministry of Truth, USA)&lt;br /&gt;• Johan Brichau (Inceptive.be, Belgium)&lt;br /&gt;• Johan Fabry (DCC, Universidad de Chile, Chile)&lt;br /&gt;• Alejandro Fernandez (LIFIA - Facultad de Informática – UNLP, Argentina)&lt;br /&gt;• Tudor Girba (Sw-eng. Software Engineering GmbH, Switzerland)&lt;br /&gt;• Andy Kellens (SOFT, Vrije Universiteit Brussels, Belgium)&lt;br /&gt;• Michele Lanza (University of Lugano, Switzerland)&lt;br /&gt;• Adrian Lienhard (SCG, University of Bern, Switzerland)&lt;br /&gt;• Damien Pollet (INRIA / Université de Lille 1, France)&lt;br /&gt;• Lukas Renggli (SCG, University of Bern, Switzerland)&lt;br /&gt;• David Röthlisberger (SCG, University of Bern, Switzerland)&lt;br /&gt;• Tom Van Cutsem (SOFT, Vrije Universeit Brussels, Belgium)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Program Chairs&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;• Marcus Denker (INRIA, Lille, France)&lt;br /&gt;• Gabriela Arévalo (Universidad Austral, Buenos Aires, Argentina)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-6025316708673771057?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/6025316708673771057/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=6025316708673771057' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/6025316708673771057'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/6025316708673771057'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/06/smalltalks-2010-research-track-call-for.html' title='Smalltalks 2010 Research Track: Call for Papers'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-2877969217951878372</id><published>2010-05-28T23:49:00.001-07:00</published><updated>2010-05-28T23:54:59.041-07:00</updated><title type='text'>Free shipping on Lulu books all summer long</title><content type='html'>Lulu is offering free shipping on books $19.95 and over during this summer.  This means that you can get any of my &lt;a href="http://www.lulu.com/avSmalltalkBooks"&gt;books&lt;/a&gt; (&lt;a href="http://www.lulu.com/product/paperback/a-mentoring-course-on-smalltalk/3788890"&gt;A Mentoring Course on Smalltalk&lt;/a&gt;, or &lt;a href="http://www.lulu.com/product/paperback/hashing-in-smalltalk-theory-and-practice/3788892"&gt;Hashing in Smalltalk: Theory and Practice&lt;/a&gt;, or &lt;a href="http://www.lulu.com/product/paperback/fundamentals-of-smalltalk-programming-technique-volume-1/5299835"&gt;Fundamentals of Smalltalk Programming Technique Volume 1&lt;/a&gt;) with free shipping.  The discount is applied automatically, so you do not have to do anything special.  &lt;a href="http://lulublog.com/2010/05/12/free-summer-shipping/"&gt;Here are the details&lt;/a&gt;.  Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-2877969217951878372?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/2877969217951878372/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=2877969217951878372' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/2877969217951878372'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/2877969217951878372'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/05/free-shipping-on-lulu-books-all-summer.html' title='Free shipping on Lulu books all summer long'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-3080215384411270388</id><published>2010-05-28T13:12:00.001-07:00</published><updated>2010-05-28T13:12:26.655-07:00</updated><title type='text'>Assessments 1.38</title><content type='html'>I just fixed a small bug in Assessments validation, and also amended a couple prerequisites.  Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-3080215384411270388?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/3080215384411270388/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=3080215384411270388' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3080215384411270388'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3080215384411270388'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/05/assessments-138.html' title='Assessments 1.38'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-7936118850627846853</id><published>2010-05-27T00:01:00.000-07:00</published><updated>2010-05-27T00:04:55.230-07:00</updated><title type='text'>eBook devices not good for demanding works</title><content type='html'>In short: if you plan to plow along a book that doesn't require heavy work, sure, go ahead and use a reader device.  If, on the other hand, you plan to study from a book, then things change and devices are not good anymore.&lt;br /&gt;&lt;br /&gt;But I didn't say that --- &lt;a href="http://www.theregister.co.uk/2010/05/26/kindle_flunks_out_of_college/"&gt;80% of students said it&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-7936118850627846853?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/7936118850627846853/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=7936118850627846853' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7936118850627846853'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/7936118850627846853'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/05/ebook-devices-not-good-for-demanding.html' title='eBook devices not good for demanding works'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-5564028144304716146</id><published>2010-05-22T15:34:00.000-07:00</published><updated>2010-06-19T10:13:08.854-07:00</updated><title type='text'>Wireless network at home? Bad idea</title><content type='html'>Wireless networking at home seems so convenient: you go everywhere with your laptop, and connectivity follows you.  However, it does have a number of drawbacks.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;So you wanted to plug in to your nice 30" monitor, right?  Betcha you won't haul the monitor around.&lt;/li&gt;&lt;li&gt;Do you really need to work with your laptop everywhere?  Under the trees in your yard, where your laptop will be exposed to birds and pitch from trees? Or do you really need to work in a couple places at most? What kind of convenience is this?&lt;/li&gt;&lt;li&gt;If you get wireless, then you will have to secure it against intrusion.  And how can you be sure you didn't get hacked into? Do you really want to give yourself a good dose of wireless admin homework?&lt;br /&gt;&lt;/li&gt;&lt;li&gt;You can easily get an internet connection that has more bandwidth than  the best wireless available. Why don't you get less expensive wired networking equipment that moves data faster and has less latency than wireless?  Or, for the same money, how about getting business-capable equipment?&lt;/li&gt;&lt;/ul&gt;To these problems, you need to add this: for years, &lt;a href="http://www.theregister.co.uk/2010/05/21/google_halts_wifi_payload_data_deletion/"&gt;Google's Street View vans captured wireless network payload data&lt;/a&gt;.  Why bother with this nonsense?  Unless wired is not available, wired is the way to go.&lt;br /&gt;&lt;br /&gt;Update: &lt;a href="http://www.tomsguide.com/us/Google-Maps-Email-Passwords-Wi-Fi,news-7132.html"&gt;Google captured passwords and other sensitive information&lt;/a&gt;...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-5564028144304716146?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/5564028144304716146/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=5564028144304716146' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/5564028144304716146'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/5564028144304716146'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/05/wireless-network-at-home-bad-idea.html' title='Wireless network at home? Bad idea'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-9213060792112307430</id><published>2010-05-18T16:10:00.000-07:00</published><updated>2010-05-18T16:15:06.367-07:00</updated><title type='text'>90% of consumers want books to stay as paper books</title><content type='html'>&lt;a href="http://www.reghardware.co.uk/2010/05/18/digital_content_british_consumer_reactions/"&gt;How about that&lt;/a&gt;... it's not that easy for the digital book to just take over.  Or, not all that glitters is gold.  I guess it doesn't matter for inconsequential content (e.g.: the latest best seller novel which is quickly forgotten after a few years).  For more serious stuff that you will have to go back to, though, do you really want device compatibility problems, DRM, somebody deciding you are no longer supposed to read the stuff, etc?  Hmmm...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-9213060792112307430?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/9213060792112307430/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=9213060792112307430' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/9213060792112307430'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/9213060792112307430'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/05/90-of-consumers-want-books-to-stay-as.html' title='90% of consumers want books to stay as paper books'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-3165683072816409525</id><published>2010-05-15T22:27:00.000-07:00</published><updated>2010-05-15T22:38:11.638-07:00</updated><title type='text'>Exercise from Fundamental's volume 2</title><content type='html'>Fundamental's second volume draft just reached 100 pages.  I thought I'd mention an exercise from the book that I think it's quite nice.  Suppose you concatenate a lot of strings with a stream.  Of course, this is much more efficient than using straight string concatenation with messages like #,.  But what is the efficiency of the stream method?  Assume the strings are byte strings.  If the resulting string has size k, what is the worst allocation scenario for the stream method expressed in terms of k?  What is the best case scenario?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-3165683072816409525?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/3165683072816409525/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=3165683072816409525' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3165683072816409525'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/3165683072816409525'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/05/exercise-from-book.html' title='Exercise from Fundamental&apos;s volume 2'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-4620331249509955227</id><published>2010-05-09T21:21:00.001-07:00</published><updated>2010-05-09T21:22:02.260-07:00</updated><title type='text'>Too much TV</title><content type='html'>According to the ratings company Nielsen, people in the USA watch an average of 5 hours of TV a day.  What a loss of time...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-4620331249509955227?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/4620331249509955227/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=4620331249509955227' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4620331249509955227'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4620331249509955227'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/05/too-much-tv.html' title='Too much TV'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9469372.post-4072244425620001065</id><published>2010-05-09T15:54:00.001-07:00</published><updated>2010-05-09T15:57:37.291-07:00</updated><title type='text'>Jazz question</title><content type='html'>The Buddy Rich band had a tune called "The Words" (or "The Word") in their book.  You can listen to two quite different renditions &lt;a href="http://www.amazon.com/gp/product/B000TE932I/ref=dm_dp_trk16?ie=UTF8&amp;amp;qid=1273445719&amp;amp;sr=8-1"&gt;here&lt;/a&gt; and &lt;a href="http://www.amazon.com/gp/recsradio/radio/B000ZIYLBQ/ref=pd_krex_dp_001_006?ie=UTF8&amp;amp;track=006&amp;amp;disc=001"&gt;here&lt;/a&gt;.  Now the question... does anybody know who composed the tune, or where it came from?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9469372-4072244425620001065?l=blogten.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogten.blogspot.com/feeds/4072244425620001065/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=9469372&amp;postID=4072244425620001065' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4072244425620001065'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9469372/posts/default/4072244425620001065'/><link rel='alternate' type='text/html' href='http://blogten.blogspot.com/2010/05/jazz-question.html' title='Jazz question'/><author><name>Andrés</name><uri>http://www.blogger.com/profile/06869059697843349034</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_r5DNHApjU60/S24LOQK4MiI/AAAAAAAACOw/JMu6WfY0Joc/S220/germany_10.png'/></author><thr:total>0</thr:total></entry></feed>
