Best Practices to Prevent and Manage Virtual Machine Sprawl (White Paper)

Sun-manage_vm_sprawlOften, new technology tends to bring with it some new problems that need to be addressed.  Granted, the problems are “better” ones to have, but they’re important concerns nonetheless.  Server virtualization is no exception.

It’s somewhat ironic that one of the main problems that server virtualization is designed to address, server sprawl, is often replaced with a similar problem – VM sprawl.  It’s a topic that I’ve written a lot about in the past and on this blog.  I recently revisited the topic and expanded on it in a White Paper that I wrote for Sun.  Here’s the introduction from Best Practices to Prevent and Manage Virtual Machine Sprawl:

While server consolidation using virtualization can significantly decrease costs and improve efficiency, organizations often find that they need to deal with an associated issue: the rapid proliferation of VMs with inadequate management. This article will provide best practices for addressing the issue of "VM Sprawl", including the following:

  • Creating and enforcing deployment policies
  • Detecting and addressing unauthorized VMs
  • Managing security and compliance in virtual environments
  • Managing the entire VM lifecycle and Planning for VM retirement
  • Sidebar: Steps to gaining (or regaining) control of a virtual environment.

The White Paper is available for free, but registration on the Sun Web site is required.

Windows 7 UI Enhancements for Power Users

While there are benefits to being a highly technical “power user”, it can also come as a drawback in certain situations.  No, I’m not talking about being the de facto “Tech Support Provider” for friends and family…  It seems that many O/S’s are designed for the “lowest common denominator” user, and we techies are left with having to install hacks, reconfigure default settings, and to search for third-party utilities that fill in the gaps.  Products such as Mac OS X (with it’s one default mouse button and many missing keyboard conveniences) might work well for basic tasks, it leaves a lot to be desired.  I was disappointed that Windows Vista’s “new” desktop didn’t provide much in the way of productivity-enhancing features. 

Well, Windows 7 is about to hit the stage, and it looks like a winner from a usability standpoint.  A simple web search will return dozens of articles that look at many of the UI changes and improvements and blogs like Engineering Windows 7 go into some of the decision decisions in significant depth.  Rather than repeat the content of those articles, I’ll briefly highlight the features I’ve enjoyed most during my past few months with Windows 7:

  • The new taskbar: There are also some features that might not be readily evident.  For example:
    • You can see icons for all of your most-used programs, whether they’re running or not.  They’re always right where you expect them, which really saves time when you have a bunch of different programs open at the same time.
    • Applications can support jump lists, recent documents, and other special features that are available by hovering over an application icon or right-clicking on it.  Apps such as IE already support this quite well.
    • You can easily dock the Taskbar to the left, right, top, or bottom of the window.  In fact, this even works properly with multiple monitors.  So far, I have stuck with the standard bottom-of-screen layout, but I have tried docking it to the left, and it works well.
    • Windows7Taskbar

  • Improved multi-monitor support:  Windows 7 makes it much easier to work with multiple monitors but allowing you to quickly drag windows (even when they’re maximized) to other monitors.  In fact, my eVGA USB-to-DVI adapter is working great on Windows 7 (though I did need to download and and install the beta drivers manually).
  • Keyboard Shortcuts for Window Management: Using intuitive keyboard shortcuts is far more effective and efficient than using the mouse to arrange windows.  For example, think of all the work it typically takes to view two windows side-by-side (I never bothered to try it manually and relied on third-party utilities like DisplayFusion to help).  Using the Windows Key in conjunction with the arrow keys allow you to maximize, minimize, and move windows to any part of any monitor.  This alone saves a lot of time and really takes advantage of my three-monitor setup.  Finally, you can use Windows Key – # to open the appropriate program or folder on your computer based on its located on the taskbar. 
  • Overall Stability:  As I’ve mentioned in previous posts, I had been quite disappointed with Windows Vista’s performance and reliability (even after applying both service packs).  On the whole, Windows 7 responds much more quickly and the desktop, UI, and applications are completely reliable.  In fact, I typically reboot my computer (which runs a ton of development stuff) once a week or so.
  • New wallpapers and desktop themes: Sometimes, it’s the little(r) things that count the most.  Windows 7 ships with a great collection of default themes and backgrounds.  And, you can also download many more from the Windows 7 Personalize Your PC site.  The download process is seamless and I hope Microsoft will continue to add content frequently (as opposed to the rather missed opportunity with Windows Vista Ultimate Extras).  Furthermore, the UI improvements for switching between desktop settings has been streamlined, making it simple to make changes without third-party utilities.
  • Sidebar Gadgets: They can now be placed anywhere on the desktop and seem to use fewer system resources (just a subjective observation – I haven’t done any testing).  Unfortunately, there’s still a relative dearth of useful gadgets, but hopefully that will finally change.
  • Expanded right-click menu:  Hold SHIFT and right-click on a file or folder to see some useful new options, such as “Open Command Window Here”.  You could enable this feature in XP/Vista, but it required a Registry change and would always appear in an already long list of options.
  • ClearType and Color Tuner: Matching colors on multiple monitors has always been a pain.  While drivers from Nvidia and ATI allow you to change RGB values, these settings never seemed to “stick” for me.  Windows 7 includes built-in functionality for handling this, and it seems to work.  Better yet, it efficiently supports a multi-monitor setup.

ColorTuner

Overall, I think Microsoft has done a great  job of balancing usability for less-technical users with the features that those of the geekier persuasions can appreciate.  I have (against some practical warnings and advice) switched to using the Windows 7 Release Candidate as my primary O/S.  I’ve run into very few problems so far.  So… which useful features have I missed?

Austin Code Camp 2009 Presentations

Code Camps are free events that are held by and for developers.  They focus on real, practical technical information that is presented through demonstrations.  Many user groups hold these sessions on weekends to help support the best attendance and availability.  The topics focus on a wide variety of subjects that are of interest to developers.  Examples include development methodologies, specific technical features, and development techniques.  You can find more information in the Code Camp Manifesto.

Austin Code Camp 2009 is scheduled for Saturday, May 30, 2009 and will be held at the St. Edwards Professional Education Center.  Past events have had hundreds of attendees with dozens of sessions.  If you’re in the area, I highly recommend attending at least part of the event.  Oh, and did I mention that it’s free? :) 

This year, I’ll be presenting on three topics (listed below, with abstracts).  Each session is scheduled to last two hours and will focus on practical demonstrations.  Specific presentation times have not yet been posted, but keep checking the web site for more details.  In the meantime, be sure to register to attend and vote on proposed topics.  If you can’t make it, I plan to post the presentation slides and sample code on my web site just prior to the event.

Presentation Topics & Abstracts

SQL Server Reporting Services: Report Creation and Deployment:

Using SQL Server Reporting Services, developers can author and distribute complex reports that come from a variety of data sources. The session will begin with an architectural overview of Reporting Services and how developers can install and configure the required services. Then, we will walk through the process of creating new reports by building connections and data sets using Report Builder 2.0 and Visual Studio 2008. Reporting design features including dynamic drill-downs, matrix reports, charts, and sorting will be provided. Also included will be methods by which multiple levels of report parameters can be used to filter data and increase performance. Next, we’ll look at deployment details, including scheduling reports, configuring caching, creating snapshots, and managing security. Time permitting, the presentation will include a demonstration of using Report Viewer controls within ASP.NET and Windows Forms applications.

SQL Server Basics for Non-DBAs

Although relational databases are a critical component of most applications, many developers often have only a basic understanding of how they work. This session will describe the architecture of Microsoft SQL Server 2008 and its many features can be used to improve the end-user experience. The presentation will begin with an overview of the SQL Server platform, including installation and configuration of the server. Then, we’ll look at ways in which you can manage logical databases and their constituent files. Recommendations for regular database maintenance and data protection will be covered next. Other important tasks include managing security, including techniques such as role-based security, permissions hierarchies, and data- and object-level encryption. Finally, we’ll conclude with some best practices for managing database schemas and objects. Attendees are encouraged to bring their server and database management questions.

SQL Server Performance Monitoring & Optimization

Developers can dramatically improve performance by understanding how their queries are executing in the "real world". This session will cover ways in which attendees can monitor performance at various levels, and how they can use this information to optimize queries and improve overall application performance. We’ll start with a discussion of developing a performance optimization strategy and how various tools can help. Then, we’ll walk through the process of using SQL Profiler to collect data in a real-world case: Generating a "hit list" of worst-performing queries based on execution times and frequency. Next we’ll look at using the Database Engine Tuning Advisor to make suggestions related to physical database structures such as indexes and partitions. Also included will be ways in which built-in reports and dynamic management views can be used to monitor performance of production systems. Time permitting, the presentation will include methods for reducing deadlocks and managing long-running transactions. Finally, the presentation will include an overview of analyzing query plans. The overall emphasis will be on solving practical, real-world database performance problems.

The [Solid] State of Hard Disks

A Brief History of [Wasted] Time

Over the last couple of decades, practical PC bottlenecks have moved.  I remember a time when upgrading CPUs could provide a near-linear speed increase with respect to clock speed (does anyone remember the thrill of going from a 33MHz 486 processor to a a 486/66?).  Later, keeping the processor fed became more important.  Improved memory bus speeds, lower cache latency, larger cache sizes, and more RAM often provided the best performance increase.  And of course, we had network issues – starting with dial-up performance.  Thankfully, most of those resources are no longer the slowest components in modern PCs.  In fact, CPUs have increased in performance to the point that clock speed increases give little practical benefits for most users (on the client side, at least).

Wringing some[Bottle]necks…

Over the last several years, the primary bottleneck on most of my machines (notebooks, development desktops, and music production machines) has been hard disk performance.  If I was waiting for something, it was more than likely that hard drive.  The high number and frequency of random I/Os often resulted in significant delays.  Even with large amounts of RAM, launching programs, loading web pages, and performing builds in Visual Studio could take a lot of time.  High-speed, low-latency hard disks helped a little.  And, if you can stomach the risk of data loss, RAID-0 configurations could alleviate some of the pain.  But, disk access remained the slow step in many processes.

One of my clients, Arrow Value Recovery (formerly,  TechTurn, Inc.), was kind enough to lend me a Samsung 128GB Solid State Disk (SSD) to test.  At first, I imaged my notebook Windows 7 Release Candidate installation and placed it on the SSD.  I was expecting an incremental increase in performance (at least for random, small reads).  The overall results, however, were amazing!  Applications launched in a just a few seconds, and some basic benchmarks provided all the evidence I needed to place the new disk in my primary development machine (a Dell Dimension XPS 420 with two 500GB, 7200RPM drives).  Now, after just a couple of weeks, I can’t imagine going back to “old school” physical drives.

SSD’s are new to the marketplace and they’re not without significant potential drawbacks.  In the coming weeks, I’ll provide some more details on the experience.  For now, here are a couple of basic benchmarks created using HDTune.  The basic comparison is between a Samsung 500GB, 7200 RPM hard disk (16MB cache) and the 128GB Samsung SSD.  I did absolutely nothing to optimize the performance of the SSD, so consider this just a baseline.

Benchmarks

HDTune – Disk Benchmarks

image

Figure 1a: HDD Performance (Dell XPS 420)

image

Figure 1b:  SSD Performance (Dell XPS 420)

HDTune – Random Access Performance

image

Figure 2a: HDD Performance (Dell XPS 420)

image

Figure 2b: SSD Performance (Dell XPS 420)

I realize that this data is completely anecdotal and unscientific, but it’s a promising start.  So far, the general performance improvement from using an SSD has been the single most noticeable upgrade in several years.

More to come…

Again, I hope to post some more detailed data (with a focus on benefits for development workstations) in the coming weeks.  Now if only my own sequential writing speed could match that of the SSD drive… 🙂

Update: The Engineering Windows 7 blog has a post that covers Support and Q & A for Solid-State Drives.  It helps provide some technical background related to the different between random vs. sequential I/O’s and issues related to random writing.

Network Design in an Uncertain Economy

It’s no secret that IT budgets worldwide have been slashed and that spending on new projects has been drastically reduced for most companies.  However, contrary to popular opinion, there’s a lot of opportunity to make cost-saving investments now.  On that topic, I will be presenting some best practices in a webcast titled Building a Recession-Proof Network (sponsored by Nortel).  From the webcast web site:

In today’s economy, ensuring you have a network that is reliable and secure 24×7 can help you to recession-proof your business even with a limited IT budget. Learn step-by-step about how your company can build a cost-effective, energy-efficient and secure network in ’09!

Join us now and learn:

  • Easy steps to build a cost-effective, energy-efficient and secure network in ‘09
  • Best practices to recession-proof your network on a limited IT budget
  • How to reduce your TCO while increasing ROI across your company
  • Low-cost ways to maximize and extend your network capabilities

The free webcast is scheduled for 10:00am Pacific Time on Thursday May 7, 2009.  My portion will focus on suggestions for justifying network improvements such as investing in Unified Communications (UC) and ways to sell that idea to the rest of the organization. 

My Favorite Mozilla Firefox Add-Ons

Note: The post below was written several years ago, and links might be out-of-date.  Additionally, as of Firefox 57, the browser platform is using the new Web Extensions format, and older add-ons are no longer compatible (here’s a blog post from Digital.com that provides some more information).

The good news is that there are updated versions of many of these add-ons here’s one list of potential Firefox Replacements), and there are many new ones that are worth trying.  I hope to write a new, updated post sometime in the future.

Several months ago, I took the plunge and switched from my primary browser (Avant Browser – which basically automates IE with a bunch of new features) to Firefox.  I was on the fence for a while.  I generally liked Firefox’s user interface and performance, but missed some of the navigation features that were available in IE.  What finally pushed me to switch to Firefox were some really useful (but not always well-known) add-ons.  I now find them to be almost indispensible to my web browsing habits.  So, without further delay, here’s a list of my favorites (with minimal comments as the Firefox Add-Ons site provides the best explanations with screenshots):

  • AutoPager: The page-based nature of the Web can make it really difficult to navigate through large documents.  Often, you’ll have to click through pages one-by-one.  What if the Google Search result you want didn’t make the first page?  You generally would have to manually navigate to the next page of results (or change the default view to include more results).  And don’t get me started on sites that force you to click through a dozen pages to read an entire article.  AutoPager can automatically load content from additional pages without losing context.  It supports hundreds of sites out of the box and provides an easy way to add support for new sites.  I highly recommend it, at least until the Web (and advertising) start supporting better ways to view large amounts of information.
  • FoxTab: A great multi-tab browser that allows you to choose from a wide FoxTabvariety of different “gallery” views that show thumbnails of open tabs.  It seems to scale and perform well, even with dozens of open tabs.

 

  • SpeedDial:  Most of us frequent the same sites many times per day.  The default user behavior – typing URLs or choosing them from the Bookmarks list – can be quite cumbersome.  As its name suggests, SpeedDial provides users with thumbnails of their most common web sites whenever they open a new tab.  ~80% of the time, I use the keyboard shortcuts (Alt-# or CTRL-#) to open the sites I use the most.
  • Read It Later:  It might seem a little strange, but I’ve all but abandoned the use of bookmarks in my browsers.  I am usually very organized, but I found that it takes too much effort to store and organize separate links (many of which tend to quickly become outdated).  Read It Later provides a great way to keep track of specific articles and content that you plan to read later without requiring you to create bookmarks.  When you’re bored, you can just click on its icon, and you’ll be presented with on of the pages from its list.  You can easily mark something as “read” without having to deal with deleting bookmarks.
  • IE Tab: Despite a strong push to work on standards-based sites and browsers, the need to launch IE is sometimes inevitable.  An example that comes to mind is the SQL Server Reporting Services web site which doesn’t seem to render properly in Firefox.  IE Tab allows you to simply click an icon on the status bar to switch to using the IE rendering engine for that tab.  You get to stay in the comfort of Firefox while using IE behind the scenes.

Those are the highlights of my favorite extensions.   You can easily download and install all of these extensions using the Firefox Add-Ons page.  Installation couldn’t be much simpler, and it’s really easy to try out new extensions.

But, wait – there’s more:  So far, my favorite theme is Chromifox Basic.  As its name implies, it’s hardly the flashiest of themes.  But, I really like its simple look and customizations.

There’s certainly no lack of web pages and blog entries that highlight “must-have Firefox.  (There are so many, in fact, that I’m not going to bother to link to any of them.)  Now, I can add myself to that list. 🙂

Google Timeline

Will the developers at Google never stop publishing new applications (even if the are in perpetual “beta” status)?  You can find dozens of online-based projects on the Google Labs page.  One of the newer and more interesting additions is Google News Timeline

For me, one of the most frustrating aspects of searching the Web is the difficulty of searching for relative information by date.  For example, if I’m searching for information on Windows 7 or something relatively new, I generally don’t want to see information that’s over a year old.  Often, the results can get confusing.  Sometimes, you’ll want to search for a .NET command or T-SQL syntax, and you’ll find outdated results.  Sure, you can perform an Advanced Search to filter by date ranges, but it’s a cumbersome way to find the information you need.

The Timeline still appears to be in a fairly early state, and the search results aren’t quite up to par.  However, the idea is a good one, and I hope it’s significantly improved in the near future.

Microsoft Server Quest Episode II

For many of us IT pros, laughter is a way of survival (indeed, if we weren’t laughing, we’d probably be crying).  A while back, I wrote a post about Microsoft Server Quest.  The original version of the game was written in Flash and was fun (at least for marketing efforts).  I just got word from Microsoft that there’s a sequel, called Microsoft Server Quest Episode II that’s now available online.  Here’s the official blurb:

The company’s  resident IT professional extraordinaire has just returned from a much-deserved vacation but, in a temporary spell of relaxed judgment, has jeopardized their reputation with a poorly placed email and forwarded personal holiday snaps to the entire staff. Now they have to excavate through the email chain to find the offending photos – all while keeping the office online.

In Server Quest II, the sequel to last year’s pixellated adventure, players must hone their technical prowess in order to prove once and for all why the tech pros take the cake.  From software support to sidequests, players will get behind the curtain and live the life of a server genius fighting for respect.”

The game includes several simple mini-adventures that can easily be played online.  The pixilated art style will do little to show off features of Silverlight (such as the powerful zoom capabilities), but players will be rewarded with eight-bit analog sounds and an easy to play game.  And the sense of nostalgia is unbeatable (especially for those of us old enough to remember such vintage machines at the Commodore 64).

SQL Server 2008 SP1 Now Available

Microsoft has just released SQL Server 2008 Service Pack 1 for download.  Packages are available for x86, x84, and IA64 installations and are each less than 400MB in size.  Most of the changes and updates are behind the scenes, but this is a fully-tested collection of post-RTM bug fixes.  eWeek magazine has some coverage on the update in Microsoft Releases SQL Server 2008 Service Pack 1.  From the article:

SQL Server 2008 SP1 contains a handful of enhancements, including Slipstream, Service Pack Uninstall and Report Builder 2.0 Click Once. Slipstream allows administrators to install SQL Server 2008 and Service Pack 1 in a single instance. The feature is designed to decrease the total time for an installation by, for example, requiring a fewer number of reboots, thereby increasing productivity.

SP1 also includes all the fixes and cumulative updates for SQL Server 2008 issued so far.

Microsoft Most Valuable Professional (MVP) Award for 2009 – 2010

MVPLogoI recently received a notification that I have again received the Microsoft MVP Award for 2009 – 2010.  My area of expertise has been updated, as well, and is now focused on virtualization.  This is more in-line with my areas of focus, and I’m looking forward to working more closely with Microsoft’s virtualization teams.  

During my recent visit to Redmond for the MVP Summit, I had a chance to meet with the groups that are responsible for creating and promoting Hyper-V, and System Center Virtual Machine Manager (SCVMM).  I’ll have much more to say about these products and virtualization in general in the coming weeks.  Until then, you can find more details (including upcoming presentations and a list of articles and publications) on my MVP Profile

VDI: Virtuality vs. Reality

The idea of virtualizing desktops (often referred to as Virtual Desktop Infrastructure, or VDI) would appear to be gaining traction and mindshare.  Indeed companies like VMware and a host of other smaller virtualization technology provides are spending large amounts of their budgets on promotion and enabling VDI.  However, many IT pros (myself included) are skeptical.

A recent article written by Christina Torode, Users eye VDI but may wait for client hypervisors is now available on TechTarget’s SearchWinIT site.  I was interviewed for the article and got a change to provide some of my input.  Here’s an excerpt of some of my comments quoted in the article:

Cheaper alternatives to desktop virtualization

For independent consultant Anil Desai, VDI presents a dilemma. It promises to address security problems such as lost laptops and give IT better control over remote workforces. But he doesn’t see virtual desktop technology as the best way to solve these and other business problems.

He said there are more cost-effective ways to reduce security risks and gain control over user devices with existing technologies. There is the ability in Windows to restrict access to the USB drive or to improve manageability with remote management tools that lets IT cut physical visits to desktops and use the Remote Desktop Protocol, just as VDI uses.

Another example is the alternative of Windows Server 2008 Terminal Services for resource, hardware and management consolidation versus using VDI. Terminal Services in Windows Server 2008 lets IT run a single application in a virtual environment, in turn centralizing application management, he said.

Then there’s the overall cost for a virtual desktop infrastructure versus buying desktops. "When you see how much infrastructure, power and server resources go into a VDI solution versus getting desktops that have come down so much in price, I just don’t see the justification for that kind of investment," Desai said.

Desai said he is backing the concept of a client hypervisor and is waiting to see what the big three — VMware, Microsoft and Citrix — will do in this area. "It can reduce potential application conflicts and speed up deployments on many operating system platforms," he said.

Overall, it will be interesting to see what happens here – will VDI be just another over-hyped technology that never made significant inroads into corporate IT?  Or, is this is a real technology that will start replacing full desktops?

Webcast: What is Microsoft Hyper-V?

I recently recorded a free podcast that introduces listeners to Hyper-V: What it is, why it matters, and how it works (without getting into a lot of technical details).  It’s titled (appropriately enough), What is Microsoft Hyper-V?.  Here’s the abstract:

In this podcast, virtualization expert Anil Desai talks with WhatIs.com’s Alex Howard about Microsoft’s Hyper-V, a new virtualization platform from the Redmond-based software giant. Listen to this podcast and learn:

  • Exactly what Hyper-V is, how it works, how it fits in with other virtualization products and how you can use it.
  • The advantages and limitations of Hyper-V, its system requirements and an overview of the installation process.
  • How to create virtual machines (VMs) and use Hyper-V’s integrated features to address VM sprawl.

The podcast was sponsored by Dell and is available for free (registration is required).

IT Consulting Podcast on Struggling Entrepreneur

I was recently interview by Fred Castaneda of The Struggling Entrepreneur, a web site that provides advice and content to individuals that are interested in starting or improving their own businesses.  This podcast is titled 72- Success secrets- Entrepreneur as an IT consultant and author.  From the introduction to the web site:

In this episode of The Struggling Entrepreneur, we take a closer look into the transition from being a technical specialist in the IT (Information Technology) industry to becoming a successful Entrepreneur from the background and point of view of Anil Desai.

Even if you are not an IT Specialist, but perhaps you are in a field that requires technical skills or in an area of complex products or problem-solving, this interview will be of value to you for its related scenarios.

Anil shares with us the obstacles he encountered, as well as how he himself tackles the administrative responsibilities of running his own business–including income taxes and other back-office tasks that many structured IT specialists dread.

Anil also discusses how his skills in communication–especially in technical writing–have added to the success of creating himself as a known Brand. In addition, Anil is also an author of several books and a speaker, as well as a consultant that delivers the right solutions to the customers to solve business problems. He will tell you in this episode about his multiple certifications and the technical skills that he keeps current–but at very little or no cost!

The recording is far from perfect (there’s a lot of background noise), but I hope you find the information to be useful.

Start Simply with Small Basic

Many of us IT pros tend to forget our humble beginnings in working with computers.  For me, it was with the Commodore 64 computer (a product about which I have written several times in the past).  I did a lot of learning and playing with that deceptively powerful machine.  From writing my own rudimentary BASIC programs to typing in code listings for games from magazines of the day, it was an amazing learning opportunity.  But with all of the technology that has been developed in the past two decades, what should aspiring future programmers use today?

Microsoft Dev Labs has released Small Basic, a free, simplified development environment that has a humble goal:

Microsoft Small Basic aims to make computer programming accessible to beginners.

The product provides an approachable development environment and a simple but powerful language based on the ever-popular Basic syntax.  It includes support for variables, different types of output, conditional logic, branching and looping and even subroutines.  These are all extremely valuable concepts for beginners and IT pros to understand.  All programs are saved in single files and there’s no need for a complex development environment, manual compilation, or any other project setup tasks.

Among the features that are supported:

  • Command Completion and Reference:  Code completion features such as Microsoft’s IntelliSense are both helpful and fun to work with.  The following screenshot shows an example that provides annotated help as you type.

SmallBasic-Main

  • Syntax checking: When you attempt to run a program, the development environment identifies bugs and tries to provide some hints on how to find and fix them.  It’s not the most powerful system, but it helps reduce the pain of trial and error.
  • A Getting Started Guide: While it’s not context-sensitive, this beginners guide does a great job of introducing readers to basic programming concepts.  The guide is still incomplete in some places, but it provides some excellent examples that can be copied and pasted into the code editor window.
  • Text output to a console window via the TextWindow object.
  • Graphical output, which allows the use of standard draw commands.  Beginners can easily create lines, boxes, circles, and other common objects with just a few lines of code.
  • Turtle graphics:  For those that don’t remember (or never experienced) the fun and simple Turtle language, the code is made up of commands that tell the obedient reptile how to move.  Simple commands involving turning and moving a certain distance.  You can use looping to create some interesting effects.  The following figure shows our obedient turtle running in non-overlapping circles (the source code is in the Getting Started Guide).
  • SmallBasic-Turtle

Overall, I think the biggest and most beneficial impact of applications such as Small Basic is in its ability to stimulate beginners to learn and experiment.  It helps then think both analytically and creatively.  These are all things that seem to be lacking in "modern" education.  Perhaps some simplified tools are the right "toys" to job the mind and imagination. 

Webcast: Capacity Planning for Virtual Environments

I recently recorded a webcast that focuses on an important topic related to virtualization management: Capacity Planning.  The presentation is titled, Capacity planning: New challenges for your virtual infrastructure and is sponsored by VKernel.  From the abstract:

Virtualization expert Anil Desai discusses the capacity planning and management demands created by virtualizing production-level applications, creating virtual infrastructures and server platforms, such as blade servers.

There are new challenges posed by virtualizing on a mix of blades or high-density servers and x86 in the same environment. Desai warns of the common mistakes made in capacity planning as virtualization usage is increased and offers ways to avoid them. Finally, he taps his own experiences with capacity planning and reveals best practices he uses everyday.

You can download the webcast for free (registration is required).