<?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-8954978</id><updated>2011-11-10T07:35:49.451-08:00</updated><category term='linux'/><category term='xml'/><category term='squeak'/><category term='ecm'/><category term='erlang'/><category term='programming collective_intelligence python web2.0 enterprise2.0'/><category term='vmware'/><category term='collaboration'/><category term='smalltalk'/><category term='programming'/><category term='lisp'/><category term='air boss'/><category term='ha hpc grid cluster'/><category term='one bag'/><category term='outlook'/><category term='travel'/><category term='web2.0'/><category term='python'/><category term='twitter'/><category term='python programming django'/><category term='design'/><category term='email'/><category term='productivity'/><category term='ubuntu'/><category term='blogging'/><category term='opml'/><category term='vista'/><title type='text'>Clearing My Head</title><subtitle type='html'>In this blog you'll find lots of programming and technology, a little music, a little personal, and a sprinkle of productivity geeking.  The opinions expressed here are my own and don't necessarily reflect the opinions of anyone else.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default?start-index=101&amp;max-results=100'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>149</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8954978.post-7640634328672525554</id><published>2009-05-20T19:13:00.001-07:00</published><updated>2009-05-20T19:13:41.065-07:00</updated><title type='text'>Small Taste of Scala</title><content type='html'>&lt;p&gt;I just got a small taste of the power of &lt;a href="http://www.scala-lang.org/"&gt;Scala&lt;/a&gt;, and it was quite yummy.&lt;/p&gt;  &lt;p&gt;It all started when I was looking for a way to convert a Java time stored in a database table into a readable date and time.&amp;#160; If I were to write a Java class, it would involve:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Create a Java source file to declare my class      &lt;ul&gt;       &lt;li&gt;Declare import for java.util.Calendar &lt;/li&gt;        &lt;li&gt;Define a main function          &lt;ul&gt;           &lt;li&gt;Parse the arguments &lt;/li&gt;            &lt;li&gt;Get a Calendar instance &lt;/li&gt;            &lt;li&gt;Set the time on the Calendar instance &lt;/li&gt;            &lt;li&gt;Print out the Date represented by the Calendar &lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Compile the Java source file &lt;/li&gt;    &lt;li&gt;Run the main function on the class, passing in the appropriate argument &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;This seemed really time consuming and ridiculous considering how simple it should be to do this.&amp;#160; I’ve been spending alot of time in &lt;a href="http://www.python.org/"&gt;Python&lt;/a&gt;, and I would probably be able to do this from the Python &lt;a class="zem_slink" title="Read-eval-print loop" href="http://en.wikipedia.org/wiki/Read-eval-print_loop" rel="wikipedia"&gt;REPL&lt;/a&gt; in a few (or 1) line of code.&amp;#160; So, I started looking at dynamic languages on top of the JVM.&lt;/p&gt;  &lt;p&gt;I decided to give Scala a shot.&amp;#160; Scala has a REPL that comes with the SDK.&amp;#160; So, I downloaded it and fired it up.&amp;#160; I then had to figure out how to write my code.&lt;/p&gt;  &lt;p&gt;I’ll be honest – I didn’t read the manual and as a result, I don’t know much about Scala.&amp;#160; I just wanted to do something really simple.&amp;#160; So, I noticed on the Scala site that “&lt;a href="http://www.scala-lang.org/node/219"&gt;Code Examples&lt;/a&gt;” was one of the main navigation options.&amp;#160; I looked at the Simple Examples and figured out how to call Java classes.&amp;#160; Looked pretty simple.&lt;/p&gt;  &lt;p&gt;I fired up Scala’s REPL, and defined a function:&lt;/p&gt;  &lt;pre style="border-bottom: #999999 1px dashed; border-left: #999999 1px dashed; padding-bottom: 5px; line-height: 14px; background-color: #eee; padding-left: 5px; width: 100%; padding-right: 5px; font-family: andale mono, lucida console, monaco, fixed, monospace; color: #000000; font-size: 12px; overflow: auto; border-top: #999999 1px dashed; border-right: #999999 1px dashed; padding-top: 5px"&gt;&lt;code&gt;def convertTime(time: Long) {    val cal = java.util.Calendar.getInstance()    cal.setTimeInMillis(time)    println(cal.getTime())}&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;The function is pretty simple.&amp;#160; It just takes a Long time in milliseconds and prints out the corresponding String representation of that time value.&amp;#160; Once this was defined, I could call the function with the values from my database table and figure out what Date value they represented:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="border-bottom: #999999 1px dashed; border-left: #999999 1px dashed; padding-bottom: 5px; line-height: 14px; background-color: #eee; padding-left: 5px; width: 100%; padding-right: 5px; font-family: andale mono, lucida console, monaco, fixed, monospace; color: #000000; font-size: 12px; overflow: auto; border-top: #999999 1px dashed; border-right: #999999 1px dashed; padding-top: 5px"&gt;&lt;code&gt;scala&amp;gt; convertTime(1242942308240L)Thu May 21 16:45:08 CDT 2009&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;The entire sequence of events from start to finish probably took 10 minutes.&amp;#160; Yes – that’s much longer than if I had written a simple Java class.&amp;#160; However, I think it’s VERY impressive to go from 0 to Scala function with results in 10 minutes.&amp;#160; To me, this is a a testament to how approachable Scala is as a language.&amp;#160; Further, I am amazed at what a great job its implementers have done with creating a very “dynamic language” experience on top of the JVM.&amp;#160; &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Now, if I only had more time to play with it…&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="zemanta-pixie"&gt;&lt;a class="zemanta-pixie-a" title="Reblog this post [with Zemanta]" href="http://reblog.zemanta.com/zemified/9118dc7c-78f1-4f64-8896-82c70b269e42/"&gt;&amp;#160;&lt;/a&gt;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-7640634328672525554?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/7640634328672525554/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=7640634328672525554' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/7640634328672525554'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/7640634328672525554'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2009/05/small-taste-of-scala.html' title='Small Taste of Scala'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-5672969981107549603</id><published>2009-01-23T07:45:00.000-08:00</published><updated>2009-01-23T08:34:12.278-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='air boss'/><category scheme='http://www.blogger.com/atom/ns#' term='productivity'/><category scheme='http://www.blogger.com/atom/ns#' term='travel'/><category scheme='http://www.blogger.com/atom/ns#' term='one bag'/><title type='text'>Traveling in One Bag</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.redoxx.com/misc/images/color-tab/airboss-midnight.jpg"&gt;&lt;img style="margin: 0px 10px 10px; float: left; cursor: pointer; width: 78px; height: 77px;" src="http://www.redoxx.com/misc/images/color-tab/airboss-midnight.jpg" alt="" border="0" /&gt;&lt;/a&gt;Over the years I've started realizing some things about myself. One of which is that I'm always going to be looking for the way to do something better. This has, and will, lead me to drink the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Kool&lt;/span&gt; Aid of productivity experts and organizational systems. I admit it - I'm a productivity geek.&lt;br /&gt;&lt;br /&gt;About a year ago I stumbled upon the &lt;a href="http://www.onebag.com/"&gt;One Bag site&lt;/a&gt;.  It obviously struck a cord with me and I hungrily devoured every page on the site.  I decided right then and there that I would buy a suitable bag, lighten my load, and make the jump on my next trip. This would be just the thing I was looking for on business travel.&lt;br /&gt;&lt;br /&gt;The bag I chose was a &lt;a href="http://www.redoxx.com/catalog/airline-carry-on-luggage/p_91018-air-boss.html?utm_source=homepage&amp;amp;utm_medium=flash&amp;amp;utm_content=productscroll_v2&amp;amp;utm_campaign=teasers"&gt;Red &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;Oxx&lt;/span&gt; Air Boss&lt;/a&gt;. This was largely based on the fact that Doug &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;Dyment&lt;/span&gt;, the creator of One Bag, helped design it. However, I was drawn to how well designed and built the bag appeared to me (I also have a thing for bags). Once I received the bag, I realized that I had made an exceptional choice. The Air Boss is simply fantastic. I won't go into it here, because &lt;a href="http://www.onebag.com/business-bags.html"&gt;others&lt;/a&gt; &lt;a href="http://www.redoxx.com/articles/one-bag-one-world-air-boss-5-star-review.html"&gt;have lauded&lt;/a&gt; it &lt;a href="http://www.redoxx.com/articles/PracticalHacks-rates-Air-Boss-Bulletproof-Workhors.html"&gt;at length&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;My first excursion traveling in one bag was a 5 day vacation to Tennessee.  I packed my Air Boss using Doug's &lt;a href="http://www.onebag.com/pack.html"&gt;bundle wrapping technique&lt;/a&gt; for my clothes.  I took a few pairs of jeans which made my bundles big and heavy, but everything fit in the Boss.  I also packed enough shirts, undergarments, toiletries, laptop computer and charger, a book, and a magazine.  I packed a dressy pair of shoes in my wife's bag (she was checking hers), but everything else fit in one bag!  The trip was great - didn't have to worry about lost luggage, didn't have to worry about weight limits, and I didn't have anything stowed under the seat in front of me.  A successful trip and I was happy.  But, could I make it work for business?&lt;br /&gt;&lt;br /&gt;This week I had a 3 day business trip to Chicago.  I only needed to pack 2 days of clothing because I traveled in 1 day and out the 3rd day.  I packed up the Boss with 2 sets of clothes, pajamas (not necessary, but I had a room), undergarments, toiletries, laptop and charger, &lt;a href="http://us.jawbone.com/"&gt;Jawbone&lt;/a&gt;, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;USB&lt;/span&gt; sticks, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;iPod&lt;/span&gt;, Headphones, &lt;a href="http://www.amazon.com/Amazon-com-kindle/dp/B000FI73MA"&gt;Kindle&lt;/a&gt;, small notebook with pen, plastic folder, a magazine, and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;USB&lt;/span&gt; charger cords for &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;iPod&lt;/span&gt;, cell phone, and Jawbone.  I wore my heavy coat with my gloves and ear muffs in my pockets. I packed my laptop in a &lt;a href="http://www.tombihn.com/page/001/PROD/300/TB0300"&gt;Brain Cell&lt;/a&gt; from &lt;a href="http://www.tombihn.com/"&gt;Tom &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;Bihn&lt;/span&gt;&lt;/a&gt;. This makes a great little laptop bag when you get to your destination, and you can use the &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_8"&gt;shoulder&lt;/span&gt; strap from the Air Boss with the Brain Cell.&lt;br /&gt;&lt;br /&gt;Traveling light to Chicago on business in the winter was a breeze.  My Boss easily fit in the overhead on the plane.  I folded my coat and put it under the seat in front of me.  The Kindle was excellent because I took two books, a &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;whitepaper&lt;/span&gt;, and an essay with me on the device drastically cutting down on my load.&lt;br /&gt;&lt;br /&gt;I have now become such a huge fan of traveling in One Bag and my Air Boss, I don't want to go back. Although I'm still not sure I fully understand how people travel internationally this way, I'm building the courage to try it some day.  I'm a convert... and a geek... especially because I took the time to write this post!  ;-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-5672969981107549603?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/5672969981107549603/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=5672969981107549603' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/5672969981107549603'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/5672969981107549603'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2009/01/traveling-in-one-bag.html' title='Traveling in One Bag'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-8587154037655524682</id><published>2009-01-04T13:03:00.001-08:00</published><updated>2009-01-04T13:03:24.409-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='design'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Twisted Documentation: The Pasta Theory of Design</title><content type='html'>&lt;p&gt;&lt;a href="http://lh3.ggpht.com/_VLyljNg61jc/SWEkFxGSd7I/AAAAAAAAAt0/osUd3xld9RM/s1600-h/1405309321_63eddae70d_b%5B4%5D.jpg"&gt;&lt;img title="1405309321_63eddae70d_b" style="border-right: 0px; border-top: 0px; display: inline; margin-left: 0px; border-left: 0px; margin-right: 0px; border-bottom: 0px" height="172" alt="1405309321_63eddae70d_b" src="http://lh4.ggpht.com/_VLyljNg61jc/SWEkGm-kO7I/AAAAAAAAAt4/RT5erGk0rK8/1405309321_63eddae70d_b_thumb%5B2%5D.jpg?imgmax=800" width="131" align="right" border="0" /&gt;&lt;/a&gt; Over the holidays I’ve been learning the Twisted framework and reading through the Twisted Core Documentation.&amp;#160; I came across this gem of an analogy… &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;The pasta theory of design: &lt;/p&gt;    &lt;ul&gt;     &lt;li&gt;Spaghetti: each piece of code interacts with every other piece of code [can be implemented with GOTO, functions, objects] &lt;/li&gt;      &lt;li&gt;Lasagna: code has carefully designed layers. Each layer is, in theory independent. However low-level layers usually cannot be used easily, and high-level layers depend on low-level layers. &lt;/li&gt;      &lt;li&gt;Ravioli: each part of the code is useful by itself. There is a thin layer of interfaces between various parts [the sauce]. Each part can be usefully be used elsewhere. &lt;/li&gt;      &lt;li&gt;...but sometimes, the user just wants to order &amp;quot;Ravioli&amp;quot;, so one coarse-grain easily definable layer of abstraction on top of it all can be useful.&lt;/li&gt;   &lt;/ul&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;a href="http://twistedmatrix.com/projects/core/documentation/howto/tutorial/library.html"&gt;Twisted Documentation: The Evolution of Finger: making a finger library&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;I love it!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-8587154037655524682?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/8587154037655524682/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=8587154037655524682' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/8587154037655524682'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/8587154037655524682'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2009/01/twisted-documentation-pasta-theory-of.html' title='Twisted Documentation: The Pasta Theory of Design'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_VLyljNg61jc/SWEkGm-kO7I/AAAAAAAAAt4/RT5erGk0rK8/s72-c/1405309321_63eddae70d_b_thumb%5B2%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-635872166427689572</id><published>2008-10-31T10:14:00.001-07:00</published><updated>2008-10-31T10:14:02.378-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ecm'/><title type='text'>Alfresco Developer Guide</title><content type='html'>&lt;p&gt;&lt;a href="http://lh5.ggpht.com/_VLyljNg61jc/SQs81zf-buI/AAAAAAAAAgI/jXTbeaVoOp0/s1600-h/image%5B3%5D.png"&gt;&lt;img title="image" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; margin-left: 0px; margin-right: 0px; border-right-width: 0px" height="244" alt="image" src="http://lh4.ggpht.com/_VLyljNg61jc/SQs82fLD_QI/AAAAAAAAAgM/80qhU0zlPc4/image_thumb%5B1%5D.png?imgmax=800" width="199" align="right" border="0" /&gt;&lt;/a&gt;My friend &lt;a href="http://www.ecmarchitect.com"&gt;Jeff Potts&lt;/a&gt;&amp;#160;&lt;a href="http://ecmarchitect.com/archives/2008/10/29/862"&gt;announced today&lt;/a&gt; that his book, “&lt;a href="http://www.packtpub.com/alfresco-developer-guide/book"&gt;Alfresco Developer Guide&lt;/a&gt;”, has been released.&amp;#160;&amp;#160; Jeff’s been working on the book for quite a while, and it looks to be packed with great examples and information about the ins and outs of the Alfresco content management system.&lt;/p&gt;  &lt;p&gt;I’ve ordered my copy.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-635872166427689572?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/635872166427689572/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=635872166427689572' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/635872166427689572'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/635872166427689572'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2008/10/alfresco-developer-guide.html' title='Alfresco Developer Guide'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_VLyljNg61jc/SQs82fLD_QI/AAAAAAAAAgM/80qhU0zlPc4/s72-c/image_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-3031297796995840027</id><published>2008-10-21T10:08:00.001-07:00</published><updated>2008-10-21T10:08:01.094-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='smalltalk'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='squeak'/><title type='text'>The Weekly Squeak: ‘Smalltalk is cool again’, says Gartner</title><content type='html'>&lt;p&gt;Via: &lt;a href="http://news.squeak.org/2008/10/11/smalltalk-is-cool-again-says-gartner/"&gt;The Weekly Squeak: ‘Smalltalk is cool again’, says Gartner&lt;/a&gt;    &lt;br /&gt;    &lt;br /&gt;There is an article from a Gartner analyst talking about &lt;a href="http://blogs.gartner.com/mark_driver/2008/10/09/remember-smalltalk/"&gt;a renewed interest in Smalltalk&lt;/a&gt;.&amp;#160; Speaking for myself, I’ve come around to Smalltalk over the last couple of years and I’m very glad that I did.&amp;#160; It’s one of the coolest languages/platforms I’ve ever laid my hands on.&lt;/p&gt;  &lt;p&gt;In fact, in case you were wondering, I’ve temporarily put Erlang aside to go back and visit Smalltalk land.&amp;#160; It’s just much more productive when you have limited time available.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-3031297796995840027?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/3031297796995840027/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=3031297796995840027' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/3031297796995840027'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/3031297796995840027'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2008/10/weekly-squeak-smalltalk-is-cool-again.html' title='The Weekly Squeak: ‘Smalltalk is cool again’, says Gartner'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-337913712958280726</id><published>2008-07-30T14:27:00.001-07:00</published><updated>2008-07-30T14:27:34.424-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='erlang'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Finished the Erlang Book</title><content type='html'>&lt;p&gt;I finished reading Joe Armstrong’s “&lt;a href="http://www.pragprog.com/titles/jaerlang/programming-erlang"&gt;Programming Erlang&lt;/a&gt;” book a couple of nights ago. It’s a great introduction to Erlang as well as a great programming book. I’ve always loved the Pragmatic Programmer books, and this one is no exception. It’s filled with non-trivial working examples and pointers to more information. It left me feeling ready to dive into the Erlang docs and write some code!&lt;/p&gt;  &lt;p&gt;So, that’s exactly what I’m going to do. I’m currently plotting a program that I’m going to write in Erlang. I want to make sure that it’s non-trivial and that it benefits from concurrency. I’ll loop you in when my scheme is ready to hatch.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-337913712958280726?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/337913712958280726/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=337913712958280726' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/337913712958280726'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/337913712958280726'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2008/07/finished-erlang-book.html' title='Finished the Erlang Book'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-8286276048404142054</id><published>2008-07-30T14:22:00.001-07:00</published><updated>2008-07-30T14:22:30.990-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='erlang'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Erlang Podcast with Joe Armstrong</title><content type='html'>&lt;p&gt;I just listened to &lt;a href="http://www.se-radio.net/podcast/2008-03/episode-89-joe-armstrong-erlang"&gt;a good podcast interview&lt;/a&gt; with Joe Armstrong on Software Engineering Radio. Joe talks about the history of Erlang, its features, how the VM is implemented, and how you can use it to scale on multi-cores or across multiple machines. It’s a good introduction to what Erlang is from the man himself.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-8286276048404142054?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/8286276048404142054/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=8286276048404142054' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/8286276048404142054'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/8286276048404142054'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2008/07/erlang-podcast-with-joe-armstrong.html' title='Erlang Podcast with Joe Armstrong'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-5215141294291978873</id><published>2008-07-26T10:19:00.001-07:00</published><updated>2008-07-26T10:19:26.578-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='erlang'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Erlang Update</title><content type='html'>&lt;p&gt;I’ve been tearing through Joe Armstrong’s book “&lt;a href="http://www.pragprog.com/titles/jaerlang/programming-erlang"&gt;Programming Erlang&lt;/a&gt;”.&amp;#160; I &lt;a href="http://tompierce.blogspot.com/2008/07/erlang-lovin-it.html"&gt;started reading it&lt;/a&gt; about 14 days ago, and I’m already in Chapter 17.&amp;#160; It’s a well written book and a great introduction to the language and some key libraries.&lt;/p&gt;  &lt;p&gt;I think the reason I’m working through it at such a rapid clip is that Erlang has captured my imagination.&amp;#160; I’m fascinated by how easy it is to program multi-process applications and distribute those processes across machines.&amp;#160; I’ve written multi-threaded code in Java, Python, and Common Lisp.&amp;#160; Erlang is &lt;strong&gt;BY FAR&lt;/strong&gt; the easiest language for writing MP code.&lt;/p&gt;  &lt;p&gt;I can’t wait to finish the book and write my own application. I’m forcing myself to finish the book first because I want to make sure I know all the right tricks before I get started. I think that’s the right idea because I’m now learning about Mnesia and soon I will learn about advanced OTP techniques.&lt;/p&gt;  &lt;p&gt;I can’t convey how excited I am by this language/platform. I saw my friend &lt;a href="http://ecmarchitect.com/"&gt;Jeff&lt;/a&gt; last night and I bored him to death as I gushed about Erlang. He mentioned that &lt;a href="http://ecmarchitect.com/archives/2008/07/23/841"&gt;he had recently posted about CouchDB&lt;/a&gt; and that it would be cool to develop something social on top of that. Indeed…&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-5215141294291978873?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/5215141294291978873/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=5215141294291978873' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/5215141294291978873'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/5215141294291978873'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2008/07/erlang-update.html' title='Erlang Update'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-285110491278716353</id><published>2008-07-12T12:30:00.001-07:00</published><updated>2008-07-12T12:30:19.649-07:00</updated><title type='text'>Erlang: Lovin’ It</title><content type='html'>&lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;OK, I couldn’t resist. I pulled the Erlang book off the shelf this week and dove in. I needed a distraction from work, then the whole idea of writing concurrent programs caught my fancy, and I saw the syntax that made me go hmmm…&amp;#160; now I’m hooked.&lt;/p&gt;  &lt;p&gt;First impression of “&lt;a href="http://www.pragprog.com/titles/jaerlang/programming-erlang"&gt;Programming Erlang&lt;/a&gt;” – it’s not for beginning programmers. Which I really like, but I can imagine that if you don’t have programming experience, you’d struggle. Also, it helps alot to know another functional language (like Lisp) when Joe starts talking about list comprehensions and anonymous functions. I would rate the book at the &amp;quot;advanced” level.&lt;/p&gt;  &lt;p&gt;All that said, I’m loving the book and loving learning the language. It’s entertaining and gives me the excuse to use Emacs, which I don’t use often enough these days. :-) I’m using Luke Gorrie’s excellent &lt;a href="http://code.google.com/p/distel/"&gt;Distel&lt;/a&gt; mode for Emacs.&lt;/p&gt;  &lt;p&gt;I’m going to try to refrain from giving you a blow-by-blow of my Erlang experience until I get to concurrent programming. Then, all bets are off.&amp;#160; :-)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-285110491278716353?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/285110491278716353/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=285110491278716353' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/285110491278716353'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/285110491278716353'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2008/07/erlang-lovin-it.html' title='Erlang: Lovin’ It'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-2842257735482613621</id><published>2008-07-06T12:06:00.001-07:00</published><updated>2008-07-06T12:06:46.259-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='erlang'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>Erlang in My Future</title><content type='html'>&lt;p&gt;&lt;a href="http://lh4.ggpht.com/tlpierce/SHEXwyVT4dI/AAAAAAAAAec/yv3ku8kaWag/s1600-h/jaerlang%5B5%5D.jpg"&gt;&lt;img title="jaerlang" style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="234" alt="jaerlang" src="http://lh4.ggpht.com/tlpierce/SHEXxSj5gmI/AAAAAAAAAeg/AWvsdO7ewKY/jaerlang_thumb%5B3%5D.jpg?imgmax=800" width="196" align="right" border="0" /&gt;&lt;/a&gt; I’ve been thinking about trying out &lt;a href="http://www.erlang.org/"&gt;Erlang&lt;/a&gt; for a couple of years. Last night, my wife and I were in the bookstore… alone… with time to look at books. I picked up “&lt;a href="http://www.pragprog.com/titles/jaerlang/programming-erlang"&gt;Programming Erlang&lt;/a&gt;”. Reading through the cover and some of the front matter drew me in. So, after some deliberation, I bought it.&lt;/p&gt;  &lt;p&gt;I read through Chapter 2 last night. Boy, Erlang is unique. However, I think I’m going to enjoy it. &lt;/p&gt;  &lt;p&gt;I’ve put it on the bookshelf for now. I have some other reading and techie stuff to knock out before I really dive in. But, I’m getting excited.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-2842257735482613621?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/2842257735482613621/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=2842257735482613621' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/2842257735482613621'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/2842257735482613621'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2008/07/erlang-in-my-future.html' title='Erlang in My Future'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/tlpierce/SHEXxSj5gmI/AAAAAAAAAeg/AWvsdO7ewKY/s72-c/jaerlang_thumb%5B3%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-8745992345280000330</id><published>2008-07-01T06:35:00.001-07:00</published><updated>2008-07-01T06:35:13.723-07:00</updated><title type='text'>EnterpriseBlend – My Enterprise 2.0 Blog</title><content type='html'>&lt;p&gt;&lt;/p&gt;  &lt;p&gt;One of the things I’ve steadily grown more passionate about over the last 6 months or so is &lt;a href="http://en.wikipedia.org/wiki/Enterprise_social_software"&gt;Enterprise 2.0&lt;/a&gt;.&amp;#160; I characterize it as the move of &lt;a href="http://en.wikipedia.org/wiki/Web_2"&gt;Web 2.0&lt;/a&gt; technologies and ideas into business contexts.&amp;#160; The reason I’m so passionate about it is because I’m witnessing the technologies that I’ve been using in my private life move into the enterprise and make meaningful contributions.&amp;#160; In addition, these technologies and ideas usually challenge the status quo of business and it’s fascinating to watch businesses respond to this.&lt;/p&gt;  &lt;p&gt;If you agree, or your just curious, please join me on &lt;a href="http://www.enterpriseblend.com/"&gt;EnterpriseBlend&lt;/a&gt;.&amp;#160; Hope to see you there!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-8745992345280000330?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/8745992345280000330/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=8745992345280000330' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/8745992345280000330'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/8745992345280000330'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2008/07/enterpriseblend-my-enterprise-20-blog.html' title='EnterpriseBlend – My Enterprise 2.0 Blog'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-863706594667937239</id><published>2008-06-06T09:23:00.000-07:00</published><updated>2008-06-06T09:23:48.408-07:00</updated><title type='text'>Google Earth map of Disney World goes online - CNN.com</title><content type='html'>CNN reports that &lt;a href="http://www.cnn.com/2008/TECH/06/06/disney.map.ap/index.html?eref=rss_tech"&gt;Disney has released a Google Map entry&lt;/a&gt; that details Disney World in Florida.  Sweet!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-863706594667937239?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.cnn.com/2008/TECH/06/06/disney.map.ap/index.html?eref=rss_tech' title='Google Earth map of Disney World goes online - CNN.com'/><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/863706594667937239/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=863706594667937239' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/863706594667937239'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/863706594667937239'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2008/06/google-earth-map-of-disney-world-goes.html' title='Google Earth map of Disney World goes online - CNN.com'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-5082596955734632496</id><published>2008-05-28T06:15:00.000-07:00</published><updated>2008-05-28T06:15:39.062-07:00</updated><title type='text'>Web 2.0 companies failing to produce cash</title><content type='html'>Financial Times has an article called &lt;a href="http://www.ft.com/cms/s/0/6c968990-2b4c-11dd-a7fc-000077b07658.html?nclick_check=1"&gt;Web 2.0 fails to produce cash&lt;/a&gt;.  The article talks about how Web 2.0 companies have not produced &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;alot&lt;/span&gt; of revenue despite changing the way that people interact on the Internet and introducing new capabilities.&lt;br /&gt;&lt;br /&gt;I think it would be interesting if Web 2.0 had more commercial as Enterprise 2.0 than in the Internet at large.  I think to the Internet community, it becomes just the normal course of interaction.  However, within enterprises it seems to have the potential to dramatically change how we design and implement information systems. &lt;br /&gt;&lt;br /&gt;Plus, I'd just like to be able to use these technologies on the job.  :-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-5082596955734632496?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.ft.com/cms/s/0/6c968990-2b4c-11dd-a7fc-000077b07658.html?nclick_check=1' title='Web 2.0 companies failing to produce cash'/><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/5082596955734632496/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=5082596955734632496' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/5082596955734632496'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/5082596955734632496'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2008/05/web-20-companies-failing-to-produce.html' title='Web 2.0 companies failing to produce cash'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-9086117979353294793</id><published>2008-05-26T18:23:00.000-07:00</published><updated>2008-05-26T18:29:06.469-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vista'/><title type='text'>Vista Backup Leaves Me High and Dry</title><content type='html'>OK, guess what - when Vista Backup says it does not backup any program files, it turns out that means ASP and ASPX files as well.  I wish I had seen &lt;a href="http://tinyurl.com/6e925k"&gt;the comments on this post first&lt;/a&gt;.  But I didn't.  So, now it looks like I've lost some ASPX files for a charity project I was working on in my latest round of laptop shenanigans.  GRRRRRRR!!!!&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Unlike the guy in the comments, it seems to have saved my CS files.  In fact, it saved the code behind files for the ASPX files, but not the ASPX files themselves.  GRRRRRR!!!!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I'm pretty hacked right now.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-9086117979353294793?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/9086117979353294793/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=9086117979353294793' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/9086117979353294793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/9086117979353294793'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2008/05/vista-backup-leaves-me-high-and-dry.html' title='Vista Backup Leaves Me High and Dry'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-1173109278438708805</id><published>2008-05-23T07:47:00.000-07:00</published><updated>2008-05-23T07:47:27.995-07:00</updated><title type='text'>Emacs Quit under Cygwin</title><content type='html'>I've never used Emacs under &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Cygwin&lt;/span&gt;.  I've always installed the Windows version.  However, today I'm in a hurry, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;EmacsW&lt;/span&gt;32 site is down, and I decided to use &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;Cygwin&lt;/span&gt;.  Unfortunately, some of the keys like C-x C-c (quit) are wonky.  But &lt;a href="http://groups.google.com/group/gnu.emacs.help/browse_frm/thread/a180845843d43295?hl=en&amp;amp;lr=&amp;amp;ie=UTF-8&amp;amp;oe=UTF-8&amp;amp;rnum=5&amp;amp;prev=/groups%3Fas_q%3D%27C-x%2520C-g%27%26safe%3Dimages%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*emacs*%26lr%3D%26as_scoring%3Dd%26hl%3Den"&gt;Newbie, Emacs won't quit - gnu.emacs.help | Google Groups&lt;/a&gt; describes a simple modification to the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;Cygwin&lt;/span&gt; bash shell batch script that makes everything good to go.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-1173109278438708805?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://groups.google.com/group/gnu.emacs.help/browse_frm/thread/a180845843d43295?hl=en&amp;lr=&amp;ie=UTF-8&amp;oe=UTF-8&amp;rnum=5&amp;prev=/groups%3Fas_q%3D%27C-x%2520C-g%27%26safe%3Dimages%26ie%3DUTF-8%26oe%3DUTF-8%26as_ugroup%3D*emacs*%26lr%3D%26as_scoring%3Dd%26hl%3Den' title='Emacs Quit under Cygwin'/><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/1173109278438708805/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=1173109278438708805' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/1173109278438708805'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/1173109278438708805'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2008/05/emacs-quit-under-cygwin.html' title='Emacs Quit under Cygwin'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-2025071998162533291</id><published>2008-05-21T09:48:00.001-07:00</published><updated>2008-05-21T09:57:29.798-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ha hpc grid cluster'/><title type='text'>Application vs. OS Clustering</title><content type='html'>I recently had the opportunity to discuss computer clustering with a colleague of mine. I decided to post my take on things in case it might be helpful to others.&lt;br /&gt;&lt;br /&gt;Computer clustering is a deep subject. There are many facets to how to cluster computers and/or applications together. &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Wikipedia&lt;/span&gt; has a nice &lt;a href="http://en.wikipedia.org/wiki/Computer_cluster"&gt;article on clustering&lt;/a&gt;. I’m no expert, but I’m going to describe my simplistic view of hardware/OS level clustering vs. application clustering and how they fit together.&lt;br /&gt;&lt;br /&gt;The ultimate computer cluster would be a group of computers working together to seamlessly provide services and appear as one computer. This cluster would make its services available to applications transparently. This means that an application written to run on a single computer, would see no difference in running on the cluster. In addition, it would get all the benefits of being on the cluster without impacting its operation at all – scalability, high availability, memory management, etc. To my knowledge, this type of cluster does not exist.&lt;br /&gt;&lt;br /&gt;Hardware and OS level clustering allows multiple computers to work together for a purpose, but the computers generally don’t appear to applications as 1 big computer. When the OS makes this possible, special programming is usually required to make an application take advantage of the clustered OS services. Most of the time, OS clusters are geared toward providing high-availability (HA) for fault tolerance rather than seamless scalability of applications running on the cluster (&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;HPC&lt;/span&gt; – high performance computing). Windows 2003 server clustering and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;SQL&lt;/span&gt; Server clusters are examples of clusters that are geared toward HA rather than &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;HPC&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Grid computing has ushered in a new set of technologies and patterns for trying to achieve the ultimate computing cluster. Grid computing does a good job of providing HA and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;HPC&lt;/span&gt; for applications running on the grid. The standards specify a pretty flexible environment with scheduling and accounting facilities that make management of applications much easier. Grid computing tries to make computing resources a commodity that can just be doled out as needed to run applications. However, for applications to take full advantage of grid computing, they still must incorporate special programming. This may change in the future as advances in grid frameworks and operating systems emerge. Examples of grid computing is the &lt;a href="http://www.amazon.com/EC2-AWS-Service-Pricing/b/ref=sc_fe_l_2?ie=UTF8&amp;amp;node=201590011&amp;amp;no=3435361&amp;amp;me=A36L942TSJ2AJA"&gt;Amazon EC2 &lt;/a&gt;for computing&lt;a href="http://www.amazon.com/EC2-AWS-Service-Pricing/b/ref=sc_fe_l_2?ie=UTF8&amp;amp;node=201590011&amp;amp;no=3435361&amp;amp;me=A36L942TSJ2AJA"&gt;&lt;/a&gt; and &lt;a href="http://www.amazon.com/gp/browse.html?node=16427261"&gt;Amazon S3 storage grid&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Application level clustering is when an application is designed so that its components can be distributed across multiple machines and the application can identify and manage those components to cluster itself. This usually involves distributing components with specific capabilities to nodes in a server farm and having some controller components that identify the worker components, monitor their availability, and delegate incoming requests. (These are sometimes called dispatchers.) Applications that cluster themselves don’t need an underlying hardware/OS clustering solution since they take care of their own clustering services. Further, there’s no need to have computers in the cluster be homogeneous since the cluster is not dependent upon synchronization at the machine or OS level. Application clusters can provide HA as well as &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;HPC&lt;/span&gt;. Examples of application clusters are &lt;a href="http://www.oracle.com/technology/products/database/clustering/index.html"&gt;Oracle &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;RAC&lt;/span&gt;&lt;/a&gt; and &lt;a href="http://www.fastsearch.com/"&gt;FAST ESP&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Again, this is Tom’s view of clustering and probably contains errors and omissions. My simple mind summarizes and simplifies things it takes in. So, you should do your own research if you seek the ultimate in accuracy and reliability of this information! :-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-2025071998162533291?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/2025071998162533291/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=2025071998162533291' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/2025071998162533291'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/2025071998162533291'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2008/05/application-vs-os-clustering.html' title='Application vs. OS Clustering'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-6425802576464446519</id><published>2008-05-20T09:11:00.000-07:00</published><updated>2008-05-20T09:17:32.944-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='blogging'/><category scheme='http://www.blogger.com/atom/ns#' term='twitter'/><title type='text'>Tweets Available</title><content type='html'>I resisted using &lt;a href="http://www.twitter.com/"&gt;Twitter &lt;/a&gt;for years.  However, I've lately decided that I need to understand it.  So, I created a &lt;a href="http://twitter.com/tlpierce"&gt;Twitter account&lt;/a&gt; and started playing.  Like many others, I'm becoming addicted.&lt;br /&gt;&lt;br /&gt;I've made my tweets (Twitter speak for messages) available on this blog.  If you visit the web site, you'll see them in the far right column.&lt;br /&gt;&lt;br /&gt;I stopped short of using &lt;a href="http://www.loudtwitter.com/"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;LoutTwitter&lt;/span&gt;&lt;/a&gt; to create a daily tweet summary post in this blog.  It looks &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;very cool&lt;/span&gt;, but I'm not sure all of my HUGE (&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;haha&lt;/span&gt;) cares about my micro-blogging.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-6425802576464446519?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/6425802576464446519/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=6425802576464446519' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/6425802576464446519'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/6425802576464446519'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2008/05/tweets-available.html' title='Tweets Available'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-8134972884460698920</id><published>2008-05-14T04:51:00.000-07:00</published><updated>2008-05-20T09:22:44.574-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='productivity'/><category scheme='http://www.blogger.com/atom/ns#' term='vista'/><title type='text'>PortableApps Saves My Bacon</title><content type='html'>&lt;div&gt;I have been a fan of &lt;a href="http://portableapps.com/"&gt;PortableApps&lt;/a&gt; for a couple of years.  It's a really neat concept - package useful applictions in a small, self-contained format so that they can easily be run from a USB stick or drive.  This way, you can take your apps with you as you move from computer to computer.  Over the last week however, I've been using PortableApps in a different manner.  &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;br /&gt;&lt;div&gt;Lately I've been having numerous computer problems.  I've been resisting reloading the operating system because I just did that a month ago.  But the operating system didn't care - it just continued to degrade.  First it was its distaste for USB hard drives, then came my mouse, finally (its pièce de résistance) it would just stop responding soon after I logged in.  This rendered me completely unproductive at the client site.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;br /&gt;&lt;div&gt;Fortunately I was able to boot to Windows PE (pre-installation environment with very little features and services - like safe mode only safer and more padded - like an asylum).  I jammed my PortableApps USB stick in a USB slot.  The menu did not work, however you can navigate to the exe's in a command line and launch them.  This allowed me to use Firefox, 7-Zip, and OpenOffice to maintain&lt;span style="font-style: italic;"&gt; &lt;/span&gt;some productivity while I worked to fix my system.  Brilliant!&lt;br /&gt;&lt;br /&gt;In short, as part of your personal disaster recovery strategy I recommend that you create a PortableApps device.  It can help you keep working on some level until you can get your system restored to working order.&lt;br /&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-8134972884460698920?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/8134972884460698920/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=8134972884460698920' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/8134972884460698920'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/8134972884460698920'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2008/05/portableapps-saves-my-bacon.html' title='PortableApps Saves My Bacon'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-8496673447557717948</id><published>2008-04-24T11:52:00.000-07:00</published><updated>2008-04-24T12:28:44.473-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='outlook'/><title type='text'>Outlook 2007 Slow To Open Messages With Attachments</title><content type='html'>I recently had to reload my Vista machine and this weekend I installed SP1 for Office 2007. This week I've noticed that Outlook 2007 was very slow to open messages that had attachments. After much digging on the Internet, I finally saw a comment from someone that mentioned turning off Attachment Preview to speed up Outlook. So, I went to&lt;br /&gt;&lt;br /&gt;Tools -&gt; Trust Center -&gt; Attachment Handling&lt;br /&gt;&lt;br /&gt;and turned off attachment preview. This solved my problem!&lt;br /&gt;&lt;br /&gt;Thank you Lazy Web!&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Updated 04/24/2008 2:26PM:&lt;/strong&gt; WRONG!!!  Turns out the problem was Symantec Antivirus.  Don't know how to fix it, so for now I've disabled the email scanning.  :-(  Not happy.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-8496673447557717948?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/8496673447557717948/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=8496673447557717948' title='15 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/8496673447557717948'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/8496673447557717948'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2008/04/outlook-2007-slow-to-open-messages-with.html' title='Outlook 2007 Slow To Open Messages With Attachments'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>15</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-6655266762243885452</id><published>2008-04-03T13:35:00.001-07:00</published><updated>2008-04-03T13:38:41.554-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='python programming django'/><title type='text'>Django on Windows</title><content type='html'>I've been considering options for playing around with mashups.  There's alot of options.  However, since I'm back in the Python mindset (see earlier post), I'm going with Django.  Further, to make this quick to hack on, I'm going for Django on Windows.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://effbot.org/zone/django.htm"&gt;This article &lt;/a&gt;talks about "Installing Django on Windows in less than 5 minutes".  It's great, and I love it.  Thank you!!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-6655266762243885452?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/6655266762243885452/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=6655266762243885452' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/6655266762243885452'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/6655266762243885452'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2008/04/django-on-windows.html' title='Django on Windows'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-5741294370936285312</id><published>2008-04-03T07:15:00.001-07:00</published><updated>2008-04-03T07:22:52.696-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming collective_intelligence python web2.0 enterprise2.0'/><title type='text'>Programming Collective Intelligence</title><content type='html'>I've started reading &lt;a href="http://www.amazon.com/Programming-Collective-Intelligence-Building-Applications/dp/0596529325"&gt;Programming Collective Intelligence&lt;/a&gt;, and I'm really enjoying it.  It's a really well written book that gives you a good introduction to the emerging field of &lt;a href="http://en.wikipedia.org/wiki/Collective_intelligence"&gt;Collective Intelligence&lt;/a&gt;.  &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Segaran&lt;/span&gt; does a great job of taking the theory and mathematics and applying them in practical ways to real world problems.&lt;br /&gt;&lt;br /&gt;The examples in the book are written in Python.  I'd love to have the time to play with rebuilding them in Smalltalk or Common Lisp.  However, I barely have time to even read the book.  So, it's back to Python for me for a while.  (Just between you and me, it's making me giddy to get back to Python, Emacs, and the down and dirty hacking that I used to love.)&lt;br /&gt;&lt;br /&gt;So, if you're interested in Web 2.0, the modern application of Artificial Intelligence techniques, or doing really cool things with Python then you should grab a copy of this book.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-5741294370936285312?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/5741294370936285312/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=5741294370936285312' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/5741294370936285312'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/5741294370936285312'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2008/04/programming-collective-intelligence.html' title='Programming Collective Intelligence'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-3158802200740753315</id><published>2007-12-28T14:02:00.000-08:00</published><updated>2007-12-28T14:15:54.272-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='smalltalk'/><category scheme='http://www.blogger.com/atom/ns#' term='xml'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='opml'/><category scheme='http://www.blogger.com/atom/ns#' term='squeak'/><title type='text'>OPML Parser on SqueakSource</title><content type='html'>Today is a big day for me.  I finished off the first version of my &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;OPML&lt;/span&gt; parser that I've been writing in Squeak.  Not only that, I've published it to &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;SqueakSource&lt;/span&gt; under the MIT license!  The &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;SqueakSource&lt;/span&gt; project is titled "&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;OPML&lt;/span&gt; Parser" and the home page is &lt;a href="http://www.squeaksource.com/OPMLParser.html"&gt;here&lt;/a&gt;.  If you would like to keep up to date on the project, the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;RSS&lt;/span&gt; feed is &lt;a href="http://www.squeaksource.com/OPMLParser/feed.rss"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Thank you to Claudio &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;Acciaresi&lt;/span&gt; for your link to the Squeak Map page on using Monticello, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;SqueakSource&lt;/span&gt;, and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;SqueakMap&lt;/span&gt;.  A little digging and link-following and I was in business in minutes.&lt;br /&gt;&lt;br /&gt;If you find the parser useful, please let me know.  If you look at the code and find odd Smalltalk syntax, violated conventions, or general improvements, please let me know.  If you want to become a developer and help enhance the code base, please let me know!&lt;br /&gt;&lt;br /&gt;Squeak rocks!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-3158802200740753315?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/3158802200740753315/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=3158802200740753315' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/3158802200740753315'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/3158802200740753315'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2007/12/opml-parser-on-squeaksource.html' title='OPML Parser on SqueakSource'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-3164459265793989046</id><published>2007-12-11T19:15:00.000-08:00</published><updated>2007-12-11T19:17:41.795-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='blogging'/><title type='text'>Labels on my blog</title><content type='html'>I've recently started using &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_0"&gt;labels&lt;/span&gt; on my blog posts.  Hopefully this will give people the ability to filter what they are interested in.  I've changed the layout of my blog to include a list of labels on the side bar.  Thanks for making that easy, Blogger.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-3164459265793989046?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/3164459265793989046/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=3164459265793989046' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/3164459265793989046'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/3164459265793989046'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2007/12/labels-on-my-blog.html' title='Labels on my blog'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-6024322036515309974</id><published>2007-11-30T10:12:00.000-08:00</published><updated>2007-11-30T10:12:08.434-08:00</updated><title type='text'>Whisker browser with SVI</title><content type='html'>Ng Pheng Siong has a post on how to make the Smalltalk Whisker browser use SVI instead of the built in editor &lt;a href="http://sandbox.rulemaker.net/ngps/207"&gt;here&lt;/a&gt;.  Loving this.  Loving Smalltalk.  I gotta' lotta' love, man.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-6024322036515309974?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://sandbox.rulemaker.net/ngps/207' title='Whisker browser with SVI'/><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/6024322036515309974/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=6024322036515309974' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/6024322036515309974'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/6024322036515309974'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2007/11/whisker-browser-with-svi.html' title='Whisker browser with SVI'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-7172374576429031730</id><published>2007-11-27T09:14:00.000-08:00</published><updated>2007-11-27T09:27:28.590-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='smalltalk'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='opml'/><category scheme='http://www.blogger.com/atom/ns#' term='squeak'/><title type='text'>Smalltalk OPML Parser Progress</title><content type='html'>I was fortunately able to take over a week off for Thanksgiving.  The break from work was just what I needed to &lt;span style="font-style: italic;"&gt;clear my head&lt;/span&gt;.  It also gave me an opportunity to do some more Squeak hacking.&lt;br /&gt;&lt;br /&gt;I worked on the OPML parser I'm writing.  I was able to use &lt;a href="http://www.chronos-st.org/"&gt;Chronos&lt;/a&gt; to parse the RFC 822 time format dictated in the &lt;a href="http://www.opml.org/spec2"&gt;OPML specification&lt;/a&gt;.  I used Chronos to parse the RFC822 time into a DateTime and stored that in my OPMLHead class.  Beautiful.  Easy.  Love it.&lt;br /&gt;&lt;br /&gt;What's left?  Not much.  I need to add more tests.  I've got two OPML sources that I'm testing against.  I'm using an OPML example I found on the web and the OPML that lists my Google Reader subscriptions.  I'm going to try to find some other OMPL test data and get a few more documents to test. &lt;br /&gt;&lt;br /&gt;I've decided not to do any custom exception handling.  This seems appropriate since the parser will be consumed as a component in other custom applications.  So, I'm not going to wrap exceptions from Chronos in some kind of OPMLParser exception.&lt;br /&gt;&lt;br /&gt;I'm planning to release the OPML parser as OSS and put it in &lt;a href="http://www.squeaksource.com"&gt;SqueakSource&lt;/a&gt;.  I'm not entirely sure how to do that or if I'm even doing my work "correctly", but we'll figure it out.  You and me.  Together.  Love ya', Mr. Internet.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-7172374576429031730?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/7172374576429031730/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=7172374576429031730' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/7172374576429031730'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/7172374576429031730'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2007/11/smalltalk-opml-parser-progress.html' title='Smalltalk OPML Parser Progress'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-5233059183129456271</id><published>2007-11-11T12:27:00.000-08:00</published><updated>2007-11-11T12:27:05.778-08:00</updated><title type='text'>Superbug blows up your defenses</title><content type='html'>It's news like &lt;a href="http://www.cnn.com/2007/HEALTH/11/11/staph.discovery.ap/index.html"&gt;this&lt;/a&gt; about these "superbug" type microbes that put me in a philosophical tail spin.  It goes something like this - if superbug's are caused by microbes that have acquired an immunity to antibiotics (or antivirals), then should we be using the drugs?  Do/did we know what we are doing by using them or are we just taking stabs in the dark to try and treat causes we don't understand?  If so, then what else are we doing that we don't understand the long term effect of?  We have plenty of hindsight about stupid things we (as humans) have done in the past.  What will be the hindsight in 50 years about what we're doing now?&lt;br /&gt;&lt;br /&gt;It's about this point where I start thinking about my happy place and fight the urge to put my thumb in my mouth.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-5233059183129456271?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.cnn.com/2007/HEALTH/11/11/staph.discovery.ap/index.html' title='Superbug blows up your defenses'/><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/5233059183129456271/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=5233059183129456271' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/5233059183129456271'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/5233059183129456271'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2007/11/superbug-blows-up-your-defenses.html' title='Superbug blows up your defenses'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-8943624537756426023</id><published>2007-11-10T15:09:00.000-08:00</published><updated>2007-11-10T15:09:03.170-08:00</updated><title type='text'>Innovative Ham Soda</title><content type='html'>My friend Thanh was complaining that there have been no innovations in candy for decades. He contends it's a pretty boring food group. He also says that the Asian companies lead the pack in candy innovation. &lt;br /&gt;&lt;br /&gt;Well, Thanh, check out the &lt;a href="http://www.cnn.com/2007/US/11/10/holiday.soda.ap/index.html"&gt;ham soda&lt;/a&gt; story on CNN...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-8943624537756426023?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.cnn.com/2007/US/11/10/holiday.soda.ap/index.html' title='Innovative Ham Soda'/><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/8943624537756426023/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=8943624537756426023' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/8943624537756426023'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/8943624537756426023'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2007/11/innovative-ham-soda.html' title='Innovative Ham Soda'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-758278108127415134</id><published>2007-11-02T07:43:00.001-07:00</published><updated>2007-11-02T07:46:05.529-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vista'/><title type='text'>Finally found a useful Vista widget</title><content type='html'>&lt;div class="Section1"&gt;&lt;p class="MsoNormal"&gt;In my current role I have to interact with people around the world on a daily basis. I’m usually wondering what time it is in their particular area of the world. I was using a nifty world clock widget for the Yahoo widget engine. I’ve recently received a new laptop running Vista, and I’m trying to stay pure and avoid installing applications that I don’t absolutely need. So, I decided I would use Vista sidebar for my widgets. Today I found a &lt;a href="http://www.worldtimeserver.com/clocks/vista24hr.aspx"&gt;great world time widget&lt;/a&gt; from &lt;a href="http://www.worldtimeserver.com/index.aspx"&gt;WORLDTIMESERVER.COM&lt;/a&gt;. There’s also a &lt;a href="http://www.worldtimeserver.com/clocks/vista12hr.aspx"&gt;12-hour version of the widget&lt;/a&gt;, if you can’t handle the 24 hour dial.&lt;?xml:namespace prefix = o /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;table cellspacing="0" cellpadding="0" border="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td align="middle"&gt;&lt;embed src="http://www.worldtimeserver.com/clocks/wtsclock024.swf?color=" width="200" height="200" type="application/x-shockwave-flash" wtsid="US-TX" wmode="transparent"&gt;&lt;/embed&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td align="middle"&gt;&lt;h2&gt;Dallas&lt;/h2&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-758278108127415134?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/758278108127415134/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=758278108127415134' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/758278108127415134'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/758278108127415134'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2007/11/finally-found-useful-vista-widget.html' title='Finally found a useful Vista widget'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-4264692348045874782</id><published>2007-10-30T10:56:00.000-07:00</published><updated>2007-10-30T11:06:33.208-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='smalltalk'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='squeak'/><title type='text'>Chronos Date/Time Library - the answer for my RFC822 needs?</title><content type='html'>I just found the &lt;a href="http://www.chronos-st.org/"&gt;Chronos Date/Time Library&lt;/a&gt; for Smalltalk.  According to the site:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Chronos is a reusable code library, written in &lt;a href="http://en.wikipedia.org/wiki/Smalltalk" target="_top"&gt;Smalltalk&lt;/a&gt;, for the&lt;br /&gt;creation of and computations with date and time values. It provides classes to&lt;br /&gt;represent and perform computations with point-in-time values, temporal extents&lt;br /&gt;(durations of time) and temporal intervals (specific periods of time, such as&lt;br /&gt;the quarter from 15 July 2005 through 14 October 2005.) Chronos implements the &lt;a href="http://www.smalltalk.org/versions/ANSIStandardSmalltalk.html" target="_top"&gt;ANSI-Smalltalk Standard&lt;/a&gt; DateAndTime, DateAndTimeFactory,&lt;br /&gt;Duration and DurationFactory protocols. &lt;/blockquote&gt;&lt;br /&gt;and&lt;br /&gt;&lt;blockquote&gt;Provides very flexible parsing of dates, times and date-and-time values from&lt;br /&gt;character data--including full support for ISO 8601, RFC 2822, time zone names,&lt;br /&gt;time zone abbreviations and time zone offsets.&lt;/blockquote&gt;&lt;br /&gt;Nice!  I will be giving this a try as time permits.  There is a Squeak port!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-4264692348045874782?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/4264692348045874782/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=4264692348045874782' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/4264692348045874782'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/4264692348045874782'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2007/10/chronos-datetime-library-answer-for-my.html' title='Chronos Date/Time Library - the answer for my RFC822 needs?'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-6178729932161650555</id><published>2007-10-29T14:09:00.001-07:00</published><updated>2007-10-29T14:28:08.357-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='lisp'/><category scheme='http://www.blogger.com/atom/ns#' term='smalltalk'/><category scheme='http://www.blogger.com/atom/ns#' term='xml'/><category scheme='http://www.blogger.com/atom/ns#' term='opml'/><category scheme='http://www.blogger.com/atom/ns#' term='squeak'/><title type='text'>Parsing OPML in Squeak</title><content type='html'>I started writing an OPML parser in Smalltalk using &lt;a href="http://www.squeak.org/"&gt;Squeak&lt;/a&gt; and &lt;a href="http://map.squeak.org/package/c6e0d836-d1e6-41ac-b1c2-0505bdd46663"&gt;YAXO&lt;/a&gt; this weekend.  At the risk of sounding like a Squeak/Smalltalk fanboy, I was once again left with a warm afterglow.  I had a blast and I was able to write most of it in a couple of hours.  The only part that I have unfinished is taking an RFC822 date and parsing it into an internal date.   (Anyone have Smalltalk code?  Anyone?)&lt;br /&gt;&lt;br /&gt;I decided to write an OPML parser because I:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Wanted to play more with Smalltalk.&lt;/li&gt;&lt;li&gt;Wanted to play with parsing XML in Smalltalk.&lt;/li&gt;&lt;li&gt;Had written an OPML parser in Common Lisp and wanted to compare.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;So, I hate to say it, but I like my Smalltalk version better than my Common Lisp version.  When I compare the code between the two, the Smalltalk version is much easier to follow.  I think the key difference is that in Smalltalk I focused on the data structures (objects) and not on the algorithms (parsing and populating).  Even though I used an XML parser in both languages (&lt;a href="http://common-lisp.net/project/xmls/"&gt;XMLS&lt;/a&gt; for Lisp), in Lisp there's alot of code around populating my object model.  Not sure why the difference.  Maybe the slot accessor syntax vs. method syntax?  &lt;/p&gt;&lt;p&gt;Does this mean I love Smalltalk more than Lisp.  No.  But, I think it means I'm starting to love them both.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-6178729932161650555?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/6178729932161650555/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=6178729932161650555' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/6178729932161650555'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/6178729932161650555'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2007/10/parsing-opml-in-squeak.html' title='Parsing OPML in Squeak'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-7648947413774159484</id><published>2007-10-25T11:25:00.001-07:00</published><updated>2007-12-11T19:19:42.156-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='vmware'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Ubuntu Upgrade is like Butter</title><content type='html'>&lt;div class="Section1"&gt;&lt;p class="MsoNormal"&gt;I just upgraded a &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;VMWare&lt;/span&gt; image from &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;Fiesty&lt;/span&gt; Fawn to Gusty Gibbon (7.04 -&amp;gt; 7.10). I used the &lt;a href="http://www.ubuntu.com/getubuntu/upgrading"&gt;prescribed upgrade method&lt;/a&gt;. Everything went smoothly. The only hitch was that my scroll wheel on my mouse &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;wasn&lt;/span&gt;’t working. Thanks to &lt;a href="http://communities.vmware.com/thread/109124?tstart=0"&gt;this thread&lt;/a&gt; on the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;VMWare&lt;/span&gt; forum, I was able to get it working. Like the others, I suspect that the problems are due to &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;VMWare&lt;/span&gt; and will be addressed in a future &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;VMWare&lt;/span&gt; tools update.&lt;?xml:namespace prefix = o /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;The Canonical guys are making running a Debian based Linux too easy. I’m going to have to give up my Captain Kernel Patch secret decoder ring. &lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;strong&gt;Update 11/11/2007: &lt;/strong&gt;I changed the labels on this post because I didn't follow the rules and put commas in between the labels.  This makes it look like one big label and me look like one big idiot.&lt;/o:p&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-7648947413774159484?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/7648947413774159484/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=7648947413774159484' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/7648947413774159484'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/7648947413774159484'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2007/10/ubuntu-upgrade-is-like-butter.html' title='Ubuntu Upgrade is like Butter'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-6534274148498179576</id><published>2007-10-24T11:48:00.000-07:00</published><updated>2007-10-24T11:48:35.623-07:00</updated><title type='text'>The social networking time suck</title><content type='html'>&lt;a href="http://radar.oreilly.com/archives/2007/10/maxed_out_on_so_1.html"&gt;Maxed out on social software&lt;/a&gt; is a great post from Nat Torkington about the benefits of social networking software and the amount of time it takes to maintain your personal connections. There are some great comments on the post as well.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-6534274148498179576?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/6534274148498179576/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=6534274148498179576' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/6534274148498179576'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/6534274148498179576'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2007/10/social-networking-time-suck.html' title='The social networking time suck'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-5350063610890797706</id><published>2007-10-24T11:17:00.001-07:00</published><updated>2007-10-24T11:19:38.724-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='email'/><category scheme='http://www.blogger.com/atom/ns#' term='collaboration'/><category scheme='http://www.blogger.com/atom/ns#' term='ecm'/><title type='text'>Email is Organic</title><content type='html'>&lt;div class="Section1"&gt;&lt;p class="MsoNormal"&gt;One of the things that I’m not sure everyone appreciates is that email is a de facto part of modern collaboration.  I’m sure for many people, this goes without saying.  However, there is a vocal minority who find email to be a distraction, a poor substitute for vocal communication, a poor form of written communication, or a poor substitute for a discussion board in a content management system somewhere.  Sure, it’s all of that.  But, it’s more than that too.  It’s an organic form of collaboration.&lt;?xml:namespace prefix = o /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;If you think about email in terms of starting discussion threads, you soon realize that most of your attempts to start a discussion are failures or minimally successful.  You could judge this by the number of back and forth responses in any particular thread.  Most email pings one or more people, gets a response, and dies.  The communication value is high, but the collaboration value is low.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;However, once in a while you hit a jackpot.  A back and forth flurry of emails from a wide variety of participants with input from various perspectives.  In these instances, the communication value is secondary to the collaboration value.  Moreover, you’ve experienced an organic form of collaboration where you didn’t have to establish a topic in a discussion board, wait for responses, perhaps deal with a moderator, etc.  Email has provided you with a rapid, organic collaboration experience.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;Additionally, email allows you to collaborate on different levels.  There are times when your collaboration is through the substance of the text you are sending one another.  There are other times when the collaboration is through versions of files being sent back and forth.  There are even times when email becomes a substitute for RSS or alerts to let the collaboration participants know you’ve updated a web site or another collaboration medium.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;Finally, email is good at keeping history.  Each message is a snapshot in time.  For example, when I need to go back to a more successful version of the cabbage soup recipe I’m sharing with my friends, I can easily look up the version I sent last Thursday.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;So, don’t hate your email.  Let’s embrace it for the rapid, organic collaboration medium that it is.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-5350063610890797706?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/5350063610890797706/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=5350063610890797706' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/5350063610890797706'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/5350063610890797706'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2007/10/email-is-organic.html' title='Email is Organic'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-5835353538812164382</id><published>2007-10-24T08:20:00.000-07:00</published><updated>2007-10-24T08:21:48.494-07:00</updated><title type='text'>Back to blogging</title><content type='html'>&lt;div class="Section1"&gt;&lt;p class="MsoNormal"&gt;I’ve decided to try to take up blogging more frequently again.   I’ve got some reasons – the primary one being that I need to get back in the habit of writing.  It’s painful now when I sit down to write anything other than an email.  So, I’m hoping that I can at least get back into the swing of writing something more formal than an email but less formal than a document.  We’ll see.&lt;/p&gt;&lt;p class="MsoNormal"&gt;What have I been up to?  As a previous post mentioned, Carey and I had another child who’s now a year and a half old.  We built and moved into a wonderful new house.  I received a new assignment at work that has challenged me like none of my previous experience.  So, it’s been a busy couple of years.&lt;/p&gt;&lt;p class="MsoNormal"&gt;On a technical front – I’ve joined the Enterprise Content Management practice at Hitachi Consulting (not a new job, just a new practice for me), I’ve been learning Smalltalk and lovin’ it, I’ve built a Rails application for a friend, and I’ve started learning ASP.NET/C# as part of a charitable project.  Again, busy couple of years.&lt;/p&gt;&lt;p class="MsoNormal"&gt;So, I’m back and I’m pledging to post more frequently.  I also hope to achieve new levels of relevance through a series of pithy observations… well…  maybe I’ll just post more frequently.  &lt;span style="font-family:Wingdings;"&gt;J&lt;/span&gt;&lt;?xml:namespace prefix = o /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-5835353538812164382?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/5835353538812164382/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=5835353538812164382' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/5835353538812164382'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/5835353538812164382'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2007/10/back-to-blogging.html' title='Back to blogging'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-7975306138778498065</id><published>2007-10-03T08:32:00.000-07:00</published><updated>2007-10-03T08:32:48.594-07:00</updated><title type='text'>Netbeans as a Rails IDE</title><content type='html'>&lt;a href="http://jai89.blogspot.com/"&gt;Jon&lt;/a&gt; mentioned to me the other day that Netbeans 6 is including Rails support.  I put it on my list of things to check out.  I just did a quick Google and found a &lt;a href="http://lifeonrails.org/2007/8/30/netbeans-the-best-ruby-on-rails-ide"&gt;great blog post &lt;/a&gt;with lots of purdy pitchures at the &lt;a href="http://lifeonrails.org/"&gt;Life on Rails &lt;/a&gt;blog. &lt;br /&gt;&lt;br /&gt;I'm going to have to get me some NetBeans.&lt;br /&gt;&lt;br /&gt;Also, kudos to Sun for keeping NetBeans alive.  You could have clearly given up as you were Eclipsed.  I'm wondering if NetBeans 6 isn't a lesson in "try, try again" and "hold on tight to your dreams".&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-7975306138778498065?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://lifeonrails.org/2007/8/30/netbeans-the-best-ruby-on-rails-ide' title='Netbeans as a Rails IDE'/><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/7975306138778498065/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=7975306138778498065' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/7975306138778498065'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/7975306138778498065'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2007/10/netbeans-as-rails-ide.html' title='Netbeans as a Rails IDE'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-6618393151469442513</id><published>2007-09-26T15:16:00.000-07:00</published><updated>2007-09-26T15:16:28.130-07:00</updated><title type='text'>Note Studio Ceased</title><content type='html'>I was catching up on some blog reading today and came across &lt;a href="http://dogmelon.com.au/nsblog/?p=41"&gt;the announcement&lt;/a&gt; that &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Dogmelon&lt;/span&gt; will no longer produce Note Studio. This really bums me out.  Note Studio has been my tool of choice for &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;GtD&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;kung&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;fu&lt;/span&gt; for the last few years.  I try others, but the personal wiki draws me back.  I've loved that I can sync it with my Palm and have &lt;em&gt;everything&lt;/em&gt; with me.  I've even done my weekly review on an airplane before.&lt;br /&gt;&lt;br /&gt;I understand their reasons.  I'm sure it's tough balancing products, financial considerations, and personal interests as a small (micro?) &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;ISV&lt;/span&gt;.  I don't fault them for their decision at all.  I think they handled the announcement reasonably well too.&lt;br /&gt;&lt;br /&gt;So, as a final send off I have to say thanks to the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;Dogmelon&lt;/span&gt; team.  Their tool along with &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;Volker&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;Kurz's&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;GtD&lt;/span&gt; templates helped me find my personal &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;GtD&lt;/span&gt; style.  Thanks a million, guys!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-6618393151469442513?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://dogmelon.com.au/nsblog/?p=41' title='Note Studio Ceased'/><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/6618393151469442513/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=6618393151469442513' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/6618393151469442513'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/6618393151469442513'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2007/09/note-studio-ceased.html' title='Note Studio Ceased'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-7568929653329623245</id><published>2007-08-05T19:37:00.000-07:00</published><updated>2007-08-05T20:17:49.727-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='squeak'/><title type='text'>Squeak</title><content type='html'>My latest programming fetish is turning out to be &lt;a href="http://www.squeak.org"&gt;Squeak&lt;/a&gt;.  Squeak is a Smalltalk environment that provides a unique UI interface called &lt;a href="http://wiki.squeak.org/squeak/30"&gt;Morphic&lt;/a&gt;.  Although there are many educational uses for Squeak, it's a full-fledged, grown-up Smalltalk environment.&lt;br /&gt;&lt;br /&gt;What drew me to Squeak?  I had been hearing about Squeak for years.  Occasionally I'd download it, click around, and say things like, "Wow, this is weird." or "This looks like a cartoon." or "This must be for kids."  Every time I looked at it, my curiosity would grow.  Finally, the last time I downloaded it, I felt like I was being led to learn why everyone thought it was so great.&lt;br /&gt;&lt;br /&gt;One of the first things that slaps you in the face is how different it is to interact with Morphic.  It is an interface that is immediately usable, but it takes a bit to get used to it.  Everything that is visual in Morphic is a Morph, which means you can interact with it, inspect it, embed it in other Morphs, etc.  Although this gives the entire system a very layered and consistent feeling, it was something that I didn't know if I really liked.  I mean, I'm the kind of programmer that prefers Emacs!  &lt;br /&gt;&lt;br /&gt;I decided I needed to dedicate some time to it and not blow it off as I had so many times before.  Boy, am I glad I did.  It's been 3 weeks or so now, and I'm growing extremely fond of Squeak.  I have worked through some of the &lt;a href="http://wiki.squeak.org/squeak/792#Morphic"&gt;tutorials on Morphic programming&lt;/a&gt;.  I've also played around with some of the Morphic direct programming using Viewers and scripts.  I've been studying code and extended FileList2 to allow tagging files and storing the results with &lt;a href="http://wiki.squeak.org/squeak/3043"&gt;SPrevayler&lt;/a&gt;.  I've been having lots of fun.&lt;br /&gt;&lt;br /&gt;That brings me to what is continuing to pull me into Squeakland.  I'm having &lt;span style="font-style: italic;"&gt;&lt;span style="font-weight: bold;"&gt;fun&lt;/span&gt;.&lt;/span&gt;  Squeak is just fun to use and hack around in.  It makes me feel creative because not only can I code up things easily, but, thanks to Morphic, I can decorate my projects and workspaces with pictures, text, drawings, etc.  In fact, I could use those same elements in my Morphic applications.  It just makes me feel like anything is possible and that I'm some mad, creative inventor in my little virtual lab.&lt;br /&gt;&lt;br /&gt;Thank you Squeak team.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-7568929653329623245?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/7568929653329623245/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=7568929653329623245' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/7568929653329623245'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/7568929653329623245'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2007/08/squeak.html' title='Squeak'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-1279884341302592482</id><published>2007-07-22T20:34:00.001-07:00</published><updated>2007-07-22T20:44:04.773-07:00</updated><title type='text'>Vacation!</title><content type='html'>I'm on a much needed vacation this week.  It should be fun.  We're going&lt;br /&gt;to Tennessee for a family reunion.  My wife's family is getting together&lt;br /&gt;in Gatlinburg next weekend.  Leading up to that, we'll be in Cleveland,&lt;br /&gt;TN staying with my in-laws.&lt;p&gt;I'm anxious to leave the flat urban area of Dallas and see some hills&lt;br /&gt;and trees again.  It's fun going back to TN and seeing everything we&lt;br /&gt;used to take for granted.  It's like we're looking at it with a fresh&lt;br /&gt;set of eyes.&lt;/p&gt;&lt;p&gt;We're all getting excited.  My daughter is anxious to see Nana and&lt;br /&gt;Gran.  So are my wife and I.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-1279884341302592482?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/1279884341302592482/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=1279884341302592482' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/1279884341302592482'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/1279884341302592482'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2007/07/vacation.html' title='Vacation!'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-1908153570655564176</id><published>2007-07-11T12:55:00.000-07:00</published><updated>2007-07-16T14:14:56.483-07:00</updated><title type='text'>20/20: Top 20 Programming Lessons</title><content type='html'>I just came across "&lt;a href="http://www.dcs-media.com/desdev/businesslessons/2020-top-20-programming-lessons-ive-learned-in-20-years.aspx"&gt;20/20: Top 20 Programming Lessons I've Learned in 20 Years&lt;/a&gt;" by Jonathan Danylko. This is a great list and very timely as I've been having the &lt;a href="http://c2.com/cgi/wiki?DesignPatternsConsideredHarmful"&gt;DesignPatternsConsideredHarmful &lt;/a&gt;discussion with my friend Jon. Also, as a reminder:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.blogger.com/%C3%A2%C2%80%C2%A2%09http://en.wikipedia.org/wiki/Principle_of_good_enough"&gt;Principle of Good Enough&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Worse_is_Better"&gt;Worse is Better&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.c2.com/cgi/wiki?YouArentGonnaNeedIt"&gt;YAGNI&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;Updated 07/16/2007:&lt;/strong&gt; Had the wrong link for the article.  Thanks for the update Jonathan!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-1908153570655564176?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/1908153570655564176/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=1908153570655564176' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/1908153570655564176'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/1908153570655564176'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2007/07/2020-top-20-programming-lessons.html' title='20/20: Top 20 Programming Lessons'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-7171115853381578044</id><published>2006-12-12T19:19:00.000-08:00</published><updated>2006-12-12T19:20:57.820-08:00</updated><title type='text'>A letter to a friend</title><content type='html'>Dear Internet,&lt;br /&gt;&lt;br /&gt;I hope you've been well.  It's been 5 months since my last correspondence. Wow. I guess I'm now officially in the super-infrequent blogging category. It's not as unpleasant nor as lonely as I imagined. &lt;span onclick="BLOG_clickHandler(this)" class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Hmmm&lt;/span&gt;...&lt;br /&gt;&lt;br /&gt;There's been &lt;span onclick="BLOG_clickHandler(this)" class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;alot&lt;/span&gt; that has happened. The absolutely biggest and best thing has been the birth of my son. He's now 4 months old and an absolute joy - like his older sister. We're trying to spend plenty of time together. In fact, he's proofreading this post right now.&lt;br /&gt;&lt;br /&gt;I hope everyone on the Internet is doing well. It seems like yesterday that we were all talking and laughing about who knows what. Maybe we'll be back there someday soon. Until then, I remain...&lt;br /&gt;&lt;br /&gt;Respectfully yours,&lt;br /&gt;Tom&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-7171115853381578044?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/7171115853381578044/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=7171115853381578044' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/7171115853381578044'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/7171115853381578044'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/12/letter-to-friend.html' title='A letter to a friend'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-115279914718631644</id><published>2006-07-13T06:59:00.000-07:00</published><updated>2006-07-13T06:59:07.213-07:00</updated><title type='text'>Intranet Trends to Watch for in 2006 - Part I</title><content type='html'>&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;&lt;br /&gt;&lt;P&gt;&lt;A href="http://blogs.ittoolbox.com/km/elsua/archives/Intranet-Trends-to-Watch-for-in-2006-Part-I-10439?rss=1"&gt;&lt;B&gt;Intranet Trends to Watch for in 2006 - Part I&lt;/B&gt;&lt;/A&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;&lt;br /&gt;&lt;P&gt;Over at &lt;A href="http://doddster98.googlepages.com/"&gt;Patrick Dodd&lt;/A&gt;'s weblog, &lt;A href="http://corpblog.shadowbox.com/"&gt;Shadowbox Studios&lt;/A&gt;, he has just shared an interesting weblog post taken from the recent &lt;A href="http://www.cio.com/"&gt;CIO&lt;/A&gt; article by &lt;FONT color=#0000ff&gt;Shiv Singh&lt;/FONT&gt; on &lt;A href="http://www.cio.com/weighin/column.html?CID=15817"&gt;Intranet Trends to Watch for in 2006&lt;/A&gt;&lt;/P&gt;&lt;br /&gt;&lt;DIV align=right&gt;[via &lt;A href="http://www.ittoolbox.com/"&gt;Data Management Blogs&lt;/A&gt;]&lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;&lt;br /&gt;&lt;DIV dir=ltr align=left&gt;Things that really caught my eye in this article:&lt;/DIV&gt;&lt;br /&gt;&lt;UL dir=ltr&gt;&lt;br /&gt;&lt;LI&gt;&lt;br /&gt;&lt;DIV align=left&gt;User Experience is starting to matter&lt;/DIV&gt;&lt;/LI&gt;&lt;br /&gt;&lt;LI&gt;&lt;br /&gt;&lt;DIV align=left&gt;AJAX is coming to an Intranet near you&lt;/DIV&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-115279914718631644?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/115279914718631644/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=115279914718631644' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/115279914718631644'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/115279914718631644'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/07/intranet-trends-to-watch-for-in-2006.html' title='Intranet Trends to Watch for in 2006 - Part I'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-115279872342011199</id><published>2006-07-13T06:52:00.000-07:00</published><updated>2006-07-13T06:52:03.463-07:00</updated><title type='text'>How to Manage a Supersized Architecture</title><content type='html'>&lt;BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"&gt;&lt;br /&gt;&lt;P&gt;&lt;A href="http://blogs.ittoolbox.com/cio/modeling/archives/How-to-Manage-a-Supersized-Architecture-10453?rss=1"&gt;&lt;B&gt;How to Manage a Supersized Architecture&lt;/B&gt;&lt;/A&gt;&lt;/P&gt;&lt;br /&gt;&lt;P&gt;I don't know whether it has surfaced during any of my previous posts, but I don't really like "Architects" who speak about Enterprise Architecture in theory. There are many reasons for this fact, but today I'll focus on one that is burning me at the moment: Scalability.&lt;BR&gt;&lt;/P&gt;&lt;br /&gt;&lt;DIV align=right&gt;[via &lt;A href="http://www.ittoolbox.com/"&gt;Data Management Blogs&lt;/A&gt;]&lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;&lt;br /&gt;&lt;DIV dir=ltr align=left&gt;This is an interesting article about Enterprise Architecture tools and what happens when the repositories get really large.&amp;nbsp; I'm a consultant, and I haven't had any experience with maintaining these systems.&amp;nbsp; However, I can easily see this scenario playing out in large organizations.&amp;nbsp; In fact, I suspect that at some organizations the repository stops being used because it becomes cumbersome to architects.&lt;/DIV&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-115279872342011199?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/115279872342011199/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=115279872342011199' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/115279872342011199'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/115279872342011199'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/07/how-to-manage-supersized-architecture.html' title='How to Manage a Supersized Architecture'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-114927605398213793</id><published>2006-06-02T12:06:00.000-07:00</published><updated>2006-06-02T12:20:54.056-07:00</updated><title type='text'>Identity 2.0 Presentation</title><content type='html'>A friend of mine told me a few weeks ago to check out the recording of the&lt;a href="http://http://www.identity20.com/media/OSCON2005"&gt; Identity 2.0 keynote&lt;/a&gt; given by Dick Hardt at OSCON.  If you haven't seen this presentation, it's well worth a look even if you aren't interested at all in digital identity.  Dick's presentation style is very engaging and makes the information very consumable to techies and non-techies alike.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://markup.thekraemers.com/"&gt;Mark&lt;/a&gt; recently turned me on to &lt;a href="http://www.beyondbullets.com/"&gt;Beyond Bullet Points&lt;/a&gt; by Cliff Atkinson.  I really liked Cliff's ideas.  Dick Hardt's technique seems very similar to BBP.&lt;br /&gt;&lt;br /&gt;I have long hated presentation software, but given this methodology, I'm slowly changing my mind.  Both of these things prove that it's not the tool, it's how you use it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-114927605398213793?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/114927605398213793/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=114927605398213793' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114927605398213793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114927605398213793'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/06/identity-20-presentation.html' title='Identity 2.0 Presentation'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-114900043598252725</id><published>2006-05-30T07:27:00.000-07:00</published><updated>2006-05-30T08:42:40.290-07:00</updated><title type='text'>Conkeror: They're only encouraging me</title><content type='html'>As many people close to me know, I'm an Emacs &lt;span style="FONT-STYLE: italic"&gt;&lt;span style="FONT-WEIGHT: bold"&gt;freak&lt;/span&gt;&lt;/span&gt;. I try to use Emacs for all of my editing needs even when I have to jump through hoops to do so. I've only recently caved in to Eclipse for my Java work because my edit-compile-test cycle seems shorter in Eclipse.&lt;br /&gt;&lt;br /&gt;This weekend, I read Bill Clementson's post titled "&lt;a href="http://bc.tech.coop/blog/"&gt;Firefox for Emacs users&lt;/a&gt;". Bill talks about a new Firefox extension called &lt;a href="http://conkeror.mozdev.org/"&gt;Conkeror&lt;/a&gt;. Conkeror's stated mission is:&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;blockquote&gt;&lt;strong&gt;Conkeror&lt;/strong&gt; is a mozilla based web browser designed to be completely keyboard driven, no compromises. It also strives to behave as much like &lt;a href="http://www.gnu.org/software/emacs"&gt;Emacs&lt;/a&gt; as possible. This means all the key bindings and to-die-for features of Emacs that can be imitated by a javascript/XUL web browser Just Work.&lt;/blockquote&gt;&lt;br /&gt;Of course, I about jammed a finger trying to get to the Conkeror install site at warp speed. The install was typical - just an XPI file that installs itself like any other extension. However, it doesn't just show up like any other extension. You have to type a special command line to get Conkeror to fire up the first time (this is on the Conkeror "install" page):&lt;br /&gt;&lt;blockquote&gt;firefox -chrome chrome://conkeror/content&lt;/blockquote&gt;&lt;br /&gt;Once you start it up, you see the Conkeror help page. You can't resize the window - pretty annoying. However, if you go down the page and hit the button that says "Set Chrome", restart Firefox normally, then you'll be in full time Conkeror mode and you can resize the window any way you wish.&lt;br /&gt;&lt;br /&gt;Aside from the bizarre start-up, Conkeror rocks! It's sure to tickle your Emacs fancy because it binds many of the common Emacs keys to browser functions. They've also made it easy to "click" links on a page by numbering each link; you simply type the number of the link and BLAMO - you're navigating.&lt;br /&gt;&lt;br /&gt;The only drawback I've seen on Windows is that Conkeror interferes with some AJAX/DHTML sites like... Blogger! But, as little as I interact with some of those hardcore sites, I can fire up IE as a work-around.&lt;br /&gt;&lt;br /&gt;Give Conkeror a try and experience the beauty of mouse-less browsing. It really is quite cool.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;em&gt;Update 05-30-2006 10:38:26 CST:&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;It seems that Gmail attachments are causing problems for me in Conkeror.  Yikes!  This draw back may really cramp my style.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-114900043598252725?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/114900043598252725/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=114900043598252725' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114900043598252725'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114900043598252725'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/05/conkeror-theyre-only-encouraging-me.html' title='Conkeror: They&apos;re only encouraging me'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-114867479155178963</id><published>2006-05-26T13:18:00.000-07:00</published><updated>2006-05-28T13:32:13.823-07:00</updated><title type='text'>Courage</title><content type='html'>I've recently fallen in love with this quote:&lt;br /&gt;&lt;blockquote&gt; Courage is not the absence of fear, but rather the judgment that something else is more important than fear.&lt;br /&gt;-- Ambrose Redmoon&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-114867479155178963?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/114867479155178963/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=114867479155178963' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114867479155178963'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114867479155178963'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/05/courage.html' title='Courage'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-114789081466080109</id><published>2006-05-17T11:33:00.000-07:00</published><updated>2006-05-17T11:37:59.723-07:00</updated><title type='text'>Google Notebook - More proof of attempted world dominance</title><content type='html'>&lt;a href="http://www.lifehacker.com/software/google-notebook/clip-and-collect-the-web-with-google-notebook-174096.php"&gt;Lifehacker on Google Notebook&lt;/a&gt; - Further proof that Google is going for world dominance through rendering the desktop irrelevant.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-114789081466080109?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/114789081466080109/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=114789081466080109' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114789081466080109'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114789081466080109'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/05/google-notebook-more-proof-of.html' title='Google Notebook - More proof of attempted world dominance'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-114778712686502333</id><published>2006-05-16T06:45:00.000-07:00</published><updated>2006-05-16T06:45:26.936-07:00</updated><title type='text'>Cygwin Ruby on Rails MySQL problem</title><content type='html'>I've started playing around with Ruby on Rails on one of my Windows machines.  I was trying to connect to my local MySQL installation and I kept getting the error:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;No such file or directory - /tmp/mysql.sock&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;It turns out it's an issue with the Cygwin environment trying to use Unix sockets when you use "localhost".  I read the excellent notes posted at&lt;br /&gt;&lt;a href="http://blog.labnotes.org/2005/11/06/setting-up-ruby-gems-on-cygwin/"&gt;Labnotes » Blog Archive » Setting up Ruby + Gems on CygWin&lt;br /&gt;&lt;/a&gt;.  It turns out the fix is very simple.  Just change localhost to its IP address, 127.0.0.1, and you're in business!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-114778712686502333?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/114778712686502333/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=114778712686502333' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114778712686502333'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114778712686502333'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/05/cygwin-ruby-on-rails-mysql-problem.html' title='Cygwin Ruby on Rails MySQL problem'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-114487397952557811</id><published>2006-04-12T13:32:00.000-07:00</published><updated>2006-04-12T13:33:01.833-07:00</updated><title type='text'>GrayBit: Accessibility is a Gray Area</title><content type='html'>I found &lt;a href="http://graybit.com/main.php"&gt;GrayBit&lt;/a&gt; from a blog post on &lt;a href="http://www.metabang.com/unclog/publisha/speaking.html"&gt;unCLog&lt;/a&gt; by Gary King.  GrayBit is an accessibility tool that will convert a web page into gray scale.  This allows you to make sure your site has contrast in the absense of color.  Nifty idea!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-114487397952557811?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/114487397952557811/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=114487397952557811' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114487397952557811'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114487397952557811'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/04/graybit-accessibility-is-gray-area.html' title='GrayBit: Accessibility is a Gray Area'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-114418601574699859</id><published>2006-04-04T14:26:00.000-07:00</published><updated>2006-04-04T14:26:55.793-07:00</updated><title type='text'>Color Schemes</title><content type='html'>I'm terrible at picking out color schemes (just ask my wife!).  But fortunately for me there's lots of help on the web.  Things like &lt;a href="http://www.colorschemer.com/online.html"&gt;Color Schemer - Online Color Scheme Generator&lt;/a&gt; are a boon to me.  These guys make it easy to pick out a color scheme based on a starting color.  Also, they have a full blown app that looks really cool.  Finally, they have an online &lt;a href="http://www.colorschemer.com/schemes/"&gt;scheme gallery&lt;/a&gt; that allows you to see schemes other people have picked out.  NIFTY!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-114418601574699859?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/114418601574699859/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=114418601574699859' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114418601574699859'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114418601574699859'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/04/color-schemes.html' title='Color Schemes'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-114381986616062311</id><published>2006-03-31T07:36:00.000-08:00</published><updated>2006-03-31T07:44:26.200-08:00</updated><title type='text'>Reveal: The Best Firefox Extension Ever</title><content type='html'>If you're like me, you're not a real Firefox extension hound.  I have about 15 or so, but I don't go out hunting them down.  I usually just wait for word of mouth to point out the ones that are really neato.&lt;br /&gt;&lt;br /&gt;Well, today I came across &lt;a href="http://aluminum.sourmilk.net/reveal/"&gt;Reveal&lt;/a&gt;.  I think it's the best Firefox extension I've ever seen.  It's not just its function.  The extension works extremely well and the fit and finish are superb.  There's even a tour that allows you to quickly learn how to use the extension once you install it.  Brilliant!&lt;br /&gt;&lt;br /&gt;So, what does &lt;a href="http://aluminum.sourmilk.net/reveal/"&gt;Reveal &lt;/a&gt;do?  It shows you thumbnails of your sessions (and session history) and allows you to quickly navigate and manage them.  You can use the mouse, keyboard, or even search!  The thumbnails are also added to the tooltips for your forward and back buttons as well as the drop down menus.  Finally, there is a magnifying glass that you can use to get a close up view of stuff on a web page.&lt;br /&gt;&lt;br /&gt;This extension sets the bar for all other Firefox extensions in my humble opinion.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-114381986616062311?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/114381986616062311/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=114381986616062311' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114381986616062311'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114381986616062311'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/03/reveal-best-firefox-extension-ever.html' title='Reveal: The Best Firefox Extension Ever'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-114374955734645936</id><published>2006-03-30T11:52:00.000-08:00</published><updated>2006-03-30T12:21:03.046-08:00</updated><title type='text'>Software Architecture Blues</title><content type='html'>I've been feeling down on Software Architecture lately.  I just get so bummed out that:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;You still have to focus on low-level components after &lt;a href="http://www.windley.com/archives/2006/02/alan_kay_is_com.shtml"&gt;decades of Computer Science&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;I feel like I create the same software constructs over and over again with no leverage.  No higher-level abstractions.&lt;/li&gt;&lt;li&gt;Producing up front architectural models and documentation is tedious and hard to get right.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;I was lamenting to my friend &lt;a href="http://www.vanderburg.org/Blog"&gt;Glenn&lt;/a&gt; about this today.  He pointed me toward an excellent Fowler article called "&lt;a href="http://martinfowler.com/ieeeSoftware/whoNeedsArchitect.pdf"&gt;Who Needs An Architect?&lt;/a&gt;".  Fowler describes two types of architects.  The first type of architect sits on top of the development team making all the important decisions.  The second type of architect is more collaborative and acts as a guide to the development team by working with them, mentoring them, and helping them through tough spots.&lt;br /&gt;&lt;br /&gt;After reading the article, it dawned on me that it would be nice if the industry placed more emphasis and value on software architecture practiced in the "guide" style.  The guide style of architecture is  good for the development team because if they are less skilled, the architect can help them improve their skills, understand the system, and make better decisions.  It's good for the architect because if he/she helps the other members of the development team make better decisions, the architect will be able to make a big impact through leverage.&lt;br /&gt;&lt;br /&gt;I like that.  I've always valued leverage.  When folks used to ask me about why I liked to manage people, I would say something like "Because I like to facilitate a group of people coming together to solve a problem."  To me, that's one of the best things about being a part of or leading a team.  Working together and solving the problem.&lt;br /&gt;&lt;br /&gt;But, the industry doesn't seem to value the guide style of architecture.  Clients want up-front technical documentation and the comfort that someone "in the know" is leading the software development effort and making good decisions.  You certainly can't blame them for that.  If I were a client, I'd sure as heck want it.&lt;br /&gt;&lt;br /&gt;It leaves me feeling like I need to be both.  I &lt;span style="font-style: italic;"&gt;want &lt;/span&gt;to be the guide style architect, but I &lt;span style="font-style: italic;"&gt;need &lt;/span&gt;to be the up-front, decision making architect too.  It seems to me if you are around for the entire project, you can start off the up-front guy and transition yourself into the guide guy.  So, you suck it up and take on the tedium up-front so you can have the fun on the other side.  Maybe that's the outlook that will save my sanity.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-114374955734645936?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/114374955734645936/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=114374955734645936' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114374955734645936'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114374955734645936'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/03/software-architecture-blues.html' title='Software Architecture Blues'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-114226263637676509</id><published>2006-03-13T07:10:00.000-08:00</published><updated>2006-03-13T07:10:37.596-08:00</updated><title type='text'>Canvarticles Library</title><content type='html'>&lt;a href="http://beautifulpixel.textdriven.com/articles/2006/01/30/canvarticles-library-demo"&gt;Canvarticles Library&lt;/a&gt; is one of the coolest JavaScript libraries I've ever seen.  It's a particle effects library that allows you to create particle effects on your web pages.  Simply awesome.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-114226263637676509?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/114226263637676509/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=114226263637676509' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114226263637676509'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114226263637676509'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/03/canvarticles-library.html' title='Canvarticles Library'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-114107967427707946</id><published>2006-02-27T14:13:00.000-08:00</published><updated>2006-02-27T14:35:20.230-08:00</updated><title type='text'>The Latest Van Morrison Fan</title><content type='html'>For years I've resisted becoming a &lt;a href="http://en.wikipedia.org/wiki/Van_Morrison"&gt;Van Morrison&lt;/a&gt; fan.  Even I have no idea why I've been so resistant.  I suppose it's because in college I got to hear "Brown Eyed Girl" so much I got sick of it.  Further, I started to think "Brown Eyed Girl" was indicative of every Van Morrison song.  I suppose it just came down to lack of exposure to the breadth of Van Morrison.&lt;br /&gt;&lt;br /&gt;I'm happy to report that I've finally come to my senses.  I've been hearing a variety of Van Morrison songs on various XM stations and I really liked them.  So, I decided to take the plunge and purchase a Morrison album.&lt;br /&gt;&lt;br /&gt;I actually just picked one at random that was relatively recent, seemed to get decent reviews, and had the right "feeling" based on samples.  I purchased &lt;a href="http://www.amazon.com/gp/product/B0009298OI/sr=8-2/qid=1141078345/ref=pd_bbs_2/104-7535701-3127957?%5Fencoding=UTF8"&gt;Magic Time&lt;/a&gt; and I love it.  It's got some real  groovy tunes like "They Sold Me Out" and "Celtic New Year".&lt;br /&gt;&lt;br /&gt;In summary, I think I'm well on my way to becoming a genuine Van Morrison fan.  I'm going to grab some of the &lt;a href="http://www.music-city.org/Van-Morrison/discography/"&gt;essential Morrison albums &lt;/a&gt;and dive in.  I'm glad that I'm finally able to recognize the genius.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-114107967427707946?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/114107967427707946/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=114107967427707946' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114107967427707946'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114107967427707946'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/02/latest-van-morrison-fan.html' title='The Latest Van Morrison Fan'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-114030934639651484</id><published>2006-02-18T16:28:00.000-08:00</published><updated>2006-02-18T16:35:46.406-08:00</updated><title type='text'>Lisp in 10 Bullets?!?!</title><content type='html'>Many people claim that Lisp is one of the simplest languages you can learn.  I think that's true as well once you shift your paradigm.   Vishnu Vyas created a post called &lt;a href="http://vishnuvyas.blogspot.com/2005/10/tiny-lisp-course-lisp-in-10-bullets.html"&gt;Tiny Lisp course - Lisp in 10 bullets. &lt;/a&gt;that shows how simple the Lisp languages are (his post is meant to cover both Scheme and Common Lisp).   The point that I disagree with is 10 because of he associates eval and macros.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-114030934639651484?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/114030934639651484/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=114030934639651484' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114030934639651484'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/114030934639651484'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/02/lisp-in-10-bullets.html' title='Lisp in 10 Bullets?!?!'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113983873074347489</id><published>2006-02-13T05:47:00.000-08:00</published><updated>2006-02-13T12:33:03.206-08:00</updated><title type='text'>AutoHotkey Remaps Keys Too</title><content type='html'>&lt;p&gt;The love just keeps on coming with &lt;a href="http://www.autohotkey.com" title="AutoHotkey"&gt;AutoHotkey&lt;/a&gt; - it remaps keys, too!  I was using a tool called &lt;a href="http://webpages.charter.net/krumsick/" title="KeyTweak"&gt;KeyTweak&lt;/a&gt; that actually made registry entries and required a reboot.  That's fine at work because I'm the only one using my computer.  However, on our Windows machine at home I don't want to make my wife struggle to remember I've remapped the Control key.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;This weekend I installed AutoHotkey at home and it dawned on me that I might be able to remap keys with it.  I looked in the Help, and sure enough - there's a section on key remapping.  (In fact, you can map mouse buttons to keys with AutoHotkey!)  I edited my main script and added the following:&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;code&gt;; Remap keys&lt;br /&gt;CapsLock::Ctrl&lt;br /&gt;RCtrl::CapsLock&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;This remaps the Caps Lock key to be the Control key.  Then it remaps the right Control key to be Caps Lock.  This works well for me because I rarely use the right control key.  I'm considering making it the right Alt key because that is even more infrequently used.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;The beauty of this set up is that it is per user and doesn't require any registry changes.  So when my wife logs in to her profile, her keys have the default mapping.  Love it.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Updated 2006-02-13:&lt;/strong&gt; Someone tipped me off that the link to &lt;a href="http://www.autohotkey.com" title="AutoHotkey"&gt;AutoHotkey&lt;/a&gt; was wrong.  Thanks!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113983873074347489?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113983873074347489/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113983873074347489' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113983873074347489'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113983873074347489'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/02/autohotkey-remaps-keys-too.html' title='AutoHotkey Remaps Keys Too'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113950985968310102</id><published>2006-02-09T10:27:00.000-08:00</published><updated>2006-02-09T10:30:59.706-08:00</updated><title type='text'>Navigator Acquired!</title><content type='html'>&lt;p&gt;As &lt;a href="http://ecmarchitect.com/archives/2006/02/02/649" title="ecmarchitect.com"&gt;Jeff Reports&lt;/a&gt;, &lt;a href="http://www.navigatorsystems.com/" title="Navigator Systems"&gt;Navigator Systems&lt;/a&gt;, the company we work for, was acquired by &lt;a href="http://www.hitachiconsulting.com/" title="Hitachi Consulting"&gt;Hitachi Consulting&lt;/a&gt; last week.  You can read the press release &lt;a href="http://www.hitachiconsulting.com/page.cfm?ID=newsDetails&amp;amp;EID=39" title="Press Release"&gt;here&lt;/a&gt;.  Hitachi Consulting (HC) is a med-sized consulting company with a world-wide presence.  It's going to be some big changes for little Navigator, but I think most of the Navigator folks are very excited about the future.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;For us application development folk, I think being part of HC will give us the opportunity to be involved in even larger projects and stretch ourselves as developers.  I'm anxious to see what kinds of application development projects HC has been doing, talk to some of their application development folk, and figure out how we can all integrate.  Should be fun.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113950985968310102?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113950985968310102/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113950985968310102' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113950985968310102'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113950985968310102'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/02/navigator-acquired.html' title='Navigator Acquired!'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113950867168021779</id><published>2006-02-09T10:10:00.000-08:00</published><updated>2006-02-09T10:12:32.366-08:00</updated><title type='text'>Workraving</title><content type='html'>&lt;p&gt;In my recent quest to find ways reduce hand strain, I came across an application called &lt;a href="http://www.workrave.com/" title="Workrave Home"&gt;Workrave&lt;/a&gt;.  It's a nifty little Windows application that forces you take periodic typing breaks.  You can configure the time between breaks and the length of each break.  At the specified interval, it pops up a window and suggests a rest.  You can skip or postpone the breaks.  It works quite well, and I've noticed that it will even pop up in front of a full-screen VMWare session.  There's even a way to view your work statistics by day!&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Despite its goodness, I have a love/hate relationship with this application.  The break pop-ups sometimes annoy me.  I'm jamming away, all flowing, and there's the window.  Sure, I can ignore it, dismiss it, or postpone it - but all that takes me out of the flow a little bit.  I'm sure that I will learn to work with it better over time (just like my freshly remapped Control key).  &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;I may be noticing some difference in my hand fatigue.  I'll have to keep working with Workrave and my other improvements to see if they're really going to make a long-term difference.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;em&gt;BTW, I typed through a micro-break and finally took a micro-break during the production of this article.&lt;/em&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113950867168021779?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113950867168021779/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113950867168021779' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113950867168021779'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113950867168021779'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/02/workraving.html' title='Workraving'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113949665279385054</id><published>2006-02-09T06:50:00.000-08:00</published><updated>2006-02-09T06:50:52.806-08:00</updated><title type='text'>Web Standards Project</title><content type='html'>&lt;p&gt;I was reading the &lt;a href="http://csdl2.computer.org/persagen/DLAbsToc.jsp?resourcePath=/dl/mags/co/&amp;amp;toc=comp/mags/co/2005/12/rztoc.xml" title="Computer December 2005 TOC"&gt;December 2005 issue&lt;/a&gt; of &lt;a href="http://www.computer.org/portal/site/computer/index.jsp" title="IEEE Computer"&gt;Computer&lt;/a&gt; yesterday (yes, I'm that far behind), and I came across a &lt;a href="http://csdl2.computer.org/comp/mags/co/2005/12/rz023.pdf" title="December 2005 News Briefs"&gt;News Brief&lt;/a&gt; entitled Organization Develops Scripting Standards.  The article talks &lt;a href="http://webstandards.org/" title="The Web Standards Project"&gt;The Web Standards Project&lt;/a&gt;.  The Web Standards Project is a grassroots effort to fight for standards in web technologies.  Currently they have campaigns for an Acid2 Test, &lt;a href="http://domscripting.webstandards.org/" title="DOM Scripting Task Force"&gt;DOM Scripting Task Force&lt;/a&gt;, Dreamweaver Task Force, and an Education Task Force.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;I really like the idea behind the DOM Scripting Task Force.  The &lt;a href="http://domscripting.webstandards.org/?page_id=2" title="DOM Scripting Task Force Manifesto"&gt;manifesto&lt;/a&gt; says that the task force wants to solve some of the problems with JavaScript development like bad practices, obtrusive DOM scripting, and accessibility.  &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Yes - please fix all that.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113949665279385054?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113949665279385054/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113949665279385054' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113949665279385054'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113949665279385054'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/02/web-standards-project.html' title='Web Standards Project'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113926300515364375</id><published>2006-02-06T13:52:00.000-08:00</published><updated>2006-02-06T13:56:45.163-08:00</updated><title type='text'>Blogger Markdown</title><content type='html'>&lt;p&gt;Jasper de Vries has a &lt;a href="http://browservulsel.blogspot.com/2006/01/blogger-markdown-support-user-script.html" title="Blogger Markdown support user script"&gt;Greasemonky script&lt;/a&gt; that will enhance Blogger's HTML editor with the ability to convert &lt;a href="http://daringfireball.net/projects/markdown/" title="Markdown"&gt;Markdown&lt;/a&gt; to HTML.  Very sweet.  Now you can post in Markdown.  Love it.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113926300515364375?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113926300515364375/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113926300515364375' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113926300515364375'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113926300515364375'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/02/blogger-markdown.html' title='Blogger Markdown'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113925954870338852</id><published>2006-02-06T12:55:00.000-08:00</published><updated>2006-02-06T12:59:33.980-08:00</updated><title type='text'>Remapping My Control Key</title><content type='html'>&lt;p&gt;Bill Clementson's post titled &lt;a href="http://bc.tech.coop/blog/060131.html"&gt;Surviving Emacs - Part 4&lt;/a&gt; inspired me to remap my keyboard.  I suffer from &lt;a href="http://c2.com/cgi/wiki?EmacsPinky"&gt;Emacs Pinky&lt;/a&gt; frequently and I'm looking for a little relief.  So, today I made it a point to remap my keyboard to move the control key to caps lock using &lt;a href="http://webpages.charter.net/krumsick/"&gt;KeyTweak&lt;/a&gt;.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;I have to say, I'm not used to it yet and it's bugging me really badly.  I have alot of muscle memory built up.  I can definitely see how the smaller reach is desirable, but it hasn't made a difference to me yet.  Probably because I keep reaching for where the control key used to be rather than where it is now!&lt;br /&gt;&lt;/p&gt;&lt;p&gt;I'm going to keep going with it for a week or two.  I'll try to report back and let you know how my pinky is doing.  (The shift key seems to still be wearing me out, though.)&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113925954870338852?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113925954870338852/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113925954870338852' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113925954870338852'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113925954870338852'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/02/remapping-my-control-key.html' title='Remapping My Control Key'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113880273765955231</id><published>2006-02-01T06:05:00.000-08:00</published><updated>2006-02-01T06:05:37.730-08:00</updated><title type='text'>Emacs Pinky - been there</title><content type='html'>&lt;a href="http://c2.com/cgi/wiki?EmacsPinky"&gt;Emacs Pinky&lt;/a&gt; hurts.  I'm glad it's documented.  Now I have some advice on what to do about it.  Also, check out Bill Clementson's entry about &lt;a href="http://bc.tech.coop/blog/060131.html"&gt;Surviving Emacs - Part 4&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113880273765955231?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113880273765955231/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113880273765955231' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113880273765955231'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113880273765955231'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/02/emacs-pinky-been-there.html' title='Emacs Pinky - been there'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113874457298471496</id><published>2006-01-31T13:38:00.000-08:00</published><updated>2006-01-31T13:57:24.910-08:00</updated><title type='text'>AutoHotkey + Cygwin + Markdown = Kung Foo</title><content type='html'>I've recently been inspired by several sources to look at &lt;a href="http://daringfireball.net/projects/markdown/"&gt;Markdown&lt;/a&gt;.   I've long been looking for a way to document things in an open, neutral format and Markdown seems promising.  The syntax is very simple (much simpler than TeX/LaTeX or XML) and people claim that you can get used to using it very quickly.  Simple is good.&lt;br /&gt;&lt;br /&gt;One of the easiest ways to generate formatted output from plaintext Markdown files is to use the perl script that is part of the official Markdown distribution.  It's really simple to get this working - &lt;a href="http://sippey.typepad.com/filtered/2004/09/markdown_for_wi.html"&gt;even on Windows&lt;/a&gt;.  Take Markdown and add a little Cygwin... bingo!  Again, simple is good.&lt;br /&gt;&lt;br /&gt;After reading the "&lt;a href="http://sippey.typepad.com/filtered/2004/09/markdown_for_wi.html"&gt;markdown for windows&lt;/a&gt;" article referenced above, I realized it would be really nice not to fire up a bash prompt and type a command just to get your Markdown converted to HTML.  Enter &lt;a href="http://www.autohotkey.com/"&gt;AutoHotkey&lt;/a&gt;.  (AutoHotkey is an OSS utility for writing Windows macros.  I've been using it for a while, and I absolutely love it.)  With AutoHotkey, you can add a keyboard macro definition similar to the following:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;!#m::Run, "c:\cygwin\bin\bash" -c "getclip |/cygdrive/c/Markdown_1.0.1/Markdown.pl|putclip" &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I now have the ability to enter Markdown anywhere, select it, cut/copy to the clipboard, hit WIN-ALT-M, and then paste my fresh HTML wherever I want it.  To reiterate, simple is good.&lt;br /&gt;&lt;br /&gt;Pure &lt;a href="http://en.wikipedia.org/wiki/Foo"&gt;Kung Foo&lt;/a&gt;...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113874457298471496?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113874457298471496/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113874457298471496' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113874457298471496'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113874457298471496'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/01/autohotkey-cygwin-markdown-kung-foo.html' title='AutoHotkey + Cygwin + Markdown = Kung Foo'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113802704704002434</id><published>2006-01-23T06:37:00.000-08:00</published><updated>2006-01-23T06:37:27.050-08:00</updated><title type='text'>Eclipse BIRT Home</title><content type='html'>&lt;a href="http://jai89.blogspot.com/"&gt;Jon&lt;/a&gt; pointed me to the &lt;a href="http://www.eclipse.org/birt/"&gt;Eclipse BIRT&lt;/a&gt; project. BIRT stands for Business Intelligence and Reporting Tools.  The project is an effort to create an open source reporting system that you can integrate with your projects.  Very cool idea.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113802704704002434?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113802704704002434/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113802704704002434' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113802704704002434'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113802704704002434'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2006/01/eclipse-birt-home.html' title='Eclipse BIRT Home'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113572413987329183</id><published>2005-12-27T14:55:00.000-08:00</published><updated>2005-12-27T14:55:39.916-08:00</updated><title type='text'>Apt-Pinning for Beginners</title><content type='html'>I'm off work this week and it's given me an opportunity to rebuild one of my servers.  I decided to move from FreeBSD to Debian because I like the speed of grabbing binaries from apt vs. compiling ports.  Also, there is much more Common Lisp support with Debian.&lt;br /&gt;&lt;br /&gt;As part of the install, I wanted to grab some packages from Debian Unstable (namely Gallery 2).  I'd done this on another server and didn't care what got upgraded to an instable status.  However, I decided on the server I just rebuilt that I wanted to stay as stable as possible while getting the packages in Unstable.  I found an article called &lt;a href="http://jaqque.sbih.org/kplug/apt-pinning.html"&gt;Apt-Pinning for Beginners&lt;/a&gt; that gives you a simple way to control how apt chooses to get its packages.  I followed the instructions and I think it's working.  &lt;br /&gt;&lt;br /&gt;Nifty!  Those apt guys sure are cool.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113572413987329183?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113572413987329183/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113572413987329183' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113572413987329183'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113572413987329183'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/12/apt-pinning-for-beginners.html' title='Apt-Pinning for Beginners'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113439682333967555</id><published>2005-12-12T05:52:00.000-08:00</published><updated>2005-12-12T06:13:43.376-08:00</updated><title type='text'>Recent Inspirational Reading</title><content type='html'>I've been a GtD convert for about 9 months now (thanks, Mark!) and it's really made a big impact on the way I organize and keep track of all my "stuff".  Prior to GtD I was a Covey follower and prior to that I used a system that I cobbled together in college based on different techniques.  So, as you can see, I'm a long-time student of time management.&lt;br /&gt;&lt;br /&gt;Over the weekend I read two good articles related to time management.  The first was &lt;a href="http://www.collisiondetection.net/mt/archives/2005/10/meet_the_life_h.html"&gt;"Meet the life hackers"&lt;/a&gt; by Clive Thompson.  This is a great article that talks about how some researches are trying to solve our information overloaded condition with software.  (Has A.I. found another domain?)&lt;br /&gt;&lt;br /&gt;I also read &lt;a href="http://www.stevepavlina.com/articles/do-it-now.htm"&gt;"Do It Now"&lt;/a&gt; by Steve Pavlina.  This is an unbelievable tale of how Steve made it through college in 3 semesters.  He also tells you how he did it and the keys to his success.  I love the "Do It Now" section.  I'm a procrastinator at heart and this section really spoke to me.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113439682333967555?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113439682333967555/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113439682333967555' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113439682333967555'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113439682333967555'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/12/recent-inspirational-reading.html' title='Recent Inspirational Reading'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113380037747418323</id><published>2005-12-05T08:32:00.000-08:00</published><updated>2005-12-05T08:32:57.536-08:00</updated><title type='text'>Finding the Best Programmer's Font || kuro5hin.org</title><content type='html'>&lt;a href="http://jai89.blogspot.com/"&gt;Jon&lt;/a&gt; pointed me to &lt;a href="http://www.kuro5hin.org/story/2004/12/6/11739/5249"&gt;a list of fonts that someone had rated on kur5shin.org&lt;/a&gt;.  MMMmmm.  Fonts.  I think I may like ti92pluspc even better than Anonymous.  Will play.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113380037747418323?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113380037747418323/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113380037747418323' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113380037747418323'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113380037747418323'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/12/finding-best-programmers-font.html' title='Finding the Best Programmer&apos;s Font || kuro5hin.org'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113379378979851130</id><published>2005-12-05T06:37:00.000-08:00</published><updated>2005-12-05T06:43:09.813-08:00</updated><title type='text'>Anonymous Font</title><content type='html'>Thanks to &lt;a href="http://article.gmane.org/gmane.lisp.lispworks.general/4897/match=anonymous+font"&gt;a message&lt;/a&gt; on the &lt;a href="http://www.lispworks.com/"&gt;LispWorks &lt;/a&gt;mailing list, I found a &lt;span style="font-weight: bold;"&gt;sweet&lt;/span&gt; monospaced font over the weekend.  It's called &lt;a href="http://www.ms-studio.com/FontSales/anonymous.html"&gt;Anonymous&lt;/a&gt;.  (Mark Simonson has a bunch of other cool fonts that you might want to check out while you are there.) It's great for coding because it is monospaced, pretty, and 0s have lines through them so you can easily tell them apart.  It reminds me of how I was supposed to write block characters in drafting.  Of course, mine never looked this good.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/2742/632/1600/anonchars.gif"&gt;&lt;img style="cursor: pointer;" src="http://photos1.blogger.com/blogger/2742/632/320/anonchars.gif" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113379378979851130?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113379378979851130/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113379378979851130' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113379378979851130'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113379378979851130'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/12/anonymous-font.html' title='Anonymous Font'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113346428809008145</id><published>2005-12-01T11:06:00.000-08:00</published><updated>2005-12-01T11:11:28.100-08:00</updated><title type='text'>Try Ruby - 15 minute tutorial</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/2742/632/1600/cap3.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://photos1.blogger.com/blogger/2742/632/320/cap3.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://whytheluckystiff.net/"&gt;why the lucky stiff&lt;/a&gt;  has created a short intruduction to Ruby called &lt;a href="http://tryruby.hobix.com/"&gt;Try Ruby!&lt;/a&gt;  It's quite ingenious.  It's an interactive Ruby prompt coupled with a tutorial that follows you along burried in a web page.  Very cool.  He says he's going to add some content, so it's a site to watch.&lt;br /&gt;&lt;br /&gt;via &lt;a href="http://lemonodor.com/archives/001292.html"&gt;Lemonodor&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113346428809008145?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113346428809008145/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113346428809008145' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113346428809008145'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113346428809008145'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/12/try-ruby-15-minute-tutorial.html' title='Try Ruby - 15 minute tutorial'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113332163648238349</id><published>2005-11-29T19:22:00.000-08:00</published><updated>2005-11-29T19:33:56.513-08:00</updated><title type='text'>More Free Love for Lisp</title><content type='html'>Christopher Roach &lt;a href="http://www.onlamp.com/pub/wlg/8595"&gt;posted another installment&lt;/a&gt; about learning Lisp.   This time he talks about how learning functional programming via Lisp made him a better programmer:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Now, I've never used Lisp in my professional life, however, I began to notice that some of the habits I picked up while programming in Lisp were creeping into my daily programming and were actually helping me out quite bit. In functional languages, side-effects are "generally" avoided. (I say "generally" here since, to my knowledge at least, some side-effects seem to be unavoidable—such as I/O operations, for instance). For anyone new to the term, a side-effect occurs when the state of your program is changed from within a function (procedure, method...whatever). This happens quite often in normal procedural and OO programming, but in functional programming it is avoided as much as possible. After programming in Lisp for a month or two, I noticed that in my daily life I had begun to avoid side-effects in my programs whenever I found it possible to do so. This allowed me to create programs that were much easier to unit test, since all I had to do was check the function's output to know that it worked correctly. Also, since no undesired changes occurred inside of my functions, my software immediately showed a vast reduction in bugs, not too mention that purely functional code is also immediately thread safe. Being able to test each function as I wrote it, and prove that it worked correctly without exception, meant that my programs would work almost the first time I integrated everything and r&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113332163648238349?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113332163648238349/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113332163648238349' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113332163648238349'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113332163648238349'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/11/more-free-love-for-lisp.html' title='More Free Love for Lisp'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113234686480652552</id><published>2005-11-18T12:47:00.000-08:00</published><updated>2005-11-18T12:47:44.850-08:00</updated><title type='text'>Lemonodor: Short Course of Lisp</title><content type='html'>&lt;a href="http://lemonodor.com/archives/001278.html"&gt;Lemonodor: Short Course of Lisp&lt;/a&gt; is a reference to Robert Sayre talking about Yahoo 2.0.  There's 2 nuggets here, the "syllabus" for learning Lisp and a link to &lt;a href="http://glinden.blogspot.com/2005/07/google-sawzall.html"&gt;Greg Linden's article&lt;/a&gt; about Sawzall.&lt;br /&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113234686480652552?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113234686480652552/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113234686480652552' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113234686480652552'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113234686480652552'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/11/lemonodor-short-course-of-lisp.html' title='Lemonodor: Short Course of Lisp'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113233910674156395</id><published>2005-11-18T10:38:00.000-08:00</published><updated>2005-11-18T10:38:26.763-08:00</updated><title type='text'>W3C Web APIs Working Group</title><content type='html'>Came across the &lt;a href="http://www.w3.org/2006/webapi/"&gt;W3C Web APIs Working Group&lt;/a&gt; page today courtesy of &lt;a href="http://www.screaming-penguin.com"&gt;Screaming Penguin&lt;/a&gt;.   It looks like the W3C is putting together a working group to document existing web client APIs and develop new ones.  Things like an API for a client interface, DOM Level 3 events, timed events, client persistence, network communication, etc.  &lt;br /&gt;&lt;br /&gt;In my dream world, the output of this group would become a series of open APIs that cross-platform GUI toolkits could be built upon.    &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113233910674156395?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113233910674156395/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113233910674156395' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113233910674156395'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113233910674156395'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/11/w3c-web-apis-working-group.html' title='W3C Web APIs Working Group'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113233806969396792</id><published>2005-11-18T10:21:00.000-08:00</published><updated>2005-11-18T10:21:09.746-08:00</updated><title type='text'>ONJava.com: Ruby the Rival</title><content type='html'>The ONJava article/interview &lt;a href="http://www.onjava.com/pub/a/onjava/2005/11/16/ruby-the-rival.html?page=1"&gt;ONJava.com: Ruby the Rival&lt;/a&gt; is a good read.  Chris Adamson talks to Bruce Tate, James Duncan Davidson, Robert Cooper, and Bill Venners about Ruby and Rails.  I liked reading the different perspectives on Ruby and Ruby on Rails and its impact on the Java world.&lt;br /&gt;&lt;br /&gt;If someone were to prove that it simplifies web development and it makes 80% of the applications easier to write, then I would say bring it on.  We can use something else for the 20%.  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113233806969396792?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113233806969396792/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113233806969396792' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113233806969396792'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113233806969396792'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/11/onjavacom-ruby-rival.html' title='ONJava.com: Ruby the Rival'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113200158288682296</id><published>2005-11-14T12:53:00.000-08:00</published><updated>2005-11-14T12:53:02.936-08:00</updated><title type='text'>Learn Lisp From MIT--for Free!!!</title><content type='html'>&lt;a href="http://www.onlamp.com/pub/wlg/8397"&gt;Christopher Roach&lt;/a&gt; has a great article about the OpenCourseWare initiative at MIT and how you can take the Structure and Interpretation of Computer Programming (SICP) course for free.  His article has some great links to sites that have supporting materials for SICP.  &lt;br /&gt;&lt;br /&gt;SICP is regarded in many circles as the ultimate introduction to computer programming.  I've been meaning to read the book for a couple of years now and have never made time to do it.  I've heard that even if you are not interested in Lisp programming you should read SICP.  Now you can not only read the book, you can take the course, listen to/watch the lectures, and take the quizes - &lt;strong&gt;FOR FREE!&lt;/strong&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113200158288682296?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113200158288682296/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113200158288682296' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113200158288682296'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113200158288682296'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/11/learn-lisp-from-mit-for-free.html' title='Learn Lisp From MIT--for Free!!!'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113094622449956448</id><published>2005-11-02T06:55:00.000-08:00</published><updated>2005-11-02T07:43:44.556-08:00</updated><title type='text'>New version of LW-ADD-ONS</title><content type='html'>Edi Weitz has released a new version of his LW-ADD-ONS package.  From the LW mailing list:&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;Let me spam the list for a moment to notify those who use LW-ADD-ONS&lt;br /&gt;that I've just uploaded a new version which adds a nifty Apropos&lt;br /&gt;dialog (mimicking a Lisp implementation I won't mention here) and&lt;br /&gt;several new features mostly submitted by Sean Ross.&lt;br /&gt;&lt;br /&gt; &lt;&lt;a onclick="return top.js.OpenExtLink(window,event,this)" href="http://weitz.de/lw-add-ons/" target="_blank"&gt;http://weitz.de/lw-add-ons/&lt;/a&gt;&gt;&lt;br /&gt;&lt;br /&gt;Note that you need the latest and greatest CL-PPCRE (1.2.12 or higher)&lt;br /&gt;for this.&lt;/blockquote&gt;LW-ADD-ONS is very nice.   It adds some &lt;a href="http://common-lisp.net/project/slime/"&gt;Slime&lt;/a&gt; type functionality to the LW environment and some things that are not found in Slime.&lt;br /&gt;&lt;br /&gt;I still end up using Slime some of the time, but LW-ADD-ONS really makes working in the LW environment much more pleasant. Also, Edi's documentation search function ROCKS!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113094622449956448?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113094622449956448/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113094622449956448' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113094622449956448'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113094622449956448'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/11/new-version-of-lw-add-ons.html' title='New version of LW-ADD-ONS'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113078832789067929</id><published>2005-10-31T11:39:00.000-08:00</published><updated>2005-10-31T11:52:07.956-08:00</updated><title type='text'>The Right Development Team for Rails</title><content type='html'>Glenn Vanderburg has a good post about "&lt;a href="http://www.vanderburg.org/cgi-bin/glv/blosxom/Software/Development/rails-teams.rdoc"&gt;The Right Team for Rails&lt;/a&gt;". Having no Rails (and almost 0 Ruby experience) I cannot vouch for the article's accuracy. However, I'm betting he's right on the money.&lt;br /&gt;&lt;br /&gt;Glenn says:&lt;br /&gt;&lt;blockquote&gt; The wrong Rails team is one that doesn't understand those principles and practices. The fact that Rails makes things easy won't be enough. In my experience, such teams expend amazing effort and ingenuity to do the wrong thing.&lt;br /&gt;&lt;/blockquote&gt;I love this paragraph. If you remove the Rails references, there's universal truisms in here. It applies to almost any technology or language. In fact, you could make the statement about something as general as "programming" and it would be applicable.&lt;br /&gt;&lt;br /&gt;So, like Glenn, I think we're still saying, "This can make good, well-informed people really efficient. However, the rest will still find it difficult to succeed."&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113078832789067929?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113078832789067929/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113078832789067929' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113078832789067929'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113078832789067929'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/10/right-development-team-for-rails.html' title='The Right Development Team for Rails'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113077967776969554</id><published>2005-10-31T08:30:00.000-08:00</published><updated>2005-10-31T09:27:57.813-08:00</updated><title type='text'>12 Best Practices for Spring Configuration Files</title><content type='html'>Jason Zhicheng Li has a &lt;a href="http://lizjason.com/blog/?p=12"&gt;blog post&lt;/a&gt; where he lays out 12 best practices for Spring configuration files. I have only used Spring on 1 project, but I can definitely see the basis for several of them. These are worth keeping in mind as you develop your next project based on the Spring Framework.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113077967776969554?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113077967776969554/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113077967776969554' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113077967776969554'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113077967776969554'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/10/12-best-practices-for-spring.html' title='12 Best Practices for Spring Configuration Files'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113073096372663556</id><published>2005-10-30T19:49:00.000-08:00</published><updated>2005-10-30T19:56:03.740-08:00</updated><title type='text'>LispWorks 4.4.6 Introduction Movie</title><content type='html'>Rainer Joswig has made a &lt;a href="http://lispm.dyndns.org/news?ID=NEWS-2005-10-30-1"&gt;short introductory movie&lt;/a&gt; demonstrating the features of LispWorks Personal Edition 4.4.6. The movie just shows off the environment and doesn't give any introductory Common Lisp information. For that, check out:&lt;br /&gt;&lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.amazon.com/exec/obidos/tg/detail/-/0133708756/qid=1130730715/sr=8-1/ref=pd_bbs_1/102-8820003-4668934?v=glance&amp;s=books&amp;amp;n=507846"&gt;ANSI Common Lisp&lt;/a&gt; by Paul Graham&lt;/li&gt;   &lt;li&gt;&lt;a href="http://www.gigamonkeys.com/book/"&gt;Practical Common Lisp &lt;/a&gt;by Peter Siebel&lt;/li&gt;   &lt;li&gt;&lt;a href="http://psg.com/%7Edlamkins/sl/cover.html"&gt;Successful Lisp&lt;/a&gt; by David Lamkins&lt;/li&gt; &lt;/ul&gt; Also, be sure to subscribe to the &lt;a href="http://planet.lisp.org/"&gt;Planet Lisp&lt;/a&gt; feed to get the latest and greatest information from the Lisp world in one, aggregated place.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113073096372663556?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113073096372663556/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113073096372663556' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113073096372663556'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113073096372663556'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/10/lispworks-446-introduction-movie.html' title='LispWorks 4.4.6 Introduction Movie'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113059412395939150</id><published>2005-10-29T06:49:00.000-07:00</published><updated>2005-10-29T06:55:23.960-07:00</updated><title type='text'>Handbook of Software Architecture</title><content type='html'>Did you know that Grady Booch is working on a new book called "Handbook of Software Architecture"? I just found out today. He's developing the book &lt;a href="http://www.booch.com/architecture/index.jsp"&gt;online&lt;/a&gt;.  There's also a &lt;a href="http://www.booch.com/architecture/blog.jsp"&gt;blog&lt;/a&gt; that has information about the book progress and other tasty tidbits.&lt;br /&gt;&lt;br /&gt;I really look forward to reading this book. We need more high-quality books on systems architecture. It's one of the hardest things to learn well because our knowledge of it is scattered in so many places. I'm excited because I'm sure if anyone can pull a good overview of the subject together, it's Grady Booch.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113059412395939150?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113059412395939150/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113059412395939150' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113059412395939150'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113059412395939150'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/10/handbook-of-software-architecture.html' title='Handbook of Software Architecture'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113059376910860065</id><published>2005-10-29T06:44:00.000-07:00</published><updated>2005-10-29T06:49:30.156-07:00</updated><title type='text'>LispWorks Personal 4.4.6 Release</title><content type='html'>&lt;a href="http://www.lispworks.com"&gt;LispWorks&lt;/a&gt; has released the &lt;a href="http://www.lispworks.com/downloads/index.html"&gt;LispWorks Personal 4.4.6&lt;/a&gt;.  There are some bug fixes, but perhaps the biggest news is that it now supports a larger image size.  Dave Fox of LispWorks &lt;a href="http://article.gmane.org/gmane.lisp.lispworks.general/4729"&gt;explained&lt;/a&gt;:&lt;br /&gt;&lt;pre&gt;&lt;blockquote&gt;"We often receive requests for a free Edition of LispWorks that can&lt;br /&gt;run larger programs, so here it is. LispWorks Personal Edition can now&lt;br /&gt;grow by more than twice as much as previous versions and so is&lt;br /&gt;suitable for a wide range of academic research and other&lt;br /&gt;non-commercial uses."&lt;/blockquote&gt;&lt;/pre&gt; Sweet.  LispWorks is a fantastic environment.  If you've been wanting to see what a professional Common Lisp environment is like, why wait any longer?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113059376910860065?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113059376910860065/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113059376910860065' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113059376910860065'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113059376910860065'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/10/lispworks-personal-446-release.html' title='LispWorks Personal 4.4.6 Release'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113055161905902987</id><published>2005-10-28T19:01:00.000-07:00</published><updated>2005-10-28T19:06:59.070-07:00</updated><title type='text'>Made With Secret Alien Technology</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://photos1.blogger.com/blogger/2742/632/1600/lisplogo_fancy_256.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://photos1.blogger.com/blogger/2742/632/320/lisplogo_fancy_256.png" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I absolutely love the new &lt;a href="http://www.lisperati.com/logo.html"&gt;Lisp logos&lt;/a&gt; that Conrad Barski has developed for use with Lisp projects.  It cracks me up. &lt;br /&gt;&lt;br /&gt;If you haven't checked out Conrad's &lt;a href="http://www.lisperati.com/casting.html"&gt;"Casting SPELs in Lisp"&lt;/a&gt;, you really should.  It's an intro to Lisp that leads you to build an adventure game.  Really good idea.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113055161905902987?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113055161905902987/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113055161905902987' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113055161905902987'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113055161905902987'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/10/made-with-secret-alien-technology.html' title='Made With Secret Alien Technology'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-113016940705814837</id><published>2005-10-24T08:52:00.000-07:00</published><updated>2005-10-24T08:56:47.086-07:00</updated><title type='text'>R&amp;D Making a Comeback - With New Rules</title><content type='html'>Computerworld reports on an &lt;a href="http://www.computerworld.com/softwaretopics/software/appdev/story/0,10801,105414,00.html"&gt;R&amp;D Revival&lt;/a&gt;. The article says that R&amp;amp;D is making a come back, but the rules have changed. Companies are now making sure that R&amp;D efforts are more targeted and the potential outcomes mesh with the company's business. The focus is still on rapid innovation because that remains a market differentiator for many companies.&lt;br /&gt;&lt;br /&gt;I'm glad that R&amp;amp;D is still valued. It seems like over the past couple of years all we've heard about is R&amp;D cuts, facilities being shut down, and research going overseas. (I guess the last point may still be true as more companies become multinational). It's refreshing to hear something positive about the R&amp;amp;D community.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-113016940705814837?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/113016940705814837/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=113016940705814837' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113016940705814837'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/113016940705814837'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/10/rd-making-comeback-with-new-rules.html' title='R&amp;D Making a Comeback - With New Rules'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-112975399515057013</id><published>2005-10-19T13:33:00.000-07:00</published><updated>2005-10-19T13:33:15.193-07:00</updated><title type='text'>Hybrid Open Source Business Models</title><content type='html'>TheServerSide has a reference to Zach Urlocker's blog article on &lt;a href="http://theserverside.com/blogs/thread.tss?thread_id=37150"&gt;Hybrid Open Source Business Models&lt;/a&gt;.  Zach points out how a hybrid business model is becoming more popular where companies have some portion of their offering that is Open Source Software.  It's an interesting model, and I would imagine that it's hard to pull off in practice.  Well, maybe pull it off right.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-112975399515057013?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/112975399515057013/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=112975399515057013' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112975399515057013'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112975399515057013'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/10/hybrid-open-source-business-models.html' title='Hybrid Open Source Business Models'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-112964397124597912</id><published>2005-10-18T06:59:00.000-07:00</published><updated>2005-10-18T06:59:31.286-07:00</updated><title type='text'>del.icio.us code?</title><content type='html'>From &lt;a href="http://radio.weblogs.com/0102385/2005/10/18.html#a885"&gt;Chris Double's Radio Weblog&lt;/a&gt;, &lt;a href="http://www.bigbold.com/snippets/"&gt;Snippets&lt;/a&gt; is a site where you can post snippets of code and categorize them by tagging them with keywords.  You can then share your code snippets.  It's very del.icio.us, but even more tasty because it's chocked full of code goodness.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-112964397124597912?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/112964397124597912/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=112964397124597912' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112964397124597912'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112964397124597912'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/10/delicious-code.html' title='del.icio.us code?'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-112847736934236935</id><published>2005-10-04T18:55:00.000-07:00</published><updated>2005-10-04T18:59:53.506-07:00</updated><title type='text'>Back To Firefox Again for the Second Time</title><content type='html'>Well, I've gone back to Firefox from Opera. I gave Opera a solid week. I like the browser and especially the M2 mail and news client. However, the feature set didn't compel me like it used to. Also, I found myself missing the compatibility (that's right, I said &lt;span style="font-style: italic;"&gt;compatibility&lt;/span&gt;) of Firefox.  Go figure.&lt;br /&gt;&lt;br /&gt;Interestingly enough, I didn't miss my extensions too much.  Hmmm...  Maybe I should clean out my extensions in Firefox and only add back the ones I really care about...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-112847736934236935?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/112847736934236935/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=112847736934236935' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112847736934236935'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112847736934236935'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/10/back-to-firefox-again-for-second-time.html' title='Back To Firefox Again for the Second Time'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-112847729357273865</id><published>2005-10-04T18:51:00.000-07:00</published><updated>2005-10-04T18:54:53.580-07:00</updated><title type='text'>Mighty Mouse and Firefox</title><content type='html'>I have been having a "problem" with my Apple Mighty Mouse in Firefox on my Mac. Instead of scrolling horizontally, moving the ball left and right made Firefox go forward and backward through history. I hated this action, and it's really been a nuisance to me.&lt;br /&gt;&lt;br /&gt;Tonight I decided to do something about it.  I found &lt;a href="http://www.macosxhints.com/article.php?story=20050821141856688"&gt;this article&lt;/a&gt; on macosxhints. The second entry seemed to work for me. I now don't have the forward and back scrolling problem and all is well.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-112847729357273865?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/112847729357273865/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=112847729357273865' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112847729357273865'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112847729357273865'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/10/mighty-mouse-and-firefox.html' title='Mighty Mouse and Firefox'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-112809473876824800</id><published>2005-09-30T08:38:00.000-07:00</published><updated>2005-09-30T08:38:58.800-07:00</updated><title type='text'>Junction Rocks</title><content type='html'>I just found a tool that rocks so hard it’ll make your grandma freak.&amp;nbsp;&amp;nbsp;I’ve wanted a tool to create symlinks on Windows for years; nay, perhaps a decade now.&amp;nbsp;&amp;nbsp;Fortunately, my friend &lt;a href="http://radio.weblogs.com/0117027/"&gt;Jeff &lt;/a&gt;turned me on to &lt;a href="http://www.sysinternals.com/Utilities/Junction.html"&gt;Junction&lt;/a&gt;.&amp;nbsp;&amp;nbsp;It’s small, it’s simple, it has no requirements.&amp;nbsp;&amp;nbsp;I like that.&lt;br/&gt;&lt;br/&gt;Now, I’m off to restructure my hard drive the way &lt;strong&gt;&lt;em&gt;I &lt;/em&gt;&lt;/strong&gt;want it with superfluous links.&amp;nbsp;&amp;nbsp;Love it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-112809473876824800?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/112809473876824800/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=112809473876824800' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112809473876824800'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112809473876824800'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/09/junction-rocks.html' title='Junction Rocks'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-112794021140216242</id><published>2005-09-28T13:43:00.000-07:00</published><updated>2005-09-28T13:43:31.403-07:00</updated><title type='text'>Blogger for Word</title><content type='html'>I’m not a big fan of Word, but the &lt;a href="http://buzz.blogger.com/bloggerforword.html"&gt;Blogger for Word&lt;/a&gt; add-on works extremely well.&amp;nbsp;&amp;nbsp;I’ve published all of today’s posts using it.&amp;nbsp;&amp;nbsp;It integrates into Word as a toolbar.&amp;nbsp;&amp;nbsp;You just create a new document containing your post and use the toolbar to publish.&amp;nbsp;&amp;nbsp;Simple and it works.&lt;br/&gt;&lt;br/&gt;I really need to invest some time and get Emacs set up to publish to Blogger.&amp;nbsp;&amp;nbsp;I just haven’t felt like investing the time yet.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-112794021140216242?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/112794021140216242/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=112794021140216242' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112794021140216242'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112794021140216242'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/09/blogger-for-word.html' title='Blogger for Word'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-112793999634060964</id><published>2005-09-28T13:39:00.000-07:00</published><updated>2005-09-28T13:39:56.356-07:00</updated><title type='text'>Treo 600: SD Card Not Recognized</title><content type='html'>Here’s a tip for you Treo 600 owners…&amp;nbsp;&amp;nbsp;If you’re Treo suddenly tells you that “The handheld cannot recognize this card.” when you are using an SD card, try putting the card in the slot and doing a soft reset.&amp;nbsp;&amp;nbsp;Once the device is reset, there’s a chance that the card will magically be recognized.&amp;nbsp;&amp;nbsp;Why?&amp;nbsp;&amp;nbsp;I don’t know why.&lt;br/&gt;&lt;br/&gt;Thanks to this &lt;a href="http://www.pdastreet.com/forums/archive/index.php/t-2499.html"&gt;PDA Street Forum post&lt;/a&gt; – it worked for me!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-112793999634060964?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/112793999634060964/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=112793999634060964' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112793999634060964'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112793999634060964'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/09/treo-600-sd-card-not-recognized.html' title='Treo 600: SD Card Not Recognized'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-112793840666133575</id><published>2005-09-28T13:13:00.000-07:00</published><updated>2005-09-28T13:13:26.666-07:00</updated><title type='text'>WOD of Issues</title><content type='html'>The Fishbowl has a great post about &lt;a href="http://fishbowl.pastiche.org/2005/09/28/the_wall_of_death"&gt;The Wall of Death&lt;/a&gt;.&amp;nbsp;&amp;nbsp;The idea is that you create a wall where you put issues, enhancements, etc. for the current release for a software product on a big wall.&amp;nbsp;&amp;nbsp;Developers take issues off the wall, work on them, then record the time it took on the paper.&amp;nbsp;&amp;nbsp;When they are done, they deposit the pieces of paper in a “done” pile.&amp;nbsp;&amp;nbsp;This leaves a very nice paper trail and shows your progress.&lt;br/&gt;&lt;br/&gt;I love this idea.&amp;nbsp;&amp;nbsp;I can think of at least a half dozen projects where I would have loved a Wall Of Death.&amp;nbsp;&amp;nbsp;(You could even casually call it the WOD which feels satisfying.)&amp;nbsp;&amp;nbsp;The WOD would have been much more satisfying to work with than a spreadsheet or online issue tracking system.&amp;nbsp;&amp;nbsp;&lt;br/&gt;&lt;br/&gt;The only draw back is that I’m a consultant.&amp;nbsp;&amp;nbsp;Most of the time I have to work in conditions that would not be friendly for a WOD.&amp;nbsp;&amp;nbsp;Now, if you could have a virtual WOD, that would be cool.&amp;nbsp;&amp;nbsp;Wait a minute, isn’t that what systems like Altassian’s should strive for?&amp;nbsp;&amp;nbsp;Maybe they should incorporate the WOD idea into the next version of their products.&amp;nbsp;&amp;nbsp;(&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-112793840666133575?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/112793840666133575/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=112793840666133575' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112793840666133575'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112793840666133575'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/09/wod-of-issues.html' title='WOD of Issues'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-112761065525614277</id><published>2005-09-24T17:57:00.000-07:00</published><updated>2005-09-24T18:11:43.426-07:00</updated><title type='text'>Singing Opera</title><content type='html'>Last month, &lt;a href="http://www.opera.com"&gt;Opera&lt;/a&gt; celebrated its 10th anniversary by giving away free licenses of their browser.  I took advantage of it because I was an Opera lover before Mozilla went 1.0.  I installed the latest version of Opera and licensed my copy.  I played for a bit, and then put it away.&lt;br /&gt;&lt;br /&gt;For several months now, I've noticed that my Firefox is leaking memory like crazy.  I don't know what's going on - is it an extension?  Is it the core?  I guess I could uninstall everything or use a different (new) profile to see if I have still the problem.  I also suspect Gmail's web interface.  Seems like if you leave that up for a couple of hours, the next thing you know Firefox is topping 80 - 100 MB of memory usage.&lt;br /&gt;&lt;br /&gt;Instead of playing around, I decided to give Opera another whirl and I've been enjoying it immensely.  I set up M2 (Opera's mail client) to do my Gmail via POP.  It's a very slick mail client.  I am not sure if it allows me to send HTML mail messages, but I'm not sure that I care either.  I love its speed and simplicity.  I also love the way it indexes mail and integrates so nicely with the browser.&lt;br /&gt;&lt;br /&gt;I've also started loving the Opera interface all over again.  The mouse gestures are awesome for when you don't want to take your hand off the mouse.  The keyboard shortcuts are equally awesome for when you don't want to take your hands off the keyboard.&lt;br /&gt;&lt;br /&gt;So, what's annoying?  Lack of sites that support it.  Gmail mostly works.  The dialog box where you type in someone's name to send them a message doesn't work from time to time.  But, M2 is working like a champ for that.&lt;br /&gt;&lt;br /&gt;Some sites just don't recognize the Opera browser, and they let you know it.  However, you can hit F12 and change Opera to emulate Firefox or IE.  The problem is that the emulation isn't complete (or completely broken in the case of IE).  However, it does let you fake out some of the sites some of the time.  Also, when I use Safari on my Mac, I have similar issues.&lt;br /&gt;&lt;br /&gt;All in all I'm having a great time with Opera.  I think I'm going to continue to use it as my preferred browser for another week or two and give it a fair shake.  It's certainly stable and doesn't seem to leak memory that badly.  And those two things are worth alot to me.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-112761065525614277?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/112761065525614277/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=112761065525614277' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112761065525614277'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112761065525614277'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/09/singing-opera.html' title='Singing Opera'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-112749418639534596</id><published>2005-09-23T09:49:00.000-07:00</published><updated>2005-09-23T09:49:46.396-07:00</updated><title type='text'>FT.com / Technology / Digital Business - How open source gave power to the people</title><content type='html'>&lt;a href="http://news.ft.com/cms/s/dcaa9ca4-28d8-11da-8a5e-00000e2511c8,dwp_uuid=863bb51c-1f76-11da-853a-00000e2511c8.html"&gt;FT.com / Technology / Digital Business - How open source gave power to the people&lt;/a&gt; is a nice piece on how Open Source Software (OSS) is empowering people in new ways that weren't previously possible.  There's also reference to how OSS is starting to change how corporations offer their products and services.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-112749418639534596?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/112749418639534596/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=112749418639534596' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112749418639534596'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112749418639534596'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/09/ftcom-technology-digital-business-how.html' title='FT.com / Technology / Digital Business - How open source gave power to the people'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-112749376207746963</id><published>2005-09-23T09:42:00.000-07:00</published><updated>2005-09-23T09:42:44.000-07:00</updated><title type='text'>More about declining interest in high tech education</title><content type='html'>&lt;a href="http://www.theglobeandmail.com/servlet/ArticleNews/TPStory/LAC/20050921/CATEC21/TPBusiness/"&gt;The Globe and Mail: Where jobs are and students aren't&lt;/a&gt; reports about how young people are not pursuing technical careers.  They site the technical bust as the reason.&lt;br /&gt;&lt;br /&gt;Whatever the reason, I'm afraid there is a growing possibility of real technical brain drain problem in the U.S.  Not only are we losing research funding to other countries, but we're also having trouble finding people to even pursue a technical career.  &lt;br /&gt;&lt;br /&gt;Argh.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-112749376207746963?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/112749376207746963/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=112749376207746963' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112749376207746963'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112749376207746963'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/09/more-about-declining-interest-in-high.html' title='More about declining interest in high tech education'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-112749234387955760</id><published>2005-09-23T09:17:00.000-07:00</published><updated>2005-09-23T09:19:03.886-07:00</updated><title type='text'>Linux Empowers Supervillians</title><content type='html'>&lt;a href="http://mirror1.spikedhumor.com/1209/SwitchLinux.swf"&gt;This&lt;/a&gt; cracked me up even though it completely lets our secret out...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-112749234387955760?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/112749234387955760/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=112749234387955760' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112749234387955760'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112749234387955760'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/09/linux-empowers-supervillians.html' title='Linux Empowers Supervillians'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-112687942353689760</id><published>2005-09-16T07:03:00.000-07:00</published><updated>2005-09-16T07:03:43.583-07:00</updated><title type='text'>Design-first vs. code-first</title><content type='html'>The Server Side has a hot thread on &lt;a href="http://www.theserverside.com/news/thread.tss?thread_id=36509"&gt;Design is not coding, coding is not design&lt;/a&gt;.  As you might imagine, it has all the trappings of a &lt;a href="http://c2.com/cgi-bin/wiki?HolyWar"&gt;Holy War&lt;/a&gt;.  There are some interesting posts, though.&lt;br /&gt;&lt;br /&gt;I think there's a misconception in the software world that there is some kind of &lt;a href="http://c2.com/cgi-bin/wiki?NoSilverBullet"&gt;silver bullet&lt;/a&gt; to making great software.  Sometimes languages are held up as a silver bullet.  Sometimes it's tools.  In this case it seems to be methodology, specifically design-first vs. code-first type of methodology.&lt;br /&gt;&lt;br /&gt;What do I think?  Well, I think it takes a team of dedicated, talented people to make great software.  It takes good ideas, good design, good project management, good code, and good customer support.  Without dedication, talent, direction, and sound practices it doesn't seem to me that any of the things you must be "good" at is possible.&lt;br /&gt;&lt;br /&gt;So, design-first vs. code-first?  Yes.  As long as it fits in the context of a good practice that allows your firm to make good software.  &lt;br /&gt;&lt;br /&gt;I would like to create a methodology called "Holistic Software Development".  It's mission statement would be something like "get good, hard working people to focus their talent and energy on turning great ideas into great software that empowers customers through excellent practices".  It would be a methodology framework that other methodologies could plug into - something like the &lt;a href="http://www.springframework.org/"&gt;Spring application framework&lt;/a&gt;.  But, it would tie them together in a way that supported it's mission statement.&lt;br /&gt;&lt;br /&gt;But, what do I know?&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-112687942353689760?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/112687942353689760/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=112687942353689760' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112687942353689760'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112687942353689760'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/09/design-first-vs-code-first.html' title='Design-first vs. code-first'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-112663725680067446</id><published>2005-09-13T11:47:00.000-07:00</published><updated>2005-09-13T11:47:36.846-07:00</updated><title type='text'>What Firefox and Mozilla users should know about the IDN buffer overflow security issue</title><content type='html'>Mozilla has released a security advisory about a buffer overflow problem in Firefox.  You can read about how to work around the issue &lt;a href="https://addons.mozilla.org/messages/307259.html"&gt;here&lt;/a&gt;.  The problem has to do with how Firefox handles local characters in an IDN domain name.  CNET has a write up &lt;a href="http://news.com.com/Mozilla+offers+temporary+fix+for+Firefox+flaw/2100-1002_3-5857511.html"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-112663725680067446?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/112663725680067446/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=112663725680067446' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112663725680067446'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112663725680067446'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/09/what-firefox-and-mozilla-users-should.html' title='What Firefox and Mozilla users should know about the IDN buffer overflow security issue'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-112465794086586592</id><published>2005-08-21T13:45:00.000-07:00</published><updated>2005-08-21T14:40:44.050-07:00</updated><title type='text'>Mighty Mouse</title><content type='html'>Apple's marketing is so powerful...  I first saw the &lt;a href="http://www.apple.com/mightymouse/"&gt;Mighty Mouse&lt;/a&gt; yesterday and I went out and bought one today. Yeah, call me a Mac Fanboy, a lemming, or a card carrying member of the Apple Cult. But I have an excuse!&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.apple.com/mightymouse/"&gt;&lt;img src="http://images.apple.com/mightymouse/gallery/images/mightymousehero20050802.jpg" height="200" width="320" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;See, here's the deal.  I've wanted a 3 button scrolling mouse for my Mac for 2 years.  I bought a &lt;a href="http://www.kensington.com/html/4769.html"&gt;Kensington Studio Mouse&lt;/a&gt; about a year and a half ago, but it really sucked. It's little scroll area didn't work well for me and it just didn't look as cool as the rest of my Mac. In fact, the last part is the problem. None of the other mice that have been out looked as cool as my Mac. So, I stuck with the Apple Pro Mouse that came with my iMac.&lt;br /&gt;&lt;br /&gt;But, seeing the Mighty Mouse made me realize I had to have one. It's just so cool. It's sleek. It's white. It matches my Mac. Plus, it gives me buttons.&lt;br /&gt;&lt;br /&gt;After I got the mouse, it took no time to install. I unplugged the Pro from my keyboard and stuck in the Mighty. Boom. Working. Then I installed the Mighty Mouse software so I could program the buttons. This required a restart, but it's forgivable. Mouse drivers are a bit low level and you can't just restart the window manager (Aqua) on the Mac.&lt;br /&gt;&lt;br /&gt;Once the Mighty Mouse software was installed, things got even better. By default the two top buttons are the primary click (as if you didn't have a left and a right), the middle is Dashboard, and the sides are Expose. I reprogrammed the top buttons to be left and right and left the others as is to see if I liked them. Two hours later, and I think I'm going to keep the middle and sides programmed to Dashboard and Expose.&lt;br /&gt;&lt;br /&gt;I have to say, I've really been missing out by having a single button mouse on the Mac. Just having the ability to scroll makes it feel like you can do things faster. The cool thing is that I can scroll vertically AND horizontally. Love it.&lt;br /&gt;&lt;br /&gt;Bottom line:  This mouse ROARS!*&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;* Obscure reference to &lt;a href="http://www.imdb.com/title/tt0053084/"&gt;The Mouse That Roared&lt;/a&gt;. I played Professor Kokintz in the play in 7th grade. I've never seen the film, but it seems like a must-see Peter Sellers performance.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-112465794086586592?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/112465794086586592/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=112465794086586592' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112465794086586592'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112465794086586592'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/08/mighty-mouse.html' title='Mighty Mouse'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-112326666217233058</id><published>2005-08-05T11:31:00.000-07:00</published><updated>2005-08-05T11:31:02.216-07:00</updated><title type='text'>Lisp programming and RSI</title><content type='html'>There's an interesting &lt;a href="http://groups-beta.google.com/group/comp.lang.lisp/browse_frm/thread/11636f057b7c23eb/33bc7c5651df38b0?tvc=1&amp;amp;q=Lisp programming and RSI&amp;amp;hl=en#33bc7c5651df38b0"&gt;thread&lt;/a&gt; on comp.lang.lisp about Repetitive Strain Injury and Lisp.  It's not the RSI or Lisp's relationship to it that is interesting.  People are posting lots of links and information about alternate keyboards and keyboard mappings.  If you're like me and interested in that kind of thing, check it out.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-112326666217233058?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/112326666217233058/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=112326666217233058' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112326666217233058'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112326666217233058'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/08/lisp-programming-and-rsi.html' title='Lisp programming and RSI'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-112325263096362372</id><published>2005-08-05T07:33:00.000-07:00</published><updated>2005-08-05T07:37:10.970-07:00</updated><title type='text'>SphereXP</title><content type='html'>Stuck in Windows? So am I. It's pretty boring. However, I just found a cool application that might make your life a little more entertaining. Check out &lt;a href="http://www.hamar.sk/sphere/"&gt;SphereXP&lt;/a&gt;! It's a 3D window manager that runs on top of Windows XP. It's very cool, and it only takes a few minutes to get the hang of it.&lt;br /&gt;&lt;br /&gt;I can't say much about it's stability or it's quirks because I've only been using it for 30 minutes. However, it sure makes switching from Visio to my browser entertaining! :-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-112325263096362372?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/112325263096362372/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=112325263096362372' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112325263096362372'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112325263096362372'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/08/spherexp.html' title='SphereXP'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-112324881928487381</id><published>2005-08-05T06:25:00.000-07:00</published><updated>2005-08-05T06:47:26.740-07:00</updated><title type='text'>What's Happening</title><content type='html'>The last coding project I was on using Spring and some other cool technologies ended abruptly about a month ago. The project was cut due to funding (rather the client didn't secure it before starting). So, I've moved on to another project.&lt;br /&gt;&lt;br /&gt;I'm currently working on a business process project. A "business process project" is where you go in to a business, map out their current process, and then make some recommendations for how they can improve. This is usually something that business analysts and Industrial Engineers are particularly suited for. I happen to be the latter.&lt;br /&gt;&lt;br /&gt;I haven't really practiced Industrial Engineering in the last 10 years or so, but this is my third process project in the last year. I think the reason is that I just happened to be familiar with the client and I know my way around manufacturing.&lt;br /&gt;&lt;br /&gt;I really prefer writing software. In fact, that's why I switched careers 10 years ago. When I was an engineer, I would go home at night and tinker with my computer. I would install &lt;a href="http://www.slackware.com/"&gt;Slackware &lt;/a&gt;on some old machines or perhaps sit down and hack out some &lt;a href="http://foldoc.doc.ic.ac.uk/foldoc/foldoc.cgi?Watcom+VX*REXX"&gt;VX*REXX&lt;/a&gt; toys.  In other words, I engineered by day and hacked by night.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;It's comin' back around again!&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;This is for the people of the sun!&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;It's comin' back around again! Uh!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;-- "People of the Sun" by Rage Against The Machine&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I'm back in that mode.  I go do my flowcharts by day, but by night I'm tinkering with &lt;a href="http://foldoc.doc.ic.ac.uk/foldoc/foldoc.cgi?query=CLOS"&gt;CLOS&lt;/a&gt;.  I use my Dell Latitude D800 by day, but by night I'm a Mac hacker.  I'm back to living a double life.&lt;br /&gt;&lt;br /&gt;So, I'll continue to lead my double life until October when my current project wraps up. After that, hopefully it will be back to software and one life to live.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-112324881928487381?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/112324881928487381/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=112324881928487381' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112324881928487381'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112324881928487381'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/08/whats-happening.html' title='What&apos;s Happening'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8954978.post-112188809171661437</id><published>2005-07-20T12:31:00.000-07:00</published><updated>2005-07-20T12:34:51.723-07:00</updated><title type='text'>Google Moon</title><content type='html'>&lt;a href="http://www.paoloamoroso.it/log/050720.html"&gt;A posting on Paolo Amoroso's blog &lt;/a&gt;made me aware of &lt;a href="http://moon.google.com/"&gt;Google Moon&lt;/a&gt;. This is a cool demonstration of how the Google Maps technology is "earth-independent". (Hopefully I just coined a phrase, but I suspect the science fiction community beat me to the punch decades ago.)&lt;br /&gt;&lt;br /&gt;In addition, check out the link to &lt;a href="http://earth.google.com/"&gt;Google Earth&lt;/a&gt;. I just downloaded it, and I don't have time to play right now. It looks like a hoot, though.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8954978-112188809171661437?l=tompierce.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tompierce.blogspot.com/feeds/112188809171661437/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8954978&amp;postID=112188809171661437' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112188809171661437'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8954978/posts/default/112188809171661437'/><link rel='alternate' type='text/html' href='http://tompierce.blogspot.com/2005/07/google-moon.html' title='Google Moon'/><author><name>Tom Pierce</name><uri>http://www.blogger.com/profile/16354145126416590562</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://photos-d.ak.facebook.com/photos-ak-sf2p/v136/87/120/634532898/n634532898_188359_9626.jpg'/></author><thr:total>0</thr:total></entry></feed>
