<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;CU4FRn0-fip7ImA9WxJUEks.&quot;"><id>tag:blogger.com,1999:blog-5430866</id><updated>2009-07-10T17:11:57.356-05:00</updated><title>Peter Bromberg's UnBlog</title><subtitle type="html">Pete's comments on .NET, politics, humor, and everything else wrong in the world.</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://petesbloggerama.blogspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>517</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><link rel="self" href="http://feeds.feedburner.com/blogspot/lGrQ" type="application/atom+xml" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><entry gd:etag="W/&quot;CUEDRH89eyp7ImA9WxJWEUw.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-3792309336196520707</id><published>2009-06-10T16:18:00.001-05:00</published><updated>2009-06-15T19:54:35.163-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-06-15T19:54:35.163-05:00</app:edited><title>The Role of Government</title><content type="html">&lt;p&gt;In my &lt;a href="http://petesbloggerama.blogspot.com/2009/05/too-big-to-fail.html" target="_blank"&gt;“Too Big to Fail?”&lt;/a&gt; post, I talked a little about the unprecedented&amp;#160; monetary expansion we have entered. Perhaps it’s time to expand on this topic. In 2007, the federal deficit was 1.2 percent of G.D.P. Two years later, more than a year into a serious&amp;#160; economic crisis it is 13% of GDP -- more than twice the size of the next largest deficit since World War II -– the&amp;#160; projected deficit is the result of a year when the federal government, at taxpayers' expense, has acquired enormous stakes in the banking, auto, mortgage, health-care and insurance industries. The average historical deficit is about 2.5% of GDP.&lt;/p&gt;  &lt;p&gt;With the ill-conceived government reactions to the financial crises, and the economic downturn that has followed, the unfunded liabilities of various federal programs -- such as Social Security, pensions, Medicare and Medicaid -- are over the $100 trillion mark. With U.S. federal tax receipts at about $2.4 trillion, this level of debt virtually&amp;#160; guarantees higher interest rates, huge tax increases, and -- partial default on some government promises.&lt;/p&gt;  &lt;p&gt;Beginning in early September 2008, the Bernanke Fed made an abrupt turnaround and radically increased the U.S.&amp;#160; monetary base -- currency in circulation, member bank reserves held at the Fed, and vault cash -- by a little less than $1 trillion. The Fed totally controls the monetary base by purchasing and selling assets in the open market. By making&amp;#160; such a radical move, the Fed signaled a 180-degree turnaround in its focus from an anti-inflation position to an anti-deflation position. The stimulus bill passed by Congress early in the Obama Administration added almost another $1 trillion.&lt;/p&gt;  &lt;p&gt;This percentage increase in the monetary base is the largest increase in the past 50 years -- by a factor of 10! (See chart, courtesy of Laffer Associates) This is so far outside the realm of our experiences that historical comparisons become meaningless. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_8b9UPLwuM3g/SjAjFy2FX9I/AAAAAAAAAPs/WvXAvlxYIfM/s1600-h/ED-AJ638A_laffe_NS_20090609175213%5B3%5D.gif"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="ED-AJ638A_laffe_NS_20090609175213" border="0" alt="ED-AJ638A_laffe_NS_20090609175213" src="http://lh5.ggpht.com/_8b9UPLwuM3g/SjAjGBQkm4I/AAAAAAAAAPw/9rac6sgOX2U/ED-AJ638A_laffe_NS_20090609175213_thumb%5B1%5D.gif?imgmax=800" width="346" height="321" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;It's difficult to estimate the magnitude of the inflationary and interest-rate consequences of the Fed's actions because we simply haven't ever seen anything like this, ever.&amp;#160; To date what's happened is potentially far more inflationary than were the monetary policies of the 1970s, when the prime rate peaked at 21.5% and inflation hit the low double digits. Gold prices went from $35 per ounce to $850 per ounce, and the dollar collapsed on the foreign exchanges. &lt;/p&gt;  &lt;p&gt;When the Fed is no longer able to monetize this kind of expansionary monetary policy by selling Treasury securities, we face a brand new kind of financial collapse. Once again, I say “Let them fail”.&amp;#160; The markets are much better and more efficient&amp;#160; at sorting out these kinds of excesses than any kind of government intervention, no matter how well-intentioned. You are going to have job losses in either case – as we are seeing right now. Even with all the so-called “stimulus”, the unemployment rate has continued to rise throughout the first half of 2009. All that has resulted is you and I are a lot poorer, because somebody is going to have to pay the Piper!&lt;/p&gt;  &lt;p&gt;Andrew Klavan has one of his&amp;#160; “culture” videos about “Why are Conservatives so Mean” that really brings this concept home:&lt;/p&gt;  &lt;p&gt;&lt;object width="560" height="340"&gt;&lt;param name="movie" value="http://www.youtube.com/v/sC6MnwknfmU&amp;amp;hl=en&amp;amp;fs=1&amp;amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/sC6MnwknfmU&amp;amp;hl=en&amp;amp;fs=1&amp;amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="560" height="340"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;My regret is that fiscal conservatives waited until after Mr. Obama got elected to rediscover their “small government” principles. This is INEXCUSABLE.&lt;/p&gt;  &lt;p&gt;What we’re being left with is a huge bill that our generation cannot possibly pay, and a Socialist –style economy that would make our forefathers turn over in their graves. Let Them Fail! What am I talking, Greek?&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-3792309336196520707?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/lGrQ?a=L9ctTPFEAl0:CnUvbHQ4s7w:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/lGrQ?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/L9ctTPFEAl0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/3792309336196520707/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=3792309336196520707" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/3792309336196520707?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/3792309336196520707?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/L9ctTPFEAl0/role-of-government.html" title="The Role of Government" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/06/role-of-government.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUEEQXY7cSp7ImA9WxJQFkk.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-36356736083654675</id><published>2009-05-21T19:38:00.001-05:00</published><updated>2009-05-29T20:40:00.809-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-05-29T20:40:00.809-05:00</app:edited><title>Too Big to Fail?</title><content type="html">&lt;p&gt;The argument is familiar. Just like AIG and General Motors, California says it is too big to fail.    &lt;br /&gt;    &lt;br /&gt;And once again, I say: &lt;u&gt;LET IT FAIL&lt;/u&gt;. Let’s stop the bullshit, printing fake money so we can try to pump life into zombie banks, insurers, automakers, and states – all at taxpayer expense. Let’s talk about inflation for a moment. Let’s talk about letting the markets correct themselves, painful as that may seem to be.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_8b9UPLwuM3g/ShaNwyreroI/AAAAAAAAAPU/t80rAOju-LE/s1600-h/Zombie%5B2%5D.jpg"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Zombie" border="0" alt="Zombie" src="http://lh3.ggpht.com/_8b9UPLwuM3g/ShaNxKKY-EI/AAAAAAAAAPY/PiDvJaf9gOI/Zombie_thumb.jpg?imgmax=800" width="244" height="244" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I’ve watched a few of those Zombie movies. And I know that you cannot stop the Zombies by appeasing them with money. The only way to stop them is to &lt;u&gt;chop off their heads&lt;/u&gt;. The fiscal equivalent is to let the big insurers, banks, automakers – and even states, take bankruptcy and reorganize. It’s not the end of the world, and it isn’t the taxpayer’s mandate to shore up institutions who don’t understand basic fiscal responsibility.&amp;#160; Don’t we remember “The Boy Who Cried ‘Wolf’”?&lt;/p&gt;  &lt;p&gt;Inflation is seldom defined. Inflation is simply&amp;#160; a &lt;u&gt;decline in the value of money&lt;/u&gt;. This simple definition gives us insights into what causes inflation and why we might be concerned about it. It also provides insight into how we attempt to measure inflation.&lt;/p&gt;  &lt;p&gt;Milton Friedman was famous for pointing out that inflation is&amp;#160; a &lt;u&gt;monetary phenomenon&lt;/u&gt;. If the amount of goods stays the same and the monetary authority increases the amount of money, then it will take more money to buy the same amount of goods, which means that prices will rise. That’s the classic definition; it is as &lt;u&gt;objective as gravity&lt;/u&gt;.&lt;/p&gt;  &lt;p&gt;This is why we frequently define inflation as&amp;#160; “prices rising”. This&amp;#160; should make it clear that inflation cannot be caused by monopolies, or unions,&amp;#160; or decreasing taxes. It is &lt;u&gt;always caused&lt;/u&gt; by the supply of money rising faster than the supply of goods.&lt;/p&gt;  &lt;p&gt;If the supply of goods falls but the amount of money in “circulation” remains the same, then we can have the same effect, so it is possible for a restriction in production to cause inflation if the monetary authority does not decrease the money supply to match the reduction in production. Think OPEC, although they haven’t really been very successful.&lt;/p&gt;  &lt;p&gt;Inflation, unchecked, can become hyperinflation:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_8b9UPLwuM3g/ShaPbl7mAgI/AAAAAAAAAPc/GJNOyLQHroY/s1600-h/Hundred_billion_dollars_and_eggs%5B2%5D.jpg"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Hundred_billion_dollars_and_eggs" border="0" alt="Hundred_billion_dollars_and_eggs" src="http://lh3.ggpht.com/_8b9UPLwuM3g/ShaPbpp2WgI/AAAAAAAAAPg/vHD5vq-M2PE/Hundred_billion_dollars_and_eggs_thumb.jpg?imgmax=800" width="242" height="164" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The above is a Zimbabwean 100 Billion Dollar note, along with the number of eggs it can currently purchase. With hyperinflation, the currrency becomes effectively worthless and the population resorts to the use of other currencies or barter.&lt;/p&gt;  &lt;p&gt;The Federal Government attempts to measure inflation through the use of various indices. The most popular of these is the Consumer Price Index (CPI). The basic idea is to see how much a basket of goods cost in a base period, currently 1982-84, and compare it to today’s cost of the same market basket. &lt;/p&gt;  &lt;p&gt;Right away you can see some problems with this. For example, a 1982 computer will not be the same as a 2009 computer. An iPhone won’t be in the 1982 market basket at all,&amp;#160; whereas it might well be in the typical market basket today. &lt;/p&gt;  &lt;p&gt;As prices of some goods rise and the prices of other goods fall the average consumer will gravitate towards the goods with falling prices and away from goods with rising prices. Since some government payments, such as Social Security, are indexed to the CPI, there is some political interest in how this measure is determined as well. For this and other reasons, the Government has been known to “tinker” with these formulas.&lt;/p&gt;  &lt;p&gt;Economists recognized some time ago that the Federal Reserve was increasing the amount of money as a mechanism to solve the credit crisis, which was to a certain extent caused by prior Fed policy, and warned that we would be seeing a rise in inflation as a result.&lt;/p&gt;  &lt;p&gt;We aren’t seeing “much inflation” – yet. Gold, oil, etc – a little bit.&amp;#160; But it can take years for the effects of the current ENORMOUS monetary expansion to be felt in the general economy. Sooner or later, especially when and if the current slowdown turns into a recovery – you will begin to see the effects. We’ve created more money in the &lt;u&gt;first 100 days of the Obama Administration&lt;/u&gt; than was spent to finance the entire Iraq War from 2003 to 2008. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_8b9UPLwuM3g/ShbFwbAS0RI/AAAAAAAAAPk/DOxa7UX1XMQ/s1600-h/monetarybase%5B2%5D.gif"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="monetarybase" border="0" alt="monetarybase" src="http://lh3.ggpht.com/_8b9UPLwuM3g/ShbFwkjOQ1I/AAAAAAAAAPo/cgVdE7vC8z0/monetarybase_thumb.gif?imgmax=800" width="240" height="162" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;A look at the adjusted monetary base of the US shows that we have created a nearly 40% growth rate in money supply in the last 12 months. Clearly, this meets the definition of future inflation.&lt;/p&gt;  &lt;p&gt;Not only that, but we are coming out of the bottom of the lowest solar activity in decades. Once Solar Cycle 24 gets moving and we see more sunspots and solar radio activity, this 11 year cycle tends to exacerbate inflationary pressures. Interest rates go up, commodity prices go up, and “inflation” goes up. The British economist Ralph Hawtrey wrote &amp;quot;It is after depression and unemployment have subsided that inflation becomes dangerous.&amp;quot;&lt;/p&gt;  &lt;h3&gt;Bailout Mania&lt;/h3&gt;  &lt;p&gt;Taxpayer bailouts are a terrible mistake. They would subsidize the shoddy management practices of the corporate bureaucrats at General Motors, Ford and Chrysler, and would reward the intransigent union bosses who have made the UAW synonymous with inflexible and anti-competitive work rules.&lt;/p&gt;  &lt;p&gt;Bailouts of U.S companies, banks, and insurers also would be a mistake, as would bailouts of homeowners, states or any other constituency. If politicians genuinely want to help the economy, they should focus on reducing the burden of government, not increasing it. The reason why California is in such trouble is because it has too much government and not enough income to pay for it. California doesn’t need a bailout. It just needs to learn to balance it’s checkbook&amp;#160; like you and I do.&lt;/p&gt;  &lt;p&gt;So, what can you do to protect yourself? Well you can buy oil and gold, and other commodities. Mining stocks may be better than pure gold since they pay great dividends. There are also oil drilling trusts that behave similarly. And, don’t expect the stock market to make any major moves up. Right now, it’s ready for another major decline.&lt;/p&gt;  &lt;p&gt;Don’t shoot the Messenger.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-36356736083654675?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/lGrQ?a=uceG4n3D4-M:CWslT4kZ_W4:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/lGrQ?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/uceG4n3D4-M" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/36356736083654675/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=36356736083654675" title="5 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/36356736083654675?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/36356736083654675?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/uceG4n3D4-M/too-big-to-fail.html" title="Too Big to Fail?" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">5</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/05/too-big-to-fail.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkYMSX4-fCp7ImA9WxJRGE4.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-4266157606792999498</id><published>2009-05-19T09:48:00.001-05:00</published><updated>2009-05-20T09:36:28.054-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-05-20T09:36:28.054-05:00</app:edited><title>Visual Studio 2010 Beta 1 – and Install Fix</title><content type="html">&lt;p&gt;Recently Microsoft made Visual Studio 2010 available to MSDN Universal subscribers, and will shortly make it available to the general public as well. Previously this had only been available as a closed MVP limited CTP downloadable on Connect.&lt;/p&gt;  &lt;p&gt;Visual Studio 2010 provides some really attractive advances, particularly in the area of dynamic languages (F# now being a full-fledged Visual Studio language choice), Workflow (with a brand new workflow engine), Cloud computing (Azure), and – for Silverlight developers – not only is there now a full interactive drag-and-drop designer window, but you can &lt;u&gt;choose whether you want to develop with Silverlight 2 – or Silverlight 3&lt;/u&gt; – all from the same IDE!&lt;/p&gt;  &lt;p&gt;I’ve installed this on my primary development desktop machine alongside Visual Studio 2008, and while it hasn’t been long enough (only 2 days) to make firm determinations, so far I have not seen any “interferences” from having both products installed at all.&lt;/p&gt;  &lt;p&gt;If you are interested in a detailed rundown of all the new &lt;a href="http://msdn.microsoft.com/en-us/library/bb386063(VS.100).aspx" target="_blank"&gt;features of Visual Studio 2010, go here&lt;/a&gt;. There is also a &lt;a href="http://msdn.microsoft.com/en-us/library/dd410112(VS.100).aspx" target="_blank"&gt;main Documentation page online&lt;/a&gt; that has walkhthroughs, code samples, and much more. &lt;/p&gt;  &lt;h3&gt;A FIX FOR .NET FRAMEWORK 1.0 ISSUES&lt;/h3&gt;  &lt;p&gt;On my laptop, Visual Studio 2010 and the .NET Framework 4 Beta installers failed, claiming that I had to remove .NET Framework 1.0 first. Unfortunately for me, it would not uninstall.&amp;#160; Aaron Stebner to the rescue, once again! This Microsoftie knows more about installer issues than God, I swear!&amp;#160; You can download his &lt;a href="http://blogs.msdn.com/astebner/pages/8904493.aspx" target="_blank"&gt;“.NET Framework Cleanup Tool”&lt;/a&gt;, run it, and it will take care of everything. Once that is done, you will be able to install Visual Studio 2010 and the .NET Framework 4.0 Betas.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-4266157606792999498?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/lGrQ?a=tnc0lX7R5f8:lw4ktXQsqP8:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/lGrQ?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/tnc0lX7R5f8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/4266157606792999498/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=4266157606792999498" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/4266157606792999498?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/4266157606792999498?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/tnc0lX7R5f8/visual-studio-2010-beta-1.html" title="Visual Studio 2010 Beta 1 – and Install Fix" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/05/visual-studio-2010-beta-1.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkIHQnw6cSp7ImA9WxJREE0.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-4185213640343101479</id><published>2009-05-08T21:40:00.001-05:00</published><updated>2009-05-10T20:15:33.219-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-05-10T20:15:33.219-05:00</app:edited><title>PDF – Portable Document Format, my butt!</title><content type="html">&lt;p&gt;I was trying to print out the Silverlight &lt;a href="http://download.microsoft.com/download/F/B/8/FB8CA635-296B-487F-965C-8148F08B5319/riaservicesoverviewpreview.pdf" target="_blank"&gt;riaservicesoverviewpreview.pdf&lt;/a&gt; and, like so many other PDF files, it came out with missing letters that were blank and basically, thanks to Adobe’s bullshit marketing, I invested 116 pages worth of dead trees and printer ink to get a &lt;u&gt;totally useless document&lt;/u&gt;. If you’re like me (and I suspect there are a lot of us) you will often print out this kind of&amp;#160; stuff so you can sit in bed before you go to sleep and take out your hellacious yellow highlighter and mark up a document that you are studying.&lt;/p&gt;  &lt;p&gt;Well! So much for that. Not only that, but Adobe’s latest version of Reader is &lt;u&gt;bloated software&lt;/u&gt; that takes up a lot of resources, and they’re now using it to “Package” Adobe Air and whatever other gobbledegook they think I should have, that bears NO FYOOKIN’ RELATION to viewing and printing documents. I don’t have a choice anymore. If I refuse to accept the Air Installation, I CANNOT HAVE THE FREE ADOBE READER, unless i want to go find an older version without the mandatory “baggage”.&amp;#160; And if I download some “reader alternative”, then when I go to some site that wants me to download a PDF, it doesn’t detect that I have Adobe Reader installed, and I’m sunk.&lt;/p&gt;  &lt;p&gt;Microsoft offers some “Free” versions of their developer software (for example, Visual Studio Express, and SQLEXPRESS) that are very full featured. But they DON’T DELIVER BAGGAGE as a condition of using the software!&lt;/p&gt;  &lt;p&gt;I am really getting sick of this shit! If you want to promote a portable document format and a free reader for it, then DO SO! But Do it right, and nothing more. Don’t use it as a vehicle for promotion of irrelevant “features”. Don’t hand me some bullshit software that I didn’t ask for,&amp;#160; and force me to install it just so I can be able to read and print your high-falutin’ format. PDF was originally designed for something quite different than what it’s being used for now. It was originally for preserving format for printing documents. Now, it’s become totally bastardized.&lt;/p&gt;  &lt;p&gt;There are plenty of other formats you can use. RTF is readable and printable by virtually every word processing program available, not just Microsoft Word. It preserves the formatting and embedded images very nicely, and when I print it, I don’t get missing letters in my words that fail to print. XPS, which Microsoft “invented” is another good format, and there are others. What I don’t want is products that create new processes “Adobe Updater” for example, that hog resources on my machine and slow up the works.&lt;/p&gt;  &lt;p&gt;Adobe Updater, Apple Mobile Device Service, Google Update,&amp;#160; ITunes, Zune, and half a dozen other offenders are now appearing in my Task Manager processes list. Did I ask for this CRAP? Did anybody tell me they were going to install it? NOT!&lt;/p&gt;  &lt;p&gt;But the bottom line, to me, revolves around the concept of using what is promoted as&amp;#160; an “open format” to cram extra “stuff” down the consumer’s throat (Adobe Air, for example), and to have third party “PDF gadgets” that may&amp;#160; either create invalid or corrupt PDF files that turn out to be useless for printing. For example, my Microsoft Word 2007 program offers a “Save as PDF” option. What guarantee do I have that the result will print without errors? What validation is available to make sure it “works correctly”? Do I even know if it came from Microsoft, or some other vendor? We DO NOT have open standards for document rendering, display and printing, to the contrary of what you may be hearing. When a true open standard for portable documents emerges – without all the BS baggage -&amp;#160; I’ll be the first to support it. PDF doesn’t make it, in my opinion. The problem is --everybody wants open standards – as long as it is “theirs”!&amp;#160; I say, BULLSHIT! Open standards means everybody uses it willingly – whether they invented it, or not. The standard is published, everybody signs on, and that’s the end of it! Period! And there should be reference applications that embody ONLY the standard, with NO BAGGAGE!&lt;/p&gt;  &lt;p&gt;Why do you Silverlight RIA guys feel compelled to save this stuff in PDF format? You certainly aren’t doing me any favors. BIG FAIL. Sorry, pals! Do no evil.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-4185213640343101479?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/lGrQ?a=1Qe1VXzKtao:muWE9ftwbW8:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/lGrQ?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/1Qe1VXzKtao" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/4185213640343101479/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=4185213640343101479" title="13 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/4185213640343101479?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/4185213640343101479?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/1Qe1VXzKtao/pdf-portable-document-format-my-butt.html" title="PDF – Portable Document Format, my butt!" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">13</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/05/pdf-portable-document-format-my-butt.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEAHQ389eSp7ImA9WxJRFEw.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-133108939016049823</id><published>2009-05-08T19:57:00.001-05:00</published><updated>2009-05-15T14:45:32.161-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-05-15T14:45:32.161-05:00</app:edited><title>A Tour Through Microsoft Silverlight 3 RIA Services</title><content type="html">&lt;p&gt;The main focus of Silverlight RIA Services is to provide an easy-to-use infrastructure for service-enabling Silverlight Applications, sharing of common entity classes, and performing bi-directional work with data in your Silverlight applications. Controls can be made “data aware”, and you can save a lot of time by not having to write a lot of code to be able to work with data from the server. RIA services also provides an easy way to hook in ASP.NET Membership, Role, and Profile providers to your Silverlight application, and to enable the UserContext on Silverlight controls.&lt;/p&gt;  &lt;p&gt;Once you grasp everything that Silverlight RIA Services offers, you will see that developing data-aware LOB applications with Silverlight has just been made an order of magnitude easier. You will be able to spend your time focusing on what you want your application to do instead of spending a lot of tedious time to put in the plumbing just to get to “first base”. Silverlight RIA Services already gives you all the plumbing, and it works great.&lt;/p&gt;  &lt;p&gt;RIA Services is composed of 12 distinct&amp;#160; namespaces that all work together to provide a rich data model and plumbing framework for enterprise Silverlight applications:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;table border="0" cellspacing="2" cellpadding="2" width="542"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="144"&gt;&lt;strong&gt;System.ComponentModel.DataAnnotations&lt;/strong&gt;&lt;/td&gt;        &lt;td valign="top" width="390"&gt;Contains data Model extension metadata attributes and classes, Validation Attributes&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="144"&gt;&lt;strong&gt;System.Web.DomainServices&lt;/strong&gt;&lt;/td&gt;        &lt;td valign="top" width="390"&gt;Contains DomainService&amp;#160; and DomainServiceContext&amp;#160; and related classes / attributes&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="144"&gt;&lt;strong&gt;System.Web.DomainServices.LinqToEntities&lt;/strong&gt; &lt;/td&gt;        &lt;td valign="top" width="390"&gt;LinqToEntities related classes and ObjectContext extensions&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="144"&gt;&lt;strong&gt;System.Web.DomainServices.LinqToSql&lt;/strong&gt; &lt;/td&gt;        &lt;td valign="top" width="390"&gt;LinqToSql Domain Service and DataContext extensions&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="144"&gt;&lt;strong&gt;System.Web.DomainServices.Tools&lt;/strong&gt; &lt;/td&gt;        &lt;td valign="top" width="390"&gt;Custom MsBuild tasks to create Silverlight Client working proxy &lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="144"&gt;&lt;strong&gt;System.Web.Ria&lt;/strong&gt; &lt;/td&gt;        &lt;td valign="top" width="390"&gt;DataServiceFactory and SilverlightApplication control for Silverlight RIA applications&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="144"&gt;&lt;strong&gt;System.Web.Ria.ApplicationServices&lt;/strong&gt; &lt;/td&gt;        &lt;td valign="top" width="390"&gt;User, Authentication and Profile classes to enable Membership, Roles, and Profiles&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="144"&gt;&lt;strong&gt;System.Web.Ria.Data&lt;/strong&gt; &lt;/td&gt;        &lt;td valign="top" width="390"&gt;AssociatedEntities, CodeProcessor, DataServiceResult for communicating data between service and client&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="144"&gt;&lt;strong&gt;System.Windows.Controls&lt;/strong&gt; &lt;/td&gt;        &lt;td valign="top" width="390"&gt;DomainDataSource and related classes&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="144"&gt;&lt;strong&gt;System.Windows.Data&lt;/strong&gt; &lt;/td&gt;        &lt;td valign="top" width="390"&gt;Descriptors and collections for grouping and sorting data&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="144"&gt;&lt;strong&gt;System.Windows.Ria.ApplicationServices&lt;/strong&gt; &lt;/td&gt;        &lt;td valign="top" width="390"&gt;Authentication, Login and User related classes&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="144"&gt;&lt;strong&gt;System.Windows.Ria.Data&lt;/strong&gt; &lt;/td&gt;        &lt;td valign="top" width="390"&gt;DomainClient, DomainContext, Entity and related classes&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;RIA Services provide three modalities – Framework, Tools, and Services.&amp;#160; &lt;strong&gt;Framework components&lt;/strong&gt; support best – practices patterns for writing application logic and validation so that it can be easily used on the presentation tier. &lt;strong&gt;Tools&lt;/strong&gt; add to existing Visual Studio capabilities by linking the client and mid-tier projects in a single solution and by enabling smart code generation in your Silverlight client projects. &lt;strong&gt;Services&lt;/strong&gt; utilize the patterns to support commonly used capabilities such as authentication and user settings management.&lt;/p&gt;  &lt;p&gt;.NET RIA Services focus on the end-to-end use of data. It may be retrieved through a Data Access Layer (DAL) of your choice. It can be shaped for use in the presentation tier and annotated with suitable metadata for validation and access control. The new framework components support data and metadata flow across tiers through a controlled set of operations.&lt;/p&gt;  &lt;p&gt;There have been a number of additions and “last minute” downloads that didn’t quite make the MIX ‘09 presentation. If you want to get started with Silverlight RIA services, here are some very good links:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://silverlight.net/forums/53.aspx" target="_blank"&gt;RIA Services Feedback Forum&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/brada/archive/2009/03/19/what-is-net-ria-services.aspx" target="_blank"&gt;What is Silverlight RIA Services?&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.nikhilk.net/NET-RIA-Services-Vision-Architecture.aspx" target="_blank"&gt;RIA Services – from vision to architecture&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=2390" target="_blank"&gt;Silverlight Store SEO Example&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=2387" target="_blank"&gt;RIA Services Walkthrough Sample&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=2391" target="_blank"&gt;Silverlight Business Application template files&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=2400" target="_blank"&gt;Classifieds Sample&lt;/a&gt;&lt;/p&gt;  &lt;h3&gt;UPDATE!&lt;/h3&gt;  &lt;p&gt;Finally, &lt;a href="http://silverlight.net/forums/t/95364.aspx" target="_blank"&gt;here is the main info page for the May 2009 Preview&lt;/a&gt;&lt;strong&gt;.&lt;/strong&gt; Be sure to get the PDF as well!&lt;/p&gt;  &lt;p&gt;I also have an article at&amp;#160; eggheadcafe.com on&amp;#160; using &lt;a href="http://ittyurl.net/gslk.ashx" target="_blank"&gt;Membership, Roles and Profile with RIA&lt;/a&gt;, and I intend to publish at least one additional article soon.&lt;/p&gt;  &lt;p&gt;NOTE: In the Business Application via Template files, it states that you must have SQLEXPRESS installed to use the built-in Authentication service. This is not 100% true. You can use regular SQL Server and any database you want, as long as you have run the ASPNET_REGSQL utility on it. Then just do this in your connectionStrings section of web.config:&lt;/p&gt;  &lt;p&gt;&amp;lt;connectionStrings&amp;gt;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;remove name=&amp;quot;LocalSqlServer&amp;quot;/&amp;gt;     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; &amp;lt;add name=&amp;quot;LocalSqlServer&amp;quot; connectionString =&amp;quot;server=(local);database=YOURDATABASENAME;Integrated Security=True&amp;quot;/&amp;gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-133108939016049823?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/lGrQ?a=EA1rhlCNkKA:TffMfTibzi0:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/lGrQ?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/EA1rhlCNkKA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/133108939016049823/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=133108939016049823" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/133108939016049823?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/133108939016049823?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/EA1rhlCNkKA/tour-through-microsoft-silverlight-3.html" title="A Tour Through Microsoft Silverlight 3 RIA Services" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/05/tour-through-microsoft-silverlight-3.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUMNQHo9fip7ImA9WxJSEk8.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-611391841751026952</id><published>2009-05-01T20:18:00.001-05:00</published><updated>2009-05-01T20:24:51.466-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-05-01T20:24:51.466-05:00</app:edited><title>Hacking – and the Least Privileges Doctrine</title><content type="html">&lt;p&gt;Recently we had a forum moderator (which people we pay a nice monthly stipend) get into some issues with drug abuse problems. This individual had to be checked into a rehab clinic to get himself straightened out.&amp;#160; While I was aware of him having these issues in the past, I was not aware that this person was still having such problems. But the bigger problem is that the correct security policy was not 100% in place, and that is 100% my responsibility.&lt;/p&gt;  &lt;p&gt;Long story short, due to a lack of security enforcement on our part, my site account and all my articles and such ended up getting deleted. I had to restore them from a most recent database backup. Not a very big deal, but certainly an annoyance.&amp;#160; Needless to say, we now have a new Forum Moderator.&lt;/p&gt;  &lt;p&gt;The definition of Principle of Least Privilege is fairly simple and easy to comprehend. The idea is that users will be given only the privileges absolutely necessary to perform any given task. This might be configuring their computer, browsing the Internet, running a financial application, or sending e-mail. Or it could be the permission set you give a Forum Moderator on a web site you run.&amp;#160; You might have also heard the term Least Permission, which is very similar to the Principle of Least Privilege. &lt;/p&gt;  &lt;p&gt;When you have employees or contractors who have been given the responsibility to do a certain job, it is extremely important to grant them ONLY the permssions to do that job, and nothing more. Studies show that the majority of hacking attacks are “inside jobs” – meaning that it is usually the work of a disgruntled employee, or even one who is mentally unstable.&lt;/p&gt;  &lt;p&gt;Companies, organizations, and others who run websites, databases, or other information stores that could possibly be compromised would do well to examine this doctrine and ensure that they are following it.&lt;/p&gt;  &lt;p&gt;Sadder, but a lot wiser…&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-611391841751026952?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/lGrQ?a=66Fbe7i_c1Q:A6TEZ94Ve5U:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/lGrQ?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/66Fbe7i_c1Q" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/611391841751026952/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=611391841751026952" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/611391841751026952?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/611391841751026952?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/66Fbe7i_c1Q/hacking-and-least-privileges-doctrine.html" title="Hacking – and the Least Privileges Doctrine" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/05/hacking-and-least-privileges-doctrine.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUcDQ3YyeCp7ImA9WxJSEE0.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-8264716891267150267</id><published>2009-04-24T14:52:00.001-05:00</published><updated>2009-04-29T06:04:32.890-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-04-29T06:04:32.890-05:00</app:edited><title>IIS 6.0, Compression, and Classic ASP Pages</title><content type="html">&lt;p align="center"&gt;&lt;em&gt;The incompetent with nothing to do can still make a mess of it.&lt;/em&gt;&amp;#160;&amp;#160; - Laurence J. Peter&lt;/p&gt;  &lt;p&gt;Well this one is a hoot. Enabled HTTP compression in IIS 6.0, and suddenly Classic ASP pages (yes, we still have a few) that required Integrated Authentication just wouldn’t work.&lt;/p&gt;  &lt;p&gt;With Anonymous Authentication unchecked, and Integrated checked, and ACL’s on the folder permitting only Adminstrators, you would get a Windows Login prompt as expected but when you would provide credentials, it never went through.&lt;/p&gt;  &lt;p&gt;As luck would have it, we duplicated the pages on another site where compression was turned off, and those worked fine. On a hunch, I disabled compression on the includes folder, and that fixed it! &lt;/p&gt;  &lt;p&gt;Seems for some reason that Classic ASP include files don’t like HTTP compression at all.&lt;/p&gt;  &lt;p&gt;And a thanks to &lt;a href="http://www.west-wind.com/Weblog/posts/4375.aspx" target="_blank"&gt;Rick Strahl&lt;/a&gt; for reminding me that you need HTTP KeepAlives turned on to use Windows Auth with classic ASP.&lt;/p&gt;  &lt;p&gt;Compression will reduce our bandwidth to around 25% of what it has been. That’s good!&lt;/p&gt;  &lt;p&gt;In IIS 6.0, getting compression completely enabled is tricky. Tools like ZipEnable from Port 80 can make it a lot easier, and they provide the kind of fine-grained control that lets you disable compression on&amp;#160; a single directory.&lt;/p&gt;  &lt;h3&gt;Windows 7 Upgrade path from a Beta: No can do?&lt;/h3&gt;  &lt;p&gt;The RC (Build 7100) versions of Windows 7, which will be available to human beings shortly,&amp;#160; will not upgrade over a pre-release version of the same OS. But, not to worry! The &lt;a href="http://blogs.msdn.com/e7/archive/2009/04/07/delivering-a-quality-upgrade-experience.aspx" target="_blank"&gt;Windows 7 Engineering Blog&lt;/a&gt; provides an explanation and instructions on how to do it. They acknowledge that tens of thousands of people at Microsoft alone have been using Windows 7 pre-release builds as their primary OS.&lt;/p&gt;  &lt;p&gt;Essentially it is as simple as copying all the files from the burned DVD to a folder on the target machine, then editing the file CVersion.ini in the Sources folder to have a MinClient value lower than the down level build. For example, you would change 7100 to read 7000. Save the file in the same place and run setup from the folder on the&amp;#160; hard drive itself, and you will be allowed to upgrade.&amp;#160; As always, there are a number of cautions and caveats in doing this, so read their blog post carefully. These same steps will be necessary when going from the RC to the RTM milestone.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-8264716891267150267?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/lGrQ?a=25d4-F1WCW4:14ZiZ5XkgVo:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/lGrQ?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/25d4-F1WCW4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/8264716891267150267/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=8264716891267150267" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/8264716891267150267?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/8264716891267150267?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/25d4-F1WCW4/iis-60-compression-and-classic-asp.html" title="IIS 6.0, Compression, and Classic ASP Pages" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/04/iis-60-compression-and-classic-asp.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A04FR34-eSp7ImA9WxJTFUU.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-9196282231243262379</id><published>2009-04-23T17:00:00.001-05:00</published><updated>2009-04-24T11:18:36.051-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-04-24T11:18:36.051-05:00</app:edited><title>The Twittification of Live Messenger</title><content type="html">&lt;p&gt;I’ve noticed this new “Groups” thing in the latest version of Windows Live Messenger, and it seems that the kind folks at Microsoft have really&amp;#160; started to “get it” about what “Social” is. &lt;/p&gt;  &lt;p&gt;If you enable the “What’s new” display at the bottom of the Live Messenger window, you will see people in your “group” (that you have started) who have joined other people’s networks. If you click on the links, you can view information about that user and their network, and you can invite them to join (or, ask to join).&amp;#160; It’s not that intuitive at first, but if you play around with it using people that you know, you’ll start seeing new Contacts in your contacts list – most likely people you didn’t know were using Messenger, and / or you probably never thought to invite. &lt;/p&gt;  &lt;p&gt;I’ve already made a few new friends with this – people I always wanted to be able to have on Messenger, but I either never thought of it, or I didn’t know how to invite them.&lt;/p&gt;  &lt;p&gt;When “Groups” first was started, I started a “.Net devs” group just for fun, and invited a few of my Messenger contacts. Several people joined. The concept of getting your Twitter friends to join a Messenger group or network is powerful. Think about it.&lt;/p&gt;  &lt;p&gt;The key thing – like any other new “toy” – is to use it to join networks of people you are really interested in (in my case other MVP’s and .NET developers). This will keep the signal-to-noise ratio at an acceptable level. I get followed on Twitter by all kinds of strange folks – who are obviously following a search on some keyword in a Tweet of mine. I check them out, have a look at who’s following them, and only then do I decide.&lt;/p&gt;  &lt;p&gt;“Social” means different things to different people. To me, it means developing meaningful relationships with like-minded people where I can help them, and they can help me. To others, it’s just collecting names. You have to decide what “social” really means to you.&lt;/p&gt;  &lt;p&gt;Kudos to Microsoft for thinking social and “getting it”. I think it’s a step in the right direction vis-a-vis “&lt;a href="http://petesbloggerama.blogspot.com/2008/05/social-api-we-really-need.html" target="_blank"&gt;unification of social&lt;/a&gt;”.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-9196282231243262379?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/lGrQ?a=8GB_txFWlWs:MZvs1dEXuNY:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/lGrQ?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/8GB_txFWlWs" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/9196282231243262379/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=9196282231243262379" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/9196282231243262379?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/9196282231243262379?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/8GB_txFWlWs/twittification-of-live-messenger.html" title="The Twittification of Live Messenger" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/04/twittification-of-live-messenger.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0EDSXwzeCp7ImA9WxJTEkk.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-3324224545761639306</id><published>2009-04-19T18:50:00.001-05:00</published><updated>2009-04-20T10:34:38.280-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-04-20T10:34:38.280-05:00</app:edited><title>Some facts about Silverlight 3 and where it’s going</title><content type="html">&lt;h5 align="center"&gt;&lt;em&gt;“Being an expert means having credibility. It doesn’t matter how much you know if people don’t trust your answers.”&lt;/em&gt; – Brent Ozar&lt;/h5&gt;  &lt;h5&gt;Silverlight 3 was first announced at the IBC 2008 show in Amsterdam on September 12, 2008. It was unveiled at MIX09 in Las Vegas on March 18, 2009. A beta version was made available for download the same day.&lt;/h5&gt;  &lt;p&gt;Silverlight 3 includes an increased number of controls - including but not limited to &lt;i&gt;DataGrid&lt;/i&gt;, &lt;i&gt;TreeView&lt;/i&gt;, various layout panels, &lt;i&gt;&lt;a href="http://microapplications.com/blog/archive/2009/03/27/328.aspx" target="_blank"&gt;DataForm for forms-driven applications&lt;/a&gt;&lt;/i&gt; and &lt;i&gt;&lt;a href="http://www.silverlightshow.net/Search.aspx?q=DataPager&amp;amp;ro=1&amp;amp;tg=true&amp;amp;adv=false" target="_blank"&gt;DataPager for viewing paginated data&lt;/a&gt;&lt;/i&gt;. Some of these controls are from the &lt;a href="http://www.codeplex.com/Silverlight" target="_blank"&gt;Silverlight Toolkit&lt;/a&gt;. In addition, Silverlight 3 includes a &lt;a href="http://timheuer.com/blog/archive/2009/04/06/silverlight-3-navigation-behavior-customization.aspx" target="_blank"&gt;navigation framework&lt;/a&gt; to let Silverlight applications use the hyperlinked navigation model as well as enabling &lt;a href="http://programwith.net/2009/03/23/Silverlight3NdashDeepLinking.aspx" target="_blank"&gt;deep-linking (linking directly to specific pages)&lt;/a&gt; within Silverlight applications.&lt;/p&gt;  &lt;p&gt;On the media front, Silverlight 3 supports &lt;a href="http://on10.net/blogs/benwagg/Silverlight-3-Beta-Whatrsquos-New-for-Media/" target="_blank"&gt;AAC audio decoding&lt;/a&gt; as well as hardware-accelerated &lt;a href="http://blog.domaindotnet.com/2009/04/05/silverlight_3_beta_adobe_video_playerworking_now/" target="_blank"&gt;H.264 video decoding&lt;/a&gt;. The native multimedia pipeline is also programmatically exposed, so that other formats can also be supported by third-parties using &lt;a href="http://timheuer.com/blog/archive/2008/10/01/mediastreamsource-sample-with-source-code.aspx" target="_blank"&gt;managed code decoders&lt;/a&gt;. Silverlight 3 supports &lt;a href="http://community.irritatedvowel.com/blogs/pete_browns_blog/archive/2009/03/18/Silverlight-3-_1320_-Perspective-3d-Transforms-_1320_-PlaneProjection.aspx" target="_blank"&gt;perspective 3D&lt;/a&gt;&lt;i&gt;&lt;/i&gt; which enables 3D transformations of 2D elements. These transformations, as well as many 2D operations like stretches, alpha blending etc are &lt;a href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/04/16/silverlight-3-and-gpu-acceleration.aspx" target="_blank"&gt;hardware accelerated&lt;/a&gt;. Custom animations, including transforms and blends, can be created on Silverlight elements using &lt;a href="http://drawlogic.com/2009/03/22/silverlight-3-mix09-demos-video-of-pixel-shaders-hlsl-authored-3d-planes-savedialog-local-connections-out-of-browser/" target="_blank"&gt;HLSL to make use of pixel shaders&lt;/a&gt;. A &lt;a href="http://community.irritatedvowel.com/blogs/pete_browns_blog/archive/2009/03/18/Silverlight-3-_1320_-The-Bitmap-API-_2F00_-WriteableBitmap.aspx" target="_blank"&gt;Bitmap API is provided&lt;/a&gt; to let Silverlight 3 applications manipulate bitmaps. Silverlight now uses the GPU to accelerate the &lt;a href="http://timheuer.com/blog/archive/2009/03/18/silverlight-3-whats-new-a-guide.aspx" target="_blank"&gt;composition of Visual Trees&lt;/a&gt;&lt;i&gt;&lt;/i&gt; (like WPF, Silverlight elements correspond to &lt;i&gt;Visual&lt;/i&gt; elements, which, when coupled with the layout information, forms a &lt;i&gt;Visual Tree&lt;/i&gt; which is then rendered to form the final display). Visual trees &lt;a href="http://pagebrooks.com/archive/2009/03/31/bitmap-caching-in-silverlight-3.aspx" target="_blank"&gt;can now be cached&lt;/a&gt;; this increases performance in cases like transforms, which create lots of throw-away intermediate states, by not making the state transitions on the main Visual tree. Silverlight 3, on release, will support ClearType text rendering.&lt;/p&gt;  &lt;p&gt;UI elements in Silverlight 3 support &lt;i&gt;&lt;a href="http://community.irritatedvowel.com/blogs/pete_browns_blog/archive/2009/03/18/Silverlight-3-_1320_-UI-Element-to-Element-Binding.aspx" target="_blank"&gt;element-to-element binding&lt;/a&gt;&lt;/i&gt; - which allows one element to be bound to the state of another element, including&amp;#160; a validation mechanism for data binding. Unlike Silverlight 2, which allowed the applications to save files only to the local isostorage, Silverlight 3 applications can save to any location on the file system via the &lt;a href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/03/18/a-quick-look-at-silverlight-3-save-file-dialog.aspx" target="_blank"&gt;system Save File dialog&lt;/a&gt;. However, the path where the file is saved will still be hidden from the Silverlight application. Any external assemblies used by Silverlight applications are cached to so that they need not be redownloaded for subsequent instantiations of the application.&lt;/p&gt;  &lt;p&gt;Silverlight 3 also &lt;a href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/03/18/a-quick-look-at-silverlight-3-local-connection.aspx" target="_blank"&gt;includes a LocalConnection API&lt;/a&gt; to communicate (using a named pipe style model) among multiple running applications on the same machine, irrespective of the browser&amp;#160; and can monitor for network connectivity events. Silverlight 3 can optionally use &lt;a href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/04/05/silverlight-3-experimenting-with-wcf-s-binary-xml-encoder.aspx" target="_blank"&gt;Binary XML&lt;/a&gt; to communicate with WCF services.&lt;/p&gt;  &lt;p&gt;Silverlight 3 &lt;a href="http://timheuer.com/blog/archive/2009/03/18/silverlight-3-offline-update-framework.aspx" target="_blank"&gt;supports Out-of-Browser deployment&lt;/a&gt;&lt;i&gt;&lt;/i&gt;, i.e., Silverlight applications can be installed to the system for offline access (provided the application manifest is modified to allow local installation) where they run outside the browser. They are launched using the Start Menu or desktop shortcuts, similar to ClickOnce installations, and run without the browser window. Applications can check whether they are running inside a browser or not. When running out of browser, HTML interop is disabled. In addition, &lt;a href="http://bliny.net/blog/post/Out-of-Browser-with-Silverlight-3.aspx" target="_blank"&gt;access to the Function Keys is&amp;#160; enabled&lt;/a&gt;. Locally installed Silverlight applications still run in a sandbox.&lt;/p&gt;  &lt;p&gt;Installed Silverlight 3 applications automatically check for updates asynchronously on every launch and updates are automatically installed.&lt;sup&gt; &lt;/sup&gt;Running instances of the applications are informed when updates are available.&lt;/p&gt;  &lt;p&gt;The current Silverlight 3 beta does not support a “go live” license, so developers cannot currently put their Silverlight 3 beta applications on the public internet because there is no publicly available runtime to download.&amp;#160; You can find out &lt;a href="http://silverlight.net/themes/silverlight/getstarted/sl3beta.aspx?AspxAutoDetectCookieSupport=1" target="_blank"&gt;more about Silverlight 3 here&lt;/a&gt;.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-3324224545761639306?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/lGrQ?a=dcBLesLM7zQ:MfvHa1QSqhY:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/lGrQ?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/dcBLesLM7zQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/3324224545761639306/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=3324224545761639306" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/3324224545761639306?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/3324224545761639306?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/dcBLesLM7zQ/some-facts-about-silverlight-3-and.html" title="Some facts about Silverlight 3 and where it’s going" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/04/some-facts-about-silverlight-3-and.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEMMQ305cCp7ImA9WxJRFU8.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-2995677000134870173</id><published>2009-04-13T20:24:00.001-05:00</published><updated>2009-05-16T21:14:42.328-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-05-16T21:14:42.328-05:00</app:edited><title>You’re Fired! – Redux</title><content type="html">&lt;p&gt;I walked into the office this morning and was called “downstairs”. The official line was “Due to the economic downturn, blah blah”… You get the idea. I know better. I was working on a project that was &lt;u&gt;grossly underbid&lt;/u&gt; as a fixed-price deal by a company - designated&amp;#160; “architect”&amp;#160; -- which consequently forced a few of us&amp;#160; developers into an impossible position, under extreme time pressure, on a new technology that nobody in the office had ever used before. The schedule was virtually impossible to meet. Anyone with an above room temperature IQ could easily see this, and I had been vocal about it from the beginning, so what happened to me was no surprise.&amp;#160; Management was in a state of denial.&amp;#160; One developer who was brought on decided to quit in the very beginning. Then, they scrambled to bring on two other developers from another office and another project.&amp;#160; The client was not very helpful, although they could not be blamed, really. This particular&amp;#160; project was destined for problems from the beginning, in my opinion. Of course, one could make the case that the company was in a position of attempting to do anything to keep business in the pipeline, “due to the economic downturn”. Still, when you are bidding a project, you don’t want to shoot yourself in the foot, but it seems to me that’s what they did.&lt;/p&gt;  &lt;p&gt;To add insult to injury, the “architect” person refused to allow the developer team to use multiple checkout in TFS (that’s the default) –- causing hour upon hour of delays, and on top of that – refused to allow us to include the client’s base class library project&amp;#160; in the solution so that we could debug through, claiming it would “add complexity” – which makes no sense, since it was the&amp;#160; identical source code the client gladly&amp;#160; provided us with and used to&amp;#160; build the assembly to start with! It actually got so bad that developers started working offline to be able to get stuff done. I have never – I repeat NEVER – been put into this kind of arbitrarily restrictive environment in developing an application!&amp;#160; Developers were not consulted in advance about this project and its risks. Only after I got involved did I realize that one of the scope requirement our “architect” had included -- of WCF enabling the client’s entire library-- was virtually impossible, and I successfully got them to remove this requirement after screaming bloody murder about it. What am I talking here, Greek? I said what I believed was right, and i got shot down! We had an environment where you were supposed to be able to provide input – but when you did, it &lt;strong&gt;became a “good old boy” network and you would be quashed. No&lt;/strong&gt;t cool at all! What’s more, if you are the architect on a project, you have NO BUSINESS tinkering with the codebase and checking in untested code that breaks the application and causes even more hassles for the developer team!&lt;/p&gt;  &lt;p&gt;This is a key fallacy in presenting and proposing a project to a client – when somebody who has been designated&amp;#160; the “project architect” decides to do&amp;#160; everything “on their own” -- without prior consultation with the actual coders who will be tasked with building it—intelligent people&amp;#160; who can usually offer valuable input. This is “Ivory Tower” development proposal methodology, and it’s just wrong. Since when is the “architect” supposed to be the guy that tells the developer team how to handle their source control? I think that when people get into a position of “defending turf” – they can become extremely threatened by other people who question their authority, even in the slightest way.&lt;/p&gt;  &lt;p&gt;Actually, I like this person – but it became “political” because I opened my mouth and said the obvious.&amp;#160; I don’t&amp;#160; care at this point;&amp;#160; I’m blessed because I’ve built up a substantial income with my &lt;a href="http://www.eggheadcafe.com/" target="_blank"&gt;eggheadcafe.com&lt;/a&gt; partner over the last nine years (to his credit, he seems to be able to put up with my idiosyncrasies just fine…). &lt;/p&gt;  &lt;p&gt;When companies are stressed, managers often make bad decisions -- it’s the guys who are making six figures that get chopped first, even though they are often the people who can help the most – but only if they are asked to do so. I certainly was not asked.&amp;#160; If companies do not take concrete&amp;#160; steps to have a proactive policy of LISTENING to the people who will be&amp;#160; producing the product,&amp;#160; then&amp;#160; &lt;u&gt;they will fail&lt;/u&gt;.&amp;#160;&amp;#160; Managers&amp;#160; don’t always think logically – they are too often motivated by the concept of “protecting their ass” – and it degrades into&amp;#160; a political “good buddy network” process. I’m sure if you’re reading this post that you may have already been exposed to this.&lt;/p&gt;  &lt;p&gt;When I see a process that’s flawed, I’m gonna speak my mind about it. When you stick to principles and do this, it may get you branded as a scapegoat and then you’ll be the first to go, illogical as it may seem.&amp;#160; So be it – I can sleep well now. I’m so relieved that I no longer have to spend 2 hours of my day driving into Orlando and back to put up with this B.S. every day.&amp;#160; Now I can focus on what I do best – writing good code and articles, making presentations, building the business. If I find another “day job” – you can bet &lt;u&gt;I’ll choose it carefully.&lt;/u&gt;&lt;/p&gt;  &lt;p&gt;The bottom line is, “To thine own self be true” --&amp;#160; I would likely have been out of there looking for a better spot&amp;#160; anyway. As a friend and co-worker said, “They have kicked out an excellent developer and team member”.&amp;#160; That’s comforting to hear, but in this case it just wasn’t working for me –-I now believe the company&amp;#160; actually did me a favor. Thank you! (BTW – &lt;a href="http://www.eggheadcafe.com/articles/pbrombergresume.asp" target="_blank"&gt;here’s my current resume&lt;/a&gt;!)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-2995677000134870173?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/lGrQ?a=LpoEvAoEZGQ:zoJGtZ9DmAk:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/lGrQ?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/LpoEvAoEZGQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/2995677000134870173/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=2995677000134870173" title="10 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/2995677000134870173?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/2995677000134870173?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/LpoEvAoEZGQ/youre-fired-redux.html" title="You’re Fired! – Redux" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">10</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/04/youre-fired-redux.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0IMRnk4eCp7ImA9WxVaF0w.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-6096672656604905509</id><published>2009-04-08T19:47:00.001-05:00</published><updated>2009-04-14T08:26:27.730-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-04-14T08:26:27.730-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="ASP.NET MVC" /><title>ASP.NET MVC: Is it worth it?</title><content type="html">&lt;p align="center"&gt;&lt;em&gt;You talk to God, you're religious. God talks to you, you're psychotic.&lt;/em&gt;&amp;#160; - Doris Egan&lt;/p&gt;  &lt;p&gt;Catchy title, eh? I’m asking it because I think it’s a legitimate question. I’ve been working with ASP.NET MVC for a couple of reasons: &lt;/p&gt;  &lt;p&gt;1) Peer pressure: Developers who I know and respect have been telling me its “very cool” and beats “classic” ASP.NET WebForms by a mile. Some of these people are pretty smart. Some of them are a lot smarter than I am.&lt;/p&gt;  &lt;p&gt;2) I have no choice. The current project I’m working on for my “day job” uses ASP.NET MVC along with other “very cool” things like StructureMap, Castle.Validator and a few other alt.net type goodies. (Side note: &lt;a href="http://altdotnet.org/" target="_blank"&gt;alt.net may not be so cool&lt;/a&gt;. I tried to sign in at their site with my OpenID and it wouldn’t accept it. I got some bullshit about not having a valid email address… Folks, that’s the FIRST TIME I’ve ever been denied an OpenID login!) Correction: a commenter below&amp;#160; correctly stated that I needed to enable my email on my OpenId profile. Usually, what people do is that if your email is not provided, they ask you to enter it. Oh, well….&lt;/p&gt;  &lt;p&gt;So anyway,&amp;#160; over the last month or more, I have had no choice but to struggle my way along with two or three other developers who are more or less equally “Into the shark pool: now ‘swim!’”. Today things got so bad that I started pair programming with another guy. You know the concept: One PC, One Driver, One Navigator, and (hopefully) Two Brains. Actually we got a lot done mostly because the other guy was familiar with certain aspects of the framework (its the client’s framework) and I was familiar with other aspects. So in about 3 or 4 hours, I’d say we got about 15 hours worth of what a single developer would be able to accomplish – and most importantly, both of us learned new “stuff” in the process.&lt;/p&gt;  &lt;p&gt;But here’s my take on ASP.NET MVC so far:&lt;/p&gt;  &lt;p&gt;1) I think it’s very cool. I like the idea of separation of concerns. I like the more &amp;quot;OOP” approach to web development. You can do a lot with it –- but!&lt;/p&gt;  &lt;p&gt;2) It has a steep learning curve. ASP.NET MVC is NOT the kind of framework that you want to have to use if you’ve been arbitrarily thrown into a new project where you must use it, especially if you’ve been handed a highly customized codebase from a client that you must use and which cannot be changed for both contractual and architectural reasons.&lt;/p&gt;  &lt;p&gt;And – especially – if the project you’ve been handed has a short fuse, for whatever reason.&lt;/p&gt;  &lt;p&gt;3) There’s a lot of buzz about avoiding ViewState and the “old” Postback model. I’m just not sure how valid all that stuff is. ViewState is a perfectly OK concept, it’s just that developers don’t understand it and consequently it is prone to abuse. ViewState, additionally, can be stored on the server very easily, so at least a part of this objection is moot.&lt;/p&gt;  &lt;p&gt;4) “No Postback model”. OK, that’s fine. But have you looked at what hoops you have to go through to make MVC work? Why do you think they stuck TempData in there into the MVC Framework? And why do you see developers building custom server-side Session for their MVC projects?&lt;/p&gt;  &lt;p&gt;5) Complexity: What you get in your View is almost totally dependent on what you do in your Controller. If you need to do “extra stuff”, then you need to write “extra code” in Controller methods. There just isn’t any way around it. Purists will say that’s the way it’s supposed to be (“separation of concerns”). I’m just not so sure I like that – yet.&lt;/p&gt;  &lt;p&gt;Bottom Line: The jury is still out for me on MVC. I know there are a lot of purists out there who will call me a traitor. Too bad, guys. I’m not saying I won’t use ASP.NET MVC, I just believe at this point that if I had the luxury of crummy old WebForms I would have been able to produce the same quality app a lot faster, and it’s performance would be the same – or better – than in ASP.NET MVC.&amp;#160;&amp;#160; I still think MVC is cool but frankly, I don’t like going home from work with a splitting headache.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-6096672656604905509?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/lGrQ?a=rJlbAD2e9nc:86usZRfm1DI:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/lGrQ?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/rJlbAD2e9nc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/6096672656604905509/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=6096672656604905509" title="9 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/6096672656604905509?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/6096672656604905509?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/rJlbAD2e9nc/aspnet-mvc-is-it-worth-it.html" title="ASP.NET MVC: Is it worth it?" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">9</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/04/aspnet-mvc-is-it-worth-it.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEMMQH4-eCp7ImA9WxVbGUk.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-8987739839779506021</id><published>2009-04-04T14:59:00.001-05:00</published><updated>2009-04-05T10:48:01.050-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-04-05T10:48:01.050-05:00</app:edited><title>On Developer Wisdom</title><content type="html">&lt;p align="center"&gt;&lt;em&gt;Don't you wish there was a knob on the TV to turn up the intelligence? There's one marked 'Brightness,' but it doesn't work.&lt;/em&gt;&amp;#160; - Gallagher&lt;/p&gt;  &lt;p&gt;Wisdom. The “Wisdom of the Ages” -- wisdom&amp;#160; is an ideal that has been celebrated since antiquity as the knowledge needed to live a good life. What this means exactly depends on the various wisdom schools and traditions claiming to help foster wisdom. In general, these schools have emphasized various combinations of the following: knowledge, understanding, experience, discretion, and intuitive understanding, along with a capacity to apply these qualities well towards finding solutions to problems. These concepts, as one might guess,&amp;#160; apply equally&amp;#160; well to software developers.&lt;/p&gt;  &lt;p&gt;For a software developer, however,&amp;#160; wisdom is a much narrower concept that comes from learning from one’s mistakes, from studying what others have done, from learning accepted and proven patterns of good software design. And above all, from being willing to change, endure the pain of mastering something new,&amp;#160; and then to be willing to refactor those old patterns and techniques as new and better ones are discovered.&lt;/p&gt;  &lt;p&gt;Wisdom can mean learning Lean Programming, which teaches us to eliminate wasted effort by focusing on vertical design that only satisfies the needs of business requirements instead of building out entire layers of an application in advance. It can also come from learning to employ Agile development methodologies, most of which promote development iterations, teamwork, collaboration, and process adaptability throughout the life-cycle of the project. Not to forget TDD – Test Driven Development – an integral part of Agile methodology.&lt;/p&gt;  &lt;p&gt;I believe we, as .NET developers who have been primarily taught a data-centric approach to enterprise application development from back in the “Windows DNA” days, are expanding into the epiphany of more open-source, domain-driven design modalities. You can see this from some of the kinds of frameworks that are now being embraced by mainstream .NET Developers – &lt;a href="http://www.hibernate.org/343.html" target="_blank"&gt;NHibernate&lt;/a&gt; and other open source ORMs, &lt;a href="http://www.castleproject.org/activerecord/index.html" target="_blank"&gt;ActiveRecord&lt;/a&gt;, &lt;a href="http://structuremap.sourceforge.net/Default.htm" target="_blank"&gt;StructureMap&lt;/a&gt;, &lt;a href="http://sparkviewengine.com/" target="_blank"&gt;Spark MVC View engine&lt;/a&gt; (as well as ASP.NET MVC), and others. These frameworks haven’t been lost on the Microsofties, either. I distinctly remember Scott Guthrie uttering the word “NHibernate” during his MIX 09 keynote presentation. And recent issues of MSDN Magazine have featured articles by such notables as &lt;a href="http://codebetter.com/blogs/jeremy.miller/" target="_blank"&gt;Jeremy Miller&lt;/a&gt;, a C# MVP who espouses Fluent.NHibernate, StructureMap and similar frameworks. Do you read this stuff? I do, and when MSDN Magazine agrees to publish this kind of content, I take notice. It’s not just that I’ve already been following this — it’s because a major publication that any .NET developer possessing an above-room-temperature IQ will read -- has just said, “We’re cool with this, and we want you to know about it”.&lt;/p&gt;  &lt;p&gt;The concept of designing one’s POCO classes first and then creating the database persistence layer from that domain only after the domain is feature-complete is still quite foreign to many developers who otherwise envision themselves as “mature” or “senior level”.&lt;/p&gt;  &lt;p&gt;I still see developers who insist on creating an entire database schema for their application before they’ve created even the beginning of their domain model. Often they dismiss “top down” development as being inappropriate for their particular “modality” – even in the face of overwhelming evidence that it is the business domain model and logic that should be dictating the eventual persistence schema, not the other way around. &lt;/p&gt;  &lt;p&gt;I am by no means saying that developers who start by designing their persistence schema and then build up from that are wrong. What I am saying is that if this is the &lt;u&gt;only&lt;/u&gt; way they can / will develop an application – something may very well be wrong.&amp;#160; You can show them how to do it the new way, but if they refuse to be open to a new concept, you should move on. Let somebody else be the evangelist! &lt;/p&gt;  &lt;p&gt;Developers are learning how to simplify software development by applying the DRY (Don’t Repeat Yourself) principle using various frameworks and tools, most of which are readily available for the .NET Platform and many of which come via ports from the JAVA space, which has been around a bit longer than .NET. Isn’t it interesting that as .NET has matured, you don’t see the old JAVA vs .NET flame wars anymore? The JAVA guys have provided us .NET kiddies quite a bit to chew on.&lt;/p&gt;  &lt;p&gt;One of the most difficult challenges to obtaining “wisdom” in the developer space is the natural tendency of developers to avoid (or simply be ignorant of)&amp;#160; lateral thinking techniques&amp;#160; and to be reluctant to “do things differently”.&amp;#160; It is easy for a developer who has a technique or a tool that they’ve engineered to unwittingly force themselves into a restrictive programming paradigm simply because they are unwilling to accept the fact that better tools may now be available to them. I call this phenomenon “coveting thy code”.The learning curve to master a new framework or concept is often dismissed with the thought that “I just don’t have the time”, or “nah - my ‘thing’ is better than that thing”.&lt;/p&gt;  &lt;p&gt;One strategy&amp;#160; I have found is that if I make an honest assessment of what frameworks and tools I believe are really important to my development career future, and only focus on these, I can gain a lot of extra time to get the job done. I used to jump at every CTP and BETA of this, that and the other thing. Now I don’t – I’m focused only on&amp;#160; some core technologies. You won’t see me messing with Azure Services,for example,&amp;#160; because it’s not “baked” yet. And frankly, I don’t really need it just yet anyway. In fact, ASP.NET MVC 1&amp;#160; only recently popped out of the oven as “done”, and I didn’t even begin with it until it was already at the RC1 level. Is that “wisdom”? I say it is.&lt;/p&gt;  &lt;p&gt;Sometimes I think of myself as an “old dog who’s&amp;#160; learning new tricks”. Yes, it’s hard. But I wouldn’t have it any other way. What about you?&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-8987739839779506021?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/lGrQ?a=lXIrtKiPx6w:emI3c0ks4RM:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/lGrQ?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/lXIrtKiPx6w" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/8987739839779506021/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=8987739839779506021" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/8987739839779506021?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/8987739839779506021?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/lXIrtKiPx6w/on-developer-wisdom.html" title="On Developer Wisdom" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/04/on-developer-wisdom.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0IARno6eSp7ImA9WxVbEks.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-6301219861794688031</id><published>2009-03-19T06:24:00.001-05:00</published><updated>2009-03-28T12:32:27.411-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-03-28T12:32:27.411-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="MESSENGER" /><title>Windows Live Messenger: Unable to Connect Error 80040200 Fix</title><content type="html">&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;I stumbled across this fix via a web search in the &lt;a href="http://messenger-support.spaces.live.com/blog/cns!8B3F39C76A8B853F!13937.entry?wa=wsignin1.0&amp;amp;sa=760719617" target="_blank"&gt;Live Messenger Blog&lt;/a&gt; about a different error code. It worked for me on Windows Vista.&lt;/p&gt;  &lt;p&gt;1.) Close Messenger. Go into Task Manager and ensure that the “msnmsgr.exe” process is not there. If it is, kill the process.&lt;/p&gt;  &lt;p&gt;2.) Navigate to C:\Users\&amp;lt;YourUserName&amp;gt;\AppData\Local\Microsoft\Windows Live Contacts and delete the entire contents of the folder.&lt;/p&gt;  &lt;p&gt;3.) Restart Windows Live Messenger. Voila!&lt;/p&gt;  &lt;p&gt; There is another issue I found where the standalone installer for Messenger fails with a message like “could not open key…”. One fix for this is to navigate to the C:\Program Files\Windows Live\Messenger folder and DELETE the msnmsgr.exe executable if it is there.&lt;/p&gt;  &lt;h3&gt;ReallyReallyDumb Exception Messages Department&lt;/h3&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;I think it was Donn Felker who first tweeted about this, but I didn’t believe it until I got one myself:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_8b9UPLwuM3g/Sc0paEwXHyI/AAAAAAAAAO0/yWtOCtVStgk/s1600-h/NullableObject%5B3%5D.jpg"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="NullableObject" border="0" alt="NullableObject" src="http://lh5.ggpht.com/_8b9UPLwuM3g/Sc0paowZOSI/AAAAAAAAAO4/8Bn6NFkI1MA/NullableObject_thumb%5B1%5D.jpg?imgmax=800" width="524" height="158" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Go Figure!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-6301219861794688031?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/lGrQ?a=N0qS7XCaEb4:SIz600UkAsU:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/lGrQ?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/N0qS7XCaEb4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/6301219861794688031/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=6301219861794688031" title="17 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/6301219861794688031?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/6301219861794688031?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/N0qS7XCaEb4/windows-live-messenger-unable-to.html" title="Windows Live Messenger: Unable to Connect Error 80040200 Fix" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">17</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/03/windows-live-messenger-unable-to.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEQGRngycCp7ImA9WxVUEUs.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-2359330691085592281</id><published>2009-03-15T08:50:00.001-05:00</published><updated>2009-03-15T19:12:07.698-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-03-15T19:12:07.698-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="INSTALLER" /><category scheme="http://www.blogger.com/atom/ns#" term="WINDOWS LIVE" /><category scheme="http://www.blogger.com/atom/ns#" term="MESSENGER" /><title>How NOT to create user-friendly application installers</title><content type="html">&lt;p align="center"&gt;&lt;em&gt;Trying to be a first-rate reporter on the average American newspaper is like trying to play Bach's St. Matthew's Passion on a ukulele.&lt;/em&gt;&amp;#160; - Bagdikian's Observation&lt;/p&gt;  &lt;p&gt;This is an issue I've come up against enough times to feel the need to gripe about it. You get the Windows Live installer to install the &amp;quot;new&amp;quot; Windows Live family of products (Messenger, Live Writer, Mail, Photo Gallery, etc.) and it fails. That's after you wait for everything to download (because the web installer is just a wrapper over what it downloads after you select which programs you want). &lt;/p&gt;  &lt;p&gt;So then you use the &amp;quot;Try Again&amp;quot; button which downloads a 135 MB WLSETUP_ALL.EXE installer. Boy, I sure hope you’ve got a high speed connection. So you run that and once again, after you've waited for it to go all the way through to the end, only then does it proceed to &amp;quot;roll back&amp;quot; everything - which takes almost as long as the supposed installation did! &lt;/p&gt;  &lt;p&gt;Now you’ve gone through maybe a half hour or more of pure frustration, and you’re left with – NADA.&lt;/p&gt;  &lt;p&gt;Now you’ve&amp;#160; got some cryptic error messages to work with, and a link to a &amp;quot;Help&amp;quot; web page that turns out to be next to useless. Not only that, but the WLSETUP_ALL deal cannot be opened as an archive to extract individual .MSI installers, so you cannot even try to run individual ones in the hopes that they might work that way. &lt;/p&gt;  &lt;p&gt;Yikes! I’ve always believed in “less is more” –- this is an example of “more is less!”--now there are a couple of ways to fix this issue, I'll detail the two most popular: If you just want Windows Live Messenger, the kind folks at Softpedia have a page from which you can download the latest 24 MB standalone installer (Feb. 6 2009 is the latest build I found): &lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.softpedia.com/progDownload/Windows-Live-Messenger-9-Download-89148.html" target="_blank"&gt;http://www.softpedia.com/progDownload/Windows-Live-Messenger-9-Download-89148.html&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Apparently Microsoft no longer makes the standalone installers publicly available, they seem to be too wrapped up in their new hotshot “packaging” single installer &lt;i&gt;façade&lt;/i&gt; scheme.&lt;/p&gt;  &lt;p&gt;The second method (and it may not always work) is to locate the cached .MSI Installers that have been deposited on your hard drive. These should be located at C:\Program Files (x86)\Common Files\Windows Live\.cache. The (x86) is for 64-bit OS installations – you can remove that from the path if you’re a 32-bit person. In that folder there is a cache.ini file you can load in Notepad and see the actual paths to each installer in those wacko cryptic Microsoft&amp;#160; subfolders. Or you can just search for *.msi in windows explorer. &lt;/p&gt;  &lt;p&gt;Once you have located the correct Messenger.msi installer, you can try installing with that. Oh, and did I mention --you probably will want to run the Contacts.msi installer first to avoid install errors. So go find that one, too.&lt;/p&gt;  &lt;p&gt;This brings me to another annoyance: Do you remember when software installed itself and that is all it installed? I mean, if you needed to do a repair or a reinstall you would need the original media, right? Now it seems that every installer creates copies of itself all over your fyookin’ hard drive, taking up all kinds of space, having squatter’s rights, and leaving you the poor user, with no recourse.&amp;#160; There’s no fact disclosure at all. Have you ever wondered why your available disk space keeps declining over time, even though you use disk space cleaner-uppers regularly? This is why! It’s a conspiracy to eat up our hard drives!&lt;/p&gt;  &lt;p&gt;If you haven’t gone through this little escapade with Windows Live, consider yourself lucky – there are a variety of reasons why this kind of “Multiple” Setup installer can fail, you probably just don’t have any of them --yet. But the fact of the matter is, you can get them, and it can cause real frustration because of the way everything is “un-bundleable” with this scheme. I’ve seen installers that fail because the Error Reporting Service is disabled, or if the Windows Firewall is turned off. Lots of antivirus programs have their own firewalls – you don’t need two of them running. But an installer program should not fail because of this – that’s just plain bad design.&lt;/p&gt;  &lt;p&gt;This “entire Family only” install scheme is in my opinion a very non-user-friendly approach that I believe comes from marketing (e.g. &amp;quot;Let’s promote the &amp;quot;Windows Live Family”) rather than common sense about making it easier on users when something goes wrong. Not being able to load the EXE in say, WinRar and be able to extract individual MSI installer files is just adding insult to injury. I know I’m not alone in this gripe – because I’ve heard from friends with similar issues.&lt;/p&gt;  &lt;p&gt;If you are still having problems with Windows Live Messenger or related proggies, try using the &lt;a href="http://www.softpedia.com/get/Security/Secure-cleaning/Windows-Installer-CleanUp-Utility.shtml" target="_blank"&gt;Windows Installer Cleanup Utility&lt;/a&gt;. This is a Microsoft product that removes all registry installer information for a selected program, making it easier to fool a new MSI installer that the program it’s trying to install is not there already. It’s unfortunate that we actually have to create new products just to clean up the buggy crap we’ve already produced, but – hey – that’s progress!&lt;/p&gt;  &lt;p&gt;BTW – if you want to get Messenger to show up in the Notification Area on Windows 7 instead of the Taskbar, just set it’s Compatibility Mode to “Windows Vista”.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-2359330691085592281?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/lGrQ?a=xo_P31kbv80:fbi9EzvTRbM:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/lGrQ?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/xo_P31kbv80" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/2359330691085592281/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=2359330691085592281" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/2359330691085592281?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/2359330691085592281?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/xo_P31kbv80/how-not-to-create-user-friendly.html" title="How NOT to create user-friendly application installers" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/03/how-not-to-create-user-friendly.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUEERXc4fCp7ImA9WxVVFU4.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-2151325673398525407</id><published>2009-03-06T21:57:00.001-05:00</published><updated>2009-03-08T12:33:24.934-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-03-08T12:33:24.934-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term=".NET FRAMEWORK 3.5" /><category scheme="http://www.blogger.com/atom/ns#" term="ASP.NET" /><category scheme="http://www.blogger.com/atom/ns#" term="ASP.NET MVC" /><title>ASP.NET MVC RC2</title><content type="html">&lt;p align="center"&gt;&lt;em&gt;“Artificial Intelligence is no match for natural stupidity.”&lt;/em&gt; -- Unknown&lt;/p&gt;  &lt;p&gt;ASP.NET MVC Release Candidate 2 is out; it has no major identifiable changes in&amp;#160; features or in Visual Studio 2008 tooling from RC1.&amp;#160; That’s a good thing – it means it’s pretty much “baked”.&lt;/p&gt;  &lt;p&gt;There are changes to the installer in that it doesn't ship the System.Web.Routing.dll and System.Web.Abstractions.dll assemblies now since they are a part of&amp;#160; .NET 3.5 SP1. Consequently, set-up requires&amp;#160; .NET 3.5 SP1 to be installed. &lt;/p&gt;  &lt;p&gt;There is also a &amp;quot;server-only&amp;quot; install mode to install the MVC Framework. This is useful for hosted installations which install the MVC Framework on servers that do not have Visual Studio 2008 installed. There are also some deployment techniques that do not require the MVC assemblies in the GAC, making it easier to deploy an MVC application to a remote machine. &lt;/p&gt;  &lt;p&gt;Phil Haack has a &lt;a href="http://haacked.com/archive/2009/03/03/aspnetmvc-changes-for-rc2.aspx" target="_blank"&gt;good post on the release&lt;/a&gt;. You can &lt;a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=ee4b2e97-8a72-449a-82d2-2f720d421031" target="_blank"&gt;download the installer here&lt;/a&gt;. Be sure to uninstall any previous installations first. There is also a growing number of &lt;a href="http://www.codeplex.com/site/search?projectSearchText=ASp.NET%20MVC" target="_blank"&gt;Codeplex.com contributions for ASP.NET MVC&lt;/a&gt;. In addition, they’ve managed to include JQuery 1.3.1 in this install.&lt;/p&gt;  &lt;p&gt;The ASP.NET MVC framework defines a specific pattern to the Web Application folder structure and provides a controller base-class to handle and process requests for “actions”. Developers can take advantage of the specific Visual Studio 2008 MVC templates within this release to create their Web applications, which includes the ability to select a specific Unit Test structure to accompany their Web Application development.&lt;/p&gt;  &lt;p&gt;The MVC framework is fully extensible at all points, allowing developers to create sophisticated structures that meet their needs, including Dependency Injection (DI) techniques, new view rendering engines or specialized controllers. You can freely use &lt;a href="http://structuremap.sourceforge.net/Default.htm" target="_blank"&gt;StructureMap&lt;/a&gt;, &lt;a href="http://www.castleproject.org/activerecord/documentation/v1rc1/usersguide/validation.html" target="_blank"&gt;Castle.Validation&lt;/a&gt;, &lt;a href="http://code.google.com/p/moq/" target="_blank"&gt;MOQ&lt;/a&gt; and much more.&lt;/p&gt;  &lt;p&gt;As the ASP.NET MVC framework is built on ASP.NET 3.5, developers can take advantage of many existing ASP.NET 3.5 features, such as localization, authorization, Profile etc. &lt;/p&gt;  &lt;p&gt;I’m currently working on a Mobile web extension to a client’s MVC web application so I’m gradually getting into the paradigm shift for ASP.NET MVC. There are a lot of things I like about it; and there are some things (like the “learning curve” for classic WebForms developers) that I’m not particularly enthused about.&amp;#160; &lt;/p&gt;  &lt;p&gt;However, I’m getting a lot of positive&amp;#160; peer pressure from my Twitter MVP and developer friends, so it looks like I’ve officially gotten the ASP.NET MVC “throw him in the pool and say ‘swim’” directive.&amp;#160; The folks I follow are mostly pretty smart people, so if they tell me it’s good, I have a high degree of trust that they are right!&lt;/p&gt;  &lt;p&gt;Full source code for ASP.NET MVC RC2 along with source for the Futures is available at &lt;a href="http://aspnet.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=24142" target="_blank"&gt;Codeplex.com here&lt;/a&gt;. Don’t complain about lack of documentation because all the XML documentation comments are in the source and you’re welcome to do a build and compile your own help file in your desired format. If you don’t have the time or don’t know how, here is a &lt;a href="http://www.eggheadcafe.com/articles/ASPNETMVC.chm" target="_blank"&gt;standard CHM format help file I’ve created&lt;/a&gt;.&lt;/p&gt;  &lt;h3&gt;Item of Note&lt;/h3&gt;  &lt;p&gt;&lt;a href="http://ittyurl.net" target="_blank"&gt;IttyUrl.net&lt;/a&gt;, my “social tagging and short urls” web site, has just passed the &lt;u&gt;1500 link mark&lt;/u&gt; for Silverlight links. More searchable Silverlight links than anywhere on earth!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-2151325673398525407?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/blogspot/lGrQ?a=X9SA9XrxQNY:yTtLma78Q8c:dnMXMwOfBR0"&gt;&lt;img src="http://feeds.feedburner.com/~ff/blogspot/lGrQ?d=dnMXMwOfBR0" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/X9SA9XrxQNY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/2151325673398525407/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=2151325673398525407" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/2151325673398525407?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/2151325673398525407?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/X9SA9XrxQNY/aspnet-mvc-rc2.html" title="ASP.NET MVC RC2" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/03/aspnet-mvc-rc2.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DU4ER3s8eSp7ImA9WxVWEks.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-3976838305855804042</id><published>2009-02-21T20:58:00.001-05:00</published><updated>2009-02-21T20:58:26.571-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-02-21T20:58:26.571-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="SILVERLIGHT" /><category scheme="http://www.blogger.com/atom/ns#" term="Flash" /><title>Flash vs Silverlight</title><content type="html">&lt;p&gt;Some interesting observations I read recently from a Flash blogger:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Flash was not intended for RIA applications. &lt;/li&gt;    &lt;li&gt;ActionScript was created for animated vector graphics; queuing messages on a single thread. &lt;/li&gt;    &lt;li&gt;It was hijacked to support Flex with complex content; but the threading model didn’t change. &lt;/li&gt;    &lt;li&gt;But Silverlight was built from the start for fully fledged applications.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I’m looking forward to the MVP Summit and MIX to see what’s coming in Silverlight 3. Currently, I’m developing real – world application with Silverlight. I’m putting together pieces and utility classes that I expect to be able to use going forward. &lt;/p&gt;  &lt;p&gt;For me, the clear winner is having a feature – complete subset of the .NET Framework to code with, being able to share my creations in both Silverlight and the full .NET Framework, and not having to deal with the intricacies of the ActionScript learning curve to get what I want. I’ve been coding C# since 2001 and at this late stage of the game I feel pretty comfortable. I’m not particularly interested in learning Python, and certainly not the idiosyncrasies of ActionScript, whether compiled or not.&lt;/p&gt;  &lt;p&gt;There’s no question in my mind that Silverlight was built with a view toward enterprise-level, multithreaded LOB application capabilities. I think the playing field is primed to get a lot more interesting in the next six months or so.&lt;/p&gt;  &lt;p&gt;I’m giving two presentation at the MVP Summit in Redmond next week, one on Silverlight Object Encryption, the other on Silverlight Fast Binary Serialization over the wire.&amp;#160; We’ll see where everything leads.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-3976838305855804042?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/blogspot/lGrQ?a=Pvc5cWe6"&gt;&lt;img src="http://feeds.feedburner.com/~f/blogspot/lGrQ?d=43" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/dUnW-pZYMr4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/3976838305855804042/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=3976838305855804042" title="4 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/3976838305855804042?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/3976838305855804042?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/dUnW-pZYMr4/flash-vs-silverlight.html" title="Flash vs Silverlight" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">4</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/02/flash-vs-silverlight.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ak4NRXc4eip7ImA9WxVXGUQ.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-2176990696131522266</id><published>2009-02-17T10:53:00.001-05:00</published><updated>2009-02-18T18:16:34.932-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-02-18T18:16:34.932-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="ECONOMY" /><category scheme="http://www.blogger.com/atom/ns#" term="economics" /><category scheme="http://www.blogger.com/atom/ns#" term="ELECTIONS" /><title>Zombie Banks Coming – Run!</title><content type="html">&lt;p align="center"&gt;&lt;em&gt;Income tax returns are the most imaginative fiction being written today.&lt;/em&gt;&amp;#160; - Herman Wouk&lt;/p&gt;  &lt;p&gt;I heard a good piece about “zombie banks” this morning on NPR. &amp;quot;Zombie banks&amp;quot; was the term for Japanese financial institutions propped up by government in the '90s despite their basic insolvency after their real-estate bubble. In a financial &amp;quot;revenge of the living dead&amp;quot;, these unprofitable banks cast a decade-long pall over Japan. US banks like Citgroup, Bank of America and others are now in the realm of the living dead. &lt;a href="http://lh4.ggpht.com/_8b9UPLwuM3g/SZre0K1NnOI/AAAAAAAAAOc/klYTbuTdqvU/s1600-h/zombiebankl%5B2%5D.jpg"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="zombiebankl" border="0" alt="zombiebankl" src="http://lh3.ggpht.com/_8b9UPLwuM3g/SZre0RmXqWI/AAAAAAAAAOg/Kh2EronSAT0/zombiebankl_thumb.jpg?imgmax=800" width="172" height="244" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;US officials urged Japan to give up on failed institutions. Instead, it pumped 12 percent of its gross domestic product into saving the banks and received a &amp;quot;lost decade&amp;quot; of economic stagnation in return. Sound familiar? Economic analysts across the board agree that the Japanese example must not be repeated - even as our government proceeds to do precisely that!&lt;/p&gt;  &lt;p&gt;Members of the House Financial Services Committee grilled banking CEO's about their lending practices and bonuses. Rich Lowry says they should have been asking, &amp;quot;Why does your company still exist?&amp;quot; A zombie bank keeps draining bailout capital from the government but doesn't respond with any meaningful lending that helps the economy recover. &lt;/p&gt;  &lt;p&gt;Estimates show that even after the Government's huge recent cash infusions, the financial system still has &lt;strong&gt;at least another $1 trillion hole in it&lt;/strong&gt;. The US government has to either continue to try to patch this with massive injections of cash like Japan did in the '90s, or take the gutsy, painful step of chopping off the zombies' heads right now and splitting them up to save the good parts and come up with new, smaller, healthy banks. One expert on the NPR piece said that if they wait another year to do this things will get very, very bad indeed.&lt;/p&gt;  &lt;p&gt;There are thousands of small, local, healthy banks that were smart enough not to get caught up in the funny money greed cycle. I think I’m gonna give my money to them and tell them to keep doing what they’ve been doing, just more of it. The morons running Bank of America don’t deserve my money.&lt;/p&gt;  &lt;p&gt;When President Obama was asked in his first prime-time press conference if it would take another trillion dollars to rescue the financial sector, he dodged - because a simple &amp;quot;yes&amp;quot; would be just too much the blunt truth. &lt;/p&gt;  &lt;p&gt;As it stands now, the government is keeping alive huge zombie banks that would otherwise have gone bust many months ago. Bankrupt banks that really are &amp;quot;too big to fail&amp;quot; need to be taken over by the government, broken up until they're small enough to fold or for a new, healthy bank to be created, with government eating the toxic assets for the time being. That kind of&amp;#160; quasi-nationalization can set the stage for new, healthy banks that won't be long-term wards of the State or long-term drags on growth. Nobody likes nationalization of banks, but what we’re doing now is just throwing our grandchildren’s tax dollars down the toilet. The Japanese already proved that doesn’t work, why can’t we learn the lessons of history? I mean, are our elected representatives really THAT dumb? OMG! The Zombies are coming! Quick – print more money and throw it at them!&lt;/p&gt;  &lt;p&gt;You know, I've watched a few of those zombie movies, and you cannot &amp;quot;cure&amp;quot; zombieism - you have to shoot 'em, cut their heads off. &lt;/p&gt;  &lt;p&gt;Oh, and while we're at it -- we've got some zombie automakers that need the same treatment. Sorry, but it’s the truth. Help! I’ve fallen, and I can’t get up! Feed me money!&amp;#160; I leave you with the comments of Marc Faber, writing in the Feb. 18 2009 Wall Street Journal: &lt;/p&gt;  &lt;p&gt;“The best policy response would be to do nothing and let the free market correct the excesses brought about by unforgiveable policy errors. Further interventions through ill-conceived bailouts and bulging fiscal deficits are bound to prolong the agony and lead to another slump – possibly an inflationary depression with dire social consequences.”&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-2176990696131522266?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/blogspot/lGrQ?a=vlX53bEh"&gt;&lt;img src="http://feeds.feedburner.com/~f/blogspot/lGrQ?d=43" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/qy6Q47dIiZs" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/2176990696131522266/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=2176990696131522266" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/2176990696131522266?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/2176990696131522266?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/qy6Q47dIiZs/zombie-banks-coming-run.html" title="Zombie Banks Coming – Run!" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/02/zombie-banks-coming-run.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D04BQX4_fip7ImA9WxVXF0k.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-490284827345988442</id><published>2009-02-14T22:48:00.001-05:00</published><updated>2009-02-15T19:59:10.046-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-02-15T19:59:10.046-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="ECONOMY" /><category scheme="http://www.blogger.com/atom/ns#" term="economics" /><category scheme="http://www.blogger.com/atom/ns#" term="ELECTIONS" /><category scheme="http://www.blogger.com/atom/ns#" term="deficit" /><category scheme="http://www.blogger.com/atom/ns#" term="stimulus" /><title>Brother, can you spare a dime?</title><content type="html">&lt;p align="center"&gt;&lt;em&gt;A government that robs Peter to pay Paul can always depend on the support of Paul.     &lt;br /&gt;&lt;/em&gt;&amp;#160; - George Bernard Shaw&lt;/p&gt;  &lt;p&gt;Our new Administration has set a record:&amp;#160; it’s railroaded legislation through Congress that confers the mandate on Government to spend more in it’s first month of office than the previous Administration spent on &lt;u&gt;all of the Iraq war since 2003&lt;/u&gt;.&lt;/p&gt;  &lt;p&gt;Not a single House Republican voted for this legislation. Most all Senate Republicans held this line. I’m glad to read that Republicans seem to be sticking to their “small government” principles. It’s too bad that they waited until Mr. Obama got elected to have their epiphany —and suddenly find them again! Not only was the last Administration rampant with runaway spending and printing of money by government on both sides of the aisle, you can bet that the Obama-Pelosi cartel will expand this premise in the months ahead. This represents the biggest increase in the size of our Government’s reach in over 60 years, possibly the biggest in the history of our nation. &lt;/p&gt;  &lt;p&gt;Yes, some of this money will indeed create jobs. But most all of the rest is PORK that just amplifies BIG GOVERNMENT. We didn’t need it, period. If our Forefathers had any inkling that the new nation they created would eventually engage in this kind of chicanery, they would be HAVING CONVULSIONS!&lt;/p&gt;  &lt;h3&gt;Deficit Spending and History&lt;/h3&gt;  &lt;p&gt;Deficit spending occurs when a government, business, or individual's spending exceeds income. The practice also is called a deficit, or budget deficit, the opposite of a budget surplus. &lt;/p&gt;  &lt;p&gt;Government, companies and households sometimes indulge in deficit spending, but with a plan to repay the debt, plus interest charges, over time. This technique is a standard government and business practice, but personal finances managed this way often end up forcing an individual into bankruptcy and poverty. Rules for repayment are different for individuals, business and government.&lt;/p&gt;  &lt;p&gt;What happens when a government creates money without a fiscally responsible plan to repay it – as we’re doing now – is that the “credit score” of that government begins to decline on the world stage. When that happens, it become more and more difficult to monetize that debt by having other entities (China, for example) be willing to invest in the debt (US Treasury securities, primarily).&amp;#160; At some point in the future, things become so bad that nobody will buy this debt anymore and you will have financial collapse. Take a look at Zimbabwe (currently) for a recent example. Inflation is so high there as to be virtually incomprehensible to the human mind. &lt;/p&gt;  &lt;p&gt;We got ourselves into a very bad situation here in the US through a combination of the Fed being “asleep at the switch”, and plain old unchecked greed in the financial sector. It’s not really about partisan politics at all, because spending our way out of the mess we’ve created with artificial manufactured money (government debt) &lt;u&gt;simply may not work any longer&lt;/u&gt;.&lt;/p&gt;  &lt;p&gt;I read a lot of Liberal friends’ comments (such as on Twitter and other places) that the Bush Administration is to blame for our current problems. Not true! You had a Congress where for the past eight or more years, both Democrats and Republicans were&lt;u&gt; all too willing&lt;/u&gt; to spend money they knew full well that they didn’t have, not follow simple common sense in regulating the financial and related markets, and generally turn a blind eye toward clear economic signs that we were headed for a disaster.&amp;#160; Well, guess what? Now we have it!&lt;/p&gt;  &lt;h3&gt;Larger Forces At Work&lt;/h3&gt;  &lt;p&gt;Individual Presidential Administrations are much less responsible for the long term economic cycles that mature economies such as ours undergo than most people think. If you study the very long term climatic record, we’re at the beginning of a new Little Ice Age – which will mean colder winters, lower crop yields, famines, and other socio-economic disruptions in the next ten to twenty years. You can forget about Al Gore and his global warming alarmist theories – in the next decades, you’ll be reading headlines about global COOLING!&amp;#160; If we don’t learn to get our economic house in order, and start to understand these long term economic cycles better – and soon – we run the risk of our own economic collapse taking the rest of the world’s economies down the tubes along with us.&lt;/p&gt;  &lt;h3&gt;The bottom line&lt;/h3&gt;  &lt;p&gt;One thing is for sure. SOMEBODY is going to have to figure out how to pay the Piper. And the Piper will come – sooner or later. There is no such thing as a free lunch – not in capitalism, not in government, and certainly not&amp;#160; for my kids and potential grandchildren – who’ll be saddled with the bill for this moronic bullshit spending for decades to come. I’m not talking Greek – think about it.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-490284827345988442?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/blogspot/lGrQ?a=it1ltAUW"&gt;&lt;img src="http://feeds.feedburner.com/~f/blogspot/lGrQ?d=43" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/Ny5E0cIy5go" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/490284827345988442/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=490284827345988442" title="6 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/490284827345988442?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/490284827345988442?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/Ny5E0cIy5go/brother-can-you-spare-dime.html" title="Brother, can you spare a dime?" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">6</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/02/brother-can-you-spare-dime.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ck4GQHgyeip7ImA9WxVXEUU.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-2781164761722519887</id><published>2009-02-08T10:46:00.001-05:00</published><updated>2009-02-09T07:02:01.692-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-02-09T07:02:01.692-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="INTERNET EXPLORER" /><title>Kill Internet Explorer!</title><content type="html">&lt;p align="center"&gt;&lt;em&gt;“The absence of alternatives clears the mind marvelously”&lt;/em&gt;&amp;#160; - Henry Kissinger&lt;/p&gt;  &lt;p&gt;I’ve got Internet Explorer 8 RC running on Windows VIsta x64 and occasionally it freezes up, usually when it is making a request. I have some ideas about why this may be happening, but there isn’t much I can do about it other than kill IE from Task Manager.&lt;/p&gt;  &lt;p&gt;However, there is an easier and faster way:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.mattkruse.com/utilities/" target="_blank"&gt;&lt;strong&gt;Download KILL.EXE&lt;/strong&gt;&lt;/a&gt; from Matt Kruse’s “Must Have Utilities” Listing.&lt;/p&gt;  &lt;p&gt;Put the executable in a folder (I have one called C:\MISC for just such “stuff”).&lt;/p&gt;  &lt;p&gt;Now make a batch file that looks like this:&lt;/p&gt;  &lt;p&gt;KILL.EXE -f IEXPLORE.EXE&lt;/p&gt;  &lt;p&gt;and save it in your folder right next to KILL.EXE as “KILLIE.BAT”. (The ‘-f’ switch means ‘force’, as in ‘DIE NOW, PROCESS, NO MATTER WHAT!’).&lt;/p&gt;  &lt;p&gt;Now, in Windows Explorer, right –click on KILLIE.BAT and choose “Send to Desktop”.&lt;/p&gt;  &lt;p&gt;You can change the icon to something meaningful, and you can even drag the shortcut down onto the TaskBar so it is even easier to get to. &lt;/p&gt;  &lt;p&gt;“Internet Exploder” froze up? Just click on your shortcut and it’s gone! Now that’s POP --Pragmatism Over Process!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-2781164761722519887?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/blogspot/lGrQ?a=ok0ojeMe"&gt;&lt;img src="http://feeds.feedburner.com/~f/blogspot/lGrQ?d=43" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/YuM4PRbfwF0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/2781164761722519887/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=2781164761722519887" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/2781164761722519887?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/2781164761722519887?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/YuM4PRbfwF0/kill-internet-explorer.html" title="Kill Internet Explorer!" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/02/kill-internet-explorer.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkAMQHw9cCp7ImA9WxVQGUg.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-953711813000049233</id><published>2009-02-06T11:39:00.001-05:00</published><updated>2009-02-06T15:06:21.268-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-02-06T15:06:21.268-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="ECONOMY" /><title>Just send out the checks!</title><content type="html">&lt;p&gt;So it looks like the “stimulus” bill is going to be $935 Billion. Divide by 133.9 million American taxpayers, and you get $6,983 per U.S. taxpayer. In my opinion, most all of this is throwing good money after bad. Not only will it not create any immediate economic stimulus, but a lot of it is simply growing the government way beyond it’s already enormous size and complexity. &lt;/p&gt;  &lt;p&gt;Truth is, we don’t need all these new laws and all these new programs. The consumer is 70 percent of the U.S. economy. If you want to stimulate the economy quickly, just have the Treasury Department send out the checks to all U.S. Taxpayers. More will get spent – and faster – than any other way. And it won’t grow government by one bit.&lt;/p&gt;  &lt;p&gt;I am not suggesting “send out the checks” is “the answer” to the problem. But it does shed light on part of the reason why we have the problem in the first place.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-953711813000049233?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/blogspot/lGrQ?a=LWqxVV5Y"&gt;&lt;img src="http://feeds.feedburner.com/~f/blogspot/lGrQ?d=43" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/N-9z9OZ_qYA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/953711813000049233/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=953711813000049233" title="6 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/953711813000049233?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/953711813000049233?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/N-9z9OZ_qYA/just-send-out-checks.html" title="Just send out the checks!" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">6</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/02/just-send-out-checks.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0EBSHw9eip7ImA9WxVQFk8.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-6214021543311867320</id><published>2009-02-02T19:40:00.001-05:00</published><updated>2009-02-02T19:40:59.262-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-02-02T19:40:59.262-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="TWITTER" /><title>Is Twitter Mainstream?</title><content type="html">&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;OK, well instead of making guru-like&amp;#160; pronouncements, we decided to ask our visitors and users, since they know better than anybody!&lt;/p&gt;  &lt;p&gt;Here’s the &lt;a href="http://answers.polldaddy.com/poll/1336391/" target="_blank"&gt;&lt;strong&gt;&lt;u&gt;Eggheadcafe.com Twitter poll&lt;/u&gt;&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;&lt;u&gt;.&lt;/u&gt;&lt;/strong&gt; &lt;/p&gt;  &lt;p&gt;You can follow &lt;a href="http://twitter.com/eggheadcafe" target="_blank"&gt;Eggheadcafe.com (new articles and new forum posts) on Twitter here&lt;/a&gt;.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-6214021543311867320?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/blogspot/lGrQ?a=I5EGw8B3"&gt;&lt;img src="http://feeds.feedburner.com/~f/blogspot/lGrQ?d=43" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/AA64kBgEKyk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/6214021543311867320/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=6214021543311867320" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/6214021543311867320?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/6214021543311867320?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/AA64kBgEKyk/is-twitter-mainstream.html" title="Is Twitter Mainstream?" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/02/is-twitter-mainstream.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEANSXo4cCp7ImA9WxVQE0s.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-3263627300902348791</id><published>2009-01-30T20:53:00.001-05:00</published><updated>2009-01-30T20:53:18.438-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-01-30T20:53:18.438-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="RC1" /><category scheme="http://www.blogger.com/atom/ns#" term="MVC" /><category scheme="http://www.blogger.com/atom/ns#" term="ASP.NET" /><category scheme="http://www.blogger.com/atom/ns#" term="REFRESH" /><title>ASP.NET MVC RC - “REFRESH” OUT</title><content type="html">&lt;p&gt;If you are getting into the RC1 Release of ASP.NET MVC – you might want to check this post by Phil Haack – which apparently corrects a couple of problems and provides a corrected download. &lt;/p&gt;  &lt;p&gt;I have to keep synced with this now because we’re starting a major new project with a client that is already using MVC – and so I need to be able to jump in with both feet. &lt;/p&gt;  &lt;p&gt;Here is the link to the &lt;a href="http://go.microsoft.com/fwlink/?LinkID=141184&amp;amp;clcid=0x409" target="_blank"&gt;direct download to the revised installer&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;And here is a link to &lt;a href="http://haacked.com/archive/2009/01/30/aspnetmvc-refresh.aspx" target="_blank"&gt;Haack’s post&lt;/a&gt; about the “refresh”. Phil says that the way to fully ensure you have the refresh is to right click on the downloaded file, select the Digital Signatures tab, and make sure the Time Stamp says &lt;u&gt;Wednesday, January 28&lt;/u&gt; and not Friday, January 23.&lt;/p&gt;  &lt;p&gt;Kindly note that the link to the “release documentation” with the new installer now links to a real Word document with all the details for your reading pleasure.&lt;/p&gt;  &lt;p&gt;Well! Let’s get going and hope there aren’t any more “hiccups”!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-3263627300902348791?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/blogspot/lGrQ?a=1zpLpovy"&gt;&lt;img src="http://feeds.feedburner.com/~f/blogspot/lGrQ?d=43" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/fcolZ_pzxdU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/3263627300902348791/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=3263627300902348791" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/3263627300902348791?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/3263627300902348791?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/fcolZ_pzxdU/aspnet-mvc-rc-refresh-out.html" title="ASP.NET MVC RC - “REFRESH” OUT" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/01/aspnet-mvc-rc-refresh-out.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUAHQ3s-fyp7ImA9WxVXEUk.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-3671170094271337081</id><published>2009-01-28T21:39:00.001-05:00</published><updated>2009-02-08T21:48:52.557-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-02-08T21:48:52.557-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="WINDOWS 7" /><category scheme="http://www.blogger.com/atom/ns#" term="ANTIVIRUS" /><category scheme="http://www.blogger.com/atom/ns#" term="windows" /><title>Which Antivirus for Windows 7?</title><content type="html">&lt;p&gt;The list of “compatible” antivirus programs for Windows 7 is short – Norton, Kaspersky, Avira, and AVG. &lt;/p&gt;  &lt;p&gt;I tried Kaspersky 8 Beta first, but after a couple of weeks I’ve determined that it’s just too bulky and “obtrusive” and has some issues that I’m not happy about.&amp;#160; Recently I uninstalled this (thankfully, the uninstall was very clean and left no traces) and tried AVG Free. &lt;/p&gt;  &lt;p&gt;AVG free boasts some 80 million users, is MUCH more lightweight, and at this point this is the one I recommend for Windows 7. For a “free” version – this thing has way more features than you’d expect. &lt;/p&gt;  &lt;p&gt;Since my Avast! license recently expired on my main development machine that runs Windows Vista x64, I installed AVG Free on that too. It found and eliminated nearly half a dozen known threats that Avast! never was able to find.&amp;#160; The only option that is disabled that I could find on AVG Free was the rootkit scan. F-Secure has a free FSBL.EXE scanner to take care of that, so the “free” antivirus option is indeed alive and well.&lt;/p&gt;  &lt;p&gt;Furthermore, with AVG running and all of its components fully enabled, Windows 7 runs on my notebook computer in only 653MB of RAM! And that’s with SQL Server 2008 and a whole bunch of other services running. Microsoft got this one right!&amp;#160; Once I figured out how to get the “Send Feedback” links off all the windows and get rid of the desktop watermark in the right lower corner, it doesn’t act like a BETA to me!&lt;/p&gt;  &lt;p&gt;Oh, and did I say “Free”?&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.download.com/AVG-Anti-Virus-Free-Edition/3000-2239_4-10320142.html?part=dl-AVGAntiVir&amp;amp;subj=dl&amp;amp;tag=button" target="_blank"&gt;You can get your copy of AVG free here&lt;/a&gt;.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-3671170094271337081?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/blogspot/lGrQ?a=B3gJlK5o"&gt;&lt;img src="http://feeds.feedburner.com/~f/blogspot/lGrQ?d=43" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/FxYUSxzUZ0w" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/3671170094271337081/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=3671170094271337081" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/3671170094271337081?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/3671170094271337081?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/FxYUSxzUZ0w/which-antivirus-for-windows-7.html" title="Which Antivirus for Windows 7?" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/01/which-antivirus-for-windows-7.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0IMQnw8fSp7ImA9WxVQEUw.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-7716499116077306525</id><published>2009-01-27T21:59:00.001-05:00</published><updated>2009-01-27T21:59:43.275-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-01-27T21:59:43.275-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="WINDOWS 7" /><title>Windows 7: How to remove “Send Feedback” links from all windows</title><content type="html">&lt;p&gt;Windows 7 Beta build 7000 has a “Send Feedback” link at top right of every window title bar. That’s fine, I’m happy to send feedback, but the problem is I’ve found I have been accidentally clicking these links and it’s gotten to be a real annoyance. Here’s how to remove the little buggers:&lt;/p&gt;  &lt;h3&gt;&amp;#160;&lt;/h3&gt;  &lt;p&gt;1. Run regedit. &lt;/p&gt;  &lt;p&gt;2. Navigate to the key: &lt;strong&gt;HKEY_CURRENT_USER\Control Panel\Desktop&lt;/strong&gt;. &lt;/p&gt;  &lt;p&gt;3. Check to see if you already have a key (in the right pane) “FeedbackToolEnabled”. If so, set its value to 0.&lt;/p&gt;  &lt;p&gt;3. If you do not have this key, then&amp;#160; right-click on the right pane and select &lt;strong&gt;New&lt;/strong&gt; -&amp;gt; &lt;strong&gt;DWORD (32-bit) value&lt;/strong&gt;. Name the new value &lt;strong&gt;FeedbackToolEnabled&lt;/strong&gt; and set it's value to &lt;strong&gt;0&lt;/strong&gt;. &lt;/p&gt;  &lt;p&gt;4. Restart your machine. &lt;/p&gt;  &lt;p&gt;All of the &amp;quot;Send Feedback&amp;quot;&amp;#160; links will now be gone from the Windows 7 title bars.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-7716499116077306525?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/blogspot/lGrQ?a=KW6AwKmY"&gt;&lt;img src="http://feeds.feedburner.com/~f/blogspot/lGrQ?d=43" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/cgO8wnabpvU" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/7716499116077306525/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=7716499116077306525" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/7716499116077306525?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/7716499116077306525?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/cgO8wnabpvU/windows-7-how-to-remove-send-feedback.html" title="Windows 7: How to remove “Send Feedback” links from all windows" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/01/windows-7-how-to-remove-send-feedback.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkUFSHg4eSp7ImA9WxVQEE8.&quot;"><id>tag:blogger.com,1999:blog-5430866.post-2591381068024162922</id><published>2009-01-24T23:16:00.001-05:00</published><updated>2009-01-26T20:36:59.631-05:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-01-26T20:36:59.631-05:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="NHIBERNATE" /><category scheme="http://www.blogger.com/atom/ns#" term="POCO" /><category scheme="http://www.blogger.com/atom/ns#" term="FLUENT" /><category scheme="http://www.blogger.com/atom/ns#" term="AUTOMAPPING" /><title>NHibernate: More on Top-Down, Objects First Development</title><content type="html">&lt;em&gt;&lt;/em&gt;  &lt;p align="center"&gt;&lt;em&gt;“I'm thirty years old, but I read at the thirty-four-year-old level.”&lt;/em&gt;&amp;#160; - Dana Carvey&lt;/p&gt;  &lt;p&gt;Recently I participated in a Twittervation (“Twitter conversation”?) that started with a respected friend, who is a very well-known MVP, book author, and article writer, complaining that Entity Framework was a “pain in the ass”. That was “out of the blue”, it wasn’t in response to somebody else’s tweet.&lt;/p&gt;  &lt;p&gt;Of course, I felt compelled to respond and tweeted, “NHibernate. Also PITA, but without all the MS data-centric baggage. (Just my 2 cents)”. Almost simultaneously, another MVP friend of mine who has a follower relationship with the first Tweeter and me said, “why not use NHibernate?”. &lt;/p&gt;  &lt;p&gt;Subsequent Tweets revolved around “Don't get me wrong, not saying you shouldn't use it or that you're wrong for doing so. Just asking if you've seen NH”, and my ending with “I did a lot of research, man. It was painful. NHibernate won. End of story.”&lt;/p&gt;  &lt;p&gt;Why did I say this?&lt;/p&gt;  &lt;p&gt;I have no beef with LINQ To SQL. It works great, I’ve used it, and it is very easy to learn.&amp;#160; I’ll continue to use it where appropriate. You can do data access with a greatly reduced number of lines of code. It’s kind of like Typed DataSets on steroids. With Entity Framework, you may have a steeper learning curve (especially since at this writing it is not 100% “baked”), but again the concept is sound.&lt;/p&gt;  &lt;p&gt;So what’s the difference?&amp;#160; Recently, Jeremy Miller, an MVP who can be attributed with the original impetus for Fluent.NHibernate, had an article published on MSDN, “&lt;a href="http://msdn.microsoft.com/en-us/magazine/dd419655.aspx" target="_blank"&gt;Convention over Configuration&lt;/a&gt;”. Having an article like this accepted for publication at MSDN Magazine, Microsoft’s flagship developer publication, gives instant credibility to this paradigm, in my opinion. In other words, it’s going to “take off”. The basic concept is to be able to start with your POCO objects. “POCO” means “plain old CLR Object” – in sum, a class that describes a domain entity (e.g. “Customer”, “Product” --you get the idea) but &lt;u&gt;without&lt;/u&gt; any “baggage” – e.g., no funky required attributes or decorations in order for it to “work”, no dependencies or required references to other assemblies, and so on. It stands on its own and it is PURE. I repeat – it really is&amp;#160; pure!&amp;#160; You can serialize it over the wire and it will be happy on both ends –- without you having to go through any programmatic contortions.&lt;/p&gt;  &lt;p&gt;This isn’t a new concept to me – I wrote about “&lt;a href="http://petesbloggerama.blogspot.com/2005/07/contract-first-and-xsdobjectgen.html" target="_blank"&gt;Contract First&lt;/a&gt;” back in 2005.&lt;/p&gt;  &lt;p&gt;Next, you need conventions – which involves a series of “sensible defaults” that are built into the programming model. To the uninitiated, these could appear restrictive. But to the developer who understands “how” the programming model works, they provide a tremendous savings in time and efficiency. I’ll explain:&lt;/p&gt;  &lt;p&gt;The key with NHibernate is that you can take these POCO’s (assuming they’re created with some sensible defaults)&amp;#160; and ask NHibernate to map them. The NHibernate infrastructure will create “[POCOName].xbm.xml” mapping files that NHibernate can use to build the DDL SQL that creates your database schema.&amp;#160; So you can create your domain model first –- the way it should be -- and from that,&amp;#160; create the schema for the persistence mechanism.&amp;#160; But, it gets better: The Fluent.NHibernate “Automapping” features mean that you can build this Infrastructure in memory via reflection without the need for any XML at all. The Automapping classes allow for “sensible defaults” that cover the majority of cases and still permit you to override these (perhaps your table names in the database are slightly different, or your primary key naming convention isn’t exactly the same, etc.) and allow you to get what you want.&amp;#160; LINQ to SQL and Entity Framework become quite clumsy when you try to use them with this paradigm. And, unhappily, I believe it is unlikely they will change much going forward as they’re already kind of “baked” into Microsoft’s data-centric approach&amp;#160; -- which really centers on having the database schema first, and the classes / entities coming from that.&lt;/p&gt;  &lt;p&gt;The Fluent approach, which in a nutshell just means that every method returns an instance of the class, allows you to do much more intuitive programming along the concept of “DoThis().WithThat().ButAllowThis().Abracadabra(param)&amp;#160; --- and so on. Should you need to make changes to your domain model (which is often the case during development) you can run the automapping again to keep your persistence schema right in sync.&lt;/p&gt;  &lt;p&gt;James Gregory (one of the active contributors to the Fluent.NHibernate project) has a wonderful &lt;a href="http://blog.jagregory.com/2009/01/10/fluent-nhibernate-auto-mapping-introduction/" target="_blank"&gt;set of blog posts&lt;/a&gt; that really bring this home. I hope you’ll read them, as well as the &lt;a href="http://groups.google.com/group/fluent-nhibernate?pli=1" target="_blank"&gt;Google Group&lt;/a&gt; for same, which is starting to attract a nice following and some great contributions that are sure to make you “think outside the box”.&amp;#160; I’m having fun with Fluent.NHibernate. As with any learning curve, it may be somewhat painful at first. But you know what? I got religion on this, man. It works! Take the time, and it can work for you to. You’ll thank me later.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5430866-2591381068024162922?l=petesbloggerama.blogspot.com'/&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~f/blogspot/lGrQ?a=dnpMBgyB"&gt;&lt;img src="http://feeds.feedburner.com/~f/blogspot/lGrQ?d=43" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/blogspot/lGrQ/~4/PbpM0RILztI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://petesbloggerama.blogspot.com/feeds/2591381068024162922/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=5430866&amp;postID=2591381068024162922" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/2591381068024162922?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/5430866/posts/default/2591381068024162922?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/blogspot/lGrQ/~3/PbpM0RILztI/nhibernate-more-on-top-down-objects.html" title="NHibernate: More on Top-Down, Objects First Development" /><author><name>Peter Bromberg</name><uri>http://www.blogger.com/profile/18173639411723574123</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="09669347480797535165" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://petesbloggerama.blogspot.com/2009/01/nhibernate-more-on-top-down-objects.html</feedburner:origLink></entry></feed>
