<?xml version="1.0"?>
<rss version="2.0">
<channel>
  <title>JavaGeek.org - Java category</title>
  <link>http://javageek.org/categories/java/</link>
  <description>For the love of Java</description>
  <language>en</language>
  <copyright>Guillermo Castro</copyright>
  <lastBuildDate>Thu, 04 Oct 2007 13:32:00 GMT</lastBuildDate>
  <generator>Pebble (http://pebble.sourceforge.net)</generator>
  <docs>http://backend.userland.com/rss</docs>
  
  <image>
    <url>http://pebble.sourceforge.net/common/images/powered-by-pebble.gif</url>
    <title>JavaGeek.org (Java category)</title>
    <link>http://javageek.org/</link>
  </image>
  
  
  <item>
    <title>My thoughts after 10 years of Java programming</title>
    <link>http://javageek.org/2007/10/04/my_thoughts_after_10_years_of_java_programming.html</link>
    
      
        <description>
          A couple of months ago (June, to be precise) was my 10th year anniversary of doing Java programming. In that time, I&#039;ve worked with several technologies, seen a couple of interesting projects and worked for different companies in different sectors, both as a consultant and as an employee. I thought I should share a couple of thoughts I&#039;ve had after all these years.&lt;br /&gt;
&lt;br /&gt;
First of all, it&#039;s amazing how much Java has advanced in that time. I think Java is probably one of the few languages who actually has evolved without becoming a completely different language, while still maintaining backwards compatibility. This is why I love Java. I get to learn new stuff every day (after 10 years, I&#039;m still learning) and yet I can rummage among my old backups, open up a very old project and it will still run unchanged. Sure, libraries come and libraries go, but the core is still there, ready for your programs.&lt;br /&gt;
&lt;br /&gt;
Working in different industries has also been interesting for me. When you&#039;re in the IT sector, you usually try to do more bleeding-edge stuff, look after the new, not yet released technology that you think it will change the world. Contrast this with working in the retail sector, where the priorities are to keep the business running, which usually means that changes are more slow to come, and stability is a very important thing. If your program crashes in the IT sector, you just release it as &amp;quot;beta&amp;quot;. If your program crashes in the retail sector, your company can lose millions. Yet in both sectors (and others I&#039;ve worked on, like banking and such) Java is used daily. Millions upon millions of transactions per second are managed by Java code, while the next generation electronic gadget is being tested against the latest Java ME standards. I think very few languages are as pervasive as Java.&lt;br /&gt;
&lt;br /&gt;
Would I still be coding Java after another 10 years? I don&#039;t see why not. I really enjoy doing it, and I&#039;ve been fortunate so far in that I haven&#039;t had to &amp;quot;move on&amp;quot; to a different position in order to advance myself professionally. I also think Java will continue to evolve for a long time, and I&#039;ll keep learning new stuff after another 10 years (at least).
&lt;!--
&lt;rdf:RDF xmlns:rdf=&#034;http://www.w3.org/1999/02/22-rdf-syntax-ns#&#034;
         xmlns:dc=&#034;http://purl.org/dc/elements/1.1/&#034;
         xmlns:trackback=&#034;http://madskills.com/public/xml/rss/module/trackback/&#034;&gt;
&lt;rdf:Description
    rdf:about=&#034;http://javageek.org/2007/10/04/my_thoughts_after_10_years_of_java_programming.html&#034;
    dc:identifier=&#034;http://javageek.org/2007/10/04/my_thoughts_after_10_years_of_java_programming.html&#034;
    dc:title=&#034;My thoughts after 10 years of Java programming&#034;
    trackback:ping=&#034;http://javageek.org/addTrackBack.action?entry=1191504720000&amp;token=4280434754603159842&#034; /&gt;
&lt;/rdf:RDF&gt;
--&gt;
        </description>
      
      
    
    
    
    <category>Java</category>
    
    <comments>http://javageek.org/2007/10/04/my_thoughts_after_10_years_of_java_programming.html#comments</comments>
    <guid isPermaLink="true">http://javageek.org/2007/10/04/my_thoughts_after_10_years_of_java_programming.html</guid>
    <pubDate>Thu, 04 Oct 2007 13:32:00 GMT</pubDate>
  </item>
  
  <item>
    <title>Add author icons to your weblog comments</title>
    <link>http://javageek.org/2006/07/06/add_author_icons_to_your_weblog_comments.html</link>
    
      
        <description>
          Good news, everyone! No, Futurama isn&#039;t on the air, yet. But &lt;span style=&#034;font-style: italic;&#034;&gt;soon&lt;/span&gt;. Anyway, I&#039;m still here, albeit a little busy. However, in one of those few late night things I do, I was able to finish up a little project. If you didn&#039;t know, there&#039;s a site that stores your icons and lets weblogs put icons on the comments, based on the author&#039;s email. &lt;a href=&#034;http://www.gravatar.com/&#034;&gt;Gravatar.com&lt;/a&gt; provides your site with icons for all the people who comment on your weblog. This works by locally (on your site) generating an MD5 hash of the comment author&#039;s email, and then creating an img tag with a source URL that points to gravatar.com and uses the hash to identify the author, and if the author has previously registered that email with gravatar, it will give back an 80x80 picture that was previously loaded by the author. The MD5 hash avoids the need for someone&#039;s email address to leave your site, which I think it&#039;s good.&lt;br /&gt;&lt;br /&gt;I found this concept very interesting, and when I looked at the &lt;a href=&#034;http://www.gravatar.com/implement.php&#034;&gt;implementation page&lt;/a&gt;, I found out there&#039;s very few java support, other than some code on how to create the MD5 and I realized this was a good opportunity to create a taglib. So here it is. &lt;a href=&#034;http://javageek.org/files/javatar-20060705.jar&#034;&gt;jAvatar&lt;/a&gt; is a tag library that lets you include a gravatar icon for each of the comments on your weblog. To use it, you just need to add the javatar.jar to your webapp, and the taglib to your comment page. Here&#039;s an example on how you can do it on your comments JSP page:&lt;br /&gt;&lt;br /&gt;
&lt;div class=&#034;codeSample&#034;&gt;&amp;lt;%@ page language=&amp;quot;java&amp;quot; pageEncoding=&amp;quot;UTF-8&amp;quot; contentType=&amp;quot;text/html; charset=UTF-8&amp;quot;%&amp;gt;&lt;br /&gt;&lt;span style=&#034;font-weight: bold;&#034;&gt;&amp;lt;%@taglib uri=&amp;quot;http://javageek.org/files/taglib/javatar&amp;quot; prefix=&amp;quot;javatar&amp;quot;%&amp;gt;&lt;/span&gt;&lt;br /&gt;&amp;lt;%&lt;br /&gt;&lt;span style=&#034;font-weight: bold;&#034;&gt;String email = &amp;quot;some_email@somesite.com&amp;quot;;&lt;/span&gt;&lt;br /&gt;%&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;html&amp;gt;&lt;br /&gt;&amp;nbsp; &amp;lt;head&amp;gt;&amp;lt;title&amp;gt;My JSP &#039;index.jsp&#039; starting page&amp;lt;/title&amp;gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &amp;lt;body&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; This is a gravatar: &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style=&#034;font-weight: bold;&#034;&gt;&amp;lt;javatar:image mail=&amp;quot;&amp;lt;%= email %&amp;gt;&amp;quot; imgSize=&amp;quot;100&amp;quot; styleClass=&amp;quot;gravatar&amp;quot; rating=&amp;quot;R&amp;quot; defaultImgUrl=&amp;quot;http://mysite.com/img/defIcon.gif&amp;quot; borderColor=&amp;quot;F0F&amp;quot;/&amp;gt;&lt;/span&gt;&lt;br /&gt;&amp;nbsp; &amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;/div&gt;
&lt;br /&gt;Of course, the email should be the comment author&#039;s email, and the tag should be put in whatever loop you have for showing your comments. I hope you like it.
&lt;!--
&lt;rdf:RDF xmlns:rdf=&#034;http://www.w3.org/1999/02/22-rdf-syntax-ns#&#034;
         xmlns:dc=&#034;http://purl.org/dc/elements/1.1/&#034;
         xmlns:trackback=&#034;http://madskills.com/public/xml/rss/module/trackback/&#034;&gt;
&lt;rdf:Description
    rdf:about=&#034;http://javageek.org/2006/07/06/add_author_icons_to_your_weblog_comments.html&#034;
    dc:identifier=&#034;http://javageek.org/2006/07/06/add_author_icons_to_your_weblog_comments.html&#034;
    dc:title=&#034;Add author icons to your weblog comments&#034;
    trackback:ping=&#034;http://javageek.org/addTrackBack.action?entry=1152197927699&amp;token=1528938716591293666&#034; /&gt;
&lt;/rdf:RDF&gt;
--&gt;
        </description>
      
      
    
    
    
    <category>Web</category>
    
    <comments>http://javageek.org/2006/07/06/add_author_icons_to_your_weblog_comments.html#comments</comments>
    <guid isPermaLink="true">http://javageek.org/2006/07/06/add_author_icons_to_your_weblog_comments.html</guid>
    <pubDate>Thu, 06 Jul 2006 14:58:47 GMT</pubDate>
  </item>
  
  <item>
    <title>Google Web Toolkit (beta) released</title>
    <link>http://javageek.org/2006/05/16/google_web_toolkit_beta_released.html</link>
    
      
        <description>
          Google has &lt;a href=&#034;http://googlewebtoolkit.blogspot.com/2006/05/welcome-to-gwt-blog.html&#034;&gt;just released&lt;/a&gt; the beta version of the &lt;a href=&#034;http://code.google.com/webtoolkit/&#034;&gt;Google Web Toolkit&lt;/a&gt; (GWT). The GWT is a Java-based toolkit that lets you create AJAX-enabled pages using Java. The main idea of the toolkit is that once you create your app following the GWT API, you will then compile your Java classes into Javascript and HTML, so you can deploy your application in any web server (it doesn&#039;t require Java to run your application, since everything is converted).&lt;br /&gt;&lt;br /&gt;GWT provides a new, fresh and different concept to the Java web toolkits realm by providing a Java to Javascript compiler, however you might be able to see some similarities with other Java frameworks, and even with some non-java frameworks, like &lt;a href=&#034;http://rubyonrails.org/&#034;&gt;Ruby On Rails.&lt;/a&gt; For example, in order to create a new project, GWT provides you with &lt;a href=&#034;http://code.google.com/webtoolkit/gettingstarted.html#Sample&#034;&gt;some scripts&lt;/a&gt; that you use to create the basic directory structure and templates. The Widgets (&lt;a href=&#034;http://code.google.com/webtoolkit/documentation/com.google.gwt.doc.DeveloperGuide.UserInterface.html&#034;&gt;UI components&lt;/a&gt;) look somewhat like Swing or Wicket components, and the &lt;a href=&#034;http://code.google.com/webtoolkit/overview.html#Modes&#034;&gt;hosted mode&lt;/a&gt; looks like how RoR does its development. Still, the whole Java-to-Javascript concept seems new to me, and it looks like you can do some really good-looking ajaxy-feeling sites with it. GWT provides back-end interaction via &lt;a href=&#034;http://code.google.com/webtoolkit/documentation/com.google.gwt.doc.DeveloperGuide.RemoteProcedureCalls.html&#034;&gt;RPC mechanisms&lt;/a&gt; too, because not everything can be done on the client-side.&lt;br /&gt;&lt;br /&gt;I will definitely keep an eye on this framework, since I think that it will provide much needed RAD features for Java web development.&lt;br /&gt;
&lt;p&gt;  &lt;/p&gt;
&lt;!--
&lt;rdf:RDF xmlns:rdf=&#034;http://www.w3.org/1999/02/22-rdf-syntax-ns#&#034;
         xmlns:dc=&#034;http://purl.org/dc/elements/1.1/&#034;
         xmlns:trackback=&#034;http://madskills.com/public/xml/rss/module/trackback/&#034;&gt;
&lt;rdf:Description
    rdf:about=&#034;http://javageek.org/2006/05/16/google_web_toolkit_beta_released.html&#034;
    dc:identifier=&#034;http://javageek.org/2006/05/16/google_web_toolkit_beta_released.html&#034;
    dc:title=&#034;Google Web Toolkit (beta) released&#034;
    trackback:ping=&#034;http://javageek.org/addTrackBack.action?entry=1147827860698&amp;token=4980216333593228056&#034; /&gt;
&lt;/rdf:RDF&gt;
--&gt;
        </description>
      
      
    
    
    
    <category>Java</category>
    
    <category>Web</category>
    
    <comments>http://javageek.org/2006/05/16/google_web_toolkit_beta_released.html#comments</comments>
    <guid isPermaLink="true">http://javageek.org/2006/05/16/google_web_toolkit_beta_released.html</guid>
    <pubDate>Wed, 17 May 2006 01:04:20 GMT</pubDate>
  </item>
  
  </channel>
</rss>
