<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Deven Kampenhout's Tech Blog : Scripting / Coding</title><link>http://blogs.msdn.com/devenkamp/archive/tags/Scripting+_2F00_+Coding/default.aspx</link><description>Tags: Scripting / Coding</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Visual Web Developer Express 2005</title><link>http://blogs.msdn.com/devenkamp/archive/2005/06/24/432511.aspx</link><pubDate>Sat, 25 Jun 2005 04:25:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:432511</guid><dc:creator>devenkamp</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/devenkamp/comments/432511.aspx</comments><wfw:commentRss>http://blogs.msdn.com/devenkamp/commentrss.aspx?PostID=432511</wfw:commentRss><description>&lt;P&gt;If you want to get a look at the new version of ASP.Net which is now in Beta 2, a great way to get started is to download Visual Web Developer Express 2005. It can be downloaded for free from &lt;A href="http://beta.asp.net/"&gt;http://beta.asp.net/&lt;/A&gt;,&amp;nbsp;and&amp;nbsp;acts as an entry level to the Visual Studio 2005 suite of development tools. Even after the full release of Visual Studio 2005 in November 2005, it should remain freely available via download.&lt;/P&gt;
&lt;P&gt;It's a highly sophisticated development tool, especially for being free. It comes with SQL Server Express 2005, which is the new replacement for MSDE. Furthermore, you can test locally developed applications using a lite, local-access-only webserver which comes with VWDE 2005, which means that you don't have to enable IIS on your local workstation to test locally. This will allow even Windows XP home edition (which doesn't allow IIS) to be able to develop rich ASP.Net web sites and test locally.&lt;/P&gt;
&lt;P&gt;Go check it out today!&lt;/P&gt;
&lt;P&gt;I'll also warn you of a installation "feature" that had me frustrated for a little bit before figuring it out. On my home network, I follow security best-practices and log in via a non-privileged user. When I need to install applications or perform maintenance on my system which requires elevated privileges, I will use the "runas" command to run the installer or program under an administrator account. Unfortunately, this isn't a "supported scenario" for the installer for Visual Web Developer Express 2005 :(. From the Microsoft Visual Studio 2005 Beta 2 Readme, I quote:&lt;/P&gt;
&lt;P&gt;
&lt;TABLE cellSpacing=1 cellPadding=15&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;H3&gt;&lt;FONT face=Arial&gt;1.3.2.&amp;nbsp;&amp;nbsp;&amp;nbsp;Installing Visual Studio 2005 using the runas command fails. &lt;/FONT&gt;&lt;/H3&gt;
&lt;DIV class=indent&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial&gt;When logged in as a non administrator, attempting to install Visual Studio 2005 using the runas command will fail. This is not a supported scenario. &amp;nbsp;Running Visual Studio 2005 as a non administrator after it is installed is supported.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial&gt;&amp;nbsp;&lt;B&gt;To resolve this issue&lt;/B&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal&gt;&lt;FONT face=Arial&gt;Please install Visual Studio 2005 while logged in as an administrator.&lt;/FONT&gt;&lt;/P&gt;&lt;/DIV&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TABLE&gt;&lt;/P&gt;
&lt;P&gt;
&lt;P&gt;Another thing to help you along to see the power of the development tools are "starter kits". These are pre-built web sites that you can use as a starting point. You can find a personal website starter kit, along with several others at &lt;A href="http://lab.msdn.microsoft.com/express/vwd/starterkit/default.aspx"&gt;http://lab.msdn.microsoft.com/express/vwd/starterkit/default.aspx&lt;/A&gt;.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=432511" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/devenkamp/archive/tags/Hosting/default.aspx">Hosting</category><category domain="http://blogs.msdn.com/devenkamp/archive/tags/Scripting+_2F00_+Coding/default.aspx">Scripting / Coding</category></item><item><title>The Journey Begins Part 3 - Abuse, Automation, Management, and Aquisition</title><link>http://blogs.msdn.com/devenkamp/archive/2005/04/09/406818.aspx</link><pubDate>Sat, 09 Apr 2005 18:55:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:406818</guid><dc:creator>devenkamp</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/devenkamp/comments/406818.aspx</comments><wfw:commentRss>http://blogs.msdn.com/devenkamp/commentrss.aspx?PostID=406818</wfw:commentRss><description>&lt;FONT face=Arial size=2&gt;… Continued from &lt;a href="http://blogs.msdn.com/devenkamp/archive/2005/01/11/351156.aspx"&gt;part two&lt;/A&gt; (&lt;a href="http://blogs.msdn.com/devenkamp/archive/2005/01/06/347921.aspx"&gt;part one&lt;/A&gt;):&lt;/FONT&gt; 
&lt;P&gt;&lt;FONT face=Arial size=2&gt;As we last left my chronicle of my experiences in Web Hosting, I was the sole systems administrator at Virtual Servers. The systems were running high on load average, which isn't surprising given what we were running on the hardware that was available back then. I quickly realized that the only way to begin to address the problems in any meaningful way was to automate fixes and avoid short-term "band-aid" fixes. This is easier said than done however when you're the only sysadmin; To be blunt, time is of the essence and you don't have much time to be proactive when your customers are constantly contacting the support team to complain of slow service due to high server loads. I was able to convince my manager that I needed help, and he allowed me to hire someone to share my workload.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial size=2&gt;The first person I hired was a guy named Steve, who has since become a great friend. His primary job was to handle all of the abuse complaints. He knew web design very well but was just beginning as a systems administrator. I trained him on how to react to high load issues; The reason this was tied to the Abuse Desk position was that in many cases, high loads on the servers were caused by people hosting things that were against our AUP, such as porn or warez. The other cases were caused by customers whose web sites had outgrown the capacity of their shared hosting plan. Steve would contact these customers and tell them that there site was causing the server to fail and that he'd have to shut down their web site to keep the rest of our customers happy; He also gave them the alternative to upgrade to a plan that had more resources allocated to accommodate the needs of their growing Web site. It was mainly through efforts like this that we built our dedicated hosting business.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial size=2&gt;Now that I had a little more time, I began to automate everything I could. First, in order to help Steve, I built a number of scripts that he could use to track down users that were causing server performance issues.&lt;SPAN&gt;&amp;nbsp; &lt;/SPAN&gt;I also helped to beef up our monitoring and paging system (we called the system Zookeeper) so that it was better capable of paging a team of people rather than just me and my boss. I also integrated some of my data gathering scripts into the web interface of our monitoring solution so that when you saw a server alert come up, you could click a link to get more detailed information to track down the issues. &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial size=2&gt;Through all of this, the Perl scripting language was my greatest friend. When it comes to coding a complex application such as a server, end-user app, or what have you you'd probably want to look at a language like C/C++ (or similar), but there is nothing better than Perl when it comes to system administration, especially on Unix/Linux/GNU systems. It's funny now that I look back at some of my earlier perl scripts - they were hastily written and didn't use the best programming practices. However, over the years I would grow to know Perl like the back of my hand. &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial size=2&gt;By the Fall of 1999, I had hired another system administrator to my team (Phil), and was in the process of looking to hire a full-time Perl scripter to help with tool creation for systems administration automation. In December, It was announced that Virtual Servers (AKA Lightrealm Communications) would be acquired by Micron PC. Micron PC at the time was struggling to compete with the likes of HP, Compaq, and Dell and thought to start an Internet Hosting business in order to take its company in a new direction. &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial size=2&gt;They acquired two other web-focused companies along with Lightrealm with the intent of forming them into a larger player in the web hosting space. Micron Internet Services, acquired from their parent company Micron Electronics, was mainly an Internet Service Provider selling dialup and broadband Internet services in the Boise, ID area. Hostpro (AKA NetLimited) was a hosting company based out of Los Angeles, CA that had an array of hosting products and services ranging from high-end customized dedicated hosting solutions to shared hosting. Our strength at Lightrealm was mainly our shared hosting business. While we had some dedicated hosting and colo customers, the primary focus had always been on the shared hosting business. &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial size=2&gt;The merger brought on a new era. I went from working for a small private startup company with a very personal feel to working for a small part of a much larger publicly traded company. At the time, MicronPC was the large revenue player and we felt completely segmented from them. It was decided that the new brand for the combined companies would be HostPro. It would take a few years for us to begin to truly integrate our cultures and think of ourselves as one company. It is strange to look back now and remember how weird it was going from a company of 100 employees to a company that had well over 1000. In retrospect, this was nothing compared to working for a company like Microsoft, which has almost 60,000 worldwide.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial size=2&gt;One of the benefits of the acquisition was that we had a much larger budget with which to grow our company. In fact, one of the main reasons for the acquisition was that Lightrealm had grown so much that we'd hit a ceiling of what we could accomplish without some major capital. This capital was what Micron PC brought. Now instead of building our own custom hardware built in custom cases and using PC hardware, we began to deploy our servers onto enterprise class servers (still Intel based, but much higher quality). We were able to build out a new data center and office space, both of which were badly needed. Some of us still laugh with fondness when we remember the old days of working closets for a lack of available floor space in our overcrowded old office space. Having a new employee report to work was always exciting, as it meant trying to figure out if there was a spare cabinet or closet that might possibly be converted into a work area. Now that HostPro was formed with the backing from Micron PC, those problems were behind us.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Arial size=2&gt;To Be Continued...&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=406818" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/devenkamp/archive/tags/About+the+Author/default.aspx">About the Author</category><category domain="http://blogs.msdn.com/devenkamp/archive/tags/Linux+and+Open+Source/default.aspx">Linux and Open Source</category><category domain="http://blogs.msdn.com/devenkamp/archive/tags/Technical+Musings/default.aspx">Technical Musings</category><category domain="http://blogs.msdn.com/devenkamp/archive/tags/Hosting/default.aspx">Hosting</category><category domain="http://blogs.msdn.com/devenkamp/archive/tags/Scripting+_2F00_+Coding/default.aspx">Scripting / Coding</category></item><item><title>Bill Gates Speaks on Software Interoperability</title><link>http://blogs.msdn.com/devenkamp/archive/2005/02/05/367842.aspx</link><pubDate>Sun, 06 Feb 2005 02:19:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:367842</guid><dc:creator>devenkamp</dc:creator><slash:comments>6</slash:comments><comments>http://blogs.msdn.com/devenkamp/comments/367842.aspx</comments><wfw:commentRss>http://blogs.msdn.com/devenkamp/commentrss.aspx?PostID=367842</wfw:commentRss><description>&amp;nbsp;On February 3rd, 2005, Bill Gates sent out an &lt;a href="http://www.microsoft.com/mscorp/execmail/2005/02-03interoperability.asp" target="billgatesexecemail"&gt;executive email&lt;/a&gt; to the public regarding the importance of software interoperability. He stated: &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in 0in 0in 0.5in; COLOR: black; FONT-FAMILY: Verdana; mso-outline-level: 2"&gt;Interoperability is more pragmatic than other approaches, such as attempting to make all systems compatible at the code level, focusing solely on adding new layers of middleware that try to make all systems look and act the same, or seeking to make different systems interchangeable. With a common understanding of basic protocols, different software can interact smoothly with little or no specific knowledge of each other. The Internet is perhaps the most obvious example of this kind of interoperability, where any piece of software can connect and exchange data as long as it adheres to the key protocols. &lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&lt;br /&gt;He then goes on to explain how Microsoft approaches interoperability by working to ensure that its software and operating systems work well with the other software and systems already in existence. He further explains that the next step is to define the next generation of software with a greater degree of "interoperability by design", specifically using XML as a common framework from which different applications can communicate. &lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;This idea isn't new, but the fact that Bill is driving focus towards software interoperability is very encouraging. I remember the first time I heard of XML, thinking how it was a nice idea, but that it was a bit "overbilled" and "overhyped". However, I have to admit that using XML as a common interoperability mechanism is a great idea. It allows you to publicize your communication / interoperability schemas without requiring interfacing programs/programmers to understand all of the details about the inner workings of your software. Furthermore, the self-describing nature of XML eases interoperability by reducing the need for extensive documentation surrounding your interoperability mechanisms. Finally, since it's a common standard, it can be used and accepted broadly.&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;&amp;nbsp;&lt;/p&gt; &lt;p style="FONT-SIZE: 10pt; MARGIN: 0in; FONT-FAMILY: Verdana; mso-outline-level: 1"&gt;There are so many "religious wars" out there when it comes to software, platforms, standards, etc. There comes a time however when it benefits all to work together. By establishing interoperability standards, we can all score a big win here. I just hope that common sense will prevail and the bickering software/technology/OSS quarrels won't get in the way of true progress.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=367842" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/devenkamp/archive/tags/Technical+Musings/default.aspx">Technical Musings</category><category domain="http://blogs.msdn.com/devenkamp/archive/tags/Scripting+_2F00_+Coding/default.aspx">Scripting / Coding</category></item></channel></rss>