<?xml version="1.0" encoding="utf-8"?>
<feed xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xml:lang="en-us" xmlns="http://www.w3.org/2005/Atom">
  <title>GeekzRule.com</title>
  <link rel="alternate" type="text/html" href="http://blog.geekzrule.com/" />
  <link rel="self" href="http://blog.geekzrule.com/SyndicationService.asmx/GetAtom" />
  <icon>favicon.ico</icon>
  <updated>2009-06-09T20:06:30.0148524-07:00</updated>
  <author>
    <name>GeekzRule.com</name>
  </author>
  <subtitle />
  <id>http://blog.geekzrule.com/</id>
  <generator uri="http://dasblog.info/" version="2.1.8102.813">DasBlog</generator>
  <entry>
    <title>SQL Server - Concatenating Many Rows Into A Single Text String (also known as de-normalization)</title>
    <link rel="alternate" type="text/html" href="http://blog.geekzrule.com/2009/06/10/SQLServerConcatenatingManyRowsIntoASingleTextStringAlsoKnownAsDenormalization.aspx" />
    <id>http://blog.geekzrule.com/PermaLink,guid,216597bd-c926-42a8-85be-54662a852ffe.aspx</id>
    <published>2009-06-09T20:06:30.0148524-07:00</published>
    <updated>2009-06-09T20:06:30.0148524-07:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
I came across a wierd thought about how to de-normalize data, or how to quickly group
rows of data into a single delimited string.  I have come up with two scenarios:
</p>
        <p>
First, if you just want to quickly concatenate everything, you can do the following:
</p>
        <p>
          <span class="pln">DECLARE </span>
          <span class="lit">@Names</span>
          <span class="pln"> VARCHAR</span>
          <span class="pun">(</span>
          <span class="lit">8000</span>
          <span class="pun">)</span>
          <span class="pln">
            <br />
SELECT @name </span>
          <span class="pun">=</span>
          <span class="pln">
          </span>
          <span class="str">''</span>
          <span class="pln">
            <br />
SELECT </span>
          <span class="lit">@Names</span>
          <span class="pln">
          </span>
          <span class="pun">=</span>
          <span class="pln">
          </span>
          <span class="lit">@Names</span>
          <span class="pln">
          </span>
          <span class="pun">+</span>
          <span class="pln">
          </span>
          <span class="str">','</span>
          <span class="pln">
          </span>
          <span class="pun">+</span>
          <span class="pln">
          </span>
          <span class="typ">Names</span>
          <span class="pln"> FROM </span>
          <span class="typ">People</span>
          <span class="pln">
            <br />
SELECT SUBSTRING</span>
          <span class="pun">(</span>
          <span class="lit">2</span>
          <span class="pun">,</span>
          <span class="pln">
          </span>
          <span class="lit">@Names</span>
          <span class="pun">,</span>
          <span class="pln">
          </span>
          <span class="lit">7998</span>
          <span class="pun">)</span>
        </p>
        <p>
          <span class="pun">Above, you end up with a variable with everything in it.</span>
        </p>
        <p>
          <span class="pun">
          </span> 
</p>
        <p>
          <span class="pun">In the real world, the above example doesn't help most of us. 
Using SQL Server 2005, you can use XML PATH to get some cool results.  Imagine
you had a table called ORDERS that looks like the following:</span>
        </p>
        <p>
          <span class="pun">
          </span>
          <span class="pln">OrderID                        ProductID<br />
--------------              -----------------<br />
1                                55<br />
1                                66<br />
1                                77<br />
2                                88<br />
2                                99</span>
        </p>
        <span class="pln">
          <p>
            <br />
Now, imagine you want a result like this:
</p>
          <p>
            <span class="pln">OrderID                        ProductID<br />
--------------              -----------------<br />
1                                55,66,77<br />
2                                88,99</span>
          </p>
          <span class="pln">
            <p>
              <br />
There is no quick and easy way to do this in SQL Server, until now:
</p>
            <p>
              <span class="typ">Select</span>
              <span class="pln"> <br />
   </span>
              <span class="typ">Main</span>
              <span class="pun">.</span>
              <span class="typ">OrderID<br />
   </span>
              <span class="pun">, </span>
              <span class="typ">Left</span>
              <span class="pun">(</span>
              <span class="typ">Main</span>
              <span class="pun">.</span>
              <span class="typ">ProductID</span>
              <span class="pun">,</span>
              <span class="typ">Len</span>
              <span class="pun">(</span>
              <span class="typ">Main</span>
              <span class="pun">.</span>
              <span class="typ">ProductID</span>
              <span class="pun">)-</span>
              <span class="lit">1</span>
              <span class="pun">)</span>
              <span class="pln">
              </span>
              <span class="typ">As</span>
              <span class="pln"> '</span>
              <span class="str">ProductID'</span>
              <span class="pln">
                <br />
              </span>
              <span class="typ">From<br />
   </span>
              <span class="pun">(<br />
      </span>
              <span class="typ">Select</span>
              <span class="pln"> distinct <br />
         order2</span>
              <span class="pun">.</span>
              <span class="typ">OrderID<br />
         </span>
              <span class="pun">,</span>
              <span class="pln"> </span>
              <span class="pun">(<br />
               </span>
              <span class="typ">Select</span>
              <span class="pln"> <br />
                  </span>
              <span class="pln">order1</span>
              <span class="pun">.</span>
              <span class="typ">ProductID</span>
              <span class="pln">
              </span>
              <span class="pun">+</span>
              <span class="pln">
              </span>
              <span class="str">','</span>
              <span class="pln"> AS </span>
              <span class="pun">[</span>
              <span class="pln">text</span>
              <span class="pun">()]</span>
              <span class="pln">
                <br />
               </span>
              <span class="typ">From</span>
              <span class="pln"> <br />
                  dbo</span>
              <span class="pun">.</span>
              <span class="typ">Orders</span>
              <span class="pln"> order1<br />
               </span>
              <span class="typ">Where</span>
              <span class="pln"> <br />
                  order1</span>
              <span class="pun">.</span>
              <span class="typ">OrderID</span>
              <span class="pln">
              </span>
              <span class="pun">=</span>
              <span class="pln"> order2</span>
              <span class="pun">.</span>
              <span class="typ">OrderID</span>
              <span class="pln">
                <br />
               ORDER
BY <br />
                  order1</span>
              <span class="pun">.</span>
              <span class="typ">OrderID</span>
              <span class="pln">
                <br />
               </span>
              <span class="typ">For</span>
              <span class="pln"> XML
PATH </span>
              <span class="pun">(</span>
              <span class="str">''</span>
              <span class="pun">)<br />
            )</span>
              <span class="pln">
              </span>
              <span class="pun">[</span>
              <span class="typ">ProductID</span>
              <span class="pun">]</span>
              <span class="pln">
                <br />
     </span>
              <span class="typ">From</span>
              <span class="pln"> dbo</span>
              <span class="pun">.</span>
              <span class="typ">Orders</span>
              <span class="pln"> order2<br />
   </span>
              <span class="pun">)</span>
              <span class="pln">
              </span>
              <span class="pun">[</span>
              <span class="typ">Main</span>
              <span class="pun">]</span>
              <span class="pln">
                <br />
              </span>
            </p>
          </span>
        </span>
        <span class="pln">
        </span>
        <img width="0" height="0" src="http://blog.geekzrule.com/aggbug.ashx?id=216597bd-c926-42a8-85be-54662a852ffe" />
      </div>
    </content>
  </entry>
  <entry>
    <title>Maintain Scroll Position on PostBack in .Net</title>
    <link rel="alternate" type="text/html" href="http://blog.geekzrule.com/2009/04/16/MaintainScrollPositionOnPostBackInNet.aspx" />
    <id>http://blog.geekzrule.com/PermaLink,guid,07dfaa78-662f-4116-847c-db13ecfad0d4.aspx</id>
    <published>2009-04-16T06:14:40.499-07:00</published>
    <updated>2009-04-16T06:14:40.4997571-07:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
I spent quite a bit of time researching and testing various solutions in trying to
preserve focus on the dynamically created control causing a postback in .Net, but
nothing seemed to work, most likely due to the very dynamic nature of the page I was
creating.
</p>
        <p>
After thinking about what I was really trying to accomplish, I came to the realization
that I was not so much concerned about maintaining focus as I was concerned about
maintaining the scrolling position of the page.  After about 30 seconds of searching,
I discovered a handy one-liner that solved all my problems.
</p>
        <p>
Adding MaintainScrollPositionOnPostBack = True to Page_Load takes care of all of this. 
So, no matter how long your page is, adding this one line of code to your page will
preserve scroll location on post backs.
</p>
        <img width="0" height="0" src="http://blog.geekzrule.com/aggbug.ashx?id=07dfaa78-662f-4116-847c-db13ecfad0d4" />
      </div>
    </content>
  </entry>
  <entry>
    <title>Sessions, Cookies &amp; Objects</title>
    <link rel="alternate" type="text/html" href="http://blog.geekzrule.com/2009/04/15/SessionsCookiesObjects.aspx" />
    <id>http://blog.geekzrule.com/PermaLink,guid,992f8c49-f287-4a97-a566-d497425d73e4.aspx</id>
    <published>2009-04-15T06:21:59.7-07:00</published>
    <updated>2009-04-16T06:21:59.7000712-07:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
I frequently find myself storing a business object in Session, for ease of use across
various pages.  One issue that frequently occurs is that the session will timeout
(if the user walks away from their computer for a while, etc...), and when work resumes
on the page, the object no longer exists.  
</p>
        <p>
To remedy this, I like to store the ID (primary key, etc...) of the object, as a string,
in a COOKIE, and in the Page_PreLoad I check the state of the session object, and
if it is non-existent, but I do have a cookie value, it is easy to quickly re-populate
the session object using the ID.
</p>
        <p>
This is a quick and light way to help fight the war against maintaining state in a
state-less environment.  There are more advanced ways of maintaining state, like
using SQL Server to maintain state, and it is up to the developer to choose the most
effective method of state management for each project.
</p>
        <img width="0" height="0" src="http://blog.geekzrule.com/aggbug.ashx?id=992f8c49-f287-4a97-a566-d497425d73e4" />
      </div>
    </content>
  </entry>
  <entry>
    <title>Date Parameters in SQL Server Stored Procedures</title>
    <link rel="alternate" type="text/html" href="http://blog.geekzrule.com/2009/02/26/DateParametersInSQLServerStoredProcedures.aspx" />
    <id>http://blog.geekzrule.com/PermaLink,guid,2bcf3f7e-66ff-4837-9578-b9cfd0cfa561.aspx</id>
    <published>2009-02-26T13:42:19.561-07:00</published>
    <updated>2009-02-26T13:42:19.5617367-07:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
I was reminded today of something I solved a long time ago, something that TREMENDOUSLY
impacts the performance of stored procedures in SQL Server.  This issue relates
to 2000 &amp; 2005; I have not tested this in 2008.
</p>
        <p>
Basically, if your stored procedure is using date parameters AT ALL, the performance
of the stored procedure will be HORRIBLE.  The whole purpose for using stored
procedures is that they are much faster than using what is called a dynamic query,
or a plain-text query.  The reason stored procedures are so much faster is that
the database caches what is called an execution plan for the stored procedures, enabling
the database to get at your data much faster.
</p>
        <p>
For some reason, the use of date parameters prevents the caching of the execution
plan, and even makes your stored procedure LESS efficient than a plain-text or dynamic
query, because of the overhead of SQL trying to cache the execution plan.
</p>
        <p>
So, the following stored procedure would NEVER get cached:
</p>
        <p>
CREATE PROCEDURE dbo.storedProc1<br />
   @dateParam1 datetime<br />
   , @dateParam2 datetime<br />
   , @otherParam nvarchar(50)<br />
AS<br />
   SELECT<br />
      *<br />
   FROM<br />
      dbo.myTable (NOLOCK)<br />
   WHERE<br />
      dbo.myTable.dateField BETWEEN @dateParam1 AND
@dateParam2<br />
      AND dbo.myTable.otherField = @otherParam
</p>
        <p>
          <br />
HOWEVER, you can fake out SQL Server into caching the execution plan with the use
of declared variables within your query.  Using the above example, the stored
proc will now need to look like the following, which WILL allow for caching of the
execution plan:
</p>
        <p>
CREATE PROCEDURE dbo.storedProc1<br />
   @dateParam1 datetime<br />
   , @dateParam2 datetime<br />
   , @otherParam nvarchar(50)<br />
AS<br />
   DECLARE @dateParam1_new datetime, @dateParam2_new datetime<br />
   SET @dateParam1_new = @dateParam1<br />
   SET @dateParam2_new = @dateParam2<br /><br />
   SELECT<br />
      *<br />
   FROM<br />
      dbo.myTable (NOLOCK)<br />
   WHERE<br />
      dbo.myTable.dateField BETWEEN @dateParam1_new
AND @dateParam2_new<br />
      AND dbo.myTable.otherField = @otherParam
</p>
        <p>
As you can see, I have only declared new variables and assigned them to the parameters
of the proc.  This is all it takes to trick SQL Server into caching the execution
plan.  Also, please notice that I only needed to do this on the DATE PARAMETERS,
as they are the culprits.
</p>
        <p>
I have made this a standard in all of my stored procedures that use date parameters,
and the results are phenomenal.  For example, I had a complex report that was
returning tens of thousands of rows, and it was taking more than 4 minutes to process
the stored procedure, and by simply changing the above, the results are now under
45 seconds.
</p>
        <p>
Keep in mind that the increased performance of the stored procedure is for the 2nd
time through and thereon out, as the caching of the execution plan does not happen
until the 1st time the stored procedure is ran.  Unfortunately, the execution
plan is NOT cached when you CREATE or ALTER the procedure, but only after it is ran
to return data.  If I am changing a heavy hitter, I typically run the procedure
with parameters that will execute quickly, to force the caching so users are not impacted.
</p>
        <p>
I hope this helps!  I am certain that many people face this problem, and don't
know why.  I was helping a guy today who had indexed the hell out of a table,
date columns included, and did not understand why the query would still run forever. 
It won't matter what you try and do to the table or whatever.  STORED PROCEDURES
WILL NOT CACHE THE EXECUTION PLAN WITH DATE PARAMETERS, UNLESS YOU FAKE IT OUT.
</p>
        <p>
ENJOY!
</p>
        <img width="0" height="0" src="http://blog.geekzrule.com/aggbug.ashx?id=2bcf3f7e-66ff-4837-9578-b9cfd0cfa561" />
      </div>
    </content>
  </entry>
  <entry>
    <title>Mt. Dew</title>
    <link rel="alternate" type="text/html" href="http://blog.geekzrule.com/2009/02/17/MtDew.aspx" />
    <id>http://blog.geekzrule.com/PermaLink,guid,de53c4df-e8a0-471e-90c3-93e43222f2f9.aspx</id>
    <published>2009-02-17T11:59:57.215-07:00</published>
    <updated>2009-02-17T11:59:57.2151493-07:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
Where would life be without this sweet nectar of the gods?  Ahh, joyous refreshment,
you fulfill me.  Thank you for your existence.  Even though you look like
urine, I still love you.
</p>
        <img width="0" height="0" src="http://blog.geekzrule.com/aggbug.ashx?id=de53c4df-e8a0-471e-90c3-93e43222f2f9" />
      </div>
    </content>
  </entry>
  <entry>
    <title>Problem/Task Resolution</title>
    <link rel="alternate" type="text/html" href="http://blog.geekzrule.com/2009/02/17/ProblemTaskResolution.aspx" />
    <id>http://blog.geekzrule.com/PermaLink,guid,824a4960-36fe-40bf-b873-15bd9751aa7f.aspx</id>
    <published>2009-02-16T18:57:26.921-07:00</published>
    <updated>2009-02-16T18:57:26.921173-07:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
It may seem like common sense, but many times we forget the best way to manage tasks
and solve problems.  Here is how I manage my long list of things to do (for work). 
Each week I write down a list of everything I need to do.  This list is not necessarily
everything I need to do for the week.  This list is everything I need to do,
period.  Once I have written/typed out my list, I prioritize them.
</p>
        <p>
Here comes the tricky, yet simple part that we often forget: work on the items in
list of priority.  I find that I am often working on items in the 3rd spot, while
items #1 &amp; #2 are un-done.  Why, you ask?  Maybe #3 is easier. 
Is this a good reason?  NO.
</p>
        <p>
There is a reason we prioritize things!  So, once items have been prioritized,
we need to stick to the list.  If possible, we should stick with a problem/task
until it is completed, BEFORE starting a new task.  Many people waste a crazy
amount of time juggling multiple tasks.  In fact, I would venture to say that
employee #1, who works on one task at a time, is much more efficient than employee
#2, who jumps around from task to task.  Why?  Think about re-learning. 
How much time is spent re-learning a task/problem that has not been thought about
for a week or more?  When I fall into this pit of re-learning, I often find that
I spend about as much time re-learning the task/problem, as I originally spent trying
to work on the task or solve the problem.
</p>
        <p>
Is this list of tasks static?  By no means, no.  We can always re-prioritize. 
But, I also do not believe that we should re-prioritize daily.  Many times we
succumb to outside pressures and/or influences, false deadlines, etc....  Re-prioritization
should only come as a result of an emergency.
</p>
        <img width="0" height="0" src="http://blog.geekzrule.com/aggbug.ashx?id=824a4960-36fe-40bf-b873-15bd9751aa7f" />
      </div>
    </content>
  </entry>
  <entry>
    <title>D@#$ Network Engineer - Rant</title>
    <link rel="alternate" type="text/html" href="http://blog.geekzrule.com/2009/02/17/DNetworkEngineerRant.aspx" />
    <id>http://blog.geekzrule.com/PermaLink,guid,4b131f5c-e0f4-42bc-8e65-eebd988f17ec.aspx</id>
    <published>2009-02-16T17:21:18.492-07:00</published>
    <updated>2009-02-16T17:21:53.2747228-07:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
So, I went on-site for an all-night install with one of my clients, to help them
upgrade their servers.  My specific responsibility/role was to move web applications
&amp; databases to the new server.  The network 'engineer', was supposedly supposed
to research and verify that the other core software they wanted to run on these new
servers was Windows Server 2008 compatible.
</p>
        <p>
At about 5 in the morning, we realized that this 'engineer' had NOT done due diligence,
and made many false assumptions regarding software compatibility.  I mean, Windows
wouldn't release a new OS without first verifying that ALL software in the known universe
is compatible, right?
</p>
        <p>
Operator Error Code: 1D10T
</p>
        <img width="0" height="0" src="http://blog.geekzrule.com/aggbug.ashx?id=4b131f5c-e0f4-42bc-8e65-eebd988f17ec" />
      </div>
    </content>
  </entry>
  <entry>
    <title>Auto-Sizing IFrame - Finally!</title>
    <link rel="alternate" type="text/html" href="http://blog.geekzrule.com/2009/02/14/AutoSizingIFrameFinally.aspx" />
    <id>http://blog.geekzrule.com/PermaLink,guid,610996db-3387-4c12-8c0b-0989f8293318.aspx</id>
    <published>2009-02-13T17:16:17.56-07:00</published>
    <updated>2009-02-17T12:00:25.3723003-07:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
Many of us have faced the dilemna of auto-sizing an IFrame based on external web content. 
Auto-sizing works just fine, if both the website and content are on the same domain. 
But, if you are trying to auto-size content using cross-domain scripting, it is nearly
impossible.
</p>
        <p>
I too faced this problem, but using an example I found here: <a href="http://scvdotnet.org/index.php?url=archives/8-Autofitting-iFrame.html">http://scvdotnet.org/index.php?url=archives/8-Autofitting-iFrame.html</a>,
I was able to make this work.  Please note, the example only works if you have
access to both the website where the IFrame is hosted, and the website where the content
is hosted.  I.e. this script will not work if you are trying to auto-size an
IFrame for content you do not host or have access to.
</p>
        <img width="0" height="0" src="http://blog.geekzrule.com/aggbug.ashx?id=610996db-3387-4c12-8c0b-0989f8293318" />
      </div>
    </content>
  </entry>
  <entry>
    <title>.Net QuickBooks Integration - Rave</title>
    <link rel="alternate" type="text/html" href="http://blog.geekzrule.com/2009/02/13/NetQuickBooksIntegrationRave.aspx" />
    <id>http://blog.geekzrule.com/PermaLink,guid,ff79e6ee-cee7-4d3b-a7ee-dbfc9a911654.aspx</id>
    <published>2009-02-12T17:12:02.318-07:00</published>
    <updated>2009-02-16T17:23:11.2303423-07:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
I have been plagued for a couple of years trying to integrate accounting type applications
with QuickBooks.  It is easier said than done.  The hopes that systems are
developed with integration in mind is only valid in school.  In the real world,
applications, even applications as large as QuickBooks, are rarely built with easy
to use API's.
</p>
        <p>
Luckily, I came across /n software's IBiz Integrator for QuickBooks.  This tool
makes my life super easy, as I am able to quickly and efficiently interface with QuickBooks. 
Best of all, their support is fast.  On more than one occasion, I have faced
an in-surmountable integration obstacle, and /n software has been super-fast on the
response, usually the same day.
</p>
        <img width="0" height="0" src="http://blog.geekzrule.com/aggbug.ashx?id=ff79e6ee-cee7-4d3b-a7ee-dbfc9a911654" />
      </div>
    </content>
  </entry>
  <entry>
    <title>ASP.Net on Linux</title>
    <link rel="alternate" type="text/html" href="http://blog.geekzrule.com/2009/02/11/ASPNetOnLinux.aspx" />
    <id>http://blog.geekzrule.com/PermaLink,guid,c84f148e-8f4b-42e1-9377-e8bad0087079.aspx</id>
    <published>2009-02-11T12:21:48.544596-07:00</published>
    <updated>2009-02-11T12:21:48.544596-07:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
I am an ASP.Net developer.  I am very biased in this regard, so don't get me
started.  Anyway, I was faced with a challenge today, as a new customer is adamant
that if I want to work with them, my work must be hosted on their servers.  After
going the rounds, I realized how engrained this philosophy is in their company culture,
so I decided I better either learn PHP, find an alternative, or forego working with
this new customer.
</p>
        <p>
And then I came across Mono.  No, this has nothing to do with monkeys or some
weird teenage disease.  Mono is a great (and free!) framework that allows
ASP.Net (and more) to run in the Linux environment.  You can learn more about
Mono, here: <a href="http://www.mono-project.com">http://www.mono-project.com</a>.
</p>
        <img width="0" height="0" src="http://blog.geekzrule.com/aggbug.ashx?id=c84f148e-8f4b-42e1-9377-e8bad0087079" />
      </div>
    </content>
  </entry>
  <entry>
    <title>The use of GUID's.</title>
    <link rel="alternate" type="text/html" href="http://blog.geekzrule.com/2009/02/10/TheUseOfGUIDs.aspx" />
    <id>http://blog.geekzrule.com/PermaLink,guid,640539b9-2e8c-4117-b142-37a4d23c2e81.aspx</id>
    <published>2009-02-10T12:17:08.379-07:00</published>
    <updated>2009-02-16T17:22:22.9631728-07:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>
I love to use GUID's in my applications.  Today I was wondering just how unique
a GUID is, and if I am safe to use them in my application.  Turns out that the
use of GUID's does NOT guarantee a unique string every time, but the likelihood of
a GUID not being unique is 1:<span style="FONT-SIZE: 11pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"><font color="#000000">340,282,000,000,000,000,000,000,000,000,000,000,000. 
Yes, that is 340,282 with 33 zeros after it.</font></span></p>
        <p>
          <span style="FONT-SIZE: 11pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA">So,
I would guess it is safe to use GUID's in the future.  ;-)</span>
        </p>
        <img width="0" height="0" src="http://blog.geekzrule.com/aggbug.ashx?id=640539b9-2e8c-4117-b142-37a4d23c2e81" />
      </div>
    </content>
  </entry>
</feed>