<?xml version="1.0"?>
<rss version="2.0">
<channel>
  <title>Mats Henricsons blog - Java category</title>
  <link>http://blog.crisp.se/matshenricson/categories/Java/</link>
  <description></description>
  <language>sv</language>
  <copyright>Mats Henricson</copyright>
  <lastBuildDate>Wed, 03 Mar 2010 08:26:00 GMT</lastBuildDate>
  <generator>Pebble (http://pebble.sourceforge.net)</generator>
  <docs>http://backend.userland.com/rss</docs>
  
  
  <item>
    <title>Technology stressed? Perhaps it is time to panic!</title>
    <link>http://blog.crisp.se/matshenricson/2009/06/04/technology_stressed_perhaps_it_is_time_to_panic.html</link>
    
      
        <description>
          Four years ago I spent a few months assembling a rather wide-spread document which I named &amp;quot;&lt;a href=&#034;http://www.theserverside.com/news/thread.tss?thread_id=35074&#034;&gt;State of the art in Server Side Java&lt;/a&gt;&amp;quot;. It was at the time well researched enough to end up as an entry on The Server Side.&lt;br /&gt;
&lt;br /&gt;
Soon thereafter I got sidetracked to follow Ajax for a few years. I even went as the only Swede to the first ever Ajax conference in San Francisco, and blogged a &lt;a href=&#034;http://www.jroller.com/matsh/entry/the_ajax_experience_day_one&#034;&gt;lot&lt;/a&gt; &lt;a href=&#034;http://www.jroller.com/matsh/entry/the_ajax_experience_day_two&#034;&gt;from&lt;/a&gt; &lt;a href=&#034;http://www.jroller.com/matsh/entry/the_ajax_experience_day_three&#034;&gt;there&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
These days there are simply so much things going on in Server Side Java land to have a slight clue as to where that freight-train is heading. There&#039;s Hadoop and all its cousins for distributed computing, Actors, Terracotta, a school of new whacky persistence paradigms, a handful of JVM-based languages that only &lt;a href=&#034;http://olabini.com/blog/&#034;&gt;Ola Bini&lt;/a&gt; has the energy to follow. Annotations have, as I predicted, totally changed the way we program, and just about every day I bump into a new annotation I&#039;ve never seen before (yesterday it was @PathParam).&lt;br /&gt;
&lt;br /&gt;
It would feel OK if this plethora of technologies were somewhat obscure, but in my current project we use a lot of stuff I don&#039;t know well enough, such as Maven, Jersey, WebLogic, Spring transactions and JPA, just to mention a few.&lt;br /&gt;
&lt;br /&gt;
And even though the Ajax anarchy has somewhat collapsed into a few leaders, such as jQuery, Dojo, DWR and GWT, the whole arena is just all over the place. I&#039;ve stopped following Ajax these days, there is just too much going on.&lt;br /&gt;
&lt;br /&gt;
So, what do I spend time on, if I don&#039;t stay up-to-date with server side Java or Ajax? Well, I&#039;m swamped by RSS and Twitter. I abuse technology news like a drug addict, and believed I was reasonably knowledgeable, until I read &lt;a href=&#034;http://technology.amis.nl/blog/5512/last-preprations-and-first-impressions-from-javaone-2009-guess-who-is-not-a-sponsor-not-even-an-iron-or-wood-level&#034;&gt;this blog post&lt;/a&gt; yesterday which listed 14 technologies to follow at JavaOne. I had heard of 3 of them, which made me start thinking.&lt;br /&gt;
&lt;br /&gt;
What the heck is going on? Is this technology race accelerating, not just at the rate of the SW industry expanding, but at a pace where it is getting out of control? Have humans triggered the &lt;a href=&#034;http://en.wikipedia.org/wiki/Technological_singularity&#034;&gt;singularity&lt;/a&gt; themselves, without the need for a &lt;a href=&#034;http://en.wikipedia.org/wiki/Superintelligence&#034;&gt;Super Intelligence&lt;/a&gt;? Well, perhaps not. The slice of knowledge any human can follow has been shrinking constantly for a long time. But I can&#039;t help getting this idea that the explosion of open source software is giving us the &lt;a href=&#034;http://en.wikipedia.org/wiki/Standing_on_the_shoulders_of_giants&#034;&gt;shoulders of giants&lt;/a&gt; we can stand on to accelerate our knowledge. And more of it is coming from unexpected countries. Recently I bumped into &lt;a href=&#034;http://twitter.com/debasishg&#034;&gt;Debasish Ghosh&lt;/a&gt;. Following this guy from India on Twitter is like riding a rollercoaster - new exciting stuff all the time.&lt;br /&gt;
&lt;br /&gt;
So, should we panic? Should we give up? Will every future job search have a list of required skills from a potential list of skills so huge that nobody will ever have a full set? What if we go with maximum speed into &lt;a href=&#034;http://ola-bini.blogspot.com/2008/01/language-explorations.html&#034;&gt;polyglot programming&lt;/a&gt;, and fragment even further in all directions? Today I heard about &lt;a href=&#034;http://twitter.com/jboner/status/2026809657&#034;&gt;two sites&lt;/a&gt; where they used Clojure on the server, with Rails as UI. Who the hell can fill that skill set?
        </description>
      
      
    
    
    
    <category>Teknik</category>
    
    <category>Ajax</category>
    
    <category>Java</category>
    
    <comments>http://blog.crisp.se/matshenricson/2009/06/04/technology_stressed_perhaps_it_is_time_to_panic.html#comments</comments>
    <guid isPermaLink="true">http://blog.crisp.se/matshenricson/2009/06/04/technology_stressed_perhaps_it_is_time_to_panic.html</guid>
    <pubDate>Thu, 04 Jun 2009 19:10:15 GMT</pubDate>
  </item>
  
  <item>
    <title>Java 7 update från Alex Miller</title>
    <link>http://blog.crisp.se/matshenricson/2009/02/16/java_7_update_frn_alex_miller.html</link>
    
      
        <description>
          Alex Miller har &lt;a href=&#034;http://tech.puredanger.com/2009/02/16/java7-update/&#034;&gt;precis bloggat&lt;/a&gt; om vad han tycker verkar ske n&amp;auml;r det g&amp;auml;ller Java 7. Vi kan f&amp;aring; en preview till JavaOne 2009 (dvs juni) och ett teoretiskt releasedatum p&amp;aring; januari 2010, men Miller tycker det &amp;auml;r f&amp;ouml;r mycket os&amp;auml;kerheter f&amp;ouml;r att tro p&amp;aring; en s&amp;aring; pass snabb release.&lt;br /&gt;
&lt;br /&gt;
Generellt sett s&amp;aring; tror jag han verkar tycka att det &amp;auml;nd&amp;aring; blir en r&amp;auml;tt intressant release, trots att den inte kommer att ha closures. Man kan tro att jag har massiv kritik mot Sun och Java 7 utifr&amp;aring;n rubriken p&amp;aring; den &lt;a href=&#034;http://www.idg.se/2.1085/1.210248/massiv-kritik-mot-java&#034;&gt;artikel i Computer Sweden d&amp;auml;r jag citeras&lt;/a&gt;, men s&amp;aring; &amp;auml;r inte fallet. Jag tror v&amp;auml;ldigt mycket utm&amp;auml;rkt mjukvara kommer att kunna utvecklas i Java 7 utan dessa closures.
        </description>
      
      
    
    
    
    <category>Java</category>
    
    <comments>http://blog.crisp.se/matshenricson/2009/02/16/java_7_update_frn_alex_miller.html#comments</comments>
    <guid isPermaLink="true">http://blog.crisp.se/matshenricson/2009/02/16/java_7_update_frn_alex_miller.html</guid>
    <pubDate>Mon, 16 Feb 2009 15:18:14 GMT</pubDate>
  </item>
  
  <item>
    <title>10 really lousy commandments for Java Developers</title>
    <link>http://blog.crisp.se/matshenricson/2009/01/31/10_really_lousy_commandments_for_java_developers.html</link>
    
      
        <description>
          Aleksey Shevchenko have on developer.com published &lt;a href=&#034;http://www.developer.com/java/data/article.php/3612756&#034;&gt;10 commandments for Java Developers&lt;/a&gt;, and they are of such lousy quality that I just have to respond (this vaguely resembles a &lt;a href=&#034;http://xkcd.com/386/&#034;&gt;xkcd cartoon&lt;/a&gt; :-). His commandments are:&lt;br /&gt;
&lt;ol&gt;
    &lt;li&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;Add comments to your code&lt;/font&gt;&lt;/li&gt;
    &lt;li&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;Do not complicate things&lt;/font&gt;&lt;/li&gt;
    &lt;li&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;Keep in Mind &amp;ndash; &amp;quot;Less is more&amp;quot; is not always better&lt;/font&gt;&lt;/li&gt;
    &lt;li&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;No hard coding please&lt;/font&gt;&lt;/li&gt;
    &lt;li&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;Do not invent your own frameworks&lt;/font&gt;&lt;/li&gt;
    &lt;li&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;Say no to Print lines and String Concatenations&lt;/font&gt;&lt;/li&gt;
    &lt;li&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;Pay attention to the GUI&lt;/font&gt;&lt;/li&gt;
    &lt;li&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;Always Prepare Document Requirements&lt;/font&gt;&lt;/li&gt;
    &lt;li&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;Unit-test. Unit-test. Unit-test&lt;/font&gt;&lt;/li&gt;
    &lt;li&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;Remember &amp;ndash; quality, not quantity&lt;/font&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;Lets have a meta discussion about programming guidelines. In my not so humble opinion, they must fulfil at least these requirements:&lt;br /&gt;
&lt;/font&gt;
&lt;ul&gt;
    &lt;li&gt;Programming guidelines must be relevant. None &lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;of the commandments above have anything to do with Java. What was he thinking?&lt;/font&gt;&lt;/li&gt;
    &lt;li&gt;Programming guidelines must be helpful. &lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;Take &amp;quot;&lt;/font&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;No hard coding please&lt;/font&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;&amp;quot; as an example. How the hell is that helpful?&lt;/font&gt;&lt;/li&gt;
    &lt;li&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;Programming guidelines must stand on their own in one or two sentences. As an example, &amp;quot;&lt;/font&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;Remember - quality, not qualtity&lt;/font&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;&amp;quot; is just sloppy wabbly gibberish. It does not help me at all in my day-to-day programming.&lt;/font&gt;&lt;/font&gt;&lt;/li&gt;
    &lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;
    &lt;li&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;If you feel like writing commandments, better make damned sure they are important. First, is the issue you are adressing severe? If so, is it common? It has to be both severe and common to grant status as commandment. Is &amp;quot;&lt;/font&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;No hard coding please&amp;quot; among the 10 most important programming problems we&#039;re wrestling with in Java-land? No. It is at most annoying, and can easily be refactored.&lt;/font&gt;&lt;/li&gt;
    &lt;/font&gt;&lt;/ul&gt;
    &lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;After frothing at the mouth like this, lets go into details:&lt;br /&gt;
    &lt;/font&gt; &lt;/font&gt;
    &lt;ol&gt; &lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;
        &lt;li&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;Add comments to your code.&lt;br /&gt;
        &lt;br /&gt;
        My reaction is that this is just the wrong way to go. Instead extract methods with names describing what is going on. If you&#039;ve added a comment, such as &amp;quot;Calculate interest rate according to RFC 666&amp;quot;, extract the relevant code into a function named calculateInterestRateAccordingToRfc666(). Much better!&lt;br /&gt;
        &lt;br /&gt;
        &lt;/font&gt;&lt;/li&gt;
        &lt;li&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;Do not complicate things&lt;br /&gt;
        &lt;br /&gt;
        &lt;/font&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;I feel like using the cane to punish such useless meaningless drivel.&lt;/font&gt;&lt;br /&gt;
        &lt;br /&gt;
        &lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;&lt;/font&gt;&lt;/li&gt;
        &lt;li&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;Keep in Mind &amp;ndash; &amp;quot;Less is more&amp;quot; is not always better&lt;br /&gt;
        &lt;br /&gt;
        Have a look at the original examples and ask yourself, what is the correct thing to do? My suggestion is, again, to extract a function, and use constants.&lt;br /&gt;
        &lt;br /&gt;
        &lt;/font&gt;&lt;/li&gt;
        &lt;li&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;No hard coding please&lt;br /&gt;
        &lt;br /&gt;
        &lt;/font&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;To be helpful &lt;/font&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;he should have written &amp;quot;&lt;/font&gt;Literals should only be used in the definition of constants and enumerations&amp;quot;.&lt;br /&gt;
        &lt;br /&gt;
        &lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;&lt;/font&gt;&lt;/li&gt;
        &lt;li&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;Do not invent your own frameworks&lt;br /&gt;
        &lt;br /&gt;
        Yes yes yes, but what has this to do with Java?&lt;br /&gt;
        &lt;br /&gt;
        &lt;/font&gt;&lt;/li&gt;
        &lt;li&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;Say no to Print lines and String Concatenations&lt;br /&gt;
        &lt;br /&gt;
        Is this important? Is it common? If so, you really have a serious problem.&lt;br /&gt;
        &lt;br /&gt;
        &lt;/font&gt;&lt;/li&gt;
        &lt;li&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;Pay attention to the GUI&lt;br /&gt;
        &lt;br /&gt;
        Well, what can I say? Aleksey have realized that &amp;quot;&lt;/font&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;The GUI is an essential part of a successful application&amp;quot;. What can I say? It seems... profound!&lt;/font&gt;&lt;br /&gt;
        &lt;br /&gt;
        &lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;&lt;/font&gt;&lt;/li&gt;
        &lt;li&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;Always Prepare Document Requirements&lt;br /&gt;
        &lt;br /&gt;
        In the description he elaborates thus: &amp;quot;&lt;/font&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;Every business requirement must be documented.&amp;quot; &lt;/font&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;This guy seriously needs to be hit by the 26 ton agile bus.&lt;br /&gt;
        &lt;br /&gt;
        &lt;/font&gt;&lt;/li&gt;
        &lt;li&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;Unit-test. Unit-test. Unit-test&lt;br /&gt;
        &lt;br /&gt;
        TDD, TDD, or BDD, BDD. Much more important than unit tests.&lt;br /&gt;
        &lt;br /&gt;
        &lt;/font&gt;&lt;/li&gt;
        &lt;li&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;Remember &amp;ndash; quality, not quantity&lt;br /&gt;
        &lt;br /&gt;
        Has he stumbled upon something important here? No, I will, as always, prefer quantity over quality every day of the week. Code is an asset, as well all know. The more the merrier!&lt;br /&gt;
        &lt;/font&gt;&lt;/li&gt;
        &lt;/font&gt;&lt;/ol&gt;
        &lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;&lt;font size=&#034;-1&#034; face=&#034;Verdana, Arial, Helvetica&#034;&gt;As a warning to anyone with a severe case of Moses complex out there, think again before you start whacking away with chisel on stone.&lt;br /&gt;
        &lt;br /&gt;
        &lt;/font&gt;&lt;/font&gt;
        </description>
      
      
    
    
    
    <category>Java</category>
    
    <comments>http://blog.crisp.se/matshenricson/2009/01/31/10_really_lousy_commandments_for_java_developers.html#comments</comments>
    <guid isPermaLink="true">http://blog.crisp.se/matshenricson/2009/01/31/10_really_lousy_commandments_for_java_developers.html</guid>
    <pubDate>Sat, 31 Jan 2009 22:30:27 GMT</pubDate>
  </item>
  
  <item>
    <title>Actors Galore</title>
    <link>http://blog.crisp.se/matshenricson/2009/01/11/actors_galore.html</link>
    
      
        <description>
          N&amp;auml;r jag b&amp;ouml;rjade l&amp;auml;ra mig &lt;a href=&#034;http://www.scala-lang.org&#034;&gt;Scala&lt;/a&gt; s&amp;aring; st&amp;ouml;tte jag direkt p&amp;aring; &lt;a href=&#034;http://www.scala-lang.org/node/242&#034;&gt;Actors&lt;/a&gt;, ett koncept snott fr&amp;aring;n (om jag f&amp;ouml;rst&amp;aring;tt det hela korrekt) &lt;a href=&#034;http://en.wikipedia.org/wiki/Erlang_(programming_language)&#034;&gt;Erlang&lt;/a&gt;. Actors &amp;auml;r ett s&amp;auml;tt att f&amp;aring; till concurrency genom att skicka meddelanden, till skillnad fr&amp;aring;n det vi alla under ett decennium svettats med i Java, tr&amp;aring;dbaserad concurrency. Tanken &amp;auml;r att det ska vara ett l&amp;auml;ttare s&amp;auml;tt att programmera inf&amp;ouml;r den &lt;a href=&#034;http://www.infoq.com/news/2008/06/scala-vs-erlang&#034;&gt;multi-core framtid&lt;/a&gt; vi st&amp;aring;r inf&amp;ouml;r.&lt;br /&gt;
&lt;br /&gt;
Att skriva om sin applikation s&amp;aring; att den kan h&amp;aring;lla ett par k&amp;auml;rnor varma l&amp;aring;ter sig kanske g&amp;ouml;ras, men hur ska en vanlig applikation rimligen f&amp;aring; mer &amp;auml;n en handfull k&amp;auml;rnor att komma &amp;ouml;ver rumstemperatur?&lt;br /&gt;
&lt;br /&gt;
S&amp;aring; kom &lt;a href=&#034;http://blog.crisp.se/matshenricson/2008/08/04/kilim_actors_for_java.html&#034;&gt;Kilim&lt;/a&gt;, och jag gjorde ett f&amp;ouml;rs&amp;ouml;k att skriva ett enkelt exempel, men min f&amp;ouml;rst&amp;aring;else f&amp;ouml;r hur Kilim fungerade var f&amp;ouml;r ytlig f&amp;ouml;r att jag skulle ro det hela iland. Jag f&amp;ouml;rs&amp;ouml;kte skriva om min &lt;a href=&#034;http://www.jroller.com/matsh/entry/intreagued_by_javaspaces_try_blitz&#034;&gt;primtalsber&amp;auml;knare fr&amp;aring;n JavaSpaces&lt;/a&gt; till Kilim, men det visade sig att att ha en master och m&amp;aring;nga workers inte &amp;auml;r det g&amp;auml;ngse s&amp;auml;ttet att anv&amp;auml;nda sig av actors.&lt;br /&gt;
&lt;br /&gt;
N&amp;aring;, f&amp;ouml;r en dryg vecka sedan bloggade &lt;a href=&#034;http://sujitpal.blogspot.com/2009/01/more-java-actor-frameworks-compared.html&#034;&gt;Sujit Pal&lt;/a&gt; om alla de Actors-ramverk som nu dykt upp som svampar ur jorden. Han har fungerande kodexempel f&amp;ouml;r Kilim, Scala Actors, samt Jetlang, ActorFoundry och Actor&#039;s Guild (hehe, fyndigt namn)! Har man en g&amp;aring;ng utv&amp;auml;rderat ett bleeding edge ramverk av den h&amp;auml;r typen s&amp;aring; inser man vilken herkulisk insats han har gjort f&amp;ouml;r att utv&amp;auml;rdera fem ramverk!!&lt;br /&gt;
&lt;br /&gt;
Om man detaljstuderar exemplena s&amp;aring; ser man en del eleganta detaljer, men ocks&amp;aring; f&amp;ouml;r varje ramverk en del som ger mig lite ont i magen och g&amp;ouml;r att jag slipar t&amp;auml;nderna mot varandra med ett oh&amp;auml;lsosamt ljud. Med lite tur s&amp;auml;tter sig de olika programmerarna samman och g&amp;ouml;r en AOP, dvs mergar sina respektive ramverk p&amp;aring; samma s&amp;auml;tt som AspectWerkz (drivet av en av v&amp;aring;ra svenska superprogrammerare Jonas Bon&amp;eacute;r) och AspectJ slog sina p&amp;aring;sar samman och skapade den industristandard som vi nu &amp;aring;tnjuter.
        </description>
      
      
    
    
    
    <category>Java</category>
    
    <category>Scala</category>
    
    <comments>http://blog.crisp.se/matshenricson/2009/01/11/actors_galore.html#comments</comments>
    <guid isPermaLink="true">http://blog.crisp.se/matshenricson/2009/01/11/actors_galore.html</guid>
    <pubDate>Sun, 11 Jan 2009 16:20:15 GMT</pubDate>
  </item>
  
  <item>
    <title>Vad kommer egentligen i Java 7?</title>
    <link>http://blog.crisp.se/matshenricson/2008/12/16/vad_kommer_egentligen_i_java_7.html</link>
    
      
        <description>
          Alex Miller har haft den &lt;a href=&#034;http://tech.puredanger.com/java7#roundup&#034;&gt;intressantaste bloggen&lt;/a&gt; f&amp;ouml;r de som intresserat sig f&amp;ouml;r Java 7, och han har en &lt;a href=&#034;http://tech.puredanger.com/java7/&#034;&gt;speciell sida&lt;/a&gt; d&amp;auml;r han summerat all information han kommit &amp;ouml;ver.&lt;br /&gt;
&lt;br /&gt;
Java har k&amp;auml;nts lite &amp;ouml;vergivet p&amp;aring; Sun, tycker jag. Det har inte funnits n&amp;aring;gon kapten p&amp;aring; skeppet. Gosling g&amp;ouml;r lite som han vill, men driver inget p&amp;aring; egen hand som har med Java att g&amp;ouml;ra, verkar det som. Neil Gafter jobbar nu f&amp;ouml;r Microsoft (burr), och Josh Bloch har bytt till Google. Kvar p&amp;aring; Sun fanns Gilad Bracha, mannen med den b&amp;auml;sta titeln - Computational Theologist - som hade sitt eget spr&amp;aring;k han snickrade p&amp;aring;, Newspeak. Han blev ocks&amp;aring; lockad &amp;ouml;ver till Microsoft, och min gissning var att han blev ditlockad av att f&amp;aring; en grupp som kunde driva hans spr&amp;aring;k fram&amp;aring;t. N&amp;aring;, Microsoft hoppade av, och jag vet inte vad han sysslar med nu.&lt;br /&gt;
&lt;br /&gt;
Kvar p&amp;aring; Sun finns Danny                         Coward. Vet inte om han har karisma och guts nog att driva fram Java 7 med den pondus som beh&amp;ouml;vs. Ett spr&amp;aring;k beh&amp;ouml;ver en j&amp;auml;rnhand f&amp;ouml;r att drivas fram i r&amp;auml;tt riktning, tror jag.&lt;br /&gt;
&lt;br /&gt;
Hur som helst s&amp;aring; har Alex Miller nu gjort en &lt;a href=&#034;http://www.javaworld.com/cgi-bin/mailto/x_java.cgi?pagetosend=/export/home/httpd/javaworld/javaworld/jw-12-2008/jw-12-year-in-review-2.html&amp;amp;pagename=/javaworld/jw-12-2008/jw-12-year-in-review-2.html&amp;amp;pageurl=http://www.javaworld.com/javaworld/jw-12-2008/jw-12-year-in-review-2.html&amp;amp;site=jw_core&#034;&gt;ny gissning&lt;/a&gt; av vad Java 7 kommer att inneh&amp;aring;lla. Inga closures, vilket m&amp;aring;nga tycker &amp;auml;r konstigt, med tanke p&amp;aring; all den brouhaha som genererats under den rubriken de senaste &amp;aring;ren. Jeez. Hur som helst &amp;auml;r det r&amp;auml;tt intressant l&amp;auml;sning!
        </description>
      
      
    
    
    
    <category>Java</category>
    
    <comments>http://blog.crisp.se/matshenricson/2008/12/16/vad_kommer_egentligen_i_java_7.html#comments</comments>
    <guid isPermaLink="true">http://blog.crisp.se/matshenricson/2008/12/16/vad_kommer_egentligen_i_java_7.html</guid>
    <pubDate>Tue, 16 Dec 2008 20:24:45 GMT</pubDate>
  </item>
  
  <item>
    <title>Cascading - MapReduce without the complexity</title>
    <link>http://blog.crisp.se/matshenricson/2008/09/25/cascading_mapreduce_without_the_complexity.html</link>
    
      
        <description>
          Just bumped into &lt;a href=&#034;http://www.cascading.org&#034;&gt;Cascading&lt;/a&gt;, which is an open source (GPL 3) framework &amp;quot;&lt;em&gt;for defining and executing complex and fault tolerant data processing workflows on a &lt;a href=&#034;http://hadoop.apache.org/core/&#034;&gt;Hadoop&lt;/a&gt; cluster&lt;/em&gt;&amp;quot;. Hadoop is, I&#039;m sure you all know, an implementation of &lt;a href=&#034;http://wiki.apache.org/hadoop/HadoopMapReduce&#034;&gt;MapReduce&lt;/a&gt; which is at the core of how Google does its processing.&lt;br /&gt;
&lt;br /&gt;
Anyway, the Cascading API &amp;quot;&lt;em&gt;lets the developer quickly assemble complex distributed processes without having to &amp;quot;think&amp;quot; in MapReduce&lt;/em&gt;&amp;quot;, which can get &lt;a href=&#034;http://blogs.msdn.com/brandonwerner/archive/2008/09/19/goodbye-map-reduce-hello-cascading.aspx&#034;&gt;really complex in non-trivial applications&lt;/a&gt;.
        </description>
      
      
    
    
    
    <category>Java</category>
    
    <comments>http://blog.crisp.se/matshenricson/2008/09/25/cascading_mapreduce_without_the_complexity.html#comments</comments>
    <guid isPermaLink="true">http://blog.crisp.se/matshenricson/2008/09/25/cascading_mapreduce_without_the_complexity.html</guid>
    <pubDate>Thu, 25 Sep 2008 20:21:00 GMT</pubDate>
  </item>
  
  <item>
    <title>What is SpringSource doing with its license?</title>
    <link>http://blog.crisp.se/matshenricson/2008/09/23/what_is_springsource_doing_with_its_license.html</link>
    
      
        <description>
          It appears as if SpringSource, the company doing most of the development of Spring, is doing an ExtJS, i.e. changing the license of its product to force users into paying for it, or its support. Lots of people are writing about this, such as &lt;span class=&#034;submitted&#034;&gt;&lt;a href=&#034;http://java.dzone.com/articles/springsource-and-lost-tag&#034;&gt;Alessandro Santini at JavaLobby&lt;/a&gt;. Does anyone have any enlightening comments?&lt;br /&gt;
&lt;br /&gt;
Regardless, I think it is now up to the community to start asking the maintainers of various emerging frameworks explicitly if they in the future will change its license. If they slipper and slide on the answer, then we know we&#039;re in for a rough awakening.&lt;br /&gt;
&lt;/span&gt;
        </description>
      
      
    
    
    
    <category>Java</category>
    
    <comments>http://blog.crisp.se/matshenricson/2008/09/23/what_is_springsource_doing_with_its_license.html#comments</comments>
    <guid isPermaLink="true">http://blog.crisp.se/matshenricson/2008/09/23/what_is_springsource_doing_with_its_license.html</guid>
    <pubDate>Tue, 23 Sep 2008 21:46:00 GMT</pubDate>
  </item>
  
  <item>
    <title>Woohoo: Mixed Scala and Java projects in Eclipse</title>
    <link>http://blog.crisp.se/matshenricson/2008/09/20/woohoo_mixed_scala_and_java_projects_in_eclipse.html</link>
    
      
        <description>
          A few days ago Scala 2.7.2 RC2 was &lt;a href=&#034;http://www.scala-lang.org/node/305&#034;&gt;released&lt;/a&gt;. One of the new features is mixed Java and Scala support in both the compiler and the Eclipse plugin. I decided to try it out. Installation was very &lt;a href=&#034;http://www.scala-lang.org/node/94&#034;&gt;simple&lt;/a&gt;. I then set off creating a simplistic Java class side by side with the Scala object, in the same package. I then created such a Java object in my Scala code, and ran it. It just works! &lt;img alt=&#034;&#034; src=&#034;images/eclipsescalajava.jpg&#034; /&gt;
        </description>
      
      
    
    
    
    <category>Java</category>
    
    <category>Scala</category>
    
    <comments>http://blog.crisp.se/matshenricson/2008/09/20/woohoo_mixed_scala_and_java_projects_in_eclipse.html#comments</comments>
    <guid isPermaLink="true">http://blog.crisp.se/matshenricson/2008/09/20/woohoo_mixed_scala_and_java_projects_in_eclipse.html</guid>
    <pubDate>Sat, 20 Sep 2008 12:47:00 GMT</pubDate>
  </item>
  
  <item>
    <title>Kilim - Actors for Java</title>
    <link>http://blog.crisp.se/matshenricson/2008/08/04/kilim_actors_for_java.html</link>
    
      
        <description>
          Just bumped into &lt;a href=&#034;http://www.infoq.com/news/2008/06/kilim-message-passing-in-java&#034;&gt;Kilim&lt;/a&gt;, an actors framework for Java. This could be really important! The most exciting thing I&#039;ve seen in several months!
        </description>
      
      
    
    
    
    <category>Java</category>
    
    <comments>http://blog.crisp.se/matshenricson/2008/08/04/kilim_actors_for_java.html#comments</comments>
    <guid isPermaLink="true">http://blog.crisp.se/matshenricson/2008/08/04/kilim_actors_for_java.html</guid>
    <pubDate>Sun, 03 Aug 2008 22:18:00 GMT</pubDate>
  </item>
  
  <item>
    <title>Steve Yegge om hur språkvalet påverkar kodbasens storlek</title>
    <link>http://blog.crisp.se/matshenricson/2008/02/12/steve_yegge_om_hur_sprkvalet_pverkar_kodbasens_storlek.html</link>
    
      
        <description>
          Steve Yegge, som jag bara st&amp;ouml;tt p&amp;aring; vid n&amp;aring;gra tillf&amp;auml;llen tidigare, skrev strax f&amp;ouml;re jul ett blogginl&amp;auml;gg under rubriken &lt;a href=&#034;http://steve-yegge.blogspot.com/2007/12/codes-worst-enemy.html&#034;&gt;Code&#039;s Worst Enemy&lt;/a&gt;. D&amp;auml;r f&amp;ouml;rs&amp;ouml;ker han, utifr&amp;aring;n erfarenheten fr&amp;aring;n ett spel han skrivit p&amp;aring; egen hand i Java, argumentera f&amp;ouml;r att det &amp;auml;r Javas fel att hans kodbas nu &amp;auml;r p&amp;aring; 500 000 rader. Vilket han nu inte l&amp;auml;ngre klarar av att underh&amp;aring;lla.&lt;br /&gt;
&lt;br /&gt;
Nu kan man ju undra hur en person &amp;ouml;ver huvud taget kan skriva en halv miljon rader Java. Och premissen att det &amp;auml;r Javas fel att det &amp;auml;r s&amp;aring; m&amp;aring;nga rader kan ju ocks&amp;aring; diskuteras. Men jag &amp;auml;r nog b&amp;ouml;jd att acceptera att Java kanske inte &amp;auml;r det tightaste spr&amp;aring;ket p&amp;aring; planeten. Men Steves beslut att skriva om allt i &lt;a href=&#034;http://www.mozilla.org/rhino&#034;&gt;Rhino&lt;/a&gt; k&amp;auml;nns ju r&amp;auml;tt bisarr.&lt;br /&gt;
&lt;br /&gt;
&amp;Ouml;ver huvud taget ska man, enligt min &amp;ouml;dmjuka mening (IMHO) t&amp;auml;nka sig f&amp;ouml;r innan man b&amp;ouml;rjar skriva ett stort system i ett dynamiskt spr&amp;aring;k. Dels f&amp;aring;r man betala detta med &amp;quot;&lt;a href=&#034;http://beust.com/weblog/archives/000462.html&#034;&gt;continuous tax&lt;/a&gt;&amp;quot;, samt att man inte kan f&amp;aring; n&amp;aring;got riktigt solitt &lt;a href=&#034;http://beust.com/weblog/archives/000414.html&#034;&gt;refactoring&lt;/a&gt; st&amp;ouml;d. (B&amp;aring;da l&amp;auml;nkar g&amp;aring;r till blog-inl&amp;auml;gg av husguden Cederic Beust).&lt;br /&gt;
&lt;br /&gt;
S&amp;aring; min rekommendation, om man &amp;auml;r r&amp;auml;dd f&amp;ouml;r att begrava sig sj&amp;auml;lv i sin kodbas, &amp;auml;r att v&amp;auml;lja Groovy, d&amp;auml;r man i alla fall kan sl&amp;aring; p&amp;aring; statisk typning om man vill, eller Scala som &amp;auml;r statiskt typat. Och b&amp;aring;da kommer med bra webbramverk i form av Grails och lift. Utan ett s&amp;aring;dant &amp;auml;r ett spr&amp;aring;k r&amp;auml;tt k&amp;ouml;rt.&lt;br /&gt;
&lt;br /&gt;
Hur som helst s&amp;aring; har Steves inl&amp;auml;gg genererat en otrolig m&amp;auml;ngd med inl&amp;auml;gg av m&amp;aring;nga r&amp;auml;tt k&amp;auml;nda personer. Har ni n&amp;aring;gra timmar till &amp;ouml;vers s&amp;aring; &amp;auml;r det v&amp;auml;rt en titt.
        </description>
      
      
    
    
    
    <category>Java</category>
    
    <category>Scala</category>
    
    <comments>http://blog.crisp.se/matshenricson/2008/02/12/steve_yegge_om_hur_sprkvalet_pverkar_kodbasens_storlek.html#comments</comments>
    <guid isPermaLink="true">http://blog.crisp.se/matshenricson/2008/02/12/steve_yegge_om_hur_sprkvalet_pverkar_kodbasens_storlek.html</guid>
    <pubDate>Tue, 12 Feb 2008 22:52:00 GMT</pubDate>
  </item>
  
  <item>
    <title>Ouch, Howard Lewis Ship dumpar Maven</title>
    <link>http://blog.crisp.se/matshenricson/2008/01/29/ouch_howard_lewis_ship_dumpar_maven.html</link>
    
      
        <description>
          Skaparen av Tapestry, Howard Lewis Ship, &lt;a href=&#034;http://tapestryjava.blogspot.com/2007/11/maven-wont-get-fooled-again.html&#034;&gt;dumpar nu Maven&lt;/a&gt;, efter att ha anv&amp;auml;nt det v&amp;auml;ldigt mycket. Citat fr&amp;aring;n hans blog:&lt;br /&gt;
&lt;blockquote&gt;The Maven team is &lt;em&gt;criminal...&lt;/em&gt;&lt;br /&gt;
&lt;em&gt;...&lt;/em&gt;&lt;br /&gt;
&lt;em&gt;&lt;/em&gt;
&lt;p&gt; The Maven project site is an embarrassment. The tool supposedly designed for &amp;quot;project comprehension&amp;quot; is itself incomprehensible, due to its scale, the chaos of its documentation, and the &lt;em&gt;extreme&lt;/em&gt; lack of engineering discipline evidenced by its maintainers.  &lt;/p&gt;
&lt;p&gt; Get out while you still can. &lt;br /&gt;
&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Inom Crisp har vi tv&amp;aring; fraktioner, en som gillar Maven och anv&amp;auml;nder det mycket, och en annan grupp som &amp;auml;r skeptisk. Jag h&amp;ouml;r till den senare gruppen, efter att ha sett ett projekt n&amp;auml;stan snubbla p&amp;aring; Maven. Dessutom &amp;auml;r jag &amp;auml;r en stor fan av Hani Suleiman, och han avskyr Maven.&lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;Den senaste tiden har jag sett m&amp;aring;nga projekt g&amp;aring; &amp;ouml;ver till Maven, bland annat &amp;auml;r det mycket anv&amp;auml;nt i Scala, och just nu sitter jag p&amp;aring; Jfokus och lyssnar p&amp;aring; ett f&amp;ouml;redrag om Apache ServiceMix, och de anv&amp;auml;nder ocks&amp;aring; Maven. Men Ships inl&amp;auml;gg g&amp;ouml;r att jag inte kommer att rekommendera Maven om inte projektet d&amp;auml;r det ska anv&amp;auml;ndas &amp;auml;r r&amp;auml;tt enkelt i sin struktur.&lt;/p&gt;
        </description>
      
      
    
    
    
    <category>Java</category>
    
    <comments>http://blog.crisp.se/matshenricson/2008/01/29/ouch_howard_lewis_ship_dumpar_maven.html#comments</comments>
    <guid isPermaLink="true">http://blog.crisp.se/matshenricson/2008/01/29/ouch_howard_lewis_ship_dumpar_maven.html</guid>
    <pubDate>Tue, 29 Jan 2008 11:18:00 GMT</pubDate>
  </item>
  
  <item>
    <title>Terracotta clustering of Scala Actors</title>
    <link>http://blog.crisp.se/matshenricson/2008/01/29/terracotta_clustering_of_scala_actors.html</link>
    
      
        <description>
          I Scala finns ramverket Actors, som ska vara en n&amp;auml;ra mappning av Erlangs framg&amp;aring;ngsrika motsvarighet med samma namn: ett meddelande-baserat ramverk f&amp;ouml;r concurrency. Nu har Jonas Bon&amp;eacute;r &lt;a href=&#034;http://jonasboner.com/2008/01/25/clustering-scala-actors-with-terracotta/&#034;&gt;kopplat ihop Scalas Actors med Terracotta&lt;/a&gt;, vilket ger oss transparent klustring av dessa Actors!&lt;br /&gt;
&lt;br /&gt;
David Pollak, skaparen av webramverket lift f&amp;ouml;r Scala l&amp;auml;t h&amp;auml;lsa:&lt;br /&gt;
&lt;blockquote&gt;This is most awesome news. I&#039;ll do some work seeing if we can scale Skittr to 50M users on an EC2 cluster.&lt;br /&gt;
&lt;/blockquote&gt;Jag har ganska sv&amp;aring;rt att f&amp;ouml;rest&amp;auml;lla mig en h&amp;auml;ftigare applikation: Scala, lift, Actors, Terracotta och EC2. Ring mig om ni har ett Scala-uppdrag i fickan!
        </description>
      
      
    
    
    
    <category>Java</category>
    
    <category>Scala</category>
    
    <comments>http://blog.crisp.se/matshenricson/2008/01/29/terracotta_clustering_of_scala_actors.html#comments</comments>
    <guid isPermaLink="true">http://blog.crisp.se/matshenricson/2008/01/29/terracotta_clustering_of_scala_actors.html</guid>
    <pubDate>Mon, 28 Jan 2008 23:56:00 GMT</pubDate>
  </item>
  
  <item>
    <title>Varför Scala kan vara nästa stora programmeringsspråk</title>
    <link>http://blog.crisp.se/matshenricson/2007/12/14/varfr_scala_kan_vara_nsta_stora_programmeringssprk.html</link>
    
      
        <description>
          Jag har funderat ganska l&amp;auml;nge p&amp;aring; vad n&amp;auml;sta stora spr&amp;aring;k skulle kunna vara. Jag var tidigt med p&amp;aring; resan fr&amp;aring;n C++ till Java. &amp;Aring;kte p&amp;aring; den f&amp;ouml;rsta JavaOne konferensen i San Francisco, och trodde redan d&amp;aring; att Java skulle ta &amp;ouml;ver. S&amp;aring; fort det var m&amp;ouml;jligt l&amp;auml;mnade jag C++ bakom mig, trots att jag skrivit en bok om C++ och suttit i standardiseringskommissionen f&amp;ouml;r C++.&lt;br /&gt;
&lt;br /&gt;
Men Java varar inte f&amp;ouml;r evigt, och jag har p&amp;aring; egen hand samlat p&amp;aring; vad jag tror &amp;auml;r viktigt f&amp;ouml;r att n&amp;aring;got ska bli &amp;quot;n&amp;auml;sta stora spr&amp;aring;k&amp;quot;:&lt;br /&gt;
&lt;ol&gt;
    &lt;li&gt;Dess syntax f&amp;aring;r inte vara f&amp;ouml;r olika det som g&amp;auml;ller idag, dvs Java, f&amp;ouml;r annars kan man inte f&amp;aring; speciellt m&amp;aring;nga att migrera.&lt;/li&gt;
    &lt;li&gt;Det m&amp;aring;ste bygga p&amp;aring; en virtuell maskin, troligen endera JVM eller Microsofts CLR. De ger den portabilitet vi kr&amp;auml;ver idag. (CLR &amp;auml;r ju kanske inte s&amp;aring; portabel, men i teorin finns ju Mono.)&lt;br /&gt;
    &lt;/li&gt;
    &lt;li&gt;Det m&amp;aring;ste ha inbyggt st&amp;ouml;d f&amp;ouml;r multi-core. D&amp;aring; menar jag inte bara det spr&amp;aring;kst&amp;ouml;d som finns i Java och andra spr&amp;aring;k f&amp;ouml;r att skapa och starta tr&amp;aring;dar, utan inbyggt st&amp;ouml;d s&amp;aring; att virtuella maskinen kan bryta loss delar av det som ska exekveras till olika cores i framtidens processorer. Om 5 &amp;aring;r har vi ju kanske 16 cores som standard i en processor, och att manuellt skriva kod som utnyttjar dem &amp;auml;r f&amp;ouml;r sv&amp;aring;rt f&amp;ouml;r annat &amp;auml;n experter.&lt;/li&gt;
    &lt;li&gt;Det m&amp;aring;ste ha st&amp;ouml;d av ett stort f&amp;ouml;retag som kan st&amp;auml;lla upp med resurser att skriva verktyg, bibliotek, marknadsf&amp;ouml;ring, konferenser, b&amp;ouml;cker, etc.&lt;/li&gt;
    &lt;li&gt;Det m&amp;aring;ste ha bra prestanda. Visst, Javas prestanda var inte bra fr&amp;aring;n b&amp;ouml;rjan, men det fanns inget sk&amp;auml;l till att det skulle beh&amp;ouml;va vara l&amp;aring;ngsamt, och idag har Java v&amp;auml;ldigt bra prestanda, f&amp;ouml;rutom startup tid.&lt;/li&gt;
    &lt;li&gt;Det b&amp;ouml;r helst inte &amp;ouml;verge tidigare investeringar i redan existerande kod.&lt;/li&gt;
    &lt;li&gt;Det b&amp;ouml;r vara statiskt typat, f&amp;ouml;r annars blir det sv&amp;aring;rt att bygga bra verktyg f&amp;ouml;r bland annat refaktorering, vilket &amp;auml;r n&amp;ouml;dv&amp;auml;ndigt f&amp;ouml;r st&amp;ouml;rre projekt.&lt;/li&gt;
    &lt;li&gt;Det m&amp;aring;ste vara objektorienterat - det &amp;auml;r otvetydigt s&amp;aring; att det &amp;auml;r det paradigm som fungerat b&amp;auml;st f&amp;ouml;r att bygga stora system.&lt;/li&gt;
&lt;/ol&gt;
Java har idag allt detta, f&amp;ouml;rutom 3, och det oroar mig en del. S&amp;aring; fick jag h&amp;ouml;ra talas om Scala och dess ramverk som heter Actors. Det h&amp;auml;vdades att det skulle hj&amp;auml;lpa till med just detta med multi-core. Har &amp;auml;nnu inte l&amp;auml;st in mig p&amp;aring; just Actors, men jag blev nyfiken p&amp;aring; Scala och l&amp;auml;ste in mig p&amp;aring; det.&lt;br /&gt;
&lt;br /&gt;
Scala &amp;auml;r ett statiskt typat objekt-orienterat spr&amp;aring;k med en syntax som &amp;auml;r tillr&amp;auml;ckligt lik Java f&amp;ouml;r att man ska luras att ta en n&amp;auml;rmare titt. N&amp;auml;r man v&amp;auml;l sett p&amp;aring; vilket s&amp;auml;tt det ocks&amp;aring; &amp;auml;r ett funktionellt spr&amp;aring;k, med dess annorlunda syntax (som jag tror m&amp;aring;ste till av ren n&amp;ouml;dv&amp;auml;ndighet f&amp;ouml;r att ge ett s&amp;aring;dant st&amp;ouml;d), s&amp;aring; har man redan svalt kroken, s&amp;auml;nket och hela korken.&lt;br /&gt;
&lt;br /&gt;
Scala ligger ovanp&amp;aring; Javas virtuella maskin, och Java-klasser kan anv&amp;auml;ndas rakt av. Java-kod &amp;auml;r inte automatiskt giltig Scala-kod, p&amp;aring; det s&amp;auml;tt som all C f&amp;ouml;r 15 &amp;aring;r sedan var giltig C++, men man kan ta med sig existerande Java-kod in i den Scala kod man skriver.&lt;br /&gt;
&lt;br /&gt;
Tyv&amp;auml;rr har inget st&amp;ouml;rre f&amp;ouml;retag st&amp;auml;llt sig bakom Scala &amp;auml;nnu, men det finns riktigt m&amp;aring;nga projekt som jobbar p&amp;aring; verktyg och ramverk. Det finns en r&amp;auml;tt bra Eclipse-plugin, ramverk f&amp;ouml;r enhetstestning, ett mycket intressant webbramverk som heter lift, en mycket aktiv och hj&amp;auml;lpsam mailinglista, och ett par b&amp;ouml;cker p&amp;aring; g&amp;aring;ng. En av b&amp;ouml;ckerna kan man precis &lt;a href=&#034;http://www.artima.com/shop/forsale&#034;&gt;f&amp;ouml;rbest&amp;auml;lla&lt;/a&gt;!&lt;br /&gt;
&lt;br /&gt;
Scalas prestanda &amp;auml;r &lt;a href=&#034;http://dmy999.com/article/26/scala-vs-groovy-static-typing-is-key-to-performance&#034;&gt;mycket bra&lt;/a&gt;, kan till och med med vara &lt;a href=&#034;http://shootout.alioth.debian.org/gp4/benchmark.php?test=nsievebits&amp;amp;lang=all&#034;&gt;snabbare &amp;auml;n Java&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
H&amp;auml;r st&amp;aring;r jag sj&amp;auml;lv just nu. Jag ska l&amp;auml;sa den nya Scala-boken &amp;ouml;ver julhelgen. Just nu &amp;auml;r jag mest en entusiastisk amat&amp;ouml;r som tror jag hittat n&amp;aring;got som kan bli riktigt stort.
        </description>
      
      
    
    
    
    <category>Java</category>
    
    <category>Scala</category>
    
    <comments>http://blog.crisp.se/matshenricson/2007/12/14/varfr_scala_kan_vara_nsta_stora_programmeringssprk.html#comments</comments>
    <guid isPermaLink="true">http://blog.crisp.se/matshenricson/2007/12/14/varfr_scala_kan_vara_nsta_stora_programmeringssprk.html</guid>
    <pubDate>Fri, 14 Dec 2007 00:05:00 GMT</pubDate>
  </item>
  
  <item>
    <title>JAX-RS: RESTful Web Services</title>
    <link>http://blog.crisp.se/matshenricson/2007/10/29/jax_rs_restful_web_services.html</link>
    
      
        <description>
          Draft specen f&amp;ouml;r &lt;a href=&#034;http://jcp.org/en/jsr/detail?id=311&#034;&gt;JAX-RS: The Java API for RESTful Web Services&lt;/a&gt; sl&amp;auml;pptes f&amp;ouml;r n&amp;aring;gon vecka sedan. Som oftast brukar jag inte orka granska specarna som kommer, men denna g&amp;aring;ng tog jag mig en titt. It made me go mmmm... som det heter. Kan denna lilla kodsnutt v&amp;auml;cka aptiten:&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;
&lt;pre&gt;&lt;strong&gt;@UriTemplate(&amp;ldquo;widgets&amp;rdquo;)‏&lt;br /&gt;public class WidgetList&lt;br /&gt;{&lt;br /&gt;   @HttpMethod&lt;br /&gt;   @UriTemplate(&amp;ldquo;offers&amp;rdquo;)‏&lt;br /&gt;   WidgetList getDiscounted() { /* ... */ }&lt;br /&gt;&lt;br /&gt;   @UriTemplate(&amp;ldquo;{id}&amp;rdquo;)‏&lt;br /&gt;   Widget findWidget(@UriParam(&amp;ldquo;id&amp;rdquo;) String id)‏&lt;br /&gt;   {&lt;br /&gt;      return lookupWidget(id);&lt;br /&gt;   }&lt;br /&gt;}&lt;/strong&gt;&lt;br /&gt;&lt;/pre&gt;
&lt;/blockquote&gt; H&amp;auml;r &amp;auml;r en annan goding: &lt;blockquote&gt;
&lt;pre&gt;&lt;strong&gt;@UriTemplate(&amp;ldquo;widgets&amp;rdquo;)‏&lt;br /&gt;@ProduceMime(&amp;ldquo;application/widgets+xml&amp;rdquo;)‏&lt;br /&gt;public class WidgetList&lt;br /&gt;{&lt;br /&gt;   @HttpMethod&lt;br /&gt;   String getAll() { /* ... */ }&lt;br /&gt;&lt;br /&gt;   @HttpMethod&lt;br /&gt;   @UriTemplate(&amp;ldquo;{id}/description&amp;rdquo;)‏&lt;br /&gt;   @ProduceMime(&amp;ldquo;text/html&amp;rdquo;)‏&lt;br /&gt;   String getDescription(@UriParam(&amp;ldquo;id&amp;rdquo;) String id) { /* ... */ }&lt;br /&gt;}&lt;br /&gt;&lt;/strong&gt;&lt;/pre&gt;
&lt;/blockquote&gt;Men, gr&amp;auml;ver man djupare i specen (den &amp;auml;r hittills bara ~30 sidor) s&amp;aring; blir det mer hmm... &amp;auml;n mmm... massor av r&amp;auml;tt m&amp;auml;rkliga begrepp som jag aldrig st&amp;ouml;tt p&amp;aring; tidigare. Speciellt begreppet Contract i detta sammanhang f&amp;ouml;rvirrar mig ganska mycket. Hur som helst, v&amp;auml;l v&amp;auml;rt en titt. Kanske en &lt;a href=&#034;http://www.crisp.se/rd&#034;&gt;RD&lt;/a&gt; p&amp;aring; &amp;auml;mnet?
        </description>
      
      
    
    
    
    <category>Java</category>
    
    <comments>http://blog.crisp.se/matshenricson/2007/10/29/jax_rs_restful_web_services.html#comments</comments>
    <guid isPermaLink="true">http://blog.crisp.se/matshenricson/2007/10/29/jax_rs_restful_web_services.html</guid>
    <pubDate>Mon, 29 Oct 2007 22:18:00 GMT</pubDate>
  </item>
  
  <item>
    <title>Detta har hänt i sommar</title>
    <link>http://blog.crisp.se/matshenricson/2007/08/15/detta_har_hnt_i_sommar.html</link>
    
      
        <description>
          F&amp;ouml;r er som inte knarkar tekniknyheter lika okontrollerat som jag g&amp;ouml;r har jag n&amp;ouml;jet att f&amp;aring; summera de senaste 5-6 veckorna inom omr&amp;aring;dena Java, Ajax, Scrum och annat av intresse. Tro mig, jag har gallrat stenh&amp;aring;rt.&lt;br /&gt;
&lt;ul&gt;
    &lt;li&gt; JUnit 4.4 &lt;a href=&#034;http://www.infoq.com/news/2007/07/new_junit_release&#034;&gt;sl&amp;auml;pptes nyligen&lt;/a&gt;. Nyheterna var inte speciellt upphetsande.&lt;/li&gt;
    &lt;li&gt; En av mina favoritbloggare, Cederic Beust, har &lt;a href=&#034;http://beust.com/weblog/archives/000454.html&#034;&gt;skrivit om dynamiska och statiska spr&amp;aring;k&lt;/a&gt;. Inte mycket text, men mycket intressant. V&amp;auml;l v&amp;auml;rt ett par minuter.&lt;/li&gt;
    &lt;li&gt; Av n&amp;aring;gon anledning &amp;auml;r kodformattering mig n&amp;auml;ra hj&amp;auml;rtat, s&amp;aring; det var med visst n&amp;ouml;je jag noterade att &lt;a href=&#034;http://ask.slashdot.org/article.pl?sid=07/07/07/1931246&#034;&gt;Slashdot hade en tr&amp;aring;d om detta&lt;/a&gt; i somras. David Herron har bloggat i &lt;a href=&#034;http://weblogs.java.net/blog/robogeek/archive/2007/08/source_code_isn.html&#034;&gt;samma dom&amp;auml;ner&lt;/a&gt;, vilket &amp;auml;r kul, &amp;auml;ven om han verkar ha &lt;a href=&#034;http://www.jroller.com/matsh/entry/code_is_not_text&#034;&gt;snott titeln&lt;/a&gt; p&amp;aring; sitt inl&amp;auml;gg fr&amp;aring;n mig.&lt;/li&gt;
    &lt;li&gt; Medlemmar fr&amp;aring;n Ajax-ramverket Dojo har skrivit en artikel med namnet &amp;quot;&lt;a href=&#034;http://dojotoolkit.org/book/dojo-book-0-9/introduction/why-dojo&#034;&gt;Why Dojo&lt;/a&gt;&amp;quot;, som jag tror alla som st&amp;aring;r i valet och kvalet att v&amp;auml;lja Ajax-ramverk nog b&amp;ouml;r l&amp;auml;sa. Dojos event-modell &amp;auml;r v&amp;auml;ldigt cool, och tydligen har den blivit &lt;a href=&#034;http://www.sitepen.com/blog/2007/08/10/wiring-a-dojo-app/&#034;&gt;extra bra&lt;/a&gt; i senaste 0.9 versionen av Dojo.&lt;/li&gt;
    &lt;li&gt; En annan Ajax-artikel med namnet &amp;quot;&lt;a href=&#034;http://www.ibm.com/developerworks/java/library/j-jettydwr/index.html&#034;&gt;Write scalable Comet applications with Jetty and Direct Web Remoting&lt;/a&gt;&amp;quot; borde intressera alla som f&amp;ouml;rs&amp;ouml;ker v&amp;auml;lja Comet-ramverk. Go DWR Go!&lt;/li&gt;
    &lt;li&gt; ThoughtWorks har sl&amp;auml;ppt en &amp;quot;agile project management software&amp;quot; med namnet &lt;a href=&#034;http://www.infoq.com/news/2007/07/mingle-released&#034;&gt;Mingle&lt;/a&gt;. Vet inget mer om detta, men Henrik kanske k&amp;auml;nner sig manad?&lt;/li&gt;
    &lt;li&gt; Matt Raible har summerat &amp;quot;&lt;a href=&#034;http://raibledesigns.com/rd/entry/open_source_web_frameworks_mailing&#034;&gt;Open Source Web Frameworks&#039; Mailing List Traffic - June 2007&lt;/a&gt;&amp;quot;, dvs hur mycket trafik &amp;auml;r det p&amp;aring; de olika ramverkenas mailinglistor. Ganska intressant, om man f&amp;ouml;rs&amp;ouml;ker avg&amp;ouml;ra vart&amp;aring;t det bl&amp;aring;ser. Till min stora gl&amp;auml;dje ligger Wicket bra till, Liksom GWT, men mest trafik har Ruby on Rails, vad man nu kan dra f&amp;ouml;r slutsatser av det?&lt;/li&gt;
    &lt;li&gt; W3C funderar p&amp;aring; att inte l&amp;aring;ta HTML 4 &amp;ouml;verg&amp;aring; till XHTML, eftersom de verkar vilja g&amp;ouml;ra en &lt;a href=&#034;http://developers.slashdot.org/article.pl?sid=07/07/20/1226235&#034;&gt;femte version av HTML&lt;/a&gt;. Vad ska man tro om det?&lt;/li&gt;
    &lt;li&gt; Specifikationen f&amp;ouml;r Java EE 6 har &lt;a href=&#034;http://www.javalobby.org/java/forums/t99039.html&#034;&gt;sl&amp;auml;ppts&lt;/a&gt;. Troligen kommer de f&amp;ouml;rsta implementationerna f&amp;ouml;rst i b&amp;ouml;rjan av 2009.&lt;/li&gt;
    &lt;li&gt; Jag f&amp;ouml;rs&amp;ouml;ker h&amp;aring;lla ett &amp;ouml;ga p&amp;aring; vad som skrivs om Scala, d&amp;aring; jag f&amp;aring;tt intrycket att det kanske &amp;auml;r ett bra spr&amp;aring;k f&amp;ouml;r framtidens multi-core processorer, s&amp;aring; artikeln &amp;quot;&lt;a href=&#034;http://alblue.blogspot.com/2007/06/java-is-scala-new-groovy.html&#034;&gt;Is Scala the new Groovy&lt;/a&gt;&amp;quot; kunde jag naturligtvis inte undvika. Sedan finns det de som tror att Terracotta &amp;auml;r r&amp;auml;tt v&amp;auml;g att skriva multi-core applikationer i Java, s&amp;aring; &amp;quot;&lt;a href=&#034;http://tech.puredanger.com/2007/08/08/hello-terracotta/&#034;&gt;Hello Terracotta&lt;/a&gt;&amp;quot; kanske &amp;auml;r r&amp;auml;tt st&amp;auml;lle att b&amp;ouml;rja?&lt;/li&gt;
    &lt;li&gt; Vill man l&amp;auml;sa mer om JavaScrips framtid s&amp;aring; kan man l&amp;auml;sa &lt;a href=&#034;http://www.infoq.com/news/2007/07/javascriptevolution&#034;&gt;h&amp;auml;r&lt;/a&gt;. Daniel?&lt;/li&gt;
    &lt;li&gt; F&amp;ouml;r oss anh&amp;auml;ngare av Google Calendar &amp;auml;r nog artikeln &amp;quot;&lt;a href=&#034;http://lifehacker.com/software/google-calendar/geek-to-live--black-belt-scheduling-with-google-calendar-250939.php&#034;&gt;Black belt scheduling with Google Calendar&lt;/a&gt;&amp;quot; oundviklig.&lt;/li&gt;
    &lt;li&gt; Vad kommer &lt;a href=&#034;http://www.readwriteweb.com/archives/pivots_of_the_web.php&#034;&gt;efter social networking&lt;/a&gt;? Sj&amp;auml;lv har jag inte en aning, eftersom jag k&amp;auml;nner mig helt bakom fl&amp;ouml;tet n&amp;auml;r det g&amp;auml;ller Facebook, YouTube, MySpace, Twitter, etc etc etc.&lt;/li&gt;
&lt;/ul&gt;
Privat har jag varit en vecka i Sm&amp;aring;land, 4 veckor i Thailand, samt en vecka i V&amp;auml;sterbotten, d&amp;auml;r jag och mina tv&amp;aring; s&amp;ouml;ner besteg fj&amp;auml;llet Jengegietje, 1477 meter &amp;ouml;ver havet, i lysande v&amp;auml;der. Shorts och T-tr&amp;ouml;ja r&amp;auml;ckte p&amp;aring; toppen!
        </description>
      
      
    
    
    
    <category>Ajax</category>
    
    <category>Teknik</category>
    
    <category>Java</category>
    
    <category>Internet</category>
    
    <category>Scala</category>
    
    <category>Agile</category>
    
    <comments>http://blog.crisp.se/matshenricson/2007/08/15/detta_har_hnt_i_sommar.html#comments</comments>
    <guid isPermaLink="true">http://blog.crisp.se/matshenricson/2007/08/15/detta_har_hnt_i_sommar.html</guid>
    <pubDate>Wed, 15 Aug 2007 19:21:00 GMT</pubDate>
  </item>
  
  <item>
    <title>Om att parsa CSV filer</title>
    <link>http://blog.crisp.se/matshenricson/2007/07/03/om_att_parsa_csv_filer.html</link>
    
      
        <description>
          Att parsa CSV (Comma Separated Values) kan tyckas trivialt:&lt;br /&gt;
&lt;blockquote&gt;Bananer,3,22.30&lt;br /&gt;
&lt;/blockquote&gt;Men om man vill till&amp;aring;ta komman i v&amp;auml;rdena, s&amp;aring; blir det inte lika roligt:&lt;br /&gt;
&lt;blockquote&gt;Bananer,3,&amp;quot;22,30&amp;quot;&lt;br /&gt;
&lt;/blockquote&gt;Jag browsade runt lite p&amp;aring; n&amp;auml;tet och fastnade f&amp;ouml;r &lt;a href=&#034;http://opencsv.sourceforge.net&#034;&gt;opencsv&lt;/a&gt;. Det &amp;auml;r&lt;br /&gt;
&lt;ul&gt;
    &lt;li&gt;Open source&lt;/li&gt;
    &lt;li&gt;V&amp;auml;ldigt litet (2 klasser, en JAR fil p&amp;aring; 16 KB)&lt;/li&gt;
    &lt;li&gt;OK dokumentation&lt;/li&gt;
    &lt;li&gt;Version 1.7, dvs inte beta&lt;br /&gt;
    &lt;/li&gt;
    &lt;li&gt;Utvecklaren har en aktiv &lt;a href=&#034;http://blogs.bytecode.com.au/glen&#034;&gt;blog&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;Popul&amp;auml;rt (ca &lt;a href=&#034;http://sourceforge.net/project/stats/detail.php?group_id=148905&amp;amp;ugn=opencsv&amp;amp;type=prdownload&amp;amp;mode=alltime&amp;amp;package_id=164539&#034;&gt;50 nerladdningar per dag&lt;/a&gt; p&amp;aring; SourceForge)&lt;/li&gt;
&lt;/ul&gt;
Som genom magi fick jag samtidigt ner en lista p&amp;aring; de kriterier jag anv&amp;auml;nder n&amp;auml;r jag utv&amp;auml;rderar ramverk! :-)
        </description>
      
      
    
    
    
    <category>Java</category>
    
    <comments>http://blog.crisp.se/matshenricson/2007/07/03/om_att_parsa_csv_filer.html#comments</comments>
    <guid isPermaLink="true">http://blog.crisp.se/matshenricson/2007/07/03/om_att_parsa_csv_filer.html</guid>
    <pubDate>Tue, 03 Jul 2007 10:09:00 GMT</pubDate>
  </item>
  
  <item>
    <title>XX Framework - ett nytt webbramverk för Java</title>
    <link>http://blog.crisp.se/matshenricson/2007/07/03/xx_framework_ett_nytt_webbramverk_fr_java.html</link>
    
      
        <description>
          Eller nytt och nytt, har funnits i ett drygt &amp;aring;r, verkar det som, men jag har aldrig h&amp;ouml;rt talas om det f&amp;ouml;rut. XX i &lt;a href=&#034;http://www.xxframework.org&#034;&gt;XX Framework&lt;/a&gt; st&amp;aring;r f&amp;ouml;r XML och XSLT.&lt;br /&gt;
&lt;blockquote&gt;The primary goal of the XX Framework is to handle typical application CRUD (create, retrieve, update, delete) with little or no Java programming. Instead of telling the application how to retrieve and how to display the data, we configure what to retrieve (through XML) and what to display (through XSLT).&lt;br /&gt;
&lt;/blockquote&gt;Inget om man har aversioner mot XML, tydligen, men kanske helt r&amp;auml;tt om enkel CRUD &amp;auml;r ens sweet spot. Fast d&amp;aring; kanske man ska anv&amp;auml;nda Trails ist&amp;auml;llet?
        </description>
      
      
    
    
    
    <category>Java</category>
    
    <comments>http://blog.crisp.se/matshenricson/2007/07/03/xx_framework_ett_nytt_webbramverk_fr_java.html#comments</comments>
    <guid isPermaLink="true">http://blog.crisp.se/matshenricson/2007/07/03/xx_framework_ett_nytt_webbramverk_fr_java.html</guid>
    <pubDate>Tue, 03 Jul 2007 09:59:00 GMT</pubDate>
  </item>
  
  <item>
    <title>Kanske är det Scala?</title>
    <link>http://blog.crisp.se/matshenricson/2007/06/24/kanske_r_det_scala.html</link>
    
      
        <description>
          Jag har &lt;a href=&#034;http://blog.crisp.se/matshenricson/2007/06/07/vilket_sprk_tar_oss_med_i_multicore_racet.html&#034;&gt;tidigare bloggat&lt;/a&gt; om vilket spr&amp;aring;k som kanske kan ta oss med i multi-core racet. Erlang skulle k&amp;auml;nnas som ett nederlag (n&amp;aring;gra av er kanske f&amp;ouml;rst&amp;aring;r varf&amp;ouml;r). Ruby hypas ofta som n&amp;auml;sta stora spr&amp;aring;k, men &amp;auml;r det n&amp;aring;got att h&amp;aring;lla i handen n&amp;auml;r man surfar loss p&amp;aring; flera cores? Jag tvivlar, av ren princip, utan att egentligen veta. N&amp;auml;r ska man f&amp;aring; vara ologisk och partisk om inte vid valet av n&amp;auml;sta spr&amp;aring;k att riskera sin karri&amp;auml;r p&amp;aring;?&lt;br /&gt;
&lt;br /&gt;
S&amp;aring; nyss bankade jag pannan i en artikel skriven av &lt;span class=&#034;as&#034;&gt;Bill Venners, Martin Odersky och Lex Spoon med namnet &lt;a href=&#034;http://www.artima.com/scalazine/articles/steps.html&#034;&gt;First Steps to Scala&lt;/a&gt;. Inledningen &amp;auml;r mycket intressant:&lt;br /&gt;
&lt;/span&gt;&lt;blockquote&gt;
&lt;p&gt; Scala is a statically typed, object-oriented programming language that blends imperative and functional programming styles. Scala is designed to integrate easily with applications that run on modern virtual machines, primarily the Java virtual machine (JVM). The main Scala compiler, &lt;code&gt;scalac&lt;/code&gt;, generates Java class files that can be run on the JVM. However, another Scala compiler exists that generates binaries that can be run on the .NET CLR, as Scala is designed to integrate with both the Java and .NET worlds. In the Java world, the Scala language can be used alongside the Java language&amp;mdash;either as an alternative to Java&amp;mdash;to build applications that run on the JVM. &lt;/p&gt;
&lt;/blockquote&gt;  &lt;blockquote&gt;
&lt;p&gt; Scala was developed starting in 2003 by Martin Odersky&#039;s group at &lt;a href=&#034;http://www.epfl.ch/&#034;&gt;EPFL&lt;/a&gt;, Lausanne, Switzerland. Previously, Martin had been active in the Java field. He co-designed the first version of Java generics and was the original author of the current &lt;code&gt;javac&lt;/code&gt; compiler. The work on Scala was motivated by the desire to overcome limitations imposed by backwards compatibility with Java. So Scala is not a superset of Java, but it retains seamless interoperability.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Mmmm, kanske en &lt;a href=&#034;http://www.crisp.se/rd/&#034;&gt;Rocket Day&lt;/a&gt; om detta i Crisps regi?&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
        </description>
      
      
    
    
    
    <category>Java</category>
    
    <category>Scala</category>
    
    <comments>http://blog.crisp.se/matshenricson/2007/06/24/kanske_r_det_scala.html#comments</comments>
    <guid isPermaLink="true">http://blog.crisp.se/matshenricson/2007/06/24/kanske_r_det_scala.html</guid>
    <pubDate>Sat, 23 Jun 2007 22:33:00 GMT</pubDate>
  </item>
  
  <item>
    <title>Spring Batch ser lovande ut</title>
    <link>http://blog.crisp.se/matshenricson/2007/06/24/spring_batch_ser_lovande_ut.html</link>
    
      
        <description>
          P&amp;aring; mitt nuvarande uppdrag hos Keybroker har vi skapat ett r&amp;auml;tt avancerat batch-processing ramverk, byggt p&amp;aring; Spring och Quartz. Nu verkar det som om Spring h&amp;aring;ller p&amp;aring; att bygga ett eget s&amp;aring;dant ramverk med namnet &lt;a href=&#034;http://blog.interface21.com/main/2007/05/07/spring-batch/&#034;&gt;Spring Batch&lt;/a&gt;. Deras arkitektur ser lovande ut, men tyv&amp;auml;rr finns inte s&amp;aring; mycket p&amp;aring; plats &amp;auml;nnu.&lt;br /&gt;
&lt;br /&gt;
Egentligen ser jag detta som ett misslyckande f&amp;ouml;r Quartz, f&amp;ouml;r det var l&amp;auml;nge sedan jag st&amp;ouml;tte p&amp;aring; ett ramverk som var i s&amp;aring; desperat behov av en arkitekturell &amp;ouml;versyn. P&amp;aring; ytan ser det enkelt ut, men ju djupare man dyker i dess features, ju mer desperat blir man. Den nya RetryPolicy klassen ser ut att kunna ta bort orsaken till mycket av den tandagnisslan jag tvingats g&amp;ouml;ra den senaste tiden.&lt;br /&gt;
        </description>
      
      
    
    
    
    <category>Java</category>
    
    <comments>http://blog.crisp.se/matshenricson/2007/06/24/spring_batch_ser_lovande_ut.html#comments</comments>
    <guid isPermaLink="true">http://blog.crisp.se/matshenricson/2007/06/24/spring_batch_ser_lovande_ut.html</guid>
    <pubDate>Sat, 23 Jun 2007 22:20:00 GMT</pubDate>
  </item>
  
  <item>
    <title>Characteristics of a Good DAO</title>
    <link>http://blog.crisp.se/matshenricson/2007/05/29/characteristics_of_a_good_dao.html</link>
    
      
        <description>
          Eric Burke har i sin blog skrivit ner &lt;a href=&#034;http://stuffthathappens.com/blog/2007/05/28/characteristics-of-a-good-dao/&#034;&gt;13 saker man b&amp;ouml;r t&amp;auml;nka p&amp;aring;&lt;/a&gt; n&amp;auml;r man skriver sina DAO (Data Access Object) klasser. Det verkade vara en bra sammanfattning, tyckte jag.
        </description>
      
      
    
    
    
    <category>Java</category>
    
    <comments>http://blog.crisp.se/matshenricson/2007/05/29/characteristics_of_a_good_dao.html#comments</comments>
    <guid isPermaLink="true">http://blog.crisp.se/matshenricson/2007/05/29/characteristics_of_a_good_dao.html</guid>
    <pubDate>Tue, 29 May 2007 07:54:00 GMT</pubDate>
  </item>
  
  </channel>
</rss>
