<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-4194278567800425322</id><updated>2012-01-03T20:13:26.883-08:00</updated><title type='text'>Neidetcher</title><subtitle type='html'>Software, Architecture, Process</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>35</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-8031180144377121246</id><published>2012-01-03T20:13:00.000-08:00</published><updated>2012-01-03T20:13:26.899-08:00</updated><title type='text'>Moving to neidetcher.com/blog</title><content type='html'>&lt;a href="http://feeds.feedburner.com/neidetcher" style="background-color: white; color: #336699; font-family: Arial, sans-serif; font-size: 13px; line-height: 16px; text-align: left;"&gt;Switch your feed over to&amp;nbsp;http://feeds.feedburner.com/neidetcher&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-8031180144377121246?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/8031180144377121246/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=8031180144377121246' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/8031180144377121246'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/8031180144377121246'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2012/01/moving-to-neidetchercomblog.html' title='Moving to neidetcher.com/blog'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-6890859650001481784</id><published>2011-06-23T22:25:00.000-07:00</published><updated>2011-06-23T22:26:07.120-07:00</updated><title type='text'>Moving Blog</title><content type='html'>Moving blog to my own domain and server.&lt;br /&gt;&lt;br /&gt;Pull it up in your RSS reader and shut your pie hole.&lt;br /&gt;&lt;a href="http://neidetcher.com/blog/"&gt;http://neidetcher.com/blog/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-6890859650001481784?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/6890859650001481784/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=6890859650001481784' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/6890859650001481784'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/6890859650001481784'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2011/06/moving-blog.html' title='Moving Blog'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-2192516248063725970</id><published>2011-06-10T14:49:00.000-07:00</published><updated>2011-06-10T14:49:52.600-07:00</updated><title type='text'>Going to Velocity Conference 2011</title><content type='html'>It should be fun. &amp;nbsp;I just got off of a gig where the development team was responsible for a lot of the operations. &amp;nbsp;The dev-ops story is interesting. &amp;nbsp;There are too many walls between developers and operations.&lt;br /&gt;&lt;br /&gt;I hope to learn a lot about monitoring and testing. &amp;nbsp;I'll probably stay away from the Javascript sessions even though I need to know more about it.&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-2192516248063725970?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/2192516248063725970/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=2192516248063725970' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/2192516248063725970'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/2192516248063725970'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2011/06/going-to-velocity-conference-2011.html' title='Going to Velocity Conference 2011'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-4977358695589147594</id><published>2010-09-28T20:04:00.000-07:00</published><updated>2010-09-28T20:20:54.813-07:00</updated><title type='text'>hg for ~</title><content type='html'>&lt;div style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;a href="http://bitbucket.org/"&gt;bitbucket&lt;/a&gt; is now offering free private repos for their mercurial DVCS.&amp;nbsp; I used to use github but paying $7 per month to store some modest source code and a few dot-files seemed too much.&lt;/div&gt;&lt;div style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Here's how I set up mercurial and bitbucket to manage my home directory configuration files.&lt;/div&gt;&lt;div style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;Go to bitbucket.org and create a new project named 'home' or something.&lt;/div&gt;&lt;br /&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;kabar:~&amp;gt;&lt;b&gt;hg clone http://bitbucket.org/&lt;you&gt;/home&lt;/you&gt;&lt;/b&gt;&lt;br /&gt;kabar:~/home&amp;gt;&lt;b&gt;cd home&lt;/b&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;kabar:~/home&amp;gt;&lt;b&gt;mv .hg ..&lt;/b&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;kabar:~/home&amp;gt;&lt;b&gt;cd .. &lt;/b&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;kabar:~&amp;gt;&lt;b&gt;ls -a &amp;gt; .hgignore&lt;/b&gt;&lt;/div&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;kabar:~&amp;gt;&lt;b&gt;hg add .vimrc&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;kabar:~&amp;gt;&lt;b&gt;hg add .bashrc &lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;kabar:~&amp;gt;&lt;b&gt;hg status&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;A .bashrc&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;A .vimrc&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;kabar:~&amp;gt;&lt;b&gt;hg commit -m 'initial checkin of dotfiles'&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;kabar:~&amp;gt;&lt;b&gt;hg push&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;http authorization required&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;realm: Bitbucket.org HTTP&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;user: &lt;b&gt;&lt;you&gt;&lt;/you&gt;&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;password: &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;pushing to http://bitbucket.org/&lt;you&gt;/home&lt;/you&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;searching for changes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;remote: adding changesets&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;remote: adding manifests&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;remote: adding file changes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;remote: added 1 changesets with 2 changes to 2 files&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;remote: bb/acl: &lt;you&gt; is allowed. accepted payload.&lt;/you&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="font-family: &amp;quot;Helvetica Neue&amp;quot;,Arial,Helvetica,sans-serif;"&gt;&lt;you&gt;Then you probably want something like this in your ~/.hgrc&lt;/you&gt;&lt;/div&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;you&gt;&lt;br /&gt;bitbucket.prefix = http://bitbucket.org/&lt;you&gt;/home&lt;br /&gt;bitbucket.username = &lt;you&gt;&lt;br /&gt;bitbucket.password = &lt;some password=""&gt;&lt;br /&gt;bitbucket.schemes=https&lt;br /&gt;&lt;br /&gt;&lt;/some&gt;&lt;/you&gt;&lt;/you&gt;&lt;/you&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-4977358695589147594?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/4977358695589147594/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=4977358695589147594' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/4977358695589147594'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/4977358695589147594'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2010/09/hg-for.html' title='hg for ~'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-2403263519728404465</id><published>2009-12-27T11:22:00.000-08:00</published><updated>2009-12-27T11:22:22.254-08:00</updated><title type='text'>Book Review: Personal Efficiency Program</title><content type='html'>The book borrows from and is a sensible continuation of &lt;a href="http://www.amazon.com/Getting-Things-Done-Stress-Free-Productivity/dp/0142000280/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1261941681&amp;amp;sr=1-1"&gt;Getting Things Done&lt;/a&gt;. &amp;nbsp;If you're not familiar with GTD, read that book first.&lt;br /&gt;&lt;br /&gt;The &lt;a href="http://www.amazon.com/Personal-Efficiency-Program-Feeling-Overwhelmed/dp/0470371315/ref=dp_cp_ob_b_image_1"&gt;PEP book&lt;/a&gt; puts GTD more in the context of work. &amp;nbsp;There are some gems in the book but overall I'm not sure if it's a &lt;i&gt;must read&lt;/i&gt;. &amp;nbsp;Pick it up if you're into GTD and you're looking for more help with organizing your work life.&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-2403263519728404465?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/2403263519728404465/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=2403263519728404465' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/2403263519728404465'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/2403263519728404465'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2009/12/book-review-personal-efficiency-program.html' title='Book Review: Personal Efficiency Program'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-5992207554834401999</id><published>2009-11-15T19:19:00.000-08:00</published><updated>2009-11-15T19:33:15.577-08:00</updated><title type='text'>What Kind of Guy Am I?</title><content type='html'>I was at a local user group the other night.  I mentioned that I was going to do some management training to a colleague and he seemed surprised that I was getting out of the code.  I'm glad he said that because it has made me more aware and reflective of my career and current situation.&lt;br /&gt;&lt;br /&gt;In 2000 when we were using Perl, duct-tape, building jars from IDEs, Windows batch files, manual steps and bash files I decided to become &lt;span style="font-weight: bold;"&gt;the build and deployment guy&lt;/span&gt; introducing ant to a skeptical organization.&lt;br /&gt;&lt;br /&gt;When I saw projects continually fail and stagnate I became &lt;span style="font-weight: bold;"&gt;the process guy&lt;/span&gt;.  First we did what seemed right, then I read up on Scrum.  I'll never go back to waterfall, not because I'm dogmatic but because I like to succeed.&lt;br /&gt;&lt;br /&gt;When faced with mounds of green-field work in a domain I barely understood I became &lt;span style="font-weight: bold;"&gt;the requirements gathering and domain modeling guy&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Tasked with creating a scalable, flexible, testable system I became &lt;span style="font-weight: bold;"&gt;the architecture guy&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;As the most senior person in a growing team and successful organization I'm slowly turning into &lt;span style="font-weight: bold;"&gt;the management guy&lt;/span&gt;.  To most of my peers this is a stark transition.  Committing to the dark side, never to return.  I just don't see it that way.  I'm filling the vacuum, solving problems, getting things done and kicking ass.  I see it as operating from the same play-book I've had for over 10 years.&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-5992207554834401999?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/5992207554834401999/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=5992207554834401999' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/5992207554834401999'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/5992207554834401999'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2009/11/what-kind-of-guy-am-i.html' title='What Kind of Guy Am I?'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-5256735596492688196</id><published>2009-07-13T17:43:00.000-07:00</published><updated>2009-07-13T17:48:32.100-07:00</updated><title type='text'>Got a Mac</title><content type='html'>This weekend I purchased a 15" Mac Book Pro.  I've used Linux almost exclusively for the past 10 years.  It came down to me needing a good laptop and dreading the thought of having unsupported hardware after spending a lot of money.&lt;br /&gt;&lt;br /&gt;I evaluated laptops from 6 companies.  They all had the hardware I wanted at a great price but none of them said anywhere (that I could find) about their Linux support.  You figure among them they could have thrown in an Ubuntu CD and checked to see if their web-cam works etc...&lt;br /&gt;&lt;br /&gt;So I'm diving into the Mac experience.  The first piece of software I installed was VMWare Fusion and then I got an Ubntu VM fired up.  I plan on getting that set up the way I want for development and then gradually dipping my toe into writing software within Mac OS.&lt;br /&gt;&lt;br /&gt;So far I'm pleasantly surprised, it's a great machine.&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-5256735596492688196?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/5256735596492688196/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=5256735596492688196' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/5256735596492688196'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/5256735596492688196'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2009/07/got-mac.html' title='Got a Mac'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-2672086829960199874</id><published>2009-07-01T22:40:00.000-07:00</published><updated>2009-07-01T23:22:14.865-07:00</updated><title type='text'>Book Review: Brain Rules</title><content type='html'>If you're a programmer, you're a knowledge worker.  You take raw materials like API documents and a twist of domain knowledge, run that through your brain and you produce real software that does real things.&lt;br /&gt;&lt;br /&gt;With a job like that you should be concerned about how well your brain is functioning.  Your ability to think and create is pretty much everything you bring to the table.  You're not bringing connections, a strong back or winning personality if you're anything like most of the programmers I know.&lt;br /&gt;&lt;br /&gt;So how do you maximize your brain?  I've been interested in that topic lately.  My most recent read is the book &lt;a href="http://www.amazon.com/Brain-Rules-Principles-Surviving-Thriving/dp/0979777747/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1246514777&amp;amp;sr=8-1"&gt;Brain Rules&lt;/a&gt;.  John Medina goes through 12 high-level insights that aid in our understanding of how the brain works.&lt;br /&gt;&lt;br /&gt;I really suggest reading the book so I'm not going to take all of his thunder.  There are some big points that I think are worth sharing though.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Rule #1 - Exercise&lt;/span&gt;&lt;br /&gt;Exercise gives you a more efficient system to feed and remove waste from your brain.  Exercise increases chemicals that pretty much function as Miracle-Gro for your brain.&lt;br /&gt;&lt;br /&gt;He recommends daily motion punctuated by 2-3 sessions of harsh activity.  Adding strength training would be even better.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Rule #7 - Sleep&lt;/span&gt;&lt;br /&gt;30% of people aren't comfortable with the normal 9-5 work day.  It's in your best interest as a company to account for these differences. &lt;br /&gt;&lt;br /&gt;Our brain is very active during sleep.  A good analogy is that during sleep your brain gathers all the post-it notes you have accumulated throughout the day and has added those concepts to the relational database in your brain.  Drawing correlations and categorizing data.&lt;br /&gt;&lt;br /&gt;He describes a study where students were shown a circuitous solution to a problem.  It was set up such that there was a better method of solving the problem that required some creativity to discover.&lt;br /&gt;&lt;br /&gt;Expose subjects to the problem and let them go away for 12 hours.  If those 12 hours &lt;span style="font-style: italic;"&gt;did not&lt;/span&gt; include sleep 20% of the people figure out the better solution.  If the 12 hours &lt;span style="font-style: italic;"&gt;did&lt;/span&gt; include sleep then 60% of the people figure out the solution.  As intuitive as this already should be to us, this amazed me.&lt;br /&gt;&lt;br /&gt;You need to use sleep as a tool when solving difficult problems.  Another thing I like about the book is he ends each chapter with ways you might use the information presented.  The author gives an example of a company should have a meeting later in the day, expose people to the problem and don't conclude the brainstorming until the next morning when everyone has slept on it.&lt;br /&gt;&lt;br /&gt;I won't go into any more specific rules.  Some of the others are particularly helpful in the context of giving presentations.  I have another talk coming up and I have refactored my talk with a lot of the authors suggestions.  We'll see how it goes.&lt;br /&gt;&lt;br /&gt;I highly recommend the book.&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-2672086829960199874?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/2672086829960199874/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=2672086829960199874' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/2672086829960199874'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/2672086829960199874'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2009/07/book-review-brain-rules.html' title='Book Review: Brain Rules'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-1918562637523388108</id><published>2009-07-01T14:15:00.001-07:00</published><updated>2009-07-01T14:18:45.183-07:00</updated><title type='text'>Android Presentation from Denver Open Source User Group</title><content type='html'>I gave a talk on Android to the local &lt;a href="http://www.denveropensource.org/home"&gt;Denver Open Source User Group&lt;/a&gt;.  Great crowd.  I got some great feedback (thanks &lt;a href="http://www.ambientideas.com/"&gt;Matthew&lt;/a&gt;) so I think my talk will be improved when I talk at &lt;a href="http://boulderjug.org/"&gt;BJUG&lt;/a&gt; in July and &lt;a href="http://denverjug.org"&gt;DJUG&lt;/a&gt; in August.&lt;br /&gt;&lt;br /&gt;You can also get links and materials on my &lt;a href="http://neidetcher.com/android.html"&gt;home page&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;div style="width:425px;text-align:left" id="__ss_1528721"&gt;&lt;a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/matthewmccullough/introduction-to-android-by-demian-neidetcher" title="Introduction to Android by Demian Neidetcher"&gt;Introduction to Android by Demian Neidetcher&lt;/a&gt;&lt;object style="margin:0px" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=2009androiddemianneidetcher-090603151141-phpapp02&amp;amp;stripped_title=introduction-to-android-by-demian-neidetcher"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowScriptAccess" value="always"&gt;&lt;embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=2009androiddemianneidetcher-090603151141-phpapp02&amp;amp;stripped_title=introduction-to-android-by-demian-neidetcher" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"&gt;View more &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/"&gt;presentations&lt;/a&gt; from &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/matthewmccullough"&gt;Matthew Mccullough&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-1918562637523388108?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/1918562637523388108/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=1918562637523388108' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/1918562637523388108'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/1918562637523388108'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2009/07/android-presentation-from-denver-open.html' title='Android Presentation from Denver Open Source User Group'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-2741994616882153619</id><published>2009-06-20T00:38:00.000-07:00</published><updated>2009-06-20T00:51:11.490-07:00</updated><title type='text'>NFJS Spring 2009</title><content type='html'>As a Denver/ Boulder area native I should be immune to any &lt;a href="http://thirstyhead.com/"&gt;Scott Davis&lt;/a&gt; talk on Groovy.  But Scott rocked my world again with what is possible in Groovy.  I saw a bunch of great talks.  The schedule was light on Grails content unfortunately.&lt;br /&gt;&lt;br /&gt;Neil Ford gave a great talk on how to thrive as a developer and how companies should handle their developers.&lt;br /&gt;&lt;br /&gt;Ken Sipe gave a great talk on upcoming Spring 3.  Frankly most of the features are already in Spring 2.5.  We just got up to Spring 2.5 at work so hopefully when Spring 3 comes out we'll get right on it.  His talk almost made me regret choosing Struts2 for our web application at work.  Spring MVC is doing amazing stuff.  Lots of great sensible defaults and the ability to create some beautiful ReST-like URLs.&lt;br /&gt;&lt;br /&gt;A great local talent, &lt;a href="http://ambientideas.com/"&gt;Matthew McCullough&lt;/a&gt;, gave great presentations on maven and open source debugging tools.  I have considerable experience in both areas but I got a lot out of the talks.&lt;br /&gt;&lt;br /&gt;Venkat gave a great talk on Scala.  I still don't see a big reason to switch to Scala.  If anything I'll be doing more and more Groovy.&lt;br /&gt;&lt;br /&gt;Nate Schutta spoke on 'Hacking Your Brain for Fun and Profit'.  That was another good book.  I recently read &lt;span style="font-style: italic;"&gt;Refactoring Your Wetware&lt;/span&gt;.  I liked the book a lot and some of the material Nate went over was from that book.  His talk was more inspired by &lt;span style="font-style: italic;"&gt;Brain Rules&lt;/span&gt;.  The talk inspired me to pick up that book and I'm reading it now; it's great.&lt;br /&gt;&lt;br /&gt;I finished the weekend with a talk by Venkat.  He's a good last speaker to have, he managed to keep me awake.  At the end of a No Fluff weekend your brain is guaranteed to be fried.  He gave a very general talk on code smell.  Much of the material seemed to be from &lt;span style="font-style: italic;"&gt;Practices of an Agile Developer&lt;/span&gt;.  I have read that, it's a good book.&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-2741994616882153619?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/2741994616882153619/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=2741994616882153619' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/2741994616882153619'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/2741994616882153619'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2009/06/nfjs-spring-2009.html' title='NFJS Spring 2009'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-7818889289232429182</id><published>2009-05-05T07:58:00.000-07:00</published><updated>2009-05-05T08:10:22.795-07:00</updated><title type='text'>How I Prepare a Talk</title><content type='html'>Recently &lt;a href="http://pic.im/2yF"&gt;a local stud tweeted a picture of 3x5 cards laid out on a kitchen counter&lt;/a&gt; in preparation for an upcoming talk he was going to give. &lt;br /&gt;&lt;br /&gt;I thought it was interesting because I do nothing like that.  He has a lot more experience giving presentations than I do.  I tend to think if someone were looking for the right answer his approach is something to consider.&lt;br /&gt;&lt;br /&gt;There's also a recent article on &lt;a href="http://www.lifehack.org/articles/communication/from-mind-map-to-presentation.html"&gt;using mind maps to organize your thoughts for a presentation&lt;/a&gt;.  I've used mind maps in the past, I'm sure that's a good approach.&lt;br /&gt;&lt;br /&gt;I'm sure there are other great approaches to take besides these.  Here's what seems to work for me.&lt;br /&gt;&lt;br /&gt;1) get a broad understanding of the topic&lt;br /&gt;2) come up with a high level outline (6 or fewer items)&lt;br /&gt;3) create place holder slides for the outline&lt;br /&gt;4) continue filling in information (code, bullet points, pictures, reminders) directly into the presentation software until you have something you're satisfied with&lt;br /&gt;&lt;br /&gt;The information doesn't have to be a complete thought.  I consider it like a wiki; there can be place holders for stuff I need to research more.  I like it because the presentation itself becomes a series of buckets to put information into.  There is no manual labor to look forward to in transcribing any other media into the presentation.&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-7818889289232429182?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/7818889289232429182/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=7818889289232429182' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/7818889289232429182'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/7818889289232429182'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2009/05/how-i-prepare-talk.html' title='How I Prepare a Talk'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-8199268782319271669</id><published>2009-04-19T19:49:00.000-07:00</published><updated>2009-04-19T20:19:15.110-07:00</updated><title type='text'>Pragmatic Thinking and Learning: Refactor Your Wetware</title><content type='html'>&lt;span style="font-size:100%;"&gt;I just finished reading &lt;/span&gt;&lt;a href="http://pragprog.com/titles/ahptl/pragmatic-thinking-and-learning"&gt;&lt;span style="font-size:100%;"&gt;Pragmatic Thinking and Learning: Refactor Your Wetware&lt;/span&gt;&lt;/a&gt;.  The book is geared towards anyone who wants to learn and think better.  It has plenty of specific details for software engineers.&lt;br /&gt;&lt;br /&gt;The book does a lot of build up to get you to understand what it means to be an expert, what are the levels of skill and how the brain works for better and worse.&lt;br /&gt;&lt;br /&gt;The best part of the book is the last few chapters.  He puts the theory aside and gets to the low level practices along with some tools.  The theory is good, it's a good build-up but I wish more of the book was made of pragmatic advice.  The publishers provide &lt;a href="http://forums.pragprog.com/forums/62"&gt;forums&lt;/a&gt; and it looks like there are more pragmatic next steps there.&lt;br /&gt;&lt;br /&gt;He covers &lt;a href="http://en.wikipedia.org/wiki/Mind_map"&gt;mind maps&lt;/a&gt;.  I have tried drawing some for video lectures on a technical topic I'm learning right now.  I'm happy with the results and plan to use it as a way to coalesce thoughts and take notes while reading a book or watching a lecture. &lt;br /&gt;&lt;br /&gt;Another practice he recommends is using a personal &lt;a href="http://en.wikipedia.org/wiki/Wiki"&gt;wiki&lt;/a&gt;.  I love wikis, I use them a lot for work, I even wrote a &lt;a href="http://sourceforge.net/projects/pyborg/"&gt;file based wiki in Python&lt;/a&gt; once.  I installed &lt;a href="http://swik.net/DidiWiki"&gt;didiwiki&lt;/a&gt; on all my &lt;a href="http://www.ubuntu.com/"&gt;Ubuntu&lt;/a&gt; machines, it's file based so you need no database running.  It's also very lightweight and has an embedded HTTP server; ideal for my Asus EEE net-book.  Another benefit of being file based is that I can just version control the files (using &lt;a href="http://github.com"&gt;github&lt;/a&gt;) and I have access to the wiki data on any computer I use and while I'm off-line.&lt;br /&gt;&lt;br /&gt;Overall, I highly recommend the book.  I absolutely tore through the book, that's a good sign.&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-8199268782319271669?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/8199268782319271669/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=8199268782319271669' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/8199268782319271669'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/8199268782319271669'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2009/04/pragmatic-thinking-and-learning.html' title='Pragmatic Thinking and Learning: Refactor Your Wetware'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-2466752483739504247</id><published>2009-04-11T22:54:00.000-07:00</published><updated>2009-04-11T23:01:29.250-07:00</updated><title type='text'>TLAs and Getting Shit Done</title><content type='html'>I spent over 5 years doing big company enterprise development.  JNDI, J2EE, CMP, JDBC, JMX, yada yada.  Sure, we got stuff done but we were slow, cumbersome and stupid.  I have recently reviewed my skill set and I notice that JMS is a skill that I'm missing.&lt;br /&gt;&lt;br /&gt;So what do I do?  Should I learn JMS?  Would I be able to pick up JMS in a few days if that's what was required to solve a problem?  Would I want to work for an organisation that requires a check-list of acronyms before getting into their shop?&lt;br /&gt;&lt;br /&gt;The alternative is learning something like Grails.  Grails helps you get shit done.  I'm also studying Google Android.  Neither Grails nor Android better prepare me to be a conventional enterprise Java developer for the majority of organizations and recruiters.&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-2466752483739504247?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/2466752483739504247/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=2466752483739504247' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/2466752483739504247'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/2466752483739504247'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2009/04/tlas-and-getting-shit-done.html' title='TLAs and Getting Shit Done'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-3266795364852850824</id><published>2009-03-12T07:57:00.000-07:00</published><updated>2009-03-12T07:58:24.078-07:00</updated><title type='text'>Government Ramp Up</title><content type='html'>What's with all the government work ramping up?&lt;br /&gt;&lt;br /&gt;&lt;div style="width:540px"&gt;&lt;br /&gt;&lt;a href="http://www.indeed.com/jobtrends?q=secret%2C+%22top*secret%22%2C+%22polygraph%22+%22clearance%22" title="secret, &amp;#034;top*secret&amp;#034;, &amp;#034;polygraph&amp;#034; &amp;#034;clearance&amp;#034; Job Trends"&gt;&lt;br /&gt;&lt;img width="540" height="300" src="http://www.indeed.com/trendgraph/jobgraph.png?q=secret%2C+%22top*secret%22%2C+%22polygraph%22+%22clearance%22" border="0" alt="secret, &amp;#034;top*secret&amp;#034;, &amp;#034;polygraph&amp;#034; &amp;#034;clearance&amp;#034; Job Trends graph" /&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;table width="100%" cellpadding="6" cellspacing="0" border="0" style="font-size:80%"&gt;&lt;tr&gt;&lt;br /&gt;&lt;td&gt;&lt;a href="http://www.indeed.com/jobtrends?q=secret%2C+%22top*secret%22%2C+%22polygraph%22+%22clearance%22"&gt;secret, &amp;#034;top*secret&amp;#034;, &amp;#034;polygraph&amp;#034; &amp;#034;clearance&amp;#034; Job Trends&lt;/a&gt;&lt;/td&gt;&lt;br /&gt;&lt;td align="right"&gt;&lt;a href="http://www.indeed.com/q-secret-jobs.html"&gt;secret jobs&lt;/a&gt; - &lt;a href="http://www.indeed.com/jobs?q=%22top*secret%22"&gt;&amp;#034;top*secret&amp;#034; jobs&lt;/a&gt; - &lt;a href="http://www.indeed.com/jobs?q=%22polygraph%22+%22clearance%22"&gt;&amp;#034;polygraph&amp;#034; &amp;#034;clearance&amp;#034; jobs&lt;/a&gt;&lt;/td&gt;&lt;br /&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-3266795364852850824?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/3266795364852850824/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=3266795364852850824' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/3266795364852850824'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/3266795364852850824'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2009/03/government-ramp-up.html' title='Government Ramp Up'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-7890224710483930202</id><published>2009-03-03T07:47:00.000-08:00</published><updated>2009-03-03T08:47:37.266-08:00</updated><title type='text'>Grails Eastwood Plugin</title><content type='html'>I wanted graphing for my &lt;a href="http://github.com/demian0311/ruck/tree/master"&gt;Grails scrum application&lt;/a&gt;.  After a quick review the &lt;a href="http://www.grails.org/JFreeChart+Eastwood+Plugin"&gt;JFreeChart Eastwood plug-in&lt;/a&gt; looked compelling.  The installation is stupid-simple just like all Grails plug-ins.&lt;br /&gt;&lt;br /&gt;Eastwood guys re-implement the &lt;a href="http://code.google.com/apis/chart/"&gt;Google Chart API&lt;/a&gt; but with JFreeChart as the back-end.  Google is the resource for documentation and tutorials.  It's a cool idea; you get a sensible, poopular chart API but your application doesn't have to depend on making remote calls to Google.  The plug-in runs a servlet within your Grails application to serve up charts.&lt;br /&gt;&lt;br /&gt;There are some peculiarities.  It doesn't seem that Eastwood implements the &lt;a href="http://code.google.com/apis/chart/styles.html#shape_markers"&gt;shape markers&lt;/a&gt;, so you can't draw little dots on your graph.&lt;br /&gt;&lt;br /&gt;The Google Chart API could be more intuitive in some ways.  For example you can define what value goes in the top of your chart but all the values you plot assume 0 is the botom and 100 is the top.  So you have to figure out a multiplier for each data point based on what your top is.&lt;br /&gt;&lt;blockquote style="font-family: courier new;"&gt;100 / top = multiplier&lt;br /&gt;dataPoint * multiplier = newDataPoint&lt;/blockquote&gt;It's not a huge deal but I would think the API would do that math for you.  &lt;span style="font-style: italic;"&gt;I'm embarrassed to say that it took me about half an hour to figure out how to round numbers in Groovy.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Here's how the chart API looks.  This example goes to Google of course but you get &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://chart.apis.google.com/chart?chs=200x125&amp;amp;cht=ls&amp;amp;chco=0077CC&amp;amp;chd=t:27,25,60,31,25,39,25,31,26,28,80,28,27,31,27,29,26,35,70,25"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 200px; height: 125px;" src="http://chart.apis.google.com/chart?chs=200x125&amp;amp;cht=ls&amp;amp;chco=0077CC&amp;amp;chd=t:27,25,60,31,25,39,25,31,26,28,80,28,27,31,27,29,26,35,70,25" alt="" border="0" /&gt;&lt;/a&gt;the idea.  So coding to the Google Chart API becomes an exercise in munging a URL to define data points, what kind of chart you want, colors to use and so on.  It's not the prettiest thing in the world but it's simple, it works and I've done my share of munging.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://chart.apis.google.com/chart?chs=200x125&amp;amp;cht=ls&amp;amp;chco=0077CC&amp;amp;chd=t:27,25,60,31,25,39,25,31,26,28,80,28,27,31,27,29,26,35,70,25"&gt;http://chart.apis.google.com/chart?chs=200x125&amp;amp;cht=ls&amp;amp;chco=0077CC&amp;amp;chd=t:27,25,60,31,25,39,25,31,26,28,80,28,27,31,27,29,26,35,70,25&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I should also mention that because you're just playing with a long URL it's very &lt;span style="font-style: italic;"&gt;browser hackable&lt;/span&gt;.  So you can quickly try out different things by twiddling a URL, very cool.&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-7890224710483930202?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/7890224710483930202/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=7890224710483930202' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/7890224710483930202'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/7890224710483930202'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2009/03/grails-eastwood-plugin.html' title='Grails Eastwood Plugin'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-8057775608374212170</id><published>2009-02-15T16:57:00.000-08:00</published><updated>2009-02-15T17:03:38.961-08:00</updated><title type='text'>Digging into git</title><content type='html'>I've been using git for at least 6 months.  I know what cryptic things I have to type in to get the bytes up and down from &lt;a href="http://github.com/demian0311"&gt;GitHub&lt;/a&gt;.  Now that I'm using it, I guess it's time to learn it.&lt;br /&gt;&lt;br /&gt;I just bought my 3rd Pragmatic Programmers book on version control.  The others were on cvs, svn and now git.  I hope I won't need anything beyond that for some time.&lt;br /&gt;&lt;br /&gt;By the way, I recommend GitHub.  Works real good, simple site.  I keep most of my home directory in git version control.  Works out well.  Whenever I'm on any of the 3 computers (all Ubuntu) I hop between I always have the same environment.&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-8057775608374212170?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/8057775608374212170/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=8057775608374212170' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/8057775608374212170'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/8057775608374212170'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2009/02/digging-into-git.html' title='Digging into git'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-174062407294142318</id><published>2009-01-30T08:24:00.000-08:00</published><updated>2009-01-30T08:42:43.509-08:00</updated><title type='text'>Scrum as Silver Bullet</title><content type='html'>Martin Fowler has a &lt;a href="http://martinfowler.com/bliki/FlaccidScrum.html"&gt;great post on how some teams are mis-using Scrum&lt;/a&gt;.  I encourage you to read the article.  He observes that there have been some failures with teams using Scrum.  Fowler states, and he is right (he needs my approval), that people are neglecting overall good practices when using Scrum.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Scrum won't make your project go faster&lt;/li&gt;&lt;li&gt;Scrum won't make your code cleaner&lt;/li&gt;&lt;li&gt;Scrum won't increase your test coverage&lt;/li&gt;&lt;li&gt;Scrum won't get rid of bugs&lt;/li&gt;&lt;/ul&gt;You still have to work.  You still have to be great at what you do.  Scrum is no silver bullet, there are no silver bullets.&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-174062407294142318?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/174062407294142318/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=174062407294142318' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/174062407294142318'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/174062407294142318'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2009/01/scrum-as-silver-bullet.html' title='Scrum as Silver Bullet'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-8398851189397053284</id><published>2009-01-27T10:20:00.000-08:00</published><updated>2009-01-27T10:33:02.072-08:00</updated><title type='text'>Wabi-Sabi</title><content type='html'>As soon as I saw wikis I liked the idea.  Some of the early people involved in wikis at the &lt;a href="http://c2.com/ppr/"&gt;Portland Patterns Repository&lt;/a&gt; talked about the concept of &lt;a href="http://en.wikipedia.org/wiki/Wabi-sabi"&gt;wabi-sabi&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;As Wikipedia will tell you, wabi-sabi is a Japanese aesthetic.  It deals with seeing the beauty in what is not perfect or complete.  It's a reprieve from the sterile, sacharin world we have created.  The most typical example in wabi-sabi is a bowl, you can see it's worn edges from use, you can see the finger marks that the craftsman made when creating it, there are no sharp edges.  This is juxtaposed with a white box, with clean sharp edges, no sign of its use, imperfection or creation.&lt;br /&gt;&lt;br /&gt;As it relates to wikis I think they were trying to say that don't worry about making your wiki page 100% correct.  Leave place-holders for more information to be filled out later.  It's not something you work on once, it's something you gradually add to and it's never perfect so don't try to find beauty in perfection.&lt;br /&gt;&lt;br /&gt;I think wabi-sabi is important to developers because we are too often looking for absolute correctness.  It's a step to maturing as a software engineer.  Understanding what is good enough and what's good enough for now.  Many times we wait months analyzing and perfecting to a point where our solution becomes irrelevant and in the end it's still not perfect.&lt;br /&gt;&lt;br /&gt;I read &lt;a href="http://www.amazon.com/Wabi-Sabi-Artists-Designers-Poets-Philosophers/dp/0981484603/ref=pd_bbs_sr_2?ie=UTF8&amp;amp;s=books&amp;amp;qid=1233081022&amp;amp;sr=8-2"&gt;a book on wabi-sabi&lt;/a&gt;, I recommend it.  I can't say that it's the book that has done the most to make me a good developer but I think it has helped.&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-8398851189397053284?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/8398851189397053284/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=8398851189397053284' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/8398851189397053284'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/8398851189397053284'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2009/01/wabi-sabi.html' title='Wabi-Sabi'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-3082390394225702520</id><published>2009-01-21T14:18:00.000-08:00</published><updated>2009-01-21T14:23:44.688-08:00</updated><title type='text'>Find PID for Tomcat Process</title><content type='html'>I'm trying to remotely monitor the GC on a Linux box running Tomcat.  Running jps on my machine running Tomcat doesn't show me the PID for the Tomcat process.  If you go into the startup scripts for Tomcat you'll probably find &lt;span style="font-family: arial;"&gt;PID_FILE&lt;/span&gt; defined.  If it's not there you can add it and bounce.&lt;br /&gt;&lt;span style="font-family: arial;"&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style="font-family: arial;"&gt;PID_FILE=/var/run/jsvc.pid&lt;/span&gt;&lt;br /&gt;&lt;br/&gt;&lt;br/&gt;&lt;br /&gt;&lt;span style="font-family: arial;"&gt;[demian@boxname init.d]$ sudo cat /var/run/jsvc.pid&lt;/span&gt;&lt;br /&gt;&lt;br/&gt;&lt;span style="font-family: arial;"&gt;1234&lt;/span&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-3082390394225702520?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/3082390394225702520/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=3082390394225702520' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/3082390394225702520'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/3082390394225702520'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2009/01/find-pid-for-tomcat-process.html' title='Find PID for Tomcat Process'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-8751102680116286416</id><published>2009-01-15T07:52:00.000-08:00</published><updated>2009-01-15T08:00:32.665-08:00</updated><title type='text'>ThirstyHead for Groovy &amp; Grails Training</title><content type='html'>&lt;a href="http://thirstyhead.com/home/about"&gt;Scott Davis&lt;/a&gt;, a local rockstar has started up a Groovy &amp;amp; Grails training operation with fellow rock star &lt;a href="http://thirstyhead.com/home/about"&gt;Andy Glover&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;As being in the Denver/ Boulder area I've been spoiled in that I've probably seen 5 Groovy or Grails presentations given by Scott.  I've also seen him and Andy at &lt;a href="http://www.nofluffjuststuff.com/home.jsp"&gt;No Fluff Just Stuff&lt;/a&gt; shows.  These guys are great, they know this stuff, they have real-world experience with Groovy and they were into Groovy before it was cool.&lt;br /&gt;&lt;br /&gt;Recently I have been getting &lt;a href="http://github.com/demian0311/ruck/tree/master"&gt;more acquainted&lt;/a&gt; with Grails.  It's amazing stuff.  It doesn't fit everywhere but either does a full-blown JEE stack.&lt;br /&gt;&lt;br /&gt;Anyways, head on over to &lt;a href="http://thirstyhead.com/"&gt;ThirstyHead&lt;/a&gt;, Scott is a good dude.&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-8751102680116286416?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/8751102680116286416/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=8751102680116286416' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/8751102680116286416'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/8751102680116286416'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2009/01/thirstyhead-for-groovy-grails-training.html' title='ThirstyHead for Groovy &amp; Grails Training'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-3861929182436130082</id><published>2009-01-13T09:50:00.001-08:00</published><updated>2009-01-13T09:56:33.545-08:00</updated><title type='text'>Putting the Me in SME</title><content type='html'>After hours I work on a scrum application.  There are good options out there for managing scrum projects.  To me they are too complex and they don't have a tactile feel.  I like simplicity, I like when tools get out of my way.&lt;br /&gt;&lt;br /&gt;So I am acting as my own subject matter expert.  It's cool.  It's interesting the things that you sort of gloss over.  When you formalize and automate it forces you to look at the details.  I'm used to extracting these details from business types.  It's not hard to get it from my own brain but it's peculiar.&lt;br /&gt;&lt;br /&gt;If you're interested the project is called &lt;a href="http://github.com/demian0311/ruck/tree/master"&gt;ruck&lt;/a&gt;, it's built using &lt;a href="http://grails.org/"&gt;grails&lt;/a&gt; and it is hosted up on &lt;a href="http://github.com/"&gt;github&lt;/a&gt;.  I picked &lt;a href="http://www.gnu.org/licenses/agpl-3.0.txt"&gt;GPLv3&lt;/a&gt; as the license.&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-3861929182436130082?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/3861929182436130082/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=3861929182436130082' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/3861929182436130082'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/3861929182436130082'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2009/01/putting-me-in-sme.html' title='Putting the Me in SME'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-4166461417758277355</id><published>2009-01-06T23:26:00.000-08:00</published><updated>2009-01-06T23:42:47.895-08:00</updated><title type='text'>SOA is Dead?</title><content type='html'>I saw this article.  She basically gets into semantics.  She concedes that the big software and hardware vendors can have the SOA term and we'll all just call it services.  That's bullshit.  SOA is just good architecture, just because some suit uses the name to sell hardware doesn't mean we have to now call SOA 'services'.&lt;br /&gt;&lt;a href="http://apsblog.burtongroup.com/2009/01/soa-is-dead-long-live-services.html"&gt;http://apsblog.burtongroup.com/2009/01/soa-is-dead-long-live-services.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The SOA hype reminds me of the Linux stocks in 2000.  When the tech-media got all excited about Linux stocks I remember talking to my friends about how silly it was that there were all these sexy IPOs around Linux companies.  I can't fault the companies for getting some good funding for a while but the hype machine never understood the nature of Linux.  It's a free operating system!  I've used it for 10 years, I love it but heck, it's not going to make anyone wildly rich.&lt;br /&gt;&lt;br /&gt;Similarly hardly anyone seems to understand what SOA is about.  It's been that way for years, it's so painful to see the lack of depth.  It's not about hardware, software and consulting.  It's about a simple architectural concept.&lt;br /&gt;&lt;br /&gt;All those companies that thought SOA meant buying big Sun boxes, loading them up with BEA WebLogic and Oracle, turning their entire IT shop on their ear (UDDI anyone?) deserves to part with their money.  When I've seen that trainwreck in action it was never the line-level troops begging for fat vendor shrink-wrap solutions.  It was always the blue-sky types that managed to elevate to VP or director positions without being sullied by real-world pragmatic development.&lt;br /&gt;&lt;br /&gt;I'm running my current solution inside of Tomcat.  My service-layer isn't even exposed in a distributed fashion and guess what, I'm doing SOA.  If you disagree then go buy a bloated stack from IBM for a nominal fee.  Spend time figuring out the acronyms and tooling while I'm solving business problems.&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-4166461417758277355?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/4166461417758277355/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=4166461417758277355' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/4166461417758277355'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/4166461417758277355'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2009/01/soa-is-dead.html' title='SOA is Dead?'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-6441850667034008427</id><published>2009-01-02T20:09:00.000-08:00</published><updated>2009-01-02T20:21:15.420-08:00</updated><title type='text'>Grails Thoughts</title><content type='html'>Normally I bop around and play with different technology as the wind blows.  I'll hack around with Linux stuff for a while.  Then Java concurrency, then learning Hibernate.  It goes on and on.  I haven't taken a deep dive in a long time.&lt;br /&gt;&lt;br /&gt;I am continually amazed at how there isn't a simple scrum tool out there.  At work I cobble together a spreadsheet to track the project burndown and we use a wiki page to add new stories and track the status of stories within the sprint.  I have used this as motivation to work on a grails based scrum tool.&lt;br /&gt;&lt;br /&gt;This is as deep as I've ever gone into grails.  The barriers to entry are so low.  I'm sure I have a lot more to learn but here are my observations right now.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Pitfalls&lt;/span&gt;&lt;br /&gt;Grails demos great.  Here in Colorado we're fortunate enough to have Scott Davis around to promote Groovy &amp;amp; Grails.  But I'm reminded of Vietnam villages (I've never been there of course), where the locals know where not to step.  When the Americans show up they hit the landmines.&lt;br /&gt;&lt;br /&gt;I feel like the hapless American that doesn't know where the pitfalls are.  There are just some things you should stay away from for everything to work smooth.  When I'm watching experienced Grails people work they probably just remember what not to do.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Power&lt;/span&gt;&lt;br /&gt;I have a lot done.  I'm about half-way to having a fully functional application that I could put in front of people to actually use.  But I still feel like I barely know Groovy and Grails.  I guess this makes sense because I have a lot of Java experience.&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-6441850667034008427?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/6441850667034008427/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=6441850667034008427' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/6441850667034008427'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/6441850667034008427'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2009/01/grails-thoughts.html' title='Grails Thoughts'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-2906091713950658176</id><published>2008-12-14T08:15:00.001-08:00</published><updated>2008-12-14T08:16:11.923-08:00</updated><title type='text'>Scrum in Under 10 Minutes</title><content type='html'>This is a good little video that explains scrum in 10 minutes.&lt;br /&gt;&lt;br /&gt;&lt;object width="480" height="295"&gt;&lt;param name="movie" value="http://www.youtube.com/v/Q5k7a9YEoUI&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/Q5k7a9YEoUI&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="295"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-2906091713950658176?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/2906091713950658176/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=2906091713950658176' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/2906091713950658176'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/2906091713950658176'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2008/12/scrum-in-under-10-minutes.html' title='Scrum in Under 10 Minutes'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-1568065662747670720</id><published>2008-12-02T08:01:00.000-08:00</published><updated>2008-12-02T08:44:58.744-08:00</updated><title type='text'>First Impressions of the T-Mobile G1</title><content type='html'>&lt;span style="font-weight: bold;"&gt;Overall&lt;/span&gt;&lt;br /&gt;Our Sprint plan was up and we decided to get new phones.  We did research and T-Mobile is supposed to have good customer service overall.  Also I heard a quote from the Sprint CEO saying that the &lt;a href="http://blabrmouth.com/sprint-says-googles-android-not-network-worthy/"&gt;Google phone isn't worthy of being on their network&lt;/a&gt;.  This made us realize that we shouldn't wait around for Sprint to figure out what the customer wants.&lt;br /&gt;&lt;br /&gt;Overall I think the device is more clunky than the iPhone but it's nice to know you're not fighting the manufacturer over how to use your phone.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;The good&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;You get music onto it by dragging mp3 files onto the USB mounted drive (shocking)&lt;/li&gt;&lt;li&gt;You can swap out and upgrade the micro SD card (up to 16GB)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;You can power it via standard USB (and standard USB cable)&lt;/li&gt;&lt;li&gt;The qwerty keyboard is easy to use&lt;/li&gt;&lt;li&gt;If your life is in Google (mail, IM, calendar, reader) then you're in luck because it's all baked in&lt;/li&gt;&lt;li&gt;You can connect to wifi hot-spots for faster internet&lt;/li&gt;&lt;li&gt;It's completely open, although I'm resisting it now it's cool to know I could hack on Android&lt;/li&gt;&lt;li&gt;Lot's of great free applications (the first thing I installed was an SSH client)&lt;/li&gt;&lt;li&gt;I can use it with my Linux computers (the iPhone requires iTunes which only runs on Windows and the Mac)&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-weight: bold;"&gt;The bad&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;To use the headphone you need to use a USB to headphone adapter&lt;/li&gt;&lt;li&gt;The screen is smaller than the iPhone&lt;/li&gt;&lt;li&gt;It's not as zen as the iPhone&lt;/li&gt;&lt;li&gt;No multi-touch&lt;/li&gt;&lt;li&gt;Doesn't feel as solid as an iPhone, has moving parts, might break&lt;/li&gt;&lt;li&gt;The design is clunky, I don't get why it isn't entirely flat&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-1568065662747670720?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/1568065662747670720/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=1568065662747670720' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/1568065662747670720'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/1568065662747670720'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2008/12/first-impressions-of-t-mobile-g1.html' title='First Impressions of the T-Mobile G1'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-6423274846331515285</id><published>2008-11-18T21:45:00.000-08:00</published><updated>2008-11-18T21:47:28.382-08:00</updated><title type='text'>Agile / Process / Scrum RSS Feeds</title><content type='html'>&lt;p&gt;A guy asked me what Agile feeds I get.  I pulled these out of my Google Reader OPML file.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Project Management Resources, Templates, Books, Tools, News ::&lt;br /&gt;PMToolbox&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://feeds.feedburner.com/PmNewsDigest"&gt;http://feeds.feedburner.com/PmNewsDigest&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Scrum Alliance&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://scrumalliance.org/rss"&gt;http://scrumalliance.org/rss&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Scrum on! / Popular&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://pligg.scrum-on.com/rss.php"&gt;http://pligg.scrum-on.com/rss.php&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Agile Advice - Working With Agile Methods (Scrum, XP, Lean)&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://feeds.feedburner.com/AgileAdvice"&gt;http://feeds.feedburner.com/AgileAdvice&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Agile Software Development&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://feeds.agilesoftwaredevelopment.com/AgileSoftwareDevelopment"&gt;http://feeds.agilesoftwaredevelopment.com/AgileSoftwareDevelopment&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Agile Thoughts&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://agilethinking.net/blog/feed/"&gt;http://agilethinking.net/blog/feed/&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Aligning Technology, Strategy, People &amp;amp; Projects&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://feeds.feedburner.com/ConnectingTechnologyStrategyAndExecution"&gt;http://feeds.feedburner.com/ConnectingTechnologyStrategyAndExecution&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Exploration Through Example&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://www.exampler.com/blog/feed/"&gt;http://www.exampler.com/blog/feed/&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Lean Software Engineering&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://feeds.feedburner.com/LeanSoftwareEngineering"&gt;http://feeds.feedburner.com/LeanSoftwareEngineering&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Mike Cohn's Blog - Succeeding With Agile™&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://blog.mountaingoatsoftware.com/?feed=rss2"&gt;http://blog.mountaingoatsoftware.com/?feed=rss2&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;NOOP: Managing Software Development&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://feeds.feedburner.com/noop"&gt;http://feeds.feedburner.com/noop&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Scott W. Ambler&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://www.ibm.com/developerworks/blogs/rss/ambler?flavor=rssdw"&gt;http://www.ibm.com/developerworks/blogs/rss/ambler?flavor=rssdw&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;Scrum Log Jeff Sutherland&lt;br /&gt;&lt;a target="_blank" rel="nofollow" href="http://jeffsutherland.com/scrum/rss.xml"&gt;http://jeffsutherland.com/scrum/rss.xml&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-6423274846331515285?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/6423274846331515285/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=6423274846331515285' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/6423274846331515285'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/6423274846331515285'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2008/11/agile-process-scrum-rss-feeds.html' title='Agile / Process / Scrum RSS Feeds'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-3662809182750551444</id><published>2008-11-17T11:21:00.000-08:00</published><updated>2008-11-17T11:39:01.341-08:00</updated><title type='text'>User Group Job Posts</title><content type='html'>We have used user groups to put up job postings.  It has worked out alright.  Frankly we're batting 1,000 with CraigsList.  I talked to a local &lt;a href="http://boulderruby.org/"&gt;Ruby User Group&lt;/a&gt; and asked if I could post a Java job there.  I've read and agree with the &lt;a href="http://www.paulgraham.com/pypar.html"&gt;Python Paradox&lt;/a&gt; by Paul Graham.  Basically he says that you should hire Python guys because they care enough to learn a languages that is better even though it probably won't help them in their day job.&lt;br /&gt;&lt;br /&gt;The Ruby group wouldn't let me post on their lists.  I think the Python Paradox can be applied to people using Ruby.  Most importantly a programmer should have a solid development foundation.  If they're dabbling in other cutting edge languages (Ruby, Groovy, Scala or whatever) it says that their head is in the game.  Even if you're not using one of these languages at work, you should prefer coders that are looking at this stuff.&lt;br /&gt;&lt;br /&gt;I'm not sure what I think about their response.  I understand that the entire point of the group is to promote Ruby.  At this instant Dice shows                12161 Java jobs and only                658.  If I were a Ruby guy, I'd want to know about a Java shop that values my desire to learn new things&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-3662809182750551444?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/3662809182750551444/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=3662809182750551444' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/3662809182750551444'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/3662809182750551444'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2008/11/user-group-job-posts.html' title='User Group Job Posts'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-1460447057877238828</id><published>2008-11-16T21:09:00.000-08:00</published><updated>2008-11-16T21:10:46.253-08:00</updated><title type='text'>NFJS 2008 Brain Dump</title><content type='html'>Here's &lt;a href="http://neidetcher.com/nfjs_2008.html"&gt;my brain-dump on NFJS Fall 2008 in Denver, CO&lt;/a&gt;.  Great show, my brain is fried.&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-1460447057877238828?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/1460447057877238828/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=1460447057877238828' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/1460447057877238828'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/1460447057877238828'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2008/11/nfjs-2008-brain-dump.html' title='NFJS 2008 Brain Dump'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-8871374673987951717</id><published>2008-10-31T13:44:00.000-07:00</published><updated>2008-10-31T23:11:33.798-07:00</updated><title type='text'>Scrum in a Wiki Page</title><content type='html'>At my job we have been doing scrum successfully.  I've read 2 books on scrum and I've done it at a previous job.  It's great, times would have to be very tough before I work on a project that does not leverage &lt;a href="http://agilemanifesto.org/"&gt;agile&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;We manage our scrum process on 1 wiki page.  I know I'm not going to impress anyone, it's crazy but it works.  Previously I've used &lt;a href="http://xplanner.org/"&gt;XPlanner&lt;/a&gt;, after that I used &lt;a href="http://www.atlassian.com/software/jira/"&gt;Jira&lt;/a&gt;.  I hear good things about ScrumWorks, Rally seems too heavy and tabular.  We only have 3 coders including me.  For burn-down charts I fire up a spread-sheet.  We needed it online because, understandably, the product owner wants to add to the backlog and re-order stories without physically being at one location.&lt;br /&gt;&lt;br /&gt;Here's how it looks...&lt;br /&gt;&lt;pre&gt;== sprint x ==&lt;br /&gt;&lt;br /&gt;=== to do ===&lt;br /&gt;- (1) as a user&lt;br /&gt;- (1) as a user&lt;br /&gt;&lt;br /&gt;=== doing ===&lt;br /&gt;- (1) as a user&lt;br /&gt;&lt;br /&gt;=== done ===&lt;br /&gt;- (1) as a user&lt;br /&gt;- (1) as a user&lt;br /&gt;&lt;br /&gt;== backlog ==&lt;br /&gt;- (1) as a user&lt;br /&gt;- (1) as a user&lt;br /&gt;- as a user&lt;br /&gt;&lt;/pre&gt;&lt;ul&gt;&lt;li&gt;The product owner adds stories to the &lt;span style="font-weight: bold;"&gt;backlog&lt;/span&gt; and sorts them there (most important stories are on top)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;The team moves stories for a sprint to the &lt;span style="font-weight: bold;"&gt;to do&lt;/span&gt; section of the current sprint&lt;/li&gt;&lt;li&gt;As we start working on tasks they go to &lt;span style="font-weight: bold;"&gt;doing&lt;/span&gt;&lt;/li&gt;&lt;li&gt;When tasks are done they go to &lt;span style="font-weight: bold;"&gt;done&lt;/span&gt; of course&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-weight: bold;"&gt;Why this is good&lt;/span&gt;&lt;br /&gt;It's simple.  It's web-based.  It works.  You can diff the wiki-page to see who edited what and when.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Why this is bad&lt;/span&gt;&lt;br /&gt;You can't automatically do anything with the data.  You can't push a button and get reports.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Still scratching the itch&lt;/span&gt;&lt;br /&gt;I've been thinking about doing a simple scrum tool for over a year now.  With my hamster-on-crack attention span I don't have much to show.  The current incarnation is Hibernate, Struts2 and lots of Spring.  Stay tuned.&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-8871374673987951717?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/8871374673987951717/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=8871374673987951717' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/8871374673987951717'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/8871374673987951717'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2008/10/scrum-in-wiki-page.html' title='Scrum in a Wiki Page'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-3526963045655656358</id><published>2008-10-26T19:28:00.001-07:00</published><updated>2008-11-07T08:56:10.479-08:00</updated><title type='text'>SQL Naming Convention</title><content type='html'>I read this article on &lt;a href="http://www.xaprb.com/blog/2008/10/26/the-power-of-a-good-sql-naming-convention/"&gt;good SQL naming conventions&lt;/a&gt;.  It's easy to overlook a SQL naming convention.  It's important, here's ours.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Everything is lower case.&lt;/li&gt;&lt;li&gt;An underscore separates words like_this.&lt;/li&gt;&lt;li&gt;Tables are not named with the plural; so user not users.&lt;/li&gt;&lt;li&gt;All primary keys are named 'id'.&lt;/li&gt;&lt;li&gt;All optimistic locking fields are named 'version'.&lt;/li&gt;&lt;li&gt;All foreign keys are [qualifier]_[table]_id.  The qualifier is optional.&lt;/li&gt;&lt;li&gt;Use words instead of acronyms as much as you can and where it makes sense.&lt;/li&gt;&lt;li&gt;Never abbreviate anything.&lt;/li&gt;&lt;li&gt;Look hard for common names in tables.  Make sure you don't have stuff like create_time and born_on_date.&lt;/li&gt;&lt;li&gt;Spell things correctly, yeah, look it up.&lt;/li&gt;&lt;li&gt;Don't name a table [something]_table (it's been done).&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;I like naming foreign keys like that because your schema becomes more predictable.  You can know the columns in the table and instantly know the intent of the foreign keys.  Just like an API, predictability is a big asset.&lt;br /&gt;&lt;br /&gt;In my situation I wrote a service layer generator that reads the schema.  So any naming or structure in the database instantly effects the API.  This is the case at least at the beginning of the project.  For that reason, bad decisions when naming database tables effect the entire architecture.&lt;br /&gt;&lt;br /&gt;Any time you need a translation layer you are adding drag to the project.  By translation layer I don't mean going from protocol X to protocol Y.  I mean when you refer to something in the database and then give it a different name in the web-site this slows down your project.  Every time a developer crosses that boundary they have to spin cycles translating concepts.  Every time a developer that primarily works on the web-site has to talk to the service layer developers there is automatically a disconnect that must be surpassed before more valuable discussions can begin.&lt;br /&gt;&lt;br /&gt;As in naming variables, creativity isn't needed.  Save the creativity for when you really need it.&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-3526963045655656358?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/3526963045655656358/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=3526963045655656358' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/3526963045655656358'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/3526963045655656358'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2008/10/sql-naming-convention.html' title='SQL Naming Convention'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-6417979903143817436</id><published>2008-10-07T08:03:00.000-07:00</published><updated>2008-10-07T08:17:01.563-07:00</updated><title type='text'>Ubuntu 8.10 Coming</title><content type='html'>&lt;script type="text/javascript" src="http://www.ubuntu.com/files/countdown/display2.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;I bought a Book/ CD on SlackWare Linux to start it all out in 1996.  I remember a page in the book said, "to do this, just edit this text file" and I had no idea how to edit a text file in Linux.  SlackWare was painful.  I remember staying up nights trying to get the mouse to work in X-Windows on a 486 laptop.&lt;br /&gt;&lt;br /&gt;Then I hopped over to RedHat.  At some point I played with Debian.  The Spartan nature of Debian got old and I went back to RedHat.  Then I tried out Mandrake.  Suse never grabbed my attention.  Gentoo scared the crap out of me.  Eventually I got back to Debian.&lt;br /&gt;&lt;br /&gt;I got in on Ubuntu fairly early, I forget the exact year.  Although it's fun to hack around your OS Ubuntu allows you to do things like actually get work done.  I'm a big Ubuntu fan.  I haven't dual-booted Windows for years.  In my professional life I've been using Ubuntu 100% of the time for 3 years.  I even run Ubuntu 8.04 on a 24" iMac.  I can't imagine going back.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.ubuntu.com/testing/intrepid/beta#New%20Features%20since%20Ubuntu%208.04"&gt;Here are the new 8.10 features&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-6417979903143817436?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/6417979903143817436/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=6417979903143817436' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/6417979903143817436'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/6417979903143817436'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2008/10/ubuntu-810-coming.html' title='Ubuntu 8.10 Coming'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-2833333875628183814</id><published>2008-10-02T22:07:00.000-07:00</published><updated>2008-10-02T22:26:00.023-07:00</updated><title type='text'>Introducing: SiloBase</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://neidetcher.com/resource/silobase/query-result.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px;" src="http://neidetcher.com/resource/silobase/query-result.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;a href="http://neidetcher.com/silobase.html"&gt;SiloBase&lt;/a&gt; is a simple Java web application that exposes canned database queries.  You create an XML file that defines the database connection, queries and any parameters.  Every time we render a page we hit the config file again so you can tweak queries without bouncing the server.&lt;br /&gt;&lt;br /&gt;If there are any parameters in the SQL we create text boxes for web users to specify the parameters.  Then we run the query and display them in a table.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Why would you use this?&lt;/span&gt;&lt;br /&gt;&lt;p&gt; You have a non-technical person, probably within your business that repeatedly needs access to information in the database. You can easily fire up a MySQL console or TOAD and get the data but after a time this becomes a chore.  You could also create a full-blown n-tiered report in your web-application to expose this data.  You could also get a sophisticated reporting application and training on how to use it. &lt;/p&gt; &lt;p&gt; For whatever reason none of the solutions above fit your needs. That's where SiloBase makes sense.  Just by defining custom queries you can expose forms and live data to your users whenever they want access to the data.&lt;/p&gt;&lt;p&gt;This is only 550 lines of code.  I leveraged &lt;a href="http://springframework.org/"&gt;Spring&lt;/a&gt; heavily for the persistence.  The &lt;a href="http://github.com/demian0311/silobase/tree/master"&gt;code is up on GitHub&lt;/a&gt;.  It's a &lt;a href="http://maven.apache.org/index.html"&gt;maven&lt;/a&gt; project, easy to work with.  The license is &lt;a href="http://www.apache.org/licenses/LICENSE-2.0"&gt;Apache 2.0&lt;/a&gt;.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-2833333875628183814?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/2833333875628183814/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=2833333875628183814' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/2833333875628183814'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/2833333875628183814'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2008/10/introducing-silobase.html' title='Introducing: SiloBase'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-344633757648626817</id><published>2008-09-21T12:17:00.000-07:00</published><updated>2008-09-21T12:33:36.213-07:00</updated><title type='text'>Java XML APIs are Painful</title><content type='html'>Every time I work with XML I am amazed at how painful Java XML APIs are.  Sure they work but they always take the most circuitous and illogical route to solving the problem.  They're always un-intuitive.&lt;br /&gt;&lt;br /&gt;What developer likes creating a factory through a static initializer, instantiating an esoteric parser I don't care about, handing an InputStream (you always have one of those sitting around)  to an awkwardly named method that returns something with 50 methods, none of which seem to get me the information I want.&lt;br /&gt;&lt;br /&gt;I'm working with XPath again and even with that useful API I'm still exposed to so much complexity when all I want is data out of a document.&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-344633757648626817?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/344633757648626817/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=344633757648626817' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/344633757648626817'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/344633757648626817'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2008/09/java-xml-apis-are-painful.html' title='Java XML APIs are Painful'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-1464373555238908509</id><published>2008-09-21T11:30:00.000-07:00</published><updated>2008-09-21T11:43:56.730-07:00</updated><title type='text'>Our Stack</title><content type='html'>I thought I'd shoot up what our current stack is.  I'm always interested to hear what others are working with so here's me.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Development OS: Ubuntu, Mac OS, Windows.  We're 100% agnostic as long as you can use Java6.&lt;/li&gt;&lt;li&gt;Deployment OS: CentOS.  Has better management capabilities.&lt;/li&gt;&lt;li&gt;Servlet Container: Tomcat.  We also do some development in Jetty because it's so easy to use with Maven but we have run into a couple.  We can't assume anything that works in Jetty will work in Tomcat and vice-versa.&lt;/li&gt;&lt;li&gt;Database: MySQL.  Incredibly easy to develop with, light weight.  It has held up great in production.&lt;/li&gt;&lt;li&gt;Persistence: iBatis.  Happy with the iBatis choice.  It's easy to add new queries and tweak the SQL.  It's a great tool, gets out of your way.&lt;/li&gt;&lt;li&gt;Dependency Injection: We're big Spring fans.&lt;/li&gt;&lt;li&gt;MVC framework: Struts2.  I'd like to see more progress and adoption in that project but we're still happy with the decision.&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-1464373555238908509?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/1464373555238908509/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=1464373555238908509' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/1464373555238908509'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/1464373555238908509'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2008/09/our-stack.html' title='Our Stack'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4194278567800425322.post-248493212566490046</id><published>2008-09-21T10:01:00.000-07:00</published><updated>2008-09-21T10:15:35.039-07:00</updated><title type='text'>Introductions</title><content type='html'>I've been blogging at &lt;a href="http://demian0311.blogspot.com/"&gt;http://demian0311.blogspot.com&lt;/a&gt; for quite a while.  If you've come here and want to read random tirades on politics, religion, the economy this is not the place.&lt;br /&gt;&lt;br /&gt;This blog will focus on software and technology.&lt;div class="blogger-post-footer"&gt;&lt;hr/&gt;
&lt;a href="http://neidetcher.com"&gt;Demian L. Neidetcher&lt;/a&gt;
&lt;br/&gt;
&lt;a href="http://demian0311.blogspot.com"
  &gt;Don't you want to know what I have 
   to say about everything else?&lt;/a&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4194278567800425322-248493212566490046?l=neidetcher.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neidetcher.blogspot.com/feeds/248493212566490046/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4194278567800425322&amp;postID=248493212566490046' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/248493212566490046'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4194278567800425322/posts/default/248493212566490046'/><link rel='alternate' type='text/html' href='http://neidetcher.blogspot.com/2008/09/introductions.html' title='Introductions'/><author><name>Demian L. Neidetcher</name><uri>http://www.blogger.com/profile/15301687773415095331</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://3.bp.blogspot.com/_---l-WZUYnw/Snc1k1_iGhI/AAAAAAAAAQU/ssWG3seOQac/S220/3778014281_80ca8fbfaf_m.jpg'/></author><thr:total>0</thr:total></entry></feed>
