<?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; javauniversity</title>
	<atom:link href="http://mattstine.com/category/javauniversity/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; javauniversity</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>Java University: Rapid Web Site Development with Groovy and Grails</title>
		<link>http://mattstine.com/2007/05/07/java-university-rapid-web-site-development-with-groovy-and-grails/</link>
		<comments>http://mattstine.com/2007/05/07/java-university-rapid-web-site-development-with-groovy-and-grails/#comments</comments>
		<pubDate>Mon, 07 May 2007 21:47:00 +0000</pubDate>
		<dc:creator>mattstine</dc:creator>
				<category><![CDATA[grails]]></category>
		<category><![CDATA[groovy]]></category>
		<category><![CDATA[javauniversity]]></category>

		<guid isPermaLink="false">http://www.mattstine.com/?p=29</guid>
		<description><![CDATA[I&#8217;m currently sitting in this session &#8211; Graeme Rocher is the presenter. He is the creator of Grails, which is Groovy&#8217;s answer to the Ruby on Rails like development experience. He&#8217;s currently doing Q&#38;A, so I thought I&#8217;d take the opportunity to write a short entry. So far this session is awesome! Graeme is a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=29&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m currently sitting in this session &#8211; Graeme Rocher is the presenter. He is the creator of Grails, which is Groovy&#8217;s answer to the Ruby on Rails like development experience. He&#8217;s currently doing Q&amp;A, so I thought I&#8217;d take the opportunity to write a short entry. So far this session is awesome! Graeme is a great presenter and has had the perfect balance of slides and live coding. Unfortunately they ran out of slides before I got to the presentation (more on the sometimes laughable logistics at JavaOne later), so I&#8217;m having trouble remember details to write about (they&#8217;ve promised to email me the slides). The first part of the session was an introduction to Groovy, Java&#8217;s &#8220;scripting&#8221; language. I had NO IDEA just how cool and powerful Groovy was. I am especially impressed with its MetaClass concept, whereby you can override almost every behavior of the Java language that you can imagine &#8211; method calling, operator overloading, etc. Imagine being able to do AOP type things without using AOP. Not only that, it has all of my favorite pet features like &#8220;everything is an object,&#8221; closures, dynamic lists, etc. It&#8217;s an OOP nuts dream. I&#8217;ll write more later.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/mattstine.wordpress.com/29/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/mattstine.wordpress.com/29/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mattstine.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mattstine.wordpress.com/29/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mattstine.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mattstine.wordpress.com/29/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mattstine.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mattstine.wordpress.com/29/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mattstine.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mattstine.wordpress.com/29/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mattstine.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mattstine.wordpress.com/29/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mattstine.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mattstine.wordpress.com/29/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mattstine.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mattstine.wordpress.com/29/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=29&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mattstine.com/2007/05/07/java-university-rapid-web-site-development-with-groovy-and-grails/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>Java University: Developing Enterprise Applications with the Spring Framework</title>
		<link>http://mattstine.com/2007/05/07/java-university-developing-enterprise-applications-with-the-spring-framework/</link>
		<comments>http://mattstine.com/2007/05/07/java-university-developing-enterprise-applications-with-the-spring-framework/#comments</comments>
		<pubDate>Mon, 07 May 2007 20:09:00 +0000</pubDate>
		<dc:creator>mattstine</dc:creator>
				<category><![CDATA[javauniversity]]></category>

		<guid isPermaLink="false">http://www.mattstine.com/?p=28</guid>
		<description><![CDATA[This was the first session that I attended at Java University. You could take either a full-day course or two half-day courses &#8211; I elected to do the latter. Keith Donald, project lead for Spring WebFlow, presented. I have quite a bit of Spring experience already through AppFuse, but I was hoping to get a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=28&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This was the first session that I attended at Java University. You could take either a full-day course or two half-day courses &#8211; I elected to do the latter. Keith Donald, project lead for Spring WebFlow, presented. I have quite a bit of Spring experience already through AppFuse, but I was hoping to get a more complete view of Spring as most of what I have learned is from tinkering with existing systems. Keith promised that we&#8217;d build a system from the ground up, so it sounded like I&#8217;d get what I bargained for.</p>
<p>And build from the ground up we did. I&#8217;d say we were almost halfway through the entire session before we even TOUCHED Spring. Up until that point all we had done was do test driven development on all of the business entities and logic. It was very interesting to me that Keith&#8217;s coding methodology is quite different from what I typically find myself doing. He implemented almost all of the business logic of the application without any regard to the eventual supporting technologies (i.e. ORM frameworks, web frameworks, etc.). It seems like I almost always bind my application to a set of technologies (say Hibernate/Spring/JSF) before I ever write a line of business logic. What did he get from this? Well, his application had fully implemented and tested business logic that would work with nearly any of the available supporting frameworks. Good stuff.</p>
<p>Another thing that was interesting to me is his disdain for packaging classes according to application layer. I can&#8217;t think of an application that I&#8217;ve built recently where the DAO&#8217;s weren&#8217;t in a dao package, the &#8220;Manager&#8217;s&#8221; weren&#8217;t in a manger/service package, and the web classes weren&#8217;t in a web package. Keith totally changed all of this. Our two main entities in this application were account and restaurant. Anything that had to do with an account (be it a DAO, service bean, web form, etc.) went in the account package. The same went for the restaurant package. I&#8217;m not sure if I like this or not, but he seemed convinced of the value.</p>
<p>Overall it was a good session. He incorporated A LOT of live coding, and almost all of it was done from scracth &#8211; he had very little pre-made skeleton code. The drawback to that was that he only made it through 6 of the 8 sections of his slides. I wish he had backed down on one or the other.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/mattstine.wordpress.com/28/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/mattstine.wordpress.com/28/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/mattstine.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/mattstine.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/mattstine.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/mattstine.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/mattstine.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/mattstine.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/mattstine.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/mattstine.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/mattstine.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/mattstine.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/mattstine.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/mattstine.wordpress.com/28/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/mattstine.wordpress.com/28/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/mattstine.wordpress.com/28/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=mattstine.com&amp;blog=58954&amp;post=28&amp;subd=mattstine&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://mattstine.com/2007/05/07/java-university-developing-enterprise-applications-with-the-spring-framework/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>
