<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Matt Stine&#039;s Blog &#187; javaone2009</title>
	<atom:link href="http://mattstine.com/category/javaone2009/feed/" rel="self" type="application/rss+xml" />
	<link>http://mattstine.com</link>
	<description>Thoughts on Java, Groovy, Grails, Agile Development, etc. etc. etc.</description>
	<lastBuildDate>Tue, 17 May 2011 17:02:53 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='mattstine.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Matt Stine&#039;s Blog &#187; javaone2009</title>
		<link>http://mattstine.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://mattstine.com/osd.xml" title="Matt Stine&#039;s Blog" />
	<atom:link rel='hub' href='http://mattstine.com/?pushpress=hub'/>
		<item>
		<title>JUG Leadership Lessons Learned on SlideShare</title>
		<link>http://mattstine.com/2010/04/02/jug-leadership-lessons-learned-on-slideshare/</link>
		<comments>http://mattstine.com/2010/04/02/jug-leadership-lessons-learned-on-slideshare/#comments</comments>
		<pubDate>Fri, 02 Apr 2010 19:48:39 +0000</pubDate>
		<dc:creator>mattstine</dc:creator>
				<category><![CDATA[java]]></category>
		<category><![CDATA[javaone2009]]></category>

		<guid isPermaLink="false">http://www.mattstine.com/?p=300</guid>
		<description><![CDATA[I&#8217;ve been playing a bit with SlideShare today and I took the opportunity to upload the slides from my Java.net Community Corner interview with Kevin Farnham at JavaOne 2009. SlideShare has a nice feature that allows you to sync up the audio from an MP3 file with your slides, and since both were available, I [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=300&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been playing a bit with <a href="http://www.slideshare.net">SlideShare</a> today and I took the opportunity to upload the slides from my <a href="http://weblogs.java.net/blog/2009/07/02/how-start-and-grow-jug-community-corner-2009-podcast">Java.net Community Corner interview with Kevin Farnham at JavaOne 2009</a>. SlideShare has a nice feature that allows you to sync up the audio from an MP3 file with your slides, and since both were available, I thought I&#8217;d give it a try. The interface is extremely easy to use and I&#8217;m very happy with the outcome.</p>
<p>This talk covers the various things I&#8217;ve learned about leading a Java User Group over the past few years. I would say that these are definitely applicable to leading any type of user group, so even if you aren&#8217;t a Java person, you might find some meat here. Enjoy!</p>
<iframe src='http://www.slideshare.net/slideshow/embed_code/3622125' width='570' height='467'></iframe>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mattstine.wordpress.com/300/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mattstine.wordpress.com/300/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mattstine.wordpress.com/300/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mattstine.wordpress.com/300/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mattstine.wordpress.com/300/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mattstine.wordpress.com/300/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mattstine.wordpress.com/300/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mattstine.wordpress.com/300/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mattstine.wordpress.com/300/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mattstine.wordpress.com/300/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mattstine.wordpress.com/300/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mattstine.wordpress.com/300/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mattstine.wordpress.com/300/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mattstine.wordpress.com/300/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=300&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mattstine.com/2010/04/02/jug-leadership-lessons-learned-on-slideshare/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1eaa45fee6a2b0c4b479b2982a4274f4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mattstine</media:title>
		</media:content>
	</item>
		<item>
		<title>#JavaOne Brain Dump Resources from Memphis JUG Meeting</title>
		<link>http://mattstine.com/2009/06/19/javaone-brain-dump-resources-from-memphis-jug-meeting/</link>
		<comments>http://mattstine.com/2009/06/19/javaone-brain-dump-resources-from-memphis-jug-meeting/#comments</comments>
		<pubDate>Fri, 19 Jun 2009 17:25:33 +0000</pubDate>
		<dc:creator>mattstine</dc:creator>
				<category><![CDATA[javaone2009]]></category>

		<guid isPermaLink="false">http://www.mattstine.com/?p=241</guid>
		<description><![CDATA[I promised that I would post the links I mentioned in my talk last night at the Memphis JUG&#8230;here they are: General Session Replays: http://java.sun.com/javaone/2009/general_sessions.jsp BlogTalkRadio: http://www.blogtalkradio.com/JavaOne JavaOne Minute: http://channelsun.sun.com/video/channel-you/javaone+minute/23867338001 Technical Sessions 2008-2009: http://developers.sun.com/learning/javaoneonline/ (Must be SDN Member &#8211; FREE!) The Da Vinci Machine Project: http://openjdk.java.net/projects/mlvm/ Groovy: http://groovy.codehaus.org Java.net Community Corner: http://wiki.java.net/bin/view/Javaone/CommunityCorner JUGS Community: http://community.java.net/jugs/ [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=241&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I promised that I would post the links I mentioned in my talk last night at the Memphis JUG&#8230;here they are:</p>
<p>General Session Replays: <a href="http://java.sun.com/javaone/2009/general_sessions.jsp">http://java.sun.com/javaone/2009/general_sessions.jsp</a></p>
<p>BlogTalkRadio: <a href="http://www.blogtalkradio.com/JavaOne">http://www.blogtalkradio.com/JavaOne</a></p>
<p>JavaOne Minute: <a href="http://channelsun.sun.com/video/channel-you/javaone+minute/23867338001">http://channelsun.sun.com/video/channel-you/javaone+minute/23867338001<br />
</a><br />
Technical Sessions 2008-2009: <a href="http://developers.sun.com/learning/javaoneonline/">http://developers.sun.com/learning/javaoneonline/</a> (Must be SDN Member &#8211; FREE!)</p>
<p>The Da Vinci Machine Project: <a href="http://openjdk.java.net/projects/mlvm/">http://openjdk.java.net/projects/mlvm/<br />
</a><br />
Groovy: <a href="http://groovy.codehaus.org">http://groovy.codehaus.org</a></p>
<p>Java.net Community Corner: <a href="http://wiki.java.net/bin/view/Javaone/CommunityCorner">http://wiki.java.net/bin/view/Javaone/CommunityCorner<br />
</a><br />
JUGS Community: <a href="http://community.java.net/jugs/">http://community.java.net/jugs/</a></p>
<p>Scala: <a href="http://scala-lang.org">http://scala-lang.org</a></p>
<p>SpringSource: <a href="http://www.springsource.com">http://www.springsource.com</a></p>
<p>JUG-USA: <a href="https://jug-usa.dev.java.net/">https://jug-usa.dev.java.net/</a></p>
<p>OpenSolaris: <a href="http://opensolaris.org">http://opensolaris.org</a></p>
<p>Neal Ford: <a href="http://nealford.com">http://nealford.com</a> (Can download his slides here)</p>
<p>Findbugs: <a href="http://findbugs.sourceforge.net">http://findbugs.sourceforge.net</a></p>
<p>Grails: <a href="http://grails.org">http://grails.org</a></p>
<p>Grails Podcast: <a href="http://www.grailspodcast.com">http://www.grailspodcast.com</a></p>
<p>JavaFX: <a href="http://javafx.com">http://javafx.com</a></p>
<p>Griffon: <a href="http://griffon.codehaus.org">http://griffon.codehaus.org</a></p>
<p>Java Store: <a href="http://store.java.com">http://store.java.com</a></p>
<p>Jython: <a href="http://jython.org">http://jython.org</a></p>
<p>Clojure: <a href="http://clojure.org">http://clojure.org</a></p>
<p>JRuby: <a href="http://jruby.codehaus.org">http://jruby.codehaus.org</a></p>
<p>Sun Cloud: <a href="http://cloud.sun.com">http://cloud.sun.com</a></p>
<p>Project Kenai: <a href="http://kenai.com">http://kenai.com</a></p>
<p>Zembly: <a href="http://zembly.com">http://zembly.com</a></p>
<p>NetBeans: <a href="http://netbeans.org">http://netbeans.org</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mattstine.wordpress.com/241/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mattstine.wordpress.com/241/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mattstine.wordpress.com/241/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mattstine.wordpress.com/241/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mattstine.wordpress.com/241/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mattstine.wordpress.com/241/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mattstine.wordpress.com/241/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mattstine.wordpress.com/241/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mattstine.wordpress.com/241/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mattstine.wordpress.com/241/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mattstine.wordpress.com/241/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mattstine.wordpress.com/241/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mattstine.wordpress.com/241/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mattstine.wordpress.com/241/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=241&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mattstine.com/2009/06/19/javaone-brain-dump-resources-from-memphis-jug-meeting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1eaa45fee6a2b0c4b479b2982a4274f4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mattstine</media:title>
		</media:content>
	</item>
		<item>
		<title>JUG-USA Meeting with James Gosling at #JavaOne</title>
		<link>http://mattstine.com/2009/06/05/jug-usa-meeting-with-james-gosling-at-javaone/</link>
		<comments>http://mattstine.com/2009/06/05/jug-usa-meeting-with-james-gosling-at-javaone/#comments</comments>
		<pubDate>Fri, 05 Jun 2009 07:00:59 +0000</pubDate>
		<dc:creator>mattstine</dc:creator>
				<category><![CDATA[javaone2009]]></category>

		<guid isPermaLink="false">http://www.mattstine.com/?p=200</guid>
		<description><![CDATA[On Wednesday morning, JUG-USA was fortunate enough to get about 45 minutes with the &#8220;Father of Java&#8221; himself, James Gosling. Each year at JavaOne, Sun distributes registration discount codes to interested JUG&#8217;s. The JUG with the most registrations using their code gets this meeting. JUG-USA&#8217;s founding allowed us to use a bit of strength in [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=200&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img src="http://mattstine.files.wordpress.com/2009/06/dscn0912.jpg?w=220&#038;h=300" alt="James Gosling" title="James Gosling" width="220" height="300" style="float:left;" class="size-medium wp-image-201" /> On Wednesday morning, JUG-USA was fortunate enough to get about 45 minutes with the &#8220;Father of Java&#8221; himself, James Gosling. Each year at JavaOne, Sun distributes registration discount codes to interested JUG&#8217;s. The JUG with the most registrations using their code gets this meeting. JUG-USA&#8217;s founding allowed us to use a bit of strength in numbers to wrestle this crown from the bigger European JUG&#8217;s for the first time that I know of.</p>
<p>The session was setup as an informal Q&amp;A. I took furious notes on several of the questions that were most interesting to me, and I&#8217;ll do my best to collate them into something intelligible here. <em><strong>Note that where I use quotes it&#8217;s mostly to set off his answers&#8230;please don&#8217;t take them as direct, but as paraphrases.</strong></em></p>
<p>The first couple of questions surrounded web buzz. James sees Web 2.0 as &#8220;hype for folks who want to sell their books.&#8221; When asked about the semantic web, he says his feelings are mostly positive, but maybe its an answer searching for a question. He feels that some parts of it will never perform.</p>
<p>When asked about Scala, I was pleased to hear him say, &#8220;I like Scala a lot. They&#8217;re doing some pretty nice stuff.&#8221; He talked about how functional languages lend themselves to proving properties of programs, which can then lead to automatic decomposition onto multiprocessor systems. He wishes that the Scala guys would focus more on this aspect. He also said that he fears that Scala is almost going down the Perl route of making things &#8220;too concise&#8221; and that it&#8217;s still awfully hard for many programmers to &#8220;get&#8221; the functional stuff.</p>
<p>The next question was a rather predictable one &#8211; &#8220;James, now that you have the benefit of 14 years of experience with the Java language, is there anything you would have done differently?&#8221; Funny thing was the first thing out of his mouth was that the current AWT event model would have been one of the first things to go. Generics and closures were things he quickly mentioned that he wanted to have done, but he also said that there was quite a bit of arguing within the Java team about polishing for years vs. shipping the language. James said he felt like there was a certain window of opportunity out there that they needed to ship the language within to be successful (and it looks like they hit it). Continuing on down the list, James mentioned Eiffel-style precondtions and postconditions and type inferencing. He explained that the entire type system was designed to make C programmers comfortable, and at the time that was clearly the right decision. He state that at this point, the C/C++ comfort factor counts for nothing, and remarked that the casting syntax in Java is just &#8220;dumb.&#8221; A follow-up question surrounded whether or not primitives should be a part of the language. James called this a hard problem, asserting that a &#8220;uniform type model can lead to bumpy behavior or bad performance.&#8221; He said that the Scala specification gets around this with a dual object hierarchy (I need to look this up to see what he means.). He continued to talk about the definition of equality vs. identity, explaining that primitives can&#8217;t have identity; in fact, they may never exist except as a figment of the compilers imagination, optimized away (my notes are fuzzy on this&#8230;when I get the recording I&#8217;ll clean this up).</p>
<p>The next question surrounded a statement that one attendee of the recent Google I/O conference heard, that threads are &#8220;deprecated&#8221; as a concurrency model. James immediately retorted that concurrency has very many ideas around it, and that it has been an active Ph.D. thesis generator for 30+ years. He mentioned competing models such as Actors in Scala and Erlang, and Communicating Sequential Processes (CSP) process algebra from Occam. He asserted that with CSP most people typically don&#8217;t &#8220;think that way very well. People with Math degrees think it&#8217;s cool, but everybody else is kind of like&#8230;huh?&#8221; He stated that no data sharing between threads makes a lot of problems go away, but that often times casting problems that way can be intractable. A big quotable: &#8220;All of the different threading paradigms feel to me like whack-a-mole.&#8221; He closed the concurrency question by mentioning Guy Steele&#8217;s work on Fortress, where they are doing automatic decomposition from functional constructs into multiple threads of execution, making all of this issue transparent to the programmer.</p>
<p>Since this is getting pretty long, I&#8217;ll mention that James says he knows that Larry Ellison, Oracle CEO (and Sun &#8220;suitor&#8221;) has downloaded JavaFX and personally written apps with it, saying it is &#8220;pretty darn tasty!&#8221; (Again, don&#8217;t take this as quoted&#8230;it&#8217;s definitely paraphrased).</p>
<p>Other quotables: &#8220;Android &#8211; it&#8217;s hard to know what to think about it. It seems like a corner hobby project, chaos looking for a place to happen.&#8221;</p>
<p>&#8220;The exception system was DESIGNED to be a complete PITA.&#8221;</p>
<p>All-in-all, a great time was had by all. Thanks James for your time, it was definitely fascinating hearing your thoughts on so may different areas of the Java landscape.</p>
<div style="text-align:center;"><img src="http://mattstine.files.wordpress.com/2009/06/jug-usa-gosling-grouppic-900.jpg?w=570" alt="JUG-USA with James Gosling" title="JUG-USA with James Gosling"   class="aligncenter size-full wp-image-217" /></div>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mattstine.wordpress.com/200/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mattstine.wordpress.com/200/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mattstine.wordpress.com/200/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mattstine.wordpress.com/200/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mattstine.wordpress.com/200/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mattstine.wordpress.com/200/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mattstine.wordpress.com/200/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mattstine.wordpress.com/200/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mattstine.wordpress.com/200/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mattstine.wordpress.com/200/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mattstine.wordpress.com/200/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mattstine.wordpress.com/200/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mattstine.wordpress.com/200/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mattstine.wordpress.com/200/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=200&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mattstine.com/2009/06/05/jug-usa-meeting-with-james-gosling-at-javaone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1eaa45fee6a2b0c4b479b2982a4274f4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mattstine</media:title>
		</media:content>

		<media:content url="http://mattstine.files.wordpress.com/2009/06/dscn0912.jpg?w=220" medium="image">
			<media:title type="html">James Gosling</media:title>
		</media:content>

		<media:content url="http://mattstine.files.wordpress.com/2009/06/jug-usa-gosling-grouppic-900.jpg" medium="image">
			<media:title type="html">JUG-USA with James Gosling</media:title>
		</media:content>
	</item>
		<item>
		<title>More connecting at #JavaOne 2009</title>
		<link>http://mattstine.com/2009/06/04/more-connecting-at-javaone-2009/</link>
		<comments>http://mattstine.com/2009/06/04/more-connecting-at-javaone-2009/#comments</comments>
		<pubDate>Thu, 04 Jun 2009 06:13:03 +0000</pubDate>
		<dc:creator>mattstine</dc:creator>
				<category><![CDATA[javaone2009]]></category>

		<guid isPermaLink="false">http://www.mattstine.com/?p=198</guid>
		<description><![CDATA[I happened to catch Guillaume LaForge&#8217;s tweet this morning about a &#8220;Groovy lunch&#8221; at JavaOne today. After our JUG-USA meeting with James Gosling(blog entry on this one to come), I made my way over to the &#8220;cafeteria&#8221; and found Guillaume, James Williams (of the Griffon team), and John Smart in exactly the location that Guillaume [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=198&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I happened to catch <a href="http://glaforge.free.fr/weblog/">Guillaume LaForge&#8217;s</a> tweet this morning about a &#8220;Groovy lunch&#8221; at JavaOne today. After our JUG-USA meeting with <a href="http://blogs.sun.com/jag/">James Gosling</a>(blog entry on this one to come), I made my way over to the &#8220;cafeteria&#8221; and found Guillaume, <a href="http://jameswilliams.be/blog/entry/index">James Williams (of the Griffon team)</a>, and <a href="http://weblogs.java.net/blog/johnsmart">John Smart</a> in exactly the location that Guillaume specified. We were shortly joined by Grails in Action (a.k.a. San Gria) co-author <a href="http://blogs.bytecode.com.au/glen/">Glen Smith</a>. Topics ranged from things we can do better with Groovy/Grails testing, the differences between the Groovy and other dynamic/scripting language communities, Groovy&#8217;s victory in the ScriptBowl, and none other than the differences in public transportation between the southeastern US and the Bay Area. I had a great time guys and will see you at the BOF.</p>
<p>I also finally got the chance to meet <a href="http://dickwallsblog.blogspot.com/">Dick Wall</a> of the <a href="http://javaposse.com">Java Posse</a>. Dick is just as great in person as he has sounded for the past couple of years on the podcast. Unfortunately our chat was ever so brief, focused around the language features Dick would like to see in future versions of Scala. We were quickly ushered over to the Java.net &#8220;presentation area&#8221; to participate in <a href="http://weblogs.java.net/blog/joshy">Josh Marinacci&#8217;s</a> JavaFX Q&amp;A. Was also good meeting him and seeing the cool new UI controls in FX.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mattstine.wordpress.com/198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mattstine.wordpress.com/198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mattstine.wordpress.com/198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mattstine.wordpress.com/198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mattstine.wordpress.com/198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mattstine.wordpress.com/198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mattstine.wordpress.com/198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mattstine.wordpress.com/198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mattstine.wordpress.com/198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mattstine.wordpress.com/198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mattstine.wordpress.com/198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mattstine.wordpress.com/198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mattstine.wordpress.com/198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mattstine.wordpress.com/198/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=198&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mattstine.com/2009/06/04/more-connecting-at-javaone-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1eaa45fee6a2b0c4b479b2982a4274f4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mattstine</media:title>
		</media:content>
	</item>
		<item>
		<title>#JavaOne 2009 Script Bowl</title>
		<link>http://mattstine.com/2009/06/03/javaone-2009-script-bowl/</link>
		<comments>http://mattstine.com/2009/06/03/javaone-2009-script-bowl/#comments</comments>
		<pubDate>Wed, 03 Jun 2009 18:16:26 +0000</pubDate>
		<dc:creator>mattstine</dc:creator>
				<category><![CDATA[javaone2009]]></category>

		<guid isPermaLink="false">http://www.mattstine.com/?p=193</guid>
		<description><![CDATA[The JavaOne 2009 Script Bowl was quite a delight to watch. The players were Jython (Frank Wierzbecki), Groovy (Guillaume LaForge), Clojure (Rich Hickey), Scala (Dick Wall), and JRuby (Thomas Enebo). The event was divided into two rounds: Demonstrating Language Features Demonstrating Community Contributions Each of the players focused on different angles during the language feature [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=193&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The JavaOne 2009 Script Bowl was quite a delight to watch. The players were Jython (Frank Wierzbecki), Groovy (Guillaume LaForge), Clojure (Rich Hickey), Scala (Dick Wall), and JRuby (Thomas Enebo). The event was divided into two rounds:</p>
<ol>
<li>Demonstrating Language Features</li>
<li>Demonstrating Community Contributions</li>
</ol>
<p>Each of the players focused on different angles during the language feature round. The Jython focus was squarely on the readability of the language. Frank&#8217;s key quote was Python looks an awful lot like &#8220;executable pseudocode.&#8221; The Groovy focus was a subset of Guillaume&#8217;s &#8220;What&#8217;s new in Groovy 1.6&#8243; talk, and highlighted the new compile-time metaprogramming/AST transformations. Rich Hickey directly attacked concurrency using Clojure, demonstrating a multi-threaded &#8220;Life&#8221; demo that highlighted the power of software transactional memory.</p>
<p>I really enjoyed Dick&#8217;s angle for Scala &#8211; demonstrating that most of the Java small language changes contained in Project Coin are already present in the Scala language and very useable! Thomas Enebo went straight for the WOW factor by showing how easily a Ruby DSL can be wrapped around existing Java libraries with JRuby to create a very compelling 3D game.</p>
<p>Next came the community round. This was actually the most impressive part of the whole session. Frank kicked off the Jython community focus by highlighting an <a href="http://openendedgroup.com/field/wiki/OverviewBanners2">interactive &#8220;art IDE&#8221; called Field</a> that drives <a href="http://processing.org/">the Processing language</a>. The chose Jython as the scripting language for the environment. Very neat.</p>
<p>The Groovy demo was something to behold. Guillaume started off by demonstrating SwingPad, an exploratory IDE for building Swing applications with Groovy. But the real treat was a very impressive Twitter+NASA Worldwind mashup built very concisely using Griffon. I really need to give Griffon a try.</p>
<p>Rich Hickey demonstrated the power of Clojure to build a data-driven, functional, template based website. It took an existing HTML template (with 0 code) and transformed it using &#8220;css-like&#8221; selectors provided by a <a href="http://github.com/cgrand/enlive/tree/master">enlive</a>. Seemed a lot like what you can do with XSLT, but much cleaner.</p>
<p>Dick demonstrated scouchdb, a Scala library for interacting with CouchDB.</p>
<p>Thomas&#8217; focus was on just how big the Ruby community is, from developers, to conferences, to books, to IDE&#8217;s, to libraries.</p>
<p>At the end of the session, the winner was decided by crowd noise, with Groovy winning the day and Scala coming in second. My take home from this session is that really all of these languages bring something very interesting and powerful to the table, and I hope all of them continue to succeed. Great job everyone!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mattstine.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mattstine.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mattstine.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mattstine.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mattstine.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mattstine.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mattstine.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mattstine.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mattstine.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mattstine.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mattstine.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mattstine.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mattstine.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mattstine.wordpress.com/193/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=193&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mattstine.com/2009/06/03/javaone-2009-script-bowl/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1eaa45fee6a2b0c4b479b2982a4274f4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mattstine</media:title>
		</media:content>
	</item>
		<item>
		<title>JUG Leadership: Lessons Learned &#8211; #JavaOne Java.net Community Corner Podcast</title>
		<link>http://mattstine.com/2009/06/03/jug-leadership-lessons-learned-javaone-javanet-community-corner-podcast/</link>
		<comments>http://mattstine.com/2009/06/03/jug-leadership-lessons-learned-javaone-javanet-community-corner-podcast/#comments</comments>
		<pubDate>Wed, 03 Jun 2009 07:21:06 +0000</pubDate>
		<dc:creator>mattstine</dc:creator>
				<category><![CDATA[javaone2009]]></category>

		<guid isPermaLink="false">http://www.mattstine.com/2009/06/03/jug-leadership-lessons-learned-javaone-javanet-community-corner-podcast/</guid>
		<description><![CDATA[Here&#8217;s the link to my slides from my podcast Wednesday morning from the Java.net Community Corner: Download PDF.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=191&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s the link to my slides from my podcast Wednesday morning from the Java.net Community Corner: <a href="http://www.mattstine.com/wp-content/JUGLeadershipLessonsLearned.pdf">Download PDF</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mattstine.wordpress.com/191/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mattstine.wordpress.com/191/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mattstine.wordpress.com/191/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mattstine.wordpress.com/191/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mattstine.wordpress.com/191/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mattstine.wordpress.com/191/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mattstine.wordpress.com/191/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mattstine.wordpress.com/191/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mattstine.wordpress.com/191/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mattstine.wordpress.com/191/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mattstine.wordpress.com/191/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mattstine.wordpress.com/191/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mattstine.wordpress.com/191/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mattstine.wordpress.com/191/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=191&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mattstine.com/2009/06/03/jug-leadership-lessons-learned-javaone-javanet-community-corner-podcast/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1eaa45fee6a2b0c4b479b2982a4274f4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mattstine</media:title>
		</media:content>
	</item>
		<item>
		<title>Reactions from #JavaOne 2009 Opening Keynote</title>
		<link>http://mattstine.com/2009/06/02/reactions-from-javaone-2009-opening-keynote/</link>
		<comments>http://mattstine.com/2009/06/02/reactions-from-javaone-2009-opening-keynote/#comments</comments>
		<pubDate>Tue, 02 Jun 2009 21:22:21 +0000</pubDate>
		<dc:creator>mattstine</dc:creator>
				<category><![CDATA[javaone2009]]></category>

		<guid isPermaLink="false">http://www.mattstine.com/?p=188</guid>
		<description><![CDATA[The morning session opened with a HUGE elephant under the rug &#8211; &#8220;Where is Oracle?&#8221; There&#8217;s no booth in the Pavilion &#8211; super strange. Things kicked off very slowly. Jonathan Schwartz, Sun CEO, for all of his ponytail excellence, wasn&#8217;t exactly inspiring a great deal of excitement in the crowd. In fact, the loudest applause [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=188&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://picasaweb.google.com/sunahouston2/JavaOne2009#5344645971163695266"><img src="http://mattstine.files.wordpress.com/2009/06/j1-2009-keynote-ellison-mcnealy-stage880.jpg?w=223&#038;h=300" alt="Photo by Aaron Houston" title="Photo by Aaron Houston" width="223" height="300" class="size-medium wp-image-220" style="float:left;" /></a>The morning session opened with a HUGE elephant under the rug &#8211; &#8220;Where is Oracle?&#8221; There&#8217;s no booth in the Pavilion &#8211; super strange.</p>
<p>Things kicked off very slowly. Jonathan Schwartz, Sun CEO, for all of his ponytail excellence, wasn&#8217;t exactly inspiring a great deal of excitement in the crowd. In fact, the loudest applause from the audience was initially for the tech support guy who fixed the projection for one of the demos.</p>
<p>Thankfully things eventually got moving. Verizon and Sun announced a very exciting partnership whereby Verizon will expose their network elements to Java developers. Things like presence, location, friends and family lists, mobile-to-mobile lists &#8211; all of these will now be accessible to the developer. These specs will come out on July 27. This announcement is very exciting as it means that Verizon phones will now be a very powerful platform for Java mobile development.</p>
<p>The JavaFX demos were really cool. They demoed one of the new LG XCanvas series of TV&#8217;s, which actually run JavaFX on the TV itself. Processors and video codecs actually live within the TV, and the TV is connected to the network. Live, on-demand, interactive content is now available directly on the set, and it&#8217;s very smooth. It seems that JavaFX continues to be the center of innovation within Sun. This continued with a demo of the new JavaFX visual authoring tool. This was very impressive. JavaFX apps are now possible with absolutely no coding, which makes them extremely accessible to content designers. Visual assets can be dragged and dropped onto the stage, animation can be built by recording drag motions, no compile-build-deploy cycle. Another great features was visual wiring of component properties to UI controls. Very smooth. And apps can be deployed directly to the Java App Store via the tool.</p>
<p>Funny, this was the big oops of the keynote. Nandini Ramani leaked the &#8220;liveness&#8221; of the app store before the official announcement. Nandini &#8211; &#8220;And you can deploy directly to the App Store.&#8221; Jonathan &#8211; &#8220;We haven&#8217;t launched the App Store yet.&#8221; OOPS.</p>
<p>But the App Store was immediately announced next. http://store.java.com is now in private beta, and I quickly registered and got an invite. I was playing with the App Store in the following session and downloaded two applications. Extremely like the iPhone App Store for Java. You can now distribute your Java applications directly to billions of consumers with Java-enabled devices. At this point it only supports free applications, as they have left it up to the community to provide feedback on how money should be collected. Nice move. Very impressive. This could be a game changer for the Java platform if it&#8217;s used correctly.</p>
<p>FINALLY the elephant came out, but it took Scott McNealy coming on stage to get it done. It was very interesting how Jonathan Schwartz unceremoniously left the stage. Scott thanked him twice for his stewardship of the company &#8211; it was a very obvious yet implicit changing of the guard. Funny that they should decide to introduce Larry Ellison, CEO Oracle, via a great amount of cheesy images (Java flying on the sail to Larry&#8217;s yacht, etc.) At the end, while no promises were made, Larry said that we should look to the past to see what the future will hold and expect more of the same. &#8220;I don&#8217;t expect any significant changes.&#8221; I hope that holds true. The audience very properly gave Scott a standing ovation as he left the stage, a nice gesture to a guy that has continually kept Sun on the cutting edge of technology.</p>
<p>All in all, it was a bittersweet keynote, but I&#8217;m cautiously optimistic about the future of the platform. Our landscape is continually changing, and the future is uncertain. If everyone&#8217;s being transparent, however, good things are still to come.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mattstine.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mattstine.wordpress.com/188/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mattstine.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mattstine.wordpress.com/188/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mattstine.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mattstine.wordpress.com/188/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mattstine.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mattstine.wordpress.com/188/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mattstine.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mattstine.wordpress.com/188/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mattstine.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mattstine.wordpress.com/188/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mattstine.wordpress.com/188/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mattstine.wordpress.com/188/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=188&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mattstine.com/2009/06/02/reactions-from-javaone-2009-opening-keynote/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1eaa45fee6a2b0c4b479b2982a4274f4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mattstine</media:title>
		</media:content>

		<media:content url="http://mattstine.files.wordpress.com/2009/06/j1-2009-keynote-ellison-mcnealy-stage880.jpg?w=223" medium="image">
			<media:title type="html">Photo by Aaron Houston</media:title>
		</media:content>
	</item>
		<item>
		<title>Java™ Technology on Google App Engine: #CommunityOne 2009 Lightning Talk</title>
		<link>http://mattstine.com/2009/06/02/java-technology-on-google-app-engine-communityone-2009-lightning-talk/</link>
		<comments>http://mattstine.com/2009/06/02/java-technology-on-google-app-engine-communityone-2009-lightning-talk/#comments</comments>
		<pubDate>Tue, 02 Jun 2009 20:56:01 +0000</pubDate>
		<dc:creator>mattstine</dc:creator>
				<category><![CDATA[javaone2009]]></category>

		<guid isPermaLink="false">http://www.mattstine.com/?p=184</guid>
		<description><![CDATA[My second lightning talk at Community One West 2009 revolved around the still relatively recent announcement that Java is now supported on Google&#8217;s App Engine. What exactly is Google App Engine? It&#8217;s none other than a way that you can run your Java&#8482; technology-based applications on Google&#8217;s massive infrastructure. As far as the &#8220;Geekxecutive Summary,&#8221; [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=184&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>My second lightning talk at Community One West 2009 revolved around the still relatively recent announcement <a href="http://code.google.com/appengine/docs/java/overview.html">that Java is now supported on Google&#8217;s App Engine</a>.</p>
<p>What exactly is <a href="http://code.google.com/appengine">Google App Engine</a>? It&#8217;s none other than a way that you can run your Java&#8482; technology-based applications on Google&#8217;s massive infrastructure.</p>
<p>As far as the &#8220;Geekxecutive Summary,&#8221; Google has provided:</p>
<ul>
<li><a href="http://code.google.com/appengine/docs/java/runtime.html">A Java 6 Virtual Machine</a> with a <a href="http://code.google.com/appengine/docs/java/jrewhitelist.html">Class Whitelist</a>. Not all classes in the standard JDK library are available. A notable missing member is the java.awt.* library, so if you&#8217;re using that for image processing, find an alternative (see one later) before porting to the App Engine.</li>
<li>The Java Servlet Standard by way of the <a href="http://www.mortbay.org/jetty/">Jetty container</a>.</li>
<li><a href="http://code.google.com/appengine/docs/java/runtime.html#The_Sandbox">A secured sandbox environment</a>, meaning 1) no spawned threads; 2) no arbitrary socket connections (you can use HTTP/HTTPS, see below); 3) No writing to the local filesystem &#8211; makes sense because you don&#8217;t know where you are on any given request.</li>
</ul>
<p>Several services are provided to you by Google as a Java developer:</p>
<ul>
<li><a href="http://code.google.com/appengine/docs/java/datastore/">The Datastore</a> &#8211; a schemaless object datastore, with a query engine and atomic transactions. This is accessible via Java Data Objects (JDO) 2.3, Java Persistence API (JPA) 1.0, or Google&#8217;s own low-level API&#8217;s.</li>
<li>A <a href="http://code.google.com/appengine/docs/java/memcache/">Memcache</a> service for caching whatever objects you like, accessible via JCache JSR 107.</li>
<li><a href="http://code.google.com/appengine/docs/java/urlfetch/">A URL fetch service</a> for accessing data on other systems, accessible via java.net.URLConnection.</li>
<li><a href="http://code.google.com/appengine/docs/java/mail/">A Mail (JavaMail) service</a>.</li>
<li><a href="http://code.google.com/appengine/docs/java/images/">An Image processing service</a>, a likely candidate for replacing AWT for image processing. Be careful, it binds you to Google&#8217;s services. You may want to write a wrapper for it.</li>
<li><a href="http://code.google.com/appengine/docs/java/users/">Google Accounts for authentication</a>. Should you leverage this, anyone with a Google account can authenticate into your app.</li>
</ul>
<p>The nice thing about Google&#8217;s services is that where possible they always provided a way in through standards-based Java API&#8217;s.</p>
<p>Now, on to tools:</p>
<ul>
<li><a href="http://code.google.com/appengine/docs/java/tools/ant.html">An Apache Ant component</a> for your automated build process.</li>
<li><a href="http://code.google.com/appengine/docs/java/tools/eclipse.html">A very nice plugin</a> for the Eclipse IDE.</li>
<li><a href="http://code.google.com/appengine/docs/java/gettingstarted/installing.html">The App Engine SDK</a> &#8211; Java API&#8217;s into all of Google&#8217;s services.</li>
<li><a href="http://code.google.com/appengine/docs/java/tools/devserver.html">A Development Server</a> so that you can run a simulated Google environment on your local machine.</li>
<li><a href="http://code.google.com/appengine/docs/java/tools/uploadinganapp.html">AppCfg</a> for command-line interaction with the App Engine platform.</li>
</ul>
<p>Probably the most significant piece to this puzzle is the fact that Google is not simply supporting Java the language, but Java the platform. It&#8217;s a standard JVM, so other languages running on the JVM will happily run on Google App Engine as well. At this writing, I knew of the following languages that are known to run:</p>
<ul>
<li>Java</li>
<li>Groovy (and Grails as of 1.1.1)</li>
<li>JRuby</li>
<li>Scala</li>
<li>Clojure</li>
<li>Beanshell</li>
<li>JavaScript (Rhino)</li>
<li>Jython</li>
</ul>
<p>Here&#8217;s the screencast from my talk. Enjoy!</p>
<span style="text-align:center; display: block;"><a href="http://mattstine.com/2009/06/02/java-technology-on-google-app-engine-communityone-2009-lightning-talk/"><img src="http://img.youtube.com/vi/hotbwYStwH8/2.jpg" alt="" /></a></span>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mattstine.wordpress.com/184/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mattstine.wordpress.com/184/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mattstine.wordpress.com/184/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mattstine.wordpress.com/184/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mattstine.wordpress.com/184/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mattstine.wordpress.com/184/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mattstine.wordpress.com/184/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mattstine.wordpress.com/184/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mattstine.wordpress.com/184/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mattstine.wordpress.com/184/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mattstine.wordpress.com/184/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mattstine.wordpress.com/184/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mattstine.wordpress.com/184/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mattstine.wordpress.com/184/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=184&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mattstine.com/2009/06/02/java-technology-on-google-app-engine-communityone-2009-lightning-talk/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1eaa45fee6a2b0c4b479b2982a4274f4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mattstine</media:title>
		</media:content>
	</item>
		<item>
		<title>Deploying Grails to Morph AppSpace: #CommunityOne 2009 Lightning Talk</title>
		<link>http://mattstine.com/2009/06/01/deploying-grails-to-morph-appspace-communityone-2009-lightning-talk/</link>
		<comments>http://mattstine.com/2009/06/01/deploying-grails-to-morph-appspace-communityone-2009-lightning-talk/#comments</comments>
		<pubDate>Tue, 02 Jun 2009 04:56:06 +0000</pubDate>
		<dc:creator>mattstine</dc:creator>
				<category><![CDATA[cloud]]></category>
		<category><![CDATA[grails]]></category>
		<category><![CDATA[javaone2009]]></category>

		<guid isPermaLink="false">http://www.mattstine.com/?p=174</guid>
		<description><![CDATA[I gave two lightning talks at CommunityOne today, the first of which described deploying Grails applications to Morph AppSpace. For the uninitiated, Grails is a Ruby on Rails inspired full stack web development framework which brings &#8220;convention over configuration&#8221; and &#8220;DRY&#8221; into the Java web development arena. Unlike Rails, it is not an effort from [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=174&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I gave two lightning talks at <a href="http://developers.sun.com/events/communityone/2009/west/index.jsp">CommunityOne</a> today, the first of which described deploying <a href="http://grails.org">Grails</a> applications to <a href="http://mor.ph/products_appspace">Morph AppSpace</a>.</p>
<p>For the uninitiated, Grails is a Ruby on Rails inspired full stack web development framework which brings &#8220;convention over configuration&#8221; and &#8220;DRY&#8221; into the Java web development arena. Unlike Rails, it is not an effort from scratch, but rather stands on the shoulders of proven giants in the Java world like the Spring framework and Hibernate. It does this using Groovy, the popular dynamic scripting language for the JVM, as a sort of &#8220;DSL for web development.&#8221; Find it at <a href="http://grails.org">http://grails.org</a>.</p>
<p>Morph AppSpace on the other hand is a fully-configured and managed environment for hosting web applications, and currently supports Java, Grails, Rails, and PHP applications. It is a &#8220;platform as a service&#8221; (PaaS) provider that abstracts away the details of Amazon EC2 and S3 technologies. Systems architecture, backups, monitoring, failover, scalability &#8211; all of this is handled by Morph. You simply develop and deploy your application &#8211; Morph does the rest. Find it at <a href="http://mor.ph/products_appspace">http://mor.ph/products_appspace</a>.</p>
<p>So to get going, visit <a href="http://mor.ph">http://mor.ph</a> and sign up for a free developer account. Create yourself a Java application subscription, and pick your choice of database (MySQL or PostgreSQL). Create the database, and then download two very important files into the root directory of your Grails project: deployment.properties, which contains the metadata describing your application to the Morph AppSpace platform, and morph_deployer.jar, which contains the client API to the platform.</p>
<p>Next you&#8217;ll need to install the <a href="http://grails.org/plugin/morph-deploy">Grails morph-deploy plugin</a>. If you&#8217;re using Grails 1.1, you&#8217;ll need to checkout <a href="https://svn.codehaus.org/grails-plugins/grails-morph-deploy/trunk/">the trunk version from SVN</a>, as the version in the plugin repository is not 1.1 ready. Install this plugin locally by running &#8220;grails install-plugin $PATH_TO_PLUGIN.&#8221; Next, you&#8217;ll need to edit DataSource.groovy to contain the following:</p>
<pre class="brush: groovy">
production {
        dataSource {
            driverClassName = 'com.mysql.jdbc.Driver'
            dbCreate = "update"
            jndiName = "java:comp/env/jdbc/morph-ds"
            dialect = 'org.hibernate.dialect.MySQLDialect'
        }
}
</pre>
<p>Finally, run &#8220;grails war&#8221; to build the war file, and &#8220;grails deploy&#8221; to upload your application to the platform. Once the upload is complete, visit the management interface and check the logs to see that you&#8217;ve successfully deployed. Once it&#8217;s finished, click on the link to your application. Happy Grails on the cloud!</p>
<p>Here&#8217;s the screencast from my talk. Enjoy!</p>
<span style="text-align:center; display: block;"><a href="http://mattstine.com/2009/06/01/deploying-grails-to-morph-appspace-communityone-2009-lightning-talk/"><img src="http://img.youtube.com/vi/JYPJ26-1YTM/2.jpg" alt="" /></a></span>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mattstine.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mattstine.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mattstine.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mattstine.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mattstine.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mattstine.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mattstine.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mattstine.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mattstine.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mattstine.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mattstine.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mattstine.wordpress.com/174/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mattstine.wordpress.com/174/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mattstine.wordpress.com/174/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=174&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mattstine.com/2009/06/01/deploying-grails-to-morph-appspace-communityone-2009-lightning-talk/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1eaa45fee6a2b0c4b479b2982a4274f4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mattstine</media:title>
		</media:content>
	</item>
		<item>
		<title>Connecting with people at #JavaOne</title>
		<link>http://mattstine.com/2009/06/01/connecting-with-people-at-javaone/</link>
		<comments>http://mattstine.com/2009/06/01/connecting-with-people-at-javaone/#comments</comments>
		<pubDate>Tue, 02 Jun 2009 04:34:24 +0000</pubDate>
		<dc:creator>mattstine</dc:creator>
				<category><![CDATA[javaone2009]]></category>

		<guid isPermaLink="false">http://www.mattstine.com/?p=171</guid>
		<description><![CDATA[So far one of the greatest things about JavaOne for me has been the opportunity to connect face-to-face with so many people that I&#8217;ve only communicated with digitally. I&#8217;ve also been able to catch up with folks that I&#8217;ve run into through other conferences, the JUG, and work: Finally met Aaron Houston and Mark DeHart [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=171&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>So far one of the greatest things about JavaOne for me has been the opportunity to connect face-to-face with so many people that I&#8217;ve only communicated with digitally. I&#8217;ve also been able to catch up with folks that I&#8217;ve run into through other conferences, the JUG, and work:</p>
<ul>
<li>Finally met Aaron Houston and Mark DeHart from <a href="http://java.sun.com/community/usergroups/index.jsp">Sun JUG Programs</a>. These guys have supported the Memphis JUG from the very beginning and have kept us supplied with tons of cool swag, as well as a Sun SPOT that continues to be a hit. Great guys.</li>
<li>Briefly chatted with <a href="http://weblogs.java.net/blog/caroljmcdonald/">Carol McDonald </a>from Sun. She was our very first JUG speaker and also had an extremely stressful encounter with our then new projector.</li>
<li>Got to catch up with <a href="http://blog.springsource.com/author/keithd/">Keith Donald</a> of SpringSource on what he&#8217;s been up to with Spring and what we&#8217;ve been up to with our SRM project. Keith joined us for a week long consulting engagement earlier this year and fit in like another member of the team. He and Oleg Zhurakousky covered the JUG meeting that week as well and we had our largest attendance ever.</li>
<li>Finally met <a href="http://weblogs.java.net/blog/van_riper/">Van Riper</a>, the man behind JUG-USA.</li>
<li>Had a great dinner conversation with Abdel Remani, student JUG leader from California State University, Chico.</li>
<li>Got to catch up with <a href="http://www.linkedin.com/in/davidgbooth">Dave Booth</a>, formerly the JUG program guy from JetBrains, now with GravityGears.</li>
<li>Briefly chatted with <a href="http://www.linkedin.com/pub/wayne-fay/4/326/193">Wayne Fay</a>, one of our former JUG members now working in San Francisco.</li>
</ul>
<p>All in all it has been wonderful getting to connect with all of these folks, put faces to names, and share updates. Come to JavaOne. You get to meet neat folks!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mattstine.wordpress.com/171/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mattstine.wordpress.com/171/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mattstine.wordpress.com/171/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mattstine.wordpress.com/171/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mattstine.wordpress.com/171/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mattstine.wordpress.com/171/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mattstine.wordpress.com/171/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mattstine.wordpress.com/171/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mattstine.wordpress.com/171/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mattstine.wordpress.com/171/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mattstine.wordpress.com/171/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mattstine.wordpress.com/171/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mattstine.wordpress.com/171/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mattstine.wordpress.com/171/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=171&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mattstine.com/2009/06/01/connecting-with-people-at-javaone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1eaa45fee6a2b0c4b479b2982a4274f4?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mattstine</media:title>
		</media:content>
	</item>
	</channel>
</rss>
