<?xml version="1.0" encoding="iso-8859-1"?>

<rdf:RDF
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
  xmlns:admin="http://webns.net/mvcb/"
  xmlns:cc="http://web.resource.org/cc/"
  xmlns="http://purl.org/rss/1.0/">

<channel rdf:about="http://blogs.codehaus.org/people/bamboo//archives/technology.html">
<title>bamboozled - technology</title>
<link>http://blogs.codehaus.org/people/bamboo//archives/technology.html</link>
<description></description>
<dc:language>en-us</dc:language>
<dc:creator></dc:creator>
<dc:date>2008-05-20T16:41:56-03:00</dc:date>
<admin:generatorAgent rdf:resource="http://www.movabletype.org/?v=2.661" />

<items>
<rdf:Seq><rdf:li rdf:resource="http://blogs.codehaus.org/people/bamboo/archives/001697_write_once_sharpen_run_anywhere.html" />
<rdf:li rdf:resource="http://blogs.codehaus.org/people/bamboo/archives/001667_anthropomorphism_on_computer_science.html" />
<rdf:li rdf:resource="http://blogs.codehaus.org/people/bamboo/archives/001659_boo_081_is_here.html" />
<rdf:li rdf:resource="http://blogs.codehaus.org/people/bamboo/archives/001640_back_from_the_mono_summit_07.html" />
<rdf:li rdf:resource="http://blogs.codehaus.org/people/bamboo/archives/001638_claiming_technorati.html" />
<rdf:li rdf:resource="http://blogs.codehaus.org/people/bamboo/archives/001637_mono_summit_2007.html" />
<rdf:li rdf:resource="http://blogs.codehaus.org/people/bamboo/archives/001625_a_honest_halo_3_review.html" />
<rdf:li rdf:resource="http://blogs.codehaus.org/people/bamboo/archives/001617_something_i_must_read.html" />
<rdf:li rdf:resource="http://blogs.codehaus.org/people/bamboo/archives/001616_frink.html" />
<rdf:li rdf:resource="http://blogs.codehaus.org/people/bamboo/archives/001595_good_luck_lessig.html" />
<rdf:li rdf:resource="http://blogs.codehaus.org/people/bamboo/archives/001587_monster_muck_mashup.html" />
<rdf:li rdf:resource="http://blogs.codehaus.org/people/bamboo/archives/001586_domain_model_persistence_on_the_naked_clr.html" />
<rdf:li rdf:resource="http://blogs.codehaus.org/people/bamboo/archives/001578_10x_improvement_for_dynamic_dispatching_or_how_it_took_me_4_years_to_optimize_duck_typing.html" />
<rdf:li rdf:resource="http://blogs.codehaus.org/people/bamboo/archives/001441_db4o_60_is_out.html" />
<rdf:li rdf:resource="http://blogs.codehaus.org/people/bamboo/archives/001386_pair_programming_and_free_play.html" />
</rdf:Seq>
</items>

</channel>

<item rdf:about="http://blogs.codehaus.org/people/bamboo/archives/001697_write_once_sharpen_run_anywhere.html">
<title>Write Once, Sharpen, Run Anywhere</title>
<link>http://blogs.codehaus.org/people/bamboo/archives/001697_write_once_sharpen_run_anywhere.html</link>
<description><![CDATA[<p style="font-size: 14px;">When I joined <a href="http://www.db4o.com/">Db4objects</a> a few years ago my first assignment was to research and implement a decent solution for getting db4o to work on the .net platform.</p>
<p style="font-size: 14px;">There was already some investigation going on on using the <a href="http://www.eclipse.org/jdt/">Eclipse JDT API</a> as the basis for a source to source translator which proved to be a wise choice in the long run.</p>
<p style="font-size: 14px;">Eventually <a href="https://source.db4o.com/db4o/trunk/sharpen/">sharpen</a> was born and after <a href="http://developer.db4o.com/blogs/product_news/archive/2006/11/15/new-conventions-for-db4o-on-net.aspx">a lot of love</a> we finally reached a point where <a href="https://source.db4o.com/db4o/trunk/db4oj/core/src/com/db4o/activation/Activator.java">the translated</a> <a href="https://source.db4o.com/db4o/trunk/db4o.net/Db4objects.Db4o/Db4objects.Db4o/Activation/IActivator.cs">c# code</a> would look really good.</p>
<p style="font-size: 14px;">People would get really interested every time sharpen was mentioned but for several reasons it wasn't publicly available.</p>
<p style="font-size: 14px;">Until <a href="http://developer.db4o.com/blogs/product_news/archive/2008/05/20/smart-java-to-c-conversion-for-the-masses-with-sharpen.aspx">now</a>. Hooray!</p>
<p style="font-size: 14px;">I'm really looking forward to what people will build on top of that.</p>
<p style="font-size: 14px;"><br /></p>
]]></description>
<dc:subject></dc:subject>
<dc:creator>bamboo</dc:creator>
<dc:date>2008-05-20T16:41:56-03:00</dc:date>
</item>
<item rdf:about="http://blogs.codehaus.org/people/bamboo/archives/001667_anthropomorphism_on_computer_science.html">
<title>Anthropomorphism on Computer Science</title>
<link>http://blogs.codehaus.org/people/bamboo/archives/001667_anthropomorphism_on_computer_science.html</link>
<description><![CDATA[<p>It was more than twenty years ago that Dijkstra wrote against the perils of <a href="http://www.cs.utexas.edu/users/EWD/transcriptions/EWD09xx/EWD936.html" target="_blank">anthropomorphism on science</a>. And here we stand building whole industries on top of it. </p> <p>But is it programming dominantly math? Or is it mainly human communication? </p> <p>Maybe we swung too far to the the latter. I speculate that the current rise of functional programming can also be attributed to its&nbsp; liberating effect - one is no longer expected to attribute proper intent to entities before a program can be seen to make sense.</p> <p>As a constant reminder of that I'm tempted to use a <a href="http://www.luca.demon.co.uk/Fonts.htm" target="_blank">different font</a> for my programming.</p><a title="Dijkstra Font by Rodrigo B. de Oliveira, on Flickr" href="http://www.flickr.com/photos/94072001@N00/2344580747/"><img height="792" alt="Dijkstra Font" src="http://farm4.static.flickr.com/3221/2344580747_66c71e1e85_o.png" width="952"></a>]]></description>
<dc:subject>technology</dc:subject>
<dc:creator>bamboo</dc:creator>
<dc:date>2008-03-19T09:36:04-03:00</dc:date>
</item>
<item rdf:about="http://blogs.codehaus.org/people/bamboo/archives/001659_boo_081_is_here.html">
<title>boo 0.8.1 is here</title>
<link>http://blogs.codehaus.org/people/bamboo/archives/001659_boo_081_is_here.html</link>
<description><![CDATA[<p><a href="http://jira.codehaus.org/secure/IssueNavigator.jspa?reset=true&amp;pid=10671&amp;fixfor=13813" target="_blank">Lots of improvements</a> in this release including a <a href="http://jira.codehaus.org/browse/BOO-95" target="_blank">simpler way for writing macros</a>, support for <a href="http://jira.codehaus.org/browse/BOO-926" target="_blank">nested functions</a>, a <a href="http://jira.codehaus.org/browse/BOO-834" target="_blank">better interactive interpreter</a>, error messages that include <a href="http://jira.codehaus.org/browse/BOO-959" target="_blank">suggestions for misspelled names</a>, <a href="http://jira.codehaus.org/browse/BOO-879" target="_blank">exception filters</a>, <a href="http://jira.codehaus.org/browse/BOO-880" target="_blank">exception fault handlers</a> and <a href="http://jira.codehaus.org/browse/BOO-24" target="_blank">for loop IDisposeable.Dispose integration</a>.</p> <p>With many many kudos to Avishay Lavie, Cédric Vivier, Daniel Grunwald and Marcus Griep!</p> <p>What? - <a href="http://boo.codehaus.org/">http://boo.codehaus.org/</a><br>Download - <a href="http://boo.codehaus.org/Download">http://boo.codehaus.org/Download</a><br>Official irc channel - irc://irc.codehaus.org/boo</p> <p>Have fun!</p>]]></description>
<dc:subject>boo</dc:subject>
<dc:creator>bamboo</dc:creator>
<dc:date>2008-02-08T14:34:42-03:00</dc:date>
</item>
<item rdf:about="http://blogs.codehaus.org/people/bamboo/archives/001640_back_from_the_mono_summit_07.html">
<title>Back From the Mono Summit 07</title>
<link>http://blogs.codehaus.org/people/bamboo/archives/001640_back_from_the_mono_summit_07.html</link>
<description><![CDATA[<p><img src="http://www.mono-project.com/files/4/42/Summit.png" align="right"> </p> <p>What a great experience.  <p>A chance to interact live with a <a href="http://evain.net/blog/">dear friend</a>. Free Software, Hacking, Women, Futurama, McDonalds, love spreading, Militant Atheism, Monty Python, Douglas Adams and the French Way.  <p>Had lots of interesting exchange of ideas with <a href="http://primates.ximian.com/~massi/all.html">Massi</a>, ranging from "extensible parsing through composeable PEGs with&nbsp; optimal performance" to Carlos Castañeda, Jesus Christ, meta-physics, religion and Pink Floyd. The <a href="http://en.wikipedia.org/wiki/Cryptonomicon">Cryptonomicon</a> really got me.  <p>Got to put a face on <a href="http://forum.unity3d.com/profile.php?mode=viewprofile&amp;u=3">Joachim</a> and see how really cool <a href="http://otee.dk/">Unity</a> is.  <p><a href="http://weblog.ikvm.net/">Jeroen IKVM Frijters</a> is a funny guy!  <p>On Thursday I got to <a href="http://codehaus.org/~bamboo/MonoSummit07-db4o.pdf">talk</a> about <a href="http://www.db4o.com/">db4o</a> which led me to meet a few db4o users hanging around the conference.  <blockquote> <p>Pedro Santos had an interesting question, how to monitor and control the usage of computational resources in a managed client/server application? In other words, how a sysadmin can make sure a specific client won't DOS the application?  <p>For .NET servers running on Windows there are performance counters, what about Mono servers running on Linux?</p></blockquote> <p>I've also got to spread the gospel about <a href="http://boo.codehaus.org/">boo</a> for which I got a hugely positive response.  <blockquote> <p><a href="http://ajaxwidgets.com/Blogs/thomas.bb">Thomas "Gaia" Hansen</a> seemed to really get it and so we had lots of interesting discussions on how to take over the world boo style.</p> <p><a href="http://jacksonito.blogspot.com/">Jackson</a> wants to hack on better nullable type support for boo!</p> <p><a href="http://schani.wordpress.com/">Mark</a> wants an extensible language where NullReferenceExceptions are impossible.</p> <p><a href="http://tirania.org/blog/index.html">Miguel</a> reassured me once again mcs won't be rewritten on top of the boo compiler infrastructure :)</p></blockquote> <p>The presentation material is <a href="http://boo.codehaus.org/MonoSummit2007/">here</a>.  <p>Looking forward to the next one.  ]]></description>
<dc:subject>boo</dc:subject>
<dc:creator>bamboo</dc:creator>
<dc:date>2007-12-04T09:43:44-03:00</dc:date>
</item>
<item rdf:about="http://blogs.codehaus.org/people/bamboo/archives/001638_claiming_technorati.html">
<title>Claiming Technorati</title>
<link>http://blogs.codehaus.org/people/bamboo/archives/001638_claiming_technorati.html</link>
<description><![CDATA[<p>
Following Carl's steps I'm also claiming my blog by publishing a link to my <a href="http://technorati.com/claim/r6e8b22pqy" rel="me">Technorati Profile</a>.
</p>]]></description>
<dc:subject>technology</dc:subject>
<dc:creator>bamboo</dc:creator>
<dc:date>2007-11-26T06:22:39-03:00</dc:date>
</item>
<item rdf:about="http://blogs.codehaus.org/people/bamboo/archives/001637_mono_summit_2007.html">
<title>Mono Summit 2007</title>
<link>http://blogs.codehaus.org/people/bamboo/archives/001637_mono_summit_2007.html</link>
<description><![CDATA[<p>
So it's official now, I'll be speaking at the <a href="http://www.mono-project.com/Mono_Summit_2007_Schedule">Mono Summit 2007</a>. <br /><br />
It will be great to see you there!<br /><br />

Many thanks to the great folks at <a href="http://www.db4o.com/">db4o</a> for sponsoring my trip.</br >
</p>]]></description>
<dc:subject>technology</dc:subject>
<dc:creator>bamboo</dc:creator>
<dc:date>2007-11-13T14:54:04-03:00</dc:date>
</item>
<item rdf:about="http://blogs.codehaus.org/people/bamboo/archives/001625_a_honest_halo_3_review.html">
<title>A honest Halo 3 review</title>
<link>http://blogs.codehaus.org/people/bamboo/archives/001625_a_honest_halo_3_review.html</link>
<description><![CDATA[<p>Yeah, <a href="http://www.escapistmagazine.com/articles/view/editorials/zeropunctuation/2304-Zero-Punctuation-Halo-3">I won't be playing Halo 3</a> unless I get one for free (hint, hint).
</p>]]></description>
<dc:subject>technology</dc:subject>
<dc:creator>bamboo</dc:creator>
<dc:date>2007-10-24T11:56:56-03:00</dc:date>
</item>
<item rdf:about="http://blogs.codehaus.org/people/bamboo/archives/001617_something_i_must_read.html">
<title>Something I must read...</title>
<link>http://blogs.codehaus.org/people/bamboo/archives/001617_something_i_must_read.html</link>
<description><![CDATA[<p>This is a <a href="http://www.gigamonkeys.com/book/">Lisp tutorial</a> worth reading.</p>]]></description>
<dc:subject>technology</dc:subject>
<dc:creator>bamboo</dc:creator>
<dc:date>2007-09-20T14:19:25-03:00</dc:date>
</item>
<item rdf:about="http://blogs.codehaus.org/people/bamboo/archives/001616_frink.html">
<title>Frink</title>
<link>http://blogs.codehaus.org/people/bamboo/archives/001616_frink.html</link>
<description><![CDATA[<p><a href="http://futureboy.us/frinkdocs/">This</a> is so nice.</p>]]></description>
<dc:subject>technology</dc:subject>
<dc:creator>bamboo</dc:creator>
<dc:date>2007-09-17T23:24:52-03:00</dc:date>
</item>
<item rdf:about="http://blogs.codehaus.org/people/bamboo/archives/001595_good_luck_lessig.html">
<title>Good luck, Lessig</title>
<link>http://blogs.codehaus.org/people/bamboo/archives/001595_good_luck_lessig.html</link>
<description><![CDATA[<p>I had the privilege to attend to <a href="http://www.lessig.org/" target="_blank">Lessig</a>'s talk at the <a href="http://fisl.softwarelivre.org" target="_blank">FISL</a> some time ago. It really moved me.</p>

<p>I wish him the best of luck on <a href="http://www.lessig.org/blog/archives/003800.shtml" target="_blank">his new crusade</a>.</p>]]></description>
<dc:subject>technology</dc:subject>
<dc:creator>bamboo</dc:creator>
<dc:date>2007-06-21T11:19:19-03:00</dc:date>
</item>
<item rdf:about="http://blogs.codehaus.org/people/bamboo/archives/001587_monster_muck_mashup.html">
<title>Monster Muck Mashup</title>
<link>http://blogs.codehaus.org/people/bamboo/archives/001587_monster_muck_mashup.html</link>
<description><![CDATA[<p>I am <a href="http://developer.amazonwebservices.com/connect/entry.jspa?externalID=691&categoryID=100" target="_blank">impressed</a>.</p>]]></description>
<dc:subject>technology</dc:subject>
<dc:creator>bamboo</dc:creator>
<dc:date>2007-06-05T13:24:08-03:00</dc:date>
</item>
<item rdf:about="http://blogs.codehaus.org/people/bamboo/archives/001586_domain_model_persistence_on_the_naked_clr.html">
<title>Domain model persistence on the naked CLR</title>
<link>http://blogs.codehaus.org/people/bamboo/archives/001586_domain_model_persistence_on_the_naked_clr.html</link>
<description><![CDATA[<p><a href="http://ayende.com/Blog/Default.aspx">Oren</a> <a href="http://ayende.com/Blog/archive/2007/06/03/Domain-Driven-on-Naked-CLR.aspx">asks</a>: </p>

<p>&nbsp;&nbsp;&nbsp;"Assuming that you have no access to tooling, and you don't have the resources to built NHibernate-sque framework, how would you approach building a Domain Driven application on the naked CLR?"</p>

<p>The most interesting part of the question for me is <i>"and you don't have the resources to built NHibernate" </i>because it immediately goes to the seemingly basic assumption most people have these days that "Persistence => SQL". <br />
	 <br />
While it might be certainly true that a relational backend is a given for most enterprisey scenarios it is certainly not true that all persistent applications have to go through the pain. </p>

<p>Once upon a time a team with 4 people (2 developers, 2 web designers) built the web content management system for the 3rd largest TV station in Brazil on top of System.Runtime.Serialization using the <a href="http://en.wikipedia.org/wiki/Object_Prevalence">Object Prevalence</a> architecture.</p>

<p>Yeah, skin naked CLR.</p>

<p>If your specific application can't afford keeping all its objects in memory all the time and you don't mind putting a little clothes on, there's <a href="http://www.db4o.com/" target="_blank">db4o</a>.</p>

<p></p>

<p><br />
 </p>]]></description>
<dc:subject>technology</dc:subject>
<dc:creator>bamboo</dc:creator>
<dc:date>2007-06-03T11:48:05-03:00</dc:date>
</item>
<item rdf:about="http://blogs.codehaus.org/people/bamboo/archives/001578_10x_improvement_for_dynamic_dispatching_or_how_it_took_me_4_years_to_optimize_duck_typing.html">
<title>10x improvement for dynamic dispatching OR how it took me 4 years to optimize duck typing</title>
<link>http://blogs.codehaus.org/people/bamboo/archives/001578_10x_improvement_for_dynamic_dispatching_or_how_it_took_me_4_years_to_optimize_duck_typing.html</link>
<description><![CDATA[<p>
Around 4 years ago (!) there was <a href="http://lists.ximian.com/pipermail/mono-devel-list/2003-September/002143.html">this discussion</a> about how to support some dynamic language features on top of mono. One of the topics was optimizing dynamic dispatching and apparently <a href="http://lists.ximian.com/pipermail/mono-devel-list/2003-September/002151.html">my suggestion</a> was  redirected to nul.
</p><p>
4 years later here I am finally implementing the idea in order to take boo's dynamic dispatching performance to the next level.
</p><p>
Before the optimization:
</p><pre style="background-color: black; color: white;">$ build/booi performance/duckoperators.boo
int*int: 1.101584
list*int: 29.0217312
dynamicDispatch: 51.9484224
staticDispatch 1.4921456
</pre><p>
Each line reports how long it takes to execute the described operation with dynamic dispatching 5_000_000 times (except the last line which executes the same operation as the line before it but with static dispatching).
</p><p>
The first line tells us that it takes 1.10 seconds for boo to multiply two integer objects using dynamic dispatching.
<br />The second line says boo takes 29.02 seconds to multiply a List instance by an integer using dynamic dispatching (dynamic dispatch over static methods).
<br />The third line which is the most interesting one for our purposes here says that boo takes roughly 52 seconds to dynamically dispatch 5_000_000 instance method calls.
</p><p>
We can see a huge overhead over static dispatching.
</p><p>
After the optimization:
</p><pre style="background-color: black; color: white;">$ build/booi performance/duckoperators.boo
int*int: 1.101584
list*int: 27.755072
dynamicDispatch: 4.055832
staticDispatch 1.4821312
</pre><p>
Niiiiiice.
</p><p>
So this first stab got it from <strong>52 seconds</strong> down to <strong>4 seconds</strong>. Not bad at all. A few changes and we'll have the same benefits for dynamic dispatching over static methods.
</p><p>
I hope this will have a huge impact on environments that rely heavily on dynamic dispatching such as <a href="http://wiki.castleproject.org/index.php/MonoRail:Brail">Brail</a>.
</p><p>
Unfortunately though this optimization is only available when building for the .NET 2.0 profile.
</p><p>
Soon in a source code repository near you.
</p>]]></description>
<dc:subject>boo</dc:subject>
<dc:creator>bamboo</dc:creator>
<dc:date>2007-05-21T07:58:03-03:00</dc:date>
</item>
<item rdf:about="http://blogs.codehaus.org/people/bamboo/archives/001441_db4o_60_is_out.html">
<title>db4o 6.0 is out!</title>
<link>http://blogs.codehaus.org/people/bamboo/archives/001441_db4o_60_is_out.html</link>
<description><![CDATA[<p><a href="http://evain.net/blog/articles/2006/11/14/db4o-6-0-released">Feel the love!</a></p>]]></description>
<dc:subject>technology</dc:subject>
<dc:creator>bamboo</dc:creator>
<dc:date>2006-11-14T17:36:16-03:00</dc:date>
</item>
<item rdf:about="http://blogs.codehaus.org/people/bamboo/archives/001386_pair_programming_and_free_play.html">
<title>Pair Programming and Free Play</title>
<link>http://blogs.codehaus.org/people/bamboo/archives/001386_pair_programming_and_free_play.html</link>
<description><![CDATA[<p>I'm finally reading <a href="http://www.amazon.com/gp/product/0874776317/sr=8-1/qid=1156094481/ref=pd_bbs_1/103-5188688-8342231?ie=UTF8">Free Play</a> again. Always a pleasure.</p>

<p>I've also been pair programming a lot. Another pleasure:</p>

<p>"Some jobs are too big to handle alone, or simply more fun when done with friends. Either case leads us into the fruitful and challenging field of collaboration. Artists working together play out yet another aspect of the power of limits. There is another personality and style to pull with and push against. Each collaborator brings to the work a different set of strengths and resistances. We provide both irritation and inspiration for each other - the grist for each other's pearl making.</p>

<p>We need to remind ourselves here of what is obviously true but not often enough said: that different personality styles have different creative styles. There is no one idea of creativity that can describe it all. Therefore, in collaborating with others we round up, as in any relationship, an enlarged self, a more versatile creativity."</p>

<p>I could quote the whole chapter but hey, do yourself a favor and get the book.</p>]]></description>
<dc:subject>technology</dc:subject>
<dc:creator>bamboo</dc:creator>
<dc:date>2006-08-20T15:32:12-03:00</dc:date>
</item>


</rdf:RDF>
