<?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:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>alex &#124; blog</title>
	<atom:link href="http://alexharvey.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://alexharvey.wordpress.com</link>
	<description>mostly Java</description>
	<lastBuildDate>Tue, 27 Oct 2009 14:00:36 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='alexharvey.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/855d704495f90db2204a8f0658a4bb5a?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>alex &#124; blog</title>
		<link>http://alexharvey.wordpress.com</link>
	</image>
			<item>
		<title>Thoughts on GWT, MVP and GWT-EXT</title>
		<link>http://alexharvey.wordpress.com/2009/10/27/thoughts-on-gwt-mvp-and-gwt-ext/</link>
		<comments>http://alexharvey.wordpress.com/2009/10/27/thoughts-on-gwt-mvp-and-gwt-ext/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 14:00:36 +0000</pubDate>
		<dc:creator>alexharvey</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[GWT]]></category>

		<guid isPermaLink="false">http://alexharvey.wordpress.com/?p=58</guid>
		<description><![CDATA[I have been working with implementing the MVP pattern while making use of the GWT-EXT library.
I was inspired by David Chandler&#8217;s technique for hide/showing DIV&#8217;s when switching between distinct views in the application. Because GWT-EXT uses a Viewport object to serve as the root panel on the page, David&#8217;s exact technique didn&#8217;t work out with [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexharvey.wordpress.com&blog=80322&post=58&subd=alexharvey&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I have been working with implementing the MVP pattern while making use of the GWT-EXT library.</p>
<p>I was inspired by David Chandler&#8217;s <a href="http://turbomanage.wordpress.com/2009/10/21/swapping-divs-technique-for-navigation-with-gwt-presenter/" target="_blank">technique</a> for hide/showing DIV&#8217;s when switching between distinct views in the application. Because GWT-EXT uses a Viewport object to serve as the root panel on the page, David&#8217;s exact technique didn&#8217;t work out with GWT-EXT panels. The solution turns out to be to create a new Viewport on each change of the root view. In my case I simply implemented hide() and show() methods in my display to take care of this.</p>
<pre class="brush: plain;">

public void hide() {
 panel.setVisible(false);
 }

public void show() {
 Log.debug(&quot;in UserView.show&quot;);
 panel.setVisible(true);
 new Viewport(panel);
 }
</pre>
<p>In my case, panel represents the root panel for the view. My impression of Viewport is that the documentation is scarce and it is a mysery as to exactly how it manages the browser window. Perhaps there is more documentation in the underlying JS library but I didn&#8217;t go that far.</p>
<p>The other issue I&#8217;ve faced with GWT-EXT is that GWT-EXT aren&#8217;t always the same as GWT widgets and do not normally implement interfaces like HasClickHandlers, HasHTML, etc. I may work on extending GWT-EXT&#8217;s button to work with HasClickHandlers.</p>
<p>One handy feature of GWT-EXT&#8217;s Panel is the ability to add a Toolbar to the bottom or top. Immediately though I wanted to add a GWT Hyperlink. Here GWT-EXT expects controls added to the Toolbar class to derive from ToolbarItem. Eventually I discovered it is possible to add items to a Toolbar by DOM element:</p>
<pre class="brush: plain;">
private void initToolbar() {
 PlaceRequest placeRequestManageUsers = new PlaceRequest(UserPresenter.PLACE);
 linkManageUsers = new Hyperlink(&quot;Manager users&quot;, placeRequestManageUsers.toString());

 /**
 * call to addFill() makes toolbar right justify
 */
 toolbar.addFill();
 toolbar.addElement(linkManageUSers.getElement());
 ...
}
</pre>
<p>After so many years of programming in Struts I have to admit that programming in GWT represents a new way of thinking. Designing for the user experience that is possible with GWT is a welcome change of pace after so much page-oriented stuff in traditional Struts.</pre>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alexharvey.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alexharvey.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alexharvey.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alexharvey.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alexharvey.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alexharvey.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alexharvey.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alexharvey.wordpress.com/58/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alexharvey.wordpress.com/58/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alexharvey.wordpress.com/58/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexharvey.wordpress.com&blog=80322&post=58&subd=alexharvey&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://alexharvey.wordpress.com/2009/10/27/thoughts-on-gwt-mvp-and-gwt-ext/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9a1331c0f31d9e5d922e6a4b852459f2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">alexharvey</media:title>
		</media:content>
	</item>
		<item>
		<title>What I&#8217;ve been doing on my Mac</title>
		<link>http://alexharvey.wordpress.com/2008/04/22/what-ive-been-doing-on-my-mac/</link>
		<comments>http://alexharvey.wordpress.com/2008/04/22/what-ive-been-doing-on-my-mac/#comments</comments>
		<pubDate>Tue, 22 Apr 2008 01:49:43 +0000</pubDate>
		<dc:creator>alexharvey</dc:creator>
				<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://alexharvey.wordpress.com/?p=56</guid>
		<description><![CDATA[I came across this little script here.

$ history &#124; awk '{a[$2]++}END{for(i in a){print a[i] " " i}}' &#124; sort -rn &#124; head
208 mvn
121 cd
97 ls
12 mate
8 history
7 ping
4 sudo
4 rsync
4 ftp
3 ssh

       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexharvey.wordpress.com&blog=80322&post=56&subd=alexharvey&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I came across this little script <a href="http://raibledesigns.com/rd/entry/history_meme" target="_blank">here</a>.<br />
<code><br />
$ history | awk '{a[$2]++}END{for(i in a){print a[i] " " i}}' | sort -rn | head<br />
208 mvn<br />
121 cd<br />
97 ls<br />
12 mate<br />
8 history<br />
7 ping<br />
4 sudo<br />
4 rsync<br />
4 ftp<br />
3 ssh<br />
</code></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/alexharvey.wordpress.com/56/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/alexharvey.wordpress.com/56/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alexharvey.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alexharvey.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alexharvey.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alexharvey.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alexharvey.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alexharvey.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alexharvey.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alexharvey.wordpress.com/56/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alexharvey.wordpress.com/56/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alexharvey.wordpress.com/56/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexharvey.wordpress.com&blog=80322&post=56&subd=alexharvey&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://alexharvey.wordpress.com/2008/04/22/what-ive-been-doing-on-my-mac/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9a1331c0f31d9e5d922e6a4b852459f2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">alexharvey</media:title>
		</media:content>
	</item>
		<item>
		<title>more blogs</title>
		<link>http://alexharvey.wordpress.com/2007/11/26/more-blogs/</link>
		<comments>http://alexharvey.wordpress.com/2007/11/26/more-blogs/#comments</comments>
		<pubDate>Sun, 25 Nov 2007 19:18:54 +0000</pubDate>
		<dc:creator>alexharvey</dc:creator>
				<category><![CDATA[Blogroll]]></category>
		<category><![CDATA[Digital Photography]]></category>

		<guid isPermaLink="false">http://alexharvey.wordpress.com/2007/11/26/more-blogs/</guid>
		<description><![CDATA[I&#8217;ve added two blogs on Blogspot since this blog is mostly Java related. I&#8217;ve started learning Haskell so I decided to keep a separate blog for other coding topics not related to Java. The links are in the blogroll. I also started a photo blog.
       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexharvey.wordpress.com&blog=80322&post=55&subd=alexharvey&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I&#8217;ve added two blogs on Blogspot since this blog is mostly Java related. I&#8217;ve started learning Haskell so I decided to keep a separate blog for other coding topics not related to Java. The links are in the blogroll. I also started a photo blog.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/alexharvey.wordpress.com/55/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/alexharvey.wordpress.com/55/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alexharvey.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alexharvey.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alexharvey.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alexharvey.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alexharvey.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alexharvey.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alexharvey.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alexharvey.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alexharvey.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alexharvey.wordpress.com/55/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexharvey.wordpress.com&blog=80322&post=55&subd=alexharvey&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://alexharvey.wordpress.com/2007/11/26/more-blogs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9a1331c0f31d9e5d922e6a4b852459f2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">alexharvey</media:title>
		</media:content>
	</item>
		<item>
		<title>Groovy/Grails in Eclipse on OS X</title>
		<link>http://alexharvey.wordpress.com/2007/11/16/groovygrails-in-eclipse-on-os-x/</link>
		<comments>http://alexharvey.wordpress.com/2007/11/16/groovygrails-in-eclipse-on-os-x/#comments</comments>
		<pubDate>Fri, 16 Nov 2007 14:13:30 +0000</pubDate>
		<dc:creator>alexharvey</dc:creator>
				<category><![CDATA[Groovy]]></category>
		<category><![CDATA[Mac]]></category>

		<guid isPermaLink="false">http://alexharvey.wordpress.com/2007/11/16/groovygrails-in-eclipse-on-os-x/</guid>
		<description><![CDATA[I&#8217;ve been working with Grails for just a short time now and so far I&#8217;m fully impressed in the time savings it offers for development. The other factor the impresses me is that it all just makes intuitive sense for someone who has worked with a variety of web frameworks before.
I ran into an issue [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexharvey.wordpress.com&blog=80322&post=53&subd=alexharvey&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I&#8217;ve been working with Grails for just a short time now and so far I&#8217;m fully impressed in the time savings it offers for development. The other factor the impresses me is that it all just makes intuitive sense for someone who has worked with a variety of web frameworks before.</p>
<p>I ran into an issue with Grails 1.0-RC1 with the Eclipse plugin on Mac. The framework was complaining that it could not find tools.jar which doesn&#8217;t exist on the Mac. I believe Apple for some reason merged the contents of tools.jar with another system jar. Anyhow, so far I have safely commented out a reference to tools.jar in conf/groovy-starter.conf. Other than that issue, I have had far fewer than there might be in setting up a full blown Struts 2/Spring/Hibernate project by hand.</p>
<p>I was just reading about the IntelliJ support for Groovy/Grails over on <a href="http://blogs.bytecode.com.au:80/glen/addTrackBack.action?entry=1195156311239&amp;token=-192493426950237619" target="_blank">Glen Smith&#8217;s blog</a> and think I will have to try it out. I have never used IntelliJ before but if it has better language support for Groovy than Eclipse currently does it would be worth switching.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/alexharvey.wordpress.com/53/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/alexharvey.wordpress.com/53/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alexharvey.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alexharvey.wordpress.com/53/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alexharvey.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alexharvey.wordpress.com/53/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alexharvey.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alexharvey.wordpress.com/53/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alexharvey.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alexharvey.wordpress.com/53/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alexharvey.wordpress.com/53/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alexharvey.wordpress.com/53/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexharvey.wordpress.com&blog=80322&post=53&subd=alexharvey&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://alexharvey.wordpress.com/2007/11/16/groovygrails-in-eclipse-on-os-x/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9a1331c0f31d9e5d922e6a4b852459f2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">alexharvey</media:title>
		</media:content>
	</item>
		<item>
		<title>Leopard so far</title>
		<link>http://alexharvey.wordpress.com/2007/11/06/leopard-so-far/</link>
		<comments>http://alexharvey.wordpress.com/2007/11/06/leopard-so-far/#comments</comments>
		<pubDate>Tue, 06 Nov 2007 12:17:40 +0000</pubDate>
		<dc:creator>alexharvey</dc:creator>
				<category><![CDATA[Mac]]></category>

		<guid isPermaLink="false">http://alexharvey.wordpress.com/2007/11/06/leopard-so-far/</guid>
		<description><![CDATA[I&#8217;ve upgraded two Macs at home without issues during the upgrade. My work MBP is still running Tiger and probably will be for quite a while.
I&#8217;ve had issues with Time Machine really dragging down system performance until the first complete sync was completed. For some reason the first synchronization failed for several days. My complaint [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexharvey.wordpress.com&blog=80322&post=52&subd=alexharvey&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I&#8217;ve upgraded two Macs at home without issues during the upgrade. My work MBP is still running Tiger and probably will be for quite a while.</p>
<p>I&#8217;ve had issues with Time Machine really dragging down system performance until the first complete sync was completed. For some reason the first synchronization failed for several days. My complaint on Time Machine is that there is no immediate link or callout for viewing its log. There should be. I assume it is someplace in /var but I have not gone there yet.</p>
<p>Terminal is a big improvement.</p>
<p>XDMCP seems broken in some way. Akthough I can connect to my Ubuntu box, the keyboard doesn&#8217;t work now on the login screen. Ouch. The old trick of switching the keyboard to extended layout has no affect.</p>
<p>Lack of Java 6 support is of course just a shame.</p>
<p>Overall my impression is that performance sufers just a bit.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/alexharvey.wordpress.com/52/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/alexharvey.wordpress.com/52/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alexharvey.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alexharvey.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alexharvey.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alexharvey.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alexharvey.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alexharvey.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alexharvey.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alexharvey.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alexharvey.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alexharvey.wordpress.com/52/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexharvey.wordpress.com&blog=80322&post=52&subd=alexharvey&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://alexharvey.wordpress.com/2007/11/06/leopard-so-far/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9a1331c0f31d9e5d922e6a4b852459f2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">alexharvey</media:title>
		</media:content>
	</item>
		<item>
		<title>Google Usability</title>
		<link>http://alexharvey.wordpress.com/2007/10/23/google-usability/</link>
		<comments>http://alexharvey.wordpress.com/2007/10/23/google-usability/#comments</comments>
		<pubDate>Tue, 23 Oct 2007 16:52:02 +0000</pubDate>
		<dc:creator>alexharvey</dc:creator>
				<category><![CDATA[Google]]></category>

		<guid isPermaLink="false">http://alexharvey.wordpress.com/2007/10/23/google-usability/</guid>
		<description><![CDATA[2 simple things are needed:

 Allow for customization of the top-level menu. Some items, like Reader, are buried in the drop down and it would be helpful if these could be moved or reordered.
Add Notebook as an available item in the top level menu.

       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexharvey.wordpress.com&blog=80322&post=51&subd=alexharvey&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>2 simple things are needed:</p>
<ol>
<li> Allow for customization of the top-level menu. Some items, like Reader, are buried in the drop down and it would be helpful if these could be moved or reordered.</li>
<li>Add Notebook as an available item in the top level menu.</li>
</ol>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/alexharvey.wordpress.com/51/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/alexharvey.wordpress.com/51/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alexharvey.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alexharvey.wordpress.com/51/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alexharvey.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alexharvey.wordpress.com/51/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alexharvey.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alexharvey.wordpress.com/51/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alexharvey.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alexharvey.wordpress.com/51/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alexharvey.wordpress.com/51/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alexharvey.wordpress.com/51/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexharvey.wordpress.com&blog=80322&post=51&subd=alexharvey&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://alexharvey.wordpress.com/2007/10/23/google-usability/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9a1331c0f31d9e5d922e6a4b852459f2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">alexharvey</media:title>
		</media:content>
	</item>
		<item>
		<title>date puzzler explained</title>
		<link>http://alexharvey.wordpress.com/2007/09/15/date-puzzler-explained/</link>
		<comments>http://alexharvey.wordpress.com/2007/09/15/date-puzzler-explained/#comments</comments>
		<pubDate>Fri, 14 Sep 2007 19:00:37 +0000</pubDate>
		<dc:creator>alexharvey</dc:creator>
				<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://alexharvey.wordpress.com/2007/09/15/date-puzzler-explained/</guid>
		<description><![CDATA[As someone pointed out the unexpected behavior really is coming from the parse method. Looking in the JavaDocs the behavior is likely coming from the DateFormat class:
 By default, parsing is lenient: If the input is not in the form used by this object&#8217;s format method but can still be parsed as a date, then [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexharvey.wordpress.com&blog=80322&post=50&subd=alexharvey&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>As someone pointed out the unexpected behavior really is coming from the parse method. Looking in the JavaDocs the behavior is likely coming from the DateFormat class:</p>
<blockquote><p> By default, parsing is lenient: If the input is not in the form used by this object&#8217;s format method but can still be parsed as a date, then the parse succeeds. Clients may insist on strict adherence to the format by calling setLenient(false).</p></blockquote>
<p>Although this isn&#8217;t specific, it may mean it will interpolate dates when the range falls outside of the correct value. Perhaps there is more detailed documentation, but this is all I found without being overly exhaustive about it. So beware if you are expecting parse() to perform strict date format checking for you. I have also found DateValidator() in Commons Validator to be useful in examining date formats.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/alexharvey.wordpress.com/50/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/alexharvey.wordpress.com/50/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alexharvey.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alexharvey.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alexharvey.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alexharvey.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alexharvey.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alexharvey.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alexharvey.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alexharvey.wordpress.com/50/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alexharvey.wordpress.com/50/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alexharvey.wordpress.com/50/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexharvey.wordpress.com&blog=80322&post=50&subd=alexharvey&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://alexharvey.wordpress.com/2007/09/15/date-puzzler-explained/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9a1331c0f31d9e5d922e6a4b852459f2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">alexharvey</media:title>
		</media:content>
	</item>
		<item>
		<title>a Java puzzler</title>
		<link>http://alexharvey.wordpress.com/2007/09/14/a-java-puzzler/</link>
		<comments>http://alexharvey.wordpress.com/2007/09/14/a-java-puzzler/#comments</comments>
		<pubDate>Thu, 13 Sep 2007 19:32:53 +0000</pubDate>
		<dc:creator>alexharvey</dc:creator>
				<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://alexharvey.wordpress.com/2007/09/14/a-java-puzzler/</guid>
		<description><![CDATA[I&#8217;m a fan of Java Puzzlers and came across this one on my own. Perhaps it has been brought up before though. What happens when you run this program? Hopefully I can explain the answer by tomorrow!

public static void main(String[] args) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
Date d = sdf.parse("1957-02-29");
System.out.println("success: " + d.toString());
} catch (ParseException [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexharvey.wordpress.com&blog=80322&post=49&subd=alexharvey&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I&#8217;m a fan of Java Puzzlers and came across this one on my own. Perhaps it has been brought up before though. What happens when you run this program? Hopefully I can explain the answer by tomorrow!<br />
<code><br />
public static void main(String[] args) {<br />
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");<br />
try {<br />
Date d = sdf.parse("1957-02-29");<br />
System.out.println("success: " + d.toString());<br />
} catch (ParseException e) {<br />
e.printStackTrace();<br />
}<br />
}</code></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/alexharvey.wordpress.com/49/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/alexharvey.wordpress.com/49/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alexharvey.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alexharvey.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alexharvey.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alexharvey.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alexharvey.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alexharvey.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alexharvey.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alexharvey.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alexharvey.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alexharvey.wordpress.com/49/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexharvey.wordpress.com&blog=80322&post=49&subd=alexharvey&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://alexharvey.wordpress.com/2007/09/14/a-java-puzzler/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9a1331c0f31d9e5d922e6a4b852459f2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">alexharvey</media:title>
		</media:content>
	</item>
		<item>
		<title>summer photos</title>
		<link>http://alexharvey.wordpress.com/2007/09/09/summer-photos/</link>
		<comments>http://alexharvey.wordpress.com/2007/09/09/summer-photos/#comments</comments>
		<pubDate>Sat, 08 Sep 2007 20:31:07 +0000</pubDate>
		<dc:creator>alexharvey</dc:creator>
				<category><![CDATA[Digital Photography]]></category>

		<guid isPermaLink="false">http://alexharvey.wordpress.com/2007/09/09/summer-photos/</guid>
		<description><![CDATA[Now that summer is winding down a bit, I thought I would go back through a few of my photos and link to them here.




       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexharvey.wordpress.com&blog=80322&post=46&subd=alexharvey&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Now that summer is winding down a bit, I thought I would go back through a few of my photos and link to them here.</p>
<p><a href="http://picasaweb.google.com/alexanderharvey/GrayslakeBikeRace2007/photo#5096059358254509746"><img src="http://lh5.google.com/alexanderharvey/RrjW_HsQrrI/AAAAAAAAAD0/8L4y0vm2xpk/s800/_MG_1358-Edit.jpg" /></a><br />
<a href="http://picasaweb.google.com/alexanderharvey/GrayslakeBikeRace2007/photo#5096059439858888402"><img src="http://lh4.google.com/alexanderharvey/RrjXD3sQrtI/AAAAAAAAAEE/sGljpZD7T2U/s800/_MG_1469-Edit.jpg" /></a><br />
<a href="http://picasaweb.google.com/alexanderharvey/OldWorldWisconsin/photo#5085977530846172898"><img src="http://lh4.google.com/alexanderharvey/RpUFnh20VuI/AAAAAAAAABc/j1o40_HJxHE/s800/_MG_0684.jpg" /></a><br />
<a href="http://picasaweb.google.com/alexanderharvey/OldWorldWisconsin/photo#5085977578090813170"><img src="http://lh3.google.com/alexanderharvey/RpUFqR20VvI/AAAAAAAAABk/l7nKi-E6iAg/s800/_MG_0727.jpg" /></a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/alexharvey.wordpress.com/46/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/alexharvey.wordpress.com/46/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alexharvey.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alexharvey.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alexharvey.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alexharvey.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alexharvey.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alexharvey.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alexharvey.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alexharvey.wordpress.com/46/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alexharvey.wordpress.com/46/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alexharvey.wordpress.com/46/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexharvey.wordpress.com&blog=80322&post=46&subd=alexharvey&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://alexharvey.wordpress.com/2007/09/09/summer-photos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9a1331c0f31d9e5d922e6a4b852459f2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">alexharvey</media:title>
		</media:content>

		<media:content url="http://lh5.google.com/alexanderharvey/RrjW_HsQrrI/AAAAAAAAAD0/8L4y0vm2xpk/s800/_MG_1358-Edit.jpg" medium="image" />

		<media:content url="http://lh4.google.com/alexanderharvey/RrjXD3sQrtI/AAAAAAAAAEE/sGljpZD7T2U/s800/_MG_1469-Edit.jpg" medium="image" />

		<media:content url="http://lh4.google.com/alexanderharvey/RpUFnh20VuI/AAAAAAAAABc/j1o40_HJxHE/s800/_MG_0684.jpg" medium="image" />

		<media:content url="http://lh3.google.com/alexanderharvey/RpUFqR20VvI/AAAAAAAAABk/l7nKi-E6iAg/s800/_MG_0727.jpg" medium="image" />
	</item>
		<item>
		<title>Groovy and Google Notebook</title>
		<link>http://alexharvey.wordpress.com/2007/09/08/groovy-and-google-notebook/</link>
		<comments>http://alexharvey.wordpress.com/2007/09/08/groovy-and-google-notebook/#comments</comments>
		<pubDate>Fri, 07 Sep 2007 20:19:31 +0000</pubDate>
		<dc:creator>alexharvey</dc:creator>
				<category><![CDATA[GData]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Groovy]]></category>
		<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://alexharvey.wordpress.com/2007/09/08/groovy-and-google-notebook/</guid>
		<description><![CDATA[I started learning Groovy in the past few days. So far I am wondering why I waited so long to start learning it. I like the shorthand style and the ability to get tasks that are a pain in Java done quickly. These are obvious things to like certainly since they are objectives of the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexharvey.wordpress.com&blog=80322&post=48&subd=alexharvey&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I started learning Groovy in the past few days. So far I am wondering why I waited so long to start learning it. I like the shorthand style and the ability to get tasks that are a pain in Java done quickly. These are obvious things to like certainly since they are objectives of the language.</p>
<p>Anyhow, I needed something to do with the language so I chose to write a simple script to download a list of public notebooks from Google Notebook and then process the first one in the list. Here are some observations on the process.</p>
<li>It was not immediately obvious to me how to obtain my Google userid that the documentation mentions. I discovered after a bit of frustration that it is a large numeric value that is passed no the query string and is not the userid that one logs in with. This didn&#8217;t jump out at me from the documentation.</li>
<li>I used Eclipse to write my script and boy did I miss several things that the plugin lacks: code auto formatting and a debugger. Even though the script I wrote is trivial a debugger would be a nice tool in learning Groovy. Maybe one of the other IDE&#8217;s has one for Groovy?</li>
<li>Groovy still awkward to me after living the structurd life of a Java programmer for so many years. The corner-cutting takes some getting used to. The missing ;&#8217;s can feel like nails on a chalkbaord.</li>
<blockquote><p><code><br />
import com.google.gdata.client.*;<br />
import com.google.gdata.data.*;<br />
def myId = 'big number from google url'<br />
def urlUser = "http://www.google.com/notebook/feeds/$myId"<br />
URL feedUrl = new URL(urlUser);</code><br />
<code><br />
GoogleService googleService = new GoogleService("notebook", "alex sample");<br />
</code><code><br />
/**<br />
* request the feed<br />
*/<br />
Feed myFeed = googleService.getFeed(feedUrl, Feed.class);<br />
</code><code><br />
print 'notebook name: '<br />
println myFeed.title.plainText;<br />
</code><code><br />
List l = myFeed.entries;<br />
</code><code><br />
println "public notebook's: "<br />
for (Entry e in l) {<br />
</code></p>
<blockquote><p><code> print e.title.plainText;</code><br />
<code> </code><code></code><br />
<code> URL notebookUrl = new URL(e.id)</code><br />
<code> </code><code></code><br />
<code> Feed notebookFeed = googleService.getFeed(notebookUrl, Feed.class);</code><br />
<code> /* process the feed */</code><br />
<code></code></p></blockquote>
<p><code> }</code></p></blockquote>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/alexharvey.wordpress.com/48/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/alexharvey.wordpress.com/48/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/alexharvey.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/alexharvey.wordpress.com/48/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/alexharvey.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/alexharvey.wordpress.com/48/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/alexharvey.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/alexharvey.wordpress.com/48/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/alexharvey.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/alexharvey.wordpress.com/48/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/alexharvey.wordpress.com/48/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/alexharvey.wordpress.com/48/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=alexharvey.wordpress.com&blog=80322&post=48&subd=alexharvey&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://alexharvey.wordpress.com/2007/09/08/groovy-and-google-notebook/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/9a1331c0f31d9e5d922e6a4b852459f2?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">alexharvey</media:title>
		</media:content>
	</item>
	</channel>
</rss>