<?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-5423868836773411622</id><updated>2011-07-30T08:58:33.482-07:00</updated><title type='text'>Continuous Refactor</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://continuous-refactor.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://continuous-refactor.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Kelly Orr</name><uri>http://www.blogger.com/profile/05294657552964569098</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_nTDxczC5VxA/TAT_clUGlHI/AAAAAAAACXY/sqUJIEu7rQg/S220/KellyOrr.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>14</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5423868836773411622.post-3083768829851595416</id><published>2009-12-08T16:09:00.000-08:00</published><updated>2010-07-04T11:09:26.878-07:00</updated><title type='text'>Redirecting with web.config</title><content type='html'>&lt;p&gt;Here is how to redirect a web site to another location using &lt;font size="2" face="Courier"&gt;web.config&lt;/font&gt; in ASP.NET:&lt;/p&gt; &lt;div class="csharpcode"&gt; &lt;div class="csharpcode"&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&amp;lt;?xml version=&lt;span class="str"&gt;"1.0"&lt;/span&gt; encoding=&lt;span class="str"&gt;"UTF-8"&lt;/span&gt;?&amp;gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;&amp;lt;configuration&amp;gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;    &amp;lt;system.webServer&amp;gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;        &amp;lt;httpRedirect enabled=&lt;span class="str"&gt;"true"&lt;/span&gt; &lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;                      destination=&lt;span class="str"&gt;"http://www.digitalhoneycomb.com"&lt;/span&gt; &lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   6:  &lt;/span&gt;                      exactDestination=&lt;span class="str"&gt;"true"&lt;/span&gt; &lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   7:  &lt;/span&gt;                      httpResponseStatus=&lt;span class="str"&gt;"Permanent"&lt;/span&gt; /&amp;gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   8:  &lt;/span&gt;    &amp;lt;/system.webServer&amp;gt;&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   9:  &lt;/span&gt;&amp;lt;/configuration&amp;gt;&lt;/pre&gt;&lt;/div&gt;
&lt;style type="text/css"&gt;.csharpcode, .csharpcode pre
{
 font-size: small;
 color: black;
 font-family: consolas, "Courier New", courier, monospace;
 background-color: #ffffff;
 /*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
 background-color: #f4f4f4;
 width: 100%;
 margin: 0em;
}
.csharpcode .lnum { color: #606060; }
&lt;/style&gt;
&lt;/div&gt;
&lt;style type="text/css"&gt;.csharpcode, .csharpcode pre
{
 font-size: small;
 color: black;
 font-family: consolas, "Courier New", courier, monospace;
 background-color: #ffffff;
 /*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
 background-color: #f4f4f4;
 width: 100%;
 margin: 0em;
}
.csharpcode .lnum { color: #606060; }
&lt;/style&gt;

&lt;style type="text/css"&gt;.csharpcode, .csharpcode pre
{
 font-size: small;
 color: black;
 font-family: consolas, "Courier New", courier, monospace;
 background-color: #ffffff;
 /*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
 background-color: #f4f4f4;
 width: 100%;
 margin: 0em;
}
.csharpcode .lnum { color: #606060; }
&lt;/style&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5423868836773411622-3083768829851595416?l=continuous-refactor.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://continuous-refactor.blogspot.com/feeds/3083768829851595416/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/redirecting-with-webconfig.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/3083768829851595416'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/3083768829851595416'/><link rel='alternate' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/redirecting-with-webconfig.html' title='Redirecting with web.config'/><author><name>Kelly Orr</name><uri>http://www.blogger.com/profile/05294657552964569098</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_nTDxczC5VxA/TAT_clUGlHI/AAAAAAAACXY/sqUJIEu7rQg/S220/KellyOrr.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5423868836773411622.post-7333936993797773279</id><published>2009-07-23T09:41:00.000-07:00</published><updated>2010-07-04T11:08:58.363-07:00</updated><title type='text'>Zero to Plinqo in 90 minutes</title><content type='html'>&lt;p&gt;&lt;strong&gt;&lt;a href="http://www.codesmithtools.com"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; margin-left: 0px; border-top: 0px; margin-right: 0px; border-right: 0px" title="Plinqo" border="0" alt="Plinqo" align="left" src="http://lh6.ggpht.com/_nTDxczC5VxA/TDDHey7KkyI/AAAAAAAACvw/gEehKow4tWc/Plinqo%5B4%5D.jpg?imgmax=800" width="108" height="45"&gt;&lt;/a&gt;What is Plinqo? &lt;/strong&gt;&lt;a href="http://www.plinqo.com"&gt;Plinqo&lt;/a&gt; is a collection of CodeSmith templates designed to work with LINQ to SQL.&amp;nbsp; Here are the steps I took to go from knowing very little about Plinqo to being ready to implement in my next development project.&lt;br&gt;&lt;strong&gt;1) D&lt;/strong&gt;&lt;strong&gt;ownload a &lt;a href="http://www.codesmithtools.com/requesttrial/18"&gt;CodeSmith Trial&lt;/a&gt;&lt;/strong&gt;&lt;br&gt;&lt;strong&gt;2) Install CodeSmith&lt;/strong&gt;&lt;br&gt;&lt;strong&gt;3) Download &lt;a href="http://plinqo.com/Download.ashx"&gt;Plinqo&lt;/a&gt;&lt;/strong&gt;&lt;br&gt;&lt;strong&gt;4) Watch 16 minute &lt;a href="http://www.codesmithtools.com/video/plinqo-part-1-quick-start.html"&gt;Quick Start video&lt;/a&gt; &lt;/strong&gt;See notes below.&lt;strong&gt;&lt;br&gt;5) Watch 22 minute &lt;a href="http://www.codesmithtools.com/video/plinqo-part-2-feature-overview.html"&gt;Feature Overview video&lt;/a&gt; &lt;/strong&gt;See notes below. &lt;p&gt;&lt;strong&gt;Quick Start Video Notes&lt;/strong&gt; &lt;ul&gt; &lt;li&gt;Plinqo provides DBML, business entities, and manager/queries.  &lt;li&gt;Running the quick start generates three projects: Data, Test and UI.  &lt;li&gt;In the Data project there a .dbml file is generated along with /entities/ in single files and /managers/ folders.  &lt;li&gt;To use the Plinqo gernated projects in your project just add references to CodeSmith.Data and the auto-geneated .Data.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;strong&gt;Feature O&lt;/strong&gt;&lt;strong&gt;verview Video&lt;/strong&gt; &lt;ul&gt; &lt;li&gt;The DBML inherits database schema changes  &lt;li&gt;The DBML persists changes to DBML mappings&amp;nbsp; &lt;li&gt;Meta data updates are perserved through merging  &lt;li&gt;Plinqo can be used to create a powerful business rules engine&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Plinqo overs a lot of automated horsepower in wiring up database schema to business objects.&amp;nbsp; Templates can be generated in both C# and VB.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5423868836773411622-7333936993797773279?l=continuous-refactor.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://continuous-refactor.blogspot.com/feeds/7333936993797773279/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/zero-to-plinqo-in-90-minutes.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/7333936993797773279'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/7333936993797773279'/><link rel='alternate' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/zero-to-plinqo-in-90-minutes.html' title='Zero to Plinqo in 90 minutes'/><author><name>Kelly Orr</name><uri>http://www.blogger.com/profile/05294657552964569098</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_nTDxczC5VxA/TAT_clUGlHI/AAAAAAAACXY/sqUJIEu7rQg/S220/KellyOrr.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_nTDxczC5VxA/TDDHey7KkyI/AAAAAAAACvw/gEehKow4tWc/s72-c/Plinqo%5B4%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5423868836773411622.post-2145800687671157320</id><published>2009-05-26T15:52:00.000-07:00</published><updated>2010-07-04T11:08:35.761-07:00</updated><title type='text'>FogBugz SQL Maintenance</title><content type='html'>&lt;p&gt;I have used and have been an avid fan of FogBugz for years.&amp;nbsp; One quirk that I experience when running on Microsoft SQL Standard or SQL Express is that the database grows very quickly.&amp;nbsp; Even so, it can be reduced back to an acceptable size by running a simple script.&amp;nbsp; I am now running FogBugz 6.1 and using SQL Server 2008 Express, 64-bit. &lt;p&gt;Here is the SQL maintenance script:&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;USE&lt;/span&gt; FogBugz
&lt;span class="kwrd"&gt;GO&lt;/span&gt;
&lt;span class="kwrd"&gt;ALTER&lt;/span&gt; &lt;span class="kwrd"&gt;DATABASE&lt;/span&gt; FogBugz
&lt;span class="kwrd"&gt;SET&lt;/span&gt; RECOVERY SIMPLE;
&lt;span class="kwrd"&gt;GO&lt;/span&gt;
&lt;span class="kwrd"&gt;DBCC&lt;/span&gt; SHRINKFILE ([FOGBUGZ &lt;span class="kwrd"&gt;DATABASE&lt;/span&gt; &lt;span class="kwrd"&gt;FILE&lt;/span&gt; DatabaseName],1);
&lt;span class="kwrd"&gt;DBCC&lt;/span&gt; SHRINKFILE ([FOGBUGZ LOG &lt;span class="kwrd"&gt;FILE&lt;/span&gt; LogFileName],1);
&lt;span class="kwrd"&gt;GO&lt;/span&gt;
&lt;span class="kwrd"&gt;ALTER&lt;/span&gt; &lt;span class="kwrd"&gt;DATABASE&lt;/span&gt; FogBugz
&lt;span class="kwrd"&gt;SET&lt;/span&gt; RECOVERY &lt;span class="kwrd"&gt;FULL&lt;/span&gt;
GO&lt;/pre&gt;
&lt;style type="text/css"&gt;.csharpcode, .csharpcode pre
{
 font-size: small;
 color: black;
 font-family: consolas, "Courier New", courier, monospace;
 background-color: #ffffff;
 /*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
 background-color: #f4f4f4;
 width: 100%;
 margin: 0em;
}
.csharpcode .lnum { color: #606060; }
&lt;/style&gt;

&lt;p&gt;Since I am running SQL Express edition, there is no built-in support to run maintenance packages, so I use the command line OSQL to run the script above.
&lt;p&gt;Here is the command line:&lt;pre class="csharpcode"&gt;osql -ic:\tools\fb_shrink.sql -E -S.\SQLEXPRESS -oc:\tools\fogbugz_shrink_results.txt&lt;/pre&gt;
&lt;style type="text/css"&gt;.csharpcode, .csharpcode pre
{
 font-size: small;
 color: black;
 font-family: consolas, "Courier New", courier, monospace;
 background-color: #ffffff;
 /*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
 background-color: #f4f4f4;
 width: 100%;
 margin: 0em;
}
.csharpcode .lnum { color: #606060; }
&lt;/style&gt;

&lt;p&gt;I saved that command in a BAT file and then scheduled using the system scheduled tasks to be executed once daily.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5423868836773411622-2145800687671157320?l=continuous-refactor.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://continuous-refactor.blogspot.com/feeds/2145800687671157320/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/fogbugz-sql-maintenance.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/2145800687671157320'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/2145800687671157320'/><link rel='alternate' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/fogbugz-sql-maintenance.html' title='FogBugz SQL Maintenance'/><author><name>Kelly Orr</name><uri>http://www.blogger.com/profile/05294657552964569098</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_nTDxczC5VxA/TAT_clUGlHI/AAAAAAAACXY/sqUJIEu7rQg/S220/KellyOrr.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5423868836773411622.post-3780890517236306231</id><published>2009-04-16T17:23:00.000-07:00</published><updated>2010-07-04T11:08:16.422-07:00</updated><title type='text'>What to do with old software</title><content type='html'>&lt;p&gt;&lt;a href="http://lh6.ggpht.com/_nTDxczC5VxA/TDDIlOKBbXI/AAAAAAAACv8/4vG-EO7LBiM/s1600-h/OldSoftware%5B3%5D.jpg"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; margin-left: 0px; border-top: 0px; margin-right: 0px; border-right: 0px" title="OldSoftware" border="0" alt="OldSoftware" align="left" src="http://lh5.ggpht.com/_nTDxczC5VxA/TDDIlft3HsI/AAAAAAAACwA/ddEfInfbQH8/OldSoftware_thumb%5B1%5D.jpg?imgmax=800" width="134" height="102"&gt;&lt;/a&gt; Podcast #15 from IBM Fellow Grady Booch explores the &lt;a href="http://www2.computer.org/portal/web/computingnow/onarchitecture"&gt;Nine Things to Do With Old Software&lt;/a&gt;.&amp;nbsp; Here is the list, but you'll need to listen to his &lt;a href="http://www2.computer.org/portal/web/computingnow/onarchitecture"&gt;podcast&lt;/a&gt; to get the dialogue, discussion and details.  &lt;p&gt;1) Abandon it.&lt;br&gt;2) Give it away.&lt;br&gt;3) Ignore it.&lt;br&gt;4) Put it on life support&lt;br&gt;5) Rewrite it.&lt;br&gt;6) Harvest from it.&lt;br&gt;7) Wrap it up.&lt;br&gt;8) Transform it.&lt;br&gt;9) Preserve it.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5423868836773411622-3780890517236306231?l=continuous-refactor.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://continuous-refactor.blogspot.com/feeds/3780890517236306231/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/what-to-do-with-old-software.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/3780890517236306231'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/3780890517236306231'/><link rel='alternate' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/what-to-do-with-old-software.html' title='What to do with old software'/><author><name>Kelly Orr</name><uri>http://www.blogger.com/profile/05294657552964569098</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_nTDxczC5VxA/TAT_clUGlHI/AAAAAAAACXY/sqUJIEu7rQg/S220/KellyOrr.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_nTDxczC5VxA/TDDIlft3HsI/AAAAAAAACwA/ddEfInfbQH8/s72-c/OldSoftware_thumb%5B1%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5423868836773411622.post-8248574063075862428</id><published>2009-04-16T16:56:00.000-07:00</published><updated>2010-07-04T11:07:56.791-07:00</updated><title type='text'>You are what you read</title><content type='html'>&lt;p&gt;&lt;a href="http://lh5.ggpht.com/_nTDxczC5VxA/TDDIaIfUrqI/AAAAAAAACv0/ANg7pwtHTTM/s1600-h/YouAreWhatYouRead%5B3%5D.jpg"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; margin-left: 0px; border-top: 0px; margin-right: 0px; border-right: 0px" title="YouAreWhatYouRead" border="0" alt="YouAreWhatYouRead" align="left" src="http://lh6.ggpht.com/_nTDxczC5VxA/TDDIapYLq9I/AAAAAAAACv4/Ka5edvChszw/YouAreWhatYouRead_thumb%5B1%5D.jpg?imgmax=800" width="210" height="207"&gt;&lt;/a&gt; Philippe Kruchtenn at the University of British Columbia published an article entitled &lt;a href="http://www2.computer.org/portal/c/document_library/get_file?uuid=3a038e2b-87e0-4cee-9f31-ff9de4079ac2&amp;amp;groupId=53319"&gt;&lt;em&gt;You Are What You Read&lt;/em&gt;&lt;/a&gt; in the Career Development section of IEEE&lt;em&gt;Software&lt;/em&gt;, March/April 2009.&amp;nbsp; In the article he indicates that his favorite interview question is to ask the candicate what they have read lately.&amp;nbsp; He goes on to discuss &lt;em&gt;what &lt;/em&gt;to read: books, journals, blogs; &lt;em&gt;when &lt;/em&gt;to read; and &lt;em&gt;how to retain&lt;/em&gt; what you've read.&amp;nbsp; He develops the concept of a fieldstone to use a sort of bookmark with notes.&amp;nbsp; Near the conclusion of the article is a real gem, a link to a list of the &lt;a href="http://knol.google.com/k/jurgen-appelo/top-100-best-software-engineering-books/z7e4mx2g6lir/3#"&gt;Top 100 Best Software Engineering Books&lt;/a&gt; as listed by &lt;a href="http://www.noop.nl/about-the-author.html"&gt;Jurgen Appello&lt;/a&gt;, the CIO at ISM eCompany in The Netherlands.&amp;nbsp; I noticed that the author of the book I recently reviewed, Steve McConnell, has four books in the top 100 list with &lt;em&gt;Software Project Survival Guide&lt;/em&gt; as #47. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5423868836773411622-8248574063075862428?l=continuous-refactor.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://continuous-refactor.blogspot.com/feeds/8248574063075862428/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/you-are-what-you-read.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/8248574063075862428'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/8248574063075862428'/><link rel='alternate' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/you-are-what-you-read.html' title='You are what you read'/><author><name>Kelly Orr</name><uri>http://www.blogger.com/profile/05294657552964569098</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_nTDxczC5VxA/TAT_clUGlHI/AAAAAAAACXY/sqUJIEu7rQg/S220/KellyOrr.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_nTDxczC5VxA/TDDIapYLq9I/AAAAAAAACv4/Ka5edvChszw/s72-c/YouAreWhatYouRead_thumb%5B1%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5423868836773411622.post-422686876355361040</id><published>2009-04-14T15:39:00.000-07:00</published><updated>2010-07-04T11:07:38.757-07:00</updated><title type='text'>Software Project Survival Guide</title><content type='html'>&lt;table border="0" cellspacing="2" cellpadding="2" width="100%"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="124"&gt;&lt;iframe style="width: 120px; height: 240px" src="http://rcm.amazon.com/e/cm?t=kelorr-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=1572316217&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" frameborder="0"&gt;&lt;/iframe&gt;&lt;/td&gt; &lt;td valign="top" width="715"&gt;I just finished an excellent book by software project management guru and author &lt;a href="http://stevemcconnell.com/"&gt;Steve McConnell&lt;/a&gt;. After over twelve years in the IT industry as a developer, business analyst, team leader, project manager, architect, engineer and consultant, I was expecting this book to a be a good review and in many ways it was. But as the title implies, it is an excellent &lt;em&gt;guide&lt;/em&gt;. It took me through areas of the trade that I am very familiar with and it introduced me to a few more tools and techniques that I'm anxious to put to use. As the author describes, he uses three main references in writing the book: &lt;a href="http://en.wikipedia.org/wiki/CMMI"&gt;The Capability Maturity Model Integration&lt;/a&gt; (CMMI) from the&lt;a href="http://www.sei.cmu.edu/"&gt;Software Engineering Institute&lt;/a&gt; (SEI) at Carnegie Mellon University in Pittsburgh PA, NASA Software Engineering Laboratory's (SEL's) Recommended Approach to Software Development, Revision 3, and third, his own experience which itself is extensive.&amp;nbsp; I highly recommend this book to any one leading or supporting software development projects.&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/5423868836773411622-422686876355361040?l=continuous-refactor.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://continuous-refactor.blogspot.com/feeds/422686876355361040/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/software-project-survival-guide.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/422686876355361040'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/422686876355361040'/><link rel='alternate' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/software-project-survival-guide.html' title='Software Project Survival Guide'/><author><name>Kelly Orr</name><uri>http://www.blogger.com/profile/05294657552964569098</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_nTDxczC5VxA/TAT_clUGlHI/AAAAAAAACXY/sqUJIEu7rQg/S220/KellyOrr.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5423868836773411622.post-669492018104249264</id><published>2009-01-08T16:36:00.000-08:00</published><updated>2010-07-04T11:07:16.989-07:00</updated><title type='text'>Free Tools to Build a Web Presence</title><content type='html'>&lt;p&gt;In the last month and a half I've built out a launch page site at KellyOrr.com, a professional blog at ContinuousRefactor.com, a personal blog at 43five.com and a photo stream at Fotographiti.com.&amp;nbsp; Aside from the hosting space, I have used a suite of free tools.&amp;nbsp; Here is the list:&lt;br&gt;&lt;a href="http://www.retaggr.com"&gt;Retaggr&lt;/a&gt; - the Definitive Online Profile.&amp;nbsp; This service dynamically builds and serves out the badge that appears on KellyOrr.com and ContinuousRefactor.com with a collection of logos for each social network on online service that I use.&amp;nbsp; It shows a brief description of who I am, my picture and my last Twitter update.&lt;br&gt;&lt;a href="http://www.facebook.com"&gt;Facebook&lt;/a&gt; - helps you connect and share with the people in your life.&amp;nbsp; This site is primarly used for personal social networking.&amp;nbsp; It enables you to link with colleagues and friends and share udpates, photos and Facebook-enabled games.&lt;br&gt;&lt;a href="http://www.linkedin.com"&gt;LinkedIn&lt;/a&gt; - Over 30 million professionals use LinkedIn to exchange information, ideas and opportunities.&amp;nbsp; The network enables users to stay updates about colleagues as they move between jobs.&amp;nbsp; I used it to keep an ever-current online resume of my professional activities.&lt;br&gt;&lt;a href="http://www.twitter.com"&gt;Twitter&lt;/a&gt;. I often call this micro-blogging.&amp;nbsp; Twitter enables you to update your status from anywhere you have access to a web browser.&amp;nbsp; &lt;br&gt;&lt;a href="http://www.ping.fm"&gt;Ping.fm&lt;/a&gt; - a simple service that makes updating your social networks a snap.&amp;nbsp; I type my updates into the website at Ping.fm and each social network that I have identified in my account is updated automatically.&lt;br&gt;&lt;a href="http://www.flickr.com"&gt;Flickr&lt;/a&gt; - a Yahoo! service for storing pictures online.&amp;nbsp; Admittedly, I do pay for the Pro version of this service, the free version is very powerful and only puts limits on daily uploads.&amp;nbsp; &lt;br&gt;&lt;a href="http://www.flickriver.com"&gt;Flickriver&lt;/a&gt; - this service creates a photo stream of pictures from a flickr account.&amp;nbsp; I like how it presents the pictures and allows users to search by keywords and sort by tags.&lt;br&gt;&lt;a href="http://www.blogengine.net"&gt;BlogEngine.NET&lt;/a&gt; -- BE.N, as it's often referred to by fellow developers, is my blog software of choice.&amp;nbsp; It’s simple, effective, skin-able, written in .NET and free.&amp;nbsp; I run my personal and professional blogs from it.&lt;br&gt;&lt;a href="http://www.skype.com"&gt;Skype&lt;/a&gt; -- I used to pay more than $50 per month for a land line and dial tone with no voicemail or caller ID out here on the countryside.&amp;nbsp; Now that land-based high speed Internet is available, I got rid of my home-office land line and use Skype instead.&amp;nbsp; For a dedicated number, I pay about $5 a quarter!&amp;nbsp; Skype-to-Skype calls are free and people can call my Skype number from anywhere in the world and I can take the call anywhere in the world that I can get access to the Internet and Skype.&amp;nbsp; I've used the service and my account in Germany and Russia with no problems.&lt;br&gt;&lt;a href="http://www.gmail.com"&gt;Gmail&lt;/a&gt; -- For years I insisted on using my own domain names and Microsoft Outlook for email.&amp;nbsp; I still use my own domain names, but I got rid of Outlook when I realized I have access to Google’s search horsepower in a GMail account.&amp;nbsp; I no longer have hundreds of nested folders that I sort mail into.&amp;nbsp; All of my mail gets tagged and added to a single archive folder.&amp;nbsp; Now I search instead of sort.&lt;br&gt;&lt;a href="http://www.amazon.com"&gt;Amazon.com&lt;/a&gt; -- I signed up for an Amazon.com Associate account.&amp;nbsp; When I write book reviews or list books referenced in talks that I've attended, the pictures of the books come from Amazon.&amp;nbsp; If a reader clicks the book, they are transferred over to Amazon and if they buy the book, I receive a commission from Amazon.&lt;br&gt;&lt;a href="http://www.google.com/analytics"&gt;Google Analytics&lt;/a&gt; -- I've used several web traffic analytics tools over the years, but they all pale in comparison to Google Analytics.&amp;nbsp; The basic version is extremely powerful and, of course, free.&amp;nbsp; Once you sign up for your account, Google will generate a simple snippet of code for you to add to your website.&amp;nbsp; That code will send information about each visitor to Google for analysis.&amp;nbsp; The aggregated data is presented in numerous reports for your review via a web interface.&lt;br&gt;&lt;a href="http://www.Clustrmaps.com"&gt;Clustrmaps&lt;/a&gt; -- This service provides a push pin style map of where your readers are located.&amp;nbsp; The more visitors you have from a location, the bigger the head of the push pin.&amp;nbsp; This map is available as a dynamic graphic to include on your site.&amp;nbsp; The service is free.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5423868836773411622-669492018104249264?l=continuous-refactor.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://continuous-refactor.blogspot.com/feeds/669492018104249264/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://continuous-refactor.blogspot.com/2009/01/free-tools-to-build-web-presence.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/669492018104249264'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/669492018104249264'/><link rel='alternate' type='text/html' href='http://continuous-refactor.blogspot.com/2009/01/free-tools-to-build-web-presence.html' title='Free Tools to Build a Web Presence'/><author><name>Kelly Orr</name><uri>http://www.blogger.com/profile/05294657552964569098</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_nTDxczC5VxA/TAT_clUGlHI/AAAAAAAACXY/sqUJIEu7rQg/S220/KellyOrr.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5423868836773411622.post-1597114083502151985</id><published>2009-01-08T05:40:00.000-08:00</published><updated>2010-07-04T11:06:54.318-07:00</updated><title type='text'>VMWare Server on a Fresh OS Install</title><content type='html'>&lt;p&gt;&lt;a href="http://lh3.ggpht.com/_nTDxczC5VxA/TDDJvUup3EI/AAAAAAAACwE/xO630e-aHz8/s1600-h/VMWareProductInstallation%5B3%5D.jpg"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; margin-left: 0px; border-top: 0px; margin-right: 0px; border-right: 0px" title="VMWareProductInstallation" border="0" alt="VMWareProductInstallation" align="left" src="http://lh3.ggpht.com/_nTDxczC5VxA/TDDJwe11H2I/AAAAAAAACwI/FIGQwxi5fj4/VMWareProductInstallation_thumb%5B1%5D.jpg?imgmax=800" width="244" height="77"&gt;&lt;/a&gt; I've installed VMWare server on several freshly built hardware servers over the past year.&amp;nbsp; I'm still tripped up by the message that often pops up: "The system administrator has set policies to prevent this installation."&amp;nbsp; Here are the steps to adjust the local security policy to allow the installation: &lt;p&gt;1) Start/Administrative Tools/Local Security Policy&lt;br&gt;2) Right Click on 'Software Restriction Policies' and select 'New Software Restriction policies'&lt;br&gt;3) Double click 'Enforcement'&lt;br&gt;4) Select "All users except local administrators"&lt;br&gt;5) Exit Local Security Settings&lt;br&gt;4) Click OK&lt;br&gt;5) You will not be prompted to reboot, but you should.&amp;nbsp; Reboot. &lt;p&gt;I tried to run GPUPDATE to update the global and local policies instead of rebooting, but it didn't work.&amp;nbsp; I still ultimately had to reboot.&amp;nbsp; I installed VMWare then still had to reboot again.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5423868836773411622-1597114083502151985?l=continuous-refactor.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://continuous-refactor.blogspot.com/feeds/1597114083502151985/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/vmware-server-on-fresh-os-install.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/1597114083502151985'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/1597114083502151985'/><link rel='alternate' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/vmware-server-on-fresh-os-install.html' title='VMWare Server on a Fresh OS Install'/><author><name>Kelly Orr</name><uri>http://www.blogger.com/profile/05294657552964569098</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_nTDxczC5VxA/TAT_clUGlHI/AAAAAAAACXY/sqUJIEu7rQg/S220/KellyOrr.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_nTDxczC5VxA/TDDJwe11H2I/AAAAAAAACwI/FIGQwxi5fj4/s72-c/VMWareProductInstallation_thumb%5B1%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5423868836773411622.post-3882635713921110947</id><published>2009-01-07T04:46:00.000-08:00</published><updated>2010-07-04T11:06:26.861-07:00</updated><title type='text'>Installing TortoiseSVN Updates</title><content type='html'>&lt;p&gt;&lt;a href="http://lh3.ggpht.com/_nTDxczC5VxA/TDDKMAjGN3I/AAAAAAAACwM/X0SLkDDG2rw/s1600-h/TortoiseSVN%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; margin-left: 0px; border-top: 0px; margin-right: 0px; border-right: 0px" title="TortoiseSVN" border="0" alt="TortoiseSVN" align="left" src="http://lh3.ggpht.com/_nTDxczC5VxA/TDDKNNcmhrI/AAAAAAAACwQ/K5tv-sssTEk/TortoiseSVN_thumb%5B1%5D.png?imgmax=800" width="244" height="37"&gt;&lt;/a&gt; For whatever reason, the Tortoise update notices like the one shown here are always intimidating to me.&amp;nbsp; I right click and select 'SVN Update' and get the update checker pop-up.&amp;nbsp; I think, "What? There is another update?&amp;nbsp; I'm not running the newest version?&amp;nbsp; What am I missing?&amp;nbsp; Was there something in the last versions that could be a risk to me?&amp;nbsp; How long will this take to update?&amp;nbsp; Where do I go again and what do I do?"&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_nTDxczC5VxA/TDDKNdiPlxI/AAAAAAAACwU/tb6AfLhzwkw/s1600-h/CheckForUpdates%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; margin-left: 0px; border-top: 0px; margin-right: 0px; border-right: 0px" title="CheckForUpdates" border="0" alt="CheckForUpdates" align="left" src="http://lh3.ggpht.com/_nTDxczC5VxA/TDDKN4cvqDI/AAAAAAAACwY/8asUzYw-P6k/CheckForUpdates_thumb%5B1%5D.png?imgmax=800" width="244" height="183"&gt;&lt;/a&gt; It's quite simple really.&amp;nbsp; Here are the steps:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;Notice the pop-up and think "Gee, I should update this.&amp;nbsp; It'll only take a minute."  &lt;li&gt;Browse out to http://tortoisesvn.com and click the 'Download' link at the top of the page.  &lt;li&gt;Scroll down and select the version needed for your computer.  &lt;li&gt;Save the file.&amp;nbsp; I prefer to just put it on my desktop so I can easily find it again.  &lt;li&gt;Double click and walk through the installation.  &lt;li&gt;Reboot.&amp;nbsp; Done.&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5423868836773411622-3882635713921110947?l=continuous-refactor.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://continuous-refactor.blogspot.com/feeds/3882635713921110947/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/installing-tortoisesvn-updates.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/3882635713921110947'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/3882635713921110947'/><link rel='alternate' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/installing-tortoisesvn-updates.html' title='Installing TortoiseSVN Updates'/><author><name>Kelly Orr</name><uri>http://www.blogger.com/profile/05294657552964569098</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_nTDxczC5VxA/TAT_clUGlHI/AAAAAAAACXY/sqUJIEu7rQg/S220/KellyOrr.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_nTDxczC5VxA/TDDKNNcmhrI/AAAAAAAACwQ/K5tv-sssTEk/s72-c/TortoiseSVN_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5423868836773411622.post-6943064638210483786</id><published>2008-12-11T17:23:00.000-08:00</published><updated>2010-07-04T11:06:05.977-07:00</updated><title type='text'>ASP.NET Chart Control, A First Look</title><content type='html'>&lt;p&gt;&lt;a href="http://lh3.ggpht.com/_nTDxczC5VxA/TDDKsvuosHI/AAAAAAAACwc/maivcs-1NCM/s1600-h/ASPNETChart%5B4%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; margin-left: 0px; border-top: 0px; margin-right: 0px; border-right: 0px" title="ASPNETChart" border="0" alt="ASPNETChart" align="right" src="http://lh5.ggpht.com/_nTDxczC5VxA/TDDKtanjCEI/AAAAAAAACwg/5C3nEQYGJ88/ASPNETChart_thumb%5B2%5D.png?imgmax=800" width="244" height="176"&gt;&lt;/a&gt;&lt;a href="http://lh3.ggpht.com/_nTDxczC5VxA/TDDKtpp0dgI/AAAAAAAACwk/qlxypfNSIZY/s1600-h/MSASPNET%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; margin-left: 0px; border-top: 0px; margin-right: 0px; border-right: 0px" title="MSASPNET" border="0" alt="MSASPNET" align="left" src="http://lh5.ggpht.com/_nTDxczC5VxA/TDDKuC5owTI/AAAAAAAACwo/t2aAtaQ-HFI/MSASPNET_thumb%5B1%5D.png?imgmax=800" width="112" height="48"&gt;&lt;/a&gt; Several of my colleagues referred me to Scott Gu's blog entry on ASP.NET Chart Component for the .NET Framework 3.5.&amp;nbsp; I had time to take a first look tonight.&amp;nbsp; I downloaded the component, the Visual Studio 2008 tool support and the sample project.&amp;nbsp; Each package installed easily.&amp;nbsp; I copied the sample project into the IIS directory on Vista and after encountering several error messages, I set the directory to be an application.&amp;nbsp; The first look is very impressive.&amp;nbsp; I've purchased packages from Infragistics and DotNetCharting over the last four years and this free component easily meets or beats quality and quantity of charting options offered by those packages.&amp;nbsp; &lt;p&gt; Read Scott Gu's &lt;a href="http://weblogs.asp.net/scottgu/archive/2008/11/24/new-asp-net-charting-control-lt-asp-chart-runat-quot-server-quot-gt.aspx"&gt;blog entry&lt;/a&gt;&lt;br&gt;Download &lt;a href="http://www.asp.net/Downloads/3.5-SP1/"&gt;ASP.NET 3.5 SP1&lt;/a&gt;&lt;br&gt;Download the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=130f7986-bf49-4fe5-9ca8-910ae6ea442c&amp;amp;DisplayLang=en"&gt;Control&lt;/a&gt;&lt;br&gt;Download &lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=1D69CE13-E1E5-4315-825C-F14D33A303E9&amp;amp;displaylang=en"&gt;VS2008 Tool Support&lt;/a&gt;&lt;br&gt;Download the &lt;a href="http://code.msdn.microsoft.com/mschart/Release/ProjectReleases.aspx?ReleaseId=1591"&gt;sample project&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5423868836773411622-6943064638210483786?l=continuous-refactor.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://continuous-refactor.blogspot.com/feeds/6943064638210483786/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/aspnet-chart-control-first-look.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/6943064638210483786'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/6943064638210483786'/><link rel='alternate' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/aspnet-chart-control-first-look.html' title='ASP.NET Chart Control, A First Look'/><author><name>Kelly Orr</name><uri>http://www.blogger.com/profile/05294657552964569098</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_nTDxczC5VxA/TAT_clUGlHI/AAAAAAAACXY/sqUJIEu7rQg/S220/KellyOrr.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_nTDxczC5VxA/TDDKtanjCEI/AAAAAAAACwg/5C3nEQYGJ88/s72-c/ASPNETChart_thumb%5B2%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5423868836773411622.post-2219940523199159617</id><published>2008-12-09T17:32:00.000-08:00</published><updated>2010-07-04T11:05:50.125-07:00</updated><title type='text'>Reducing the size of a SQL transaction log</title><content type='html'>&lt;p&gt;I used Microsoft SQL Server quite a bit and have been stuck numerous times on an ever growing transaction log.&amp;nbsp; After much pounding on the server this evening I once again found the magic commands.&amp;nbsp; The commands are executed in Query Analyzer or Management Studio after a full backup of the database. &lt;div class="csharpcode"&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="kwrd"&gt;BACKUP&lt;/span&gt; LOG &amp;lt;database_name&amp;gt; &lt;span class="kwrd"&gt;WITH&lt;/span&gt; TRUNCATE_ONLY&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;&lt;span class="kwrd"&gt;DBCC&lt;/span&gt; SHRINKFILE(&amp;lt;logical &lt;span class="kwrd"&gt;file&lt;/span&gt; name&amp;gt;,0)&lt;/pre&gt;&lt;/div&gt;
&lt;style type="text/css"&gt;.csharpcode, .csharpcode pre
{
 font-size: small;
 color: black;
 font-family: consolas, "Courier New", courier, monospace;
 background-color: #ffffff;
 /*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
 background-color: #f4f4f4;
 width: 100%;
 margin: 0em;
}
.csharpcode .lnum { color: #606060; }
&lt;/style&gt;

&lt;p&gt;With a command line backup:
&lt;div class="csharpcode"&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="kwrd"&gt;BACKUP&lt;/span&gt; &lt;span class="kwrd"&gt;DATABASE&lt;/span&gt; &amp;lt;database_name&amp;gt; &lt;span class="kwrd"&gt;TO&lt;/span&gt; "&amp;lt;&lt;span class="kwrd"&gt;path&lt;/span&gt; &lt;span class="kwrd"&gt;to&lt;/span&gt; &lt;span class="kwrd"&gt;backup&lt;/span&gt; location&amp;gt;"&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;&lt;span class="kwrd"&gt;BACKUP&lt;/span&gt; &lt;span class="kwrd"&gt;TRAN&lt;/span&gt; &amp;lt;database_name&amp;gt; &lt;span class="kwrd"&gt;TO&lt;/span&gt; "&lt;span class="kwrd"&gt;path&lt;/span&gt; &lt;span class="kwrd"&gt;to&lt;/span&gt; &lt;span class="kwrd"&gt;backup&lt;/span&gt; location&amp;gt;"&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;&lt;span class="kwrd"&gt;DBCC&lt;/span&gt; SHRINKFILE 0, TRUNCATEONLY&lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;&lt;span class="kwrd"&gt;BACKUP&lt;/span&gt; LOG &amp;lt;database_name&amp;gt; &lt;span class="kwrd"&gt;WITH&lt;/span&gt; TRUNCATE_ONLY&lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;&lt;span class="kwrd"&gt;DBCC&lt;/span&gt; SHRINKFILE(&lt;span class="str"&gt;'&amp;lt;logical file name&amp;gt;'&lt;/span&gt;,0)&lt;/pre&gt;&lt;/div&gt;
&lt;style type="text/css"&gt;.csharpcode, .csharpcode pre
{
 font-size: small;
 color: black;
 font-family: consolas, "Courier New", courier, monospace;
 background-color: #ffffff;
 /*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
 background-color: #f4f4f4;
 width: 100%;
 margin: 0em;
}
.csharpcode .lnum { color: #606060; }
&lt;/style&gt;

&lt;p&gt;You can get the actual database name and logical file names by examining the contents of the sysfiles table:
&lt;div class="csharpcode"&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="kwrd"&gt;SELECT&lt;/span&gt; * &lt;span class="kwrd"&gt;FROM&lt;/span&gt; SYSFILES&lt;/pre&gt;&lt;/div&gt;
&lt;style type="text/css"&gt;.csharpcode, .csharpcode pre
{
 font-size: small;
 color: black;
 font-family: consolas, "Courier New", courier, monospace;
 background-color: #ffffff;
 /*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
 background-color: #f4f4f4;
 width: 100%;
 margin: 0em;
}
.csharpcode .lnum { color: #606060; }
&lt;/style&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5423868836773411622-2219940523199159617?l=continuous-refactor.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://continuous-refactor.blogspot.com/feeds/2219940523199159617/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/reducing-size-of-sql-transaction-log.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/2219940523199159617'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/2219940523199159617'/><link rel='alternate' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/reducing-size-of-sql-transaction-log.html' title='Reducing the size of a SQL transaction log'/><author><name>Kelly Orr</name><uri>http://www.blogger.com/profile/05294657552964569098</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_nTDxczC5VxA/TAT_clUGlHI/AAAAAAAACXY/sqUJIEu7rQg/S220/KellyOrr.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5423868836773411622.post-1970354129991484343</id><published>2008-12-02T15:22:00.000-08:00</published><updated>2010-07-04T11:05:30.298-07:00</updated><title type='text'>Microsoft ArcReady</title><content type='html'>&lt;p&gt;&lt;a href="http://lh6.ggpht.com/_nTDxczC5VxA/TDDLc_7CNmI/AAAAAAAACws/uH11Og8VArg/s1600-h/ArcReady%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" title="ArcReady" border="0" alt="ArcReady" align="left" src="http://lh6.ggpht.com/_nTDxczC5VxA/TDDLdr2LqtI/AAAAAAAACww/XPKqwFIGTfA/ArcReady_thumb%5B1%5D.png?imgmax=800" width="244" height="96"&gt;&lt;/a&gt; I attended Microsoft ArcReady today in Cincinnati OH.&amp;nbsp; Although typically technical, the presentation today was focused on soft skills for software architects.&amp;nbsp; I was a fantastic presentation and reinforced a lot of career development concepts that I have learned over the years.&amp;nbsp; Highlights from the event are below:  &lt;p&gt;The first presenter was &lt;strong&gt;Brian H. Prince&lt;/strong&gt;, Architect Evangelist for Microsoft &lt;a href="http://www.brianhprince.com/"&gt;Blog&lt;/a&gt;  &lt;ul&gt; &lt;li&gt;Mentors -- pick something you want to grow in and assemble mentors  &lt;ul&gt; &lt;li&gt;Write down a mentor list and keep track of strategy  &lt;li&gt;Mentors don't have to know they are your mentor  &lt;li&gt;Discard mentorships as needed&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;"You are in charge of your career, your company is in charge of your job" -- &lt;a href="http://twitter.com/dmarsh"&gt;@dmarsh&lt;/a&gt;  &lt;li&gt;Be introspective  &lt;ul&gt; &lt;li&gt;Review your job annually and mentally sign-up for another year  &lt;li&gt;Check to see if you job is still aligned with your career objectives  &lt;li&gt;Clearly define your career objectives  &lt;li&gt;Pick something you want to be known as&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Invest in your career: school, playing, reading, blogging, code camps  &lt;li&gt;Book Recommendation: &lt;em&gt;Who Says Elephants Can't Dance?&lt;/em&gt; by Lou Gerstner  &lt;li&gt;Three steps to higher a Power Team -- not rock stars, but power team members  &lt;ul&gt; &lt;li&gt;Passion  &lt;li&gt;Learning  &lt;li&gt;Problem Solving&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Everything else you know today will be worthless in two years  &lt;li&gt;Book Recommendation: &lt;em&gt;Rules for Revolutionaries&lt;/em&gt; by Guy Kawasaki  &lt;li&gt;Just like body building, work out different muscles (skills) each day.  &lt;li&gt;Creativity  &lt;ul&gt; &lt;li&gt;You need to practice it to strengthen it.  &lt;li&gt;Design a system, throw out the design, do it again differently two more times to boost creativity  &lt;li&gt;Mix it up; read a book you normally wouldn't  &lt;li&gt;Read a book a week&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Book Recommendation: &lt;em&gt;The Elephant and the Dragon: The Rise of India and China and What it Means to All of Us&lt;/em&gt; by Robyn Meredith  &lt;li&gt;Book Recommendation: &lt;em&gt;Guns, Gems and Steel: The Fates of Human Societies&lt;/em&gt; by Jared M. Diamond  &lt;li&gt;Tips for client interaction  &lt;ul&gt; &lt;li&gt;Say "I don't know"  &lt;li&gt;Be an active listener  &lt;li&gt;Don't have distractions  &lt;li&gt;Ask smart questions  &lt;li&gt;Don't multitask in your head  &lt;li&gt;Ask open-minded questions, not yes/no questions  &lt;li&gt;Take notes even if to just map the conversation  &lt;li&gt;Use metaphors or analogies to communicate  &lt;li&gt;Don't use bad language  &lt;li&gt;Follow through (review action items and send a follow-up email)  &lt;li&gt;Over communicate until they bleed  &lt;li&gt;No agenda, no attenda  &lt;li&gt;Be prepared  &lt;li&gt;Preception is reality&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Objections: Feel.&amp;nbsp; Felt.&amp;nbsp; Found.  &lt;ul&gt; &lt;li&gt;"I understand how you feel.&amp;nbsp; Others have felt the same way.&amp;nbsp; Others have found..."  &lt;li&gt;Make finding a solution to the problem something we are going to work on together.&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Don't be a plumber.&amp;nbsp; Write code that only you can write to add value to the business.  &lt;li&gt;Do more of what works and less of what doesn't  &lt;li&gt;Focus on helping the end-user kick a$$.  &lt;li&gt;Architecture/Career/Life is about balance.  &lt;li&gt;The effort is the effort and is not negotiable.&amp;nbsp; Don't merely reduce a quote, but de-scope or get more money.  &lt;li&gt;Project manager's job is about communication.&amp;nbsp; &lt;li&gt;Project fail because of failed expectations or communications not because of technology.  &lt;li&gt;Teams should play together.  &lt;li&gt;Always hold the door.  &lt;li&gt;Never burn a bridge behind you.&amp;nbsp; "You can't burn your way to excellence."&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;The second speaker was &lt;strong&gt;Michael Wood&lt;/strong&gt;, SDS.&amp;nbsp; &lt;a href="http://mvwood.com/blog/"&gt;Blog&lt;/a&gt;.&amp;nbsp; He spoke on&lt;a href="http://mvwood.com/blog/my-arcready-talk-organizational-dynamics/"&gt;Organizational Dynamics&lt;/a&gt;.  &lt;ul&gt; &lt;li&gt;Four areas: Responsbility, Authority, Power, Influence.  &lt;li&gt;Economics in one line:&amp;nbsp; Profit = Revenue - Cost  &lt;li&gt;"I need to add value to the business"  &lt;li&gt;Director: "I need to get the right people on the right projects"  &lt;li&gt;Manager: "I need to make sure everyone is happy."&amp;nbsp; Authority but no power.  &lt;li&gt;Architects: Influence and responsbility, but little Power and Authority.  &lt;li&gt;Co-worker: "I want to work on cool technology with people that carry their weight."  &lt;li&gt;Yor agenda: "I need to choose technologies with a future."  &lt;li&gt;Focus on adding business value and project success not necessarily efficiency.  &lt;li&gt;Agile: plotted backlog of items that can add business value fast.  &lt;li&gt;Survival Tips:  &lt;ul&gt; &lt;li&gt;Dress + 1, one level better than the audience.&amp;nbsp; First impressions matter.  &lt;li&gt;Plug into companies information pipeline  &lt;li&gt;Learn the art of small talk  &lt;li&gt;Be prepared to have the hard conversations.  &lt;li&gt;Learn to read the room.  &lt;li&gt;Seek out a mentor.  &lt;li&gt;Don't be a lemming -- think critically.  &lt;li&gt;Evangelize  &lt;li&gt;Learn the art of public speaking -- Toastmasters  &lt;li&gt;Build a network of like minded people  &lt;li&gt;Build coalitions -- move on individuals agendas and company agenda  &lt;li&gt;Decisions should not be &lt;em&gt;made &lt;/em&gt;but &lt;em&gt;announced&lt;/em&gt;at meetings.  &lt;li&gt;Keep an eye on the sharks  &lt;li&gt;Learn the right way to gripe. Not 30 minutes of griping, but 5 minutes of griping and 25 minutes of suggesting solutions.&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Political tools  &lt;ol&gt; &lt;li&gt;Compromise (win-win)  &lt;li&gt;Arbitration (independent third part)  &lt;li&gt;Escalation&lt;/li&gt;&lt;/ol&gt; &lt;ul&gt; &lt;li&gt;Arguing hurts the business value  &lt;li&gt;Accept decisions and move on  &lt;li&gt;There is &lt;em&gt;always &lt;/em&gt;a different point of view  &lt;li&gt;Always maintain your composure.&amp;nbsp; It ruins you credibility if you don't.  &lt;li&gt;Know your boundaries and limitations (constraints)&lt;/li&gt;&lt;/ul&gt; &lt;li&gt;Be a leader.&amp;nbsp; Get things done.&amp;nbsp; Be a Mentor.&amp;nbsp; Add business value.  &lt;li&gt;&lt;strong&gt;Architects are the bridge between business and technology.&lt;/strong&gt;  &lt;li&gt;Book Recommendation: &lt;em&gt;Systems Thinking, Second Edition: Managing Chaos and Complexity: A Platform for Designing Business Architecture&lt;/em&gt; by Jamshid Gharajedaghi  &lt;li&gt;Book Recommendation: &lt;em&gt;What the CEO Wants You to Know : How Your Company Really Works&lt;/em&gt; by Ram Charan  &lt;li&gt;Book Recommendation: &lt;em&gt;CIO Wisdom: Best Practices from Silicon Valley&lt;/em&gt; by Dean Lane &lt;/li&gt;&lt;/ul&gt;&lt;iframe style="width: 120px; height: 240px" src="http://rcm.amazon.com/e/cm?t=kelorr-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0060523794&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr&amp;amp;" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe style="width: 120px; height: 240px" src="http://rcm.amazon.com/e/cm?t=kelorr-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=088730995X&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe style="width: 120px; height: 240px" src="http://rcm.amazon.com/e/cm?t=kelorr-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0393331938&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe style="width: 120px; height: 240px" src="http://rcm.amazon.com/e/cm?t=kelorr-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0393317552&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe style="width: 120px; height: 240px" src="http://rcm.amazon.com/e/cm?t=kelorr-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0750679735&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe style="width: 120px; height: 240px" src="http://rcm.amazon.com/e/cm?t=kelorr-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0609608398&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" frameborder="0"&gt;&lt;/iframe&gt;&lt;iframe style="width: 120px; height: 240px" src="http://rcm.amazon.com/e/cm?t=kelorr-20&amp;amp;o=1&amp;amp;p=8&amp;amp;l=as1&amp;amp;asins=0131411152&amp;amp;fc1=000000&amp;amp;IS2=1&amp;amp;lt1=_blank&amp;amp;m=amazon&amp;amp;lc1=0000FF&amp;amp;bc1=000000&amp;amp;bg1=FFFFFF&amp;amp;f=ifr" frameborder="0"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5423868836773411622-1970354129991484343?l=continuous-refactor.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://continuous-refactor.blogspot.com/feeds/1970354129991484343/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/microsoft-arcready.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/1970354129991484343'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/1970354129991484343'/><link rel='alternate' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/microsoft-arcready.html' title='Microsoft ArcReady'/><author><name>Kelly Orr</name><uri>http://www.blogger.com/profile/05294657552964569098</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_nTDxczC5VxA/TAT_clUGlHI/AAAAAAAACXY/sqUJIEu7rQg/S220/KellyOrr.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_nTDxczC5VxA/TDDLdr2LqtI/AAAAAAAACww/XPKqwFIGTfA/s72-c/ArcReady_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5423868836773411622.post-3725786855667020987</id><published>2008-12-02T14:55:00.000-08:00</published><updated>2010-07-04T11:05:08.157-07:00</updated><title type='text'>Freshbooks</title><content type='html'>&lt;p&gt;&lt;a href="https://digicomb.freshbooks.com/signup/"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; margin-left: 0px; border-top: 0px; margin-right: 0px; border-right: 0px" title="FreshBooks" border="0" alt="FreshBooks" align="left" src="http://lh4.ggpht.com/_nTDxczC5VxA/TDDMMJxHxMI/AAAAAAAACw0/q124LJjJOQw/FreshBooks%5B4%5D.gif?imgmax=800" width="124" height="64"&gt;&lt;/a&gt; I launched an effort earlier this year to take accounting for my consultancy to completely paperless.&amp;nbsp; Although I wouldn't say it is perfectly paperless now, I would say that I'm very close, say 98%.&amp;nbsp; The bulk of the heavy lifting is done with Freshbooks.&amp;nbsp; It is a fantastic SaaS online tool that lets me keep my finger on the accounting from any where that has an Internet connection.&amp;nbsp; May favorite features include automated billing with tried and true "set it and forget it" functionality.&amp;nbsp; They also interface with my payment gateway, PayPal, and Amazon Payments as well as allowing me to receive paper checks (remember that 2% remaining) and process them manually.&amp;nbsp; Recurring invoices can be automatically emailed or postal mailed monthly.&amp;nbsp; Estimates can be created, emailed to the client, accepted by the client online for tracking and converted to an invoice.&amp;nbsp; Reporting is extensive enough to for accounts receiveable enterprise-wide or per client.&amp;nbsp; I highly recommend Freshbooks for paperless, automated, efficiently accounts receivable accounting.&amp;nbsp; Click the logo to sign-up.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5423868836773411622-3725786855667020987?l=continuous-refactor.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://continuous-refactor.blogspot.com/feeds/3725786855667020987/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/freshbooks.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/3725786855667020987'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/3725786855667020987'/><link rel='alternate' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/freshbooks.html' title='Freshbooks'/><author><name>Kelly Orr</name><uri>http://www.blogger.com/profile/05294657552964569098</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_nTDxczC5VxA/TAT_clUGlHI/AAAAAAAACXY/sqUJIEu7rQg/S220/KellyOrr.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_nTDxczC5VxA/TDDMMJxHxMI/AAAAAAAACw0/q124LJjJOQw/s72-c/FreshBooks%5B4%5D.gif?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5423868836773411622.post-6072085580777057752</id><published>2008-11-29T15:55:00.000-08:00</published><updated>2010-07-04T11:04:47.558-07:00</updated><title type='text'>Determining the SQL version and release</title><content type='html'>&lt;p&gt;&lt;a href="http://lh3.ggpht.com/_nTDxczC5VxA/TDDMotgEH-I/AAAAAAAACw4/gbvWTqcDseE/s1600-h/SQLServer2005%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; margin-left: 0px; border-top: 0px; margin-right: 0px; border-right: 0px" title="SQLServer2005" border="0" alt="SQLServer2005" align="left" src="http://lh4.ggpht.com/_nTDxczC5VxA/TDDMplv59TI/AAAAAAAACw8/cC8C5xsOluU/SQLServer2005_thumb%5B1%5D.png?imgmax=800" width="244" height="62"&gt;&lt;/a&gt; For years when I needed to determine if a service pack was installed on SQL Server 2000 or SQL Server 2005, I would check the build number and ten search the web to find what the build number was for the latest service pack.&amp;nbsp; Today I was going through the same routine, but when I searched Google, I found a SQL query that would more directly reveal the version and release:&lt;br&gt; &lt;div class="csharpcode"&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="kwrd"&gt;SELECT&lt;/span&gt;  &lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;SERVERPROPERTY(&lt;span class="str"&gt;'productversion'&lt;/span&gt;), &lt;/pre&gt;&lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;SERVERPROPERTY (&lt;span class="str"&gt;'productlevel'&lt;/span&gt;), &lt;/pre&gt;&lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;SERVERPROPERTY (&lt;span class="str"&gt;'edition'&lt;/span&gt;)&lt;/pre&gt;&lt;/div&gt;
&lt;style type="text/css"&gt;.csharpcode, .csharpcode pre
{
 font-size: small;
 color: black;
 font-family: consolas, "Courier New", courier, monospace;
 background-color: #ffffff;
 /*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
 background-color: #f4f4f4;
 width: 100%;
 margin: 0em;
}
.csharpcode .lnum { color: #606060; }
&lt;/style&gt;

&lt;p&gt;&lt;a href="http://support.microsoft.com/kb/321185"&gt;Here&lt;/a&gt; is the Microsoft KB article.&lt;br&gt;&lt;a href="http://www.sqlteam.com/article/sql-server-versions"&gt;Here&lt;/a&gt; is a chart of all SQL Versions, their names and release dates.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5423868836773411622-6072085580777057752?l=continuous-refactor.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://continuous-refactor.blogspot.com/feeds/6072085580777057752/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/determining-sql-version-and-release.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/6072085580777057752'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5423868836773411622/posts/default/6072085580777057752'/><link rel='alternate' type='text/html' href='http://continuous-refactor.blogspot.com/2010/07/determining-sql-version-and-release.html' title='Determining the SQL version and release'/><author><name>Kelly Orr</name><uri>http://www.blogger.com/profile/05294657552964569098</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://3.bp.blogspot.com/_nTDxczC5VxA/TAT_clUGlHI/AAAAAAAACXY/sqUJIEu7rQg/S220/KellyOrr.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_nTDxczC5VxA/TDDMplv59TI/AAAAAAAACw8/cC8C5xsOluU/s72-c/SQLServer2005_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry></feed>
