Get All You Expect from the IDE
Of course, trying to write code in a text editor or piece together command line parameters to compile an application by hand can get fairly tedious. Development productivity increased dramatically when you code inside an integrated development environment (IDE) because the source code editor, debugger, compiler, and other helpful development tools are easily accessible and deigned to work seamlessly together from a single application. Microsoft offers Express editions of the Visual Studio IDE for building applications with C#, VB.NET, C++, J#, and Web application in ASP.NET. The Visual Studio Express editions are equipped with IntelliSense, graphical designers for building out application and Web-based forms, advanced debugging tools, and pretty much anything developers have come to expect from an IDE.
Next on the list of developer needs lies in the realm of data. You can get along with storing some information in an XML format, which the .NET platform supports extensively, but sometimes you need the power and data mining capabilities of a relational database. For the cost conscious developer, Microsoft offers SQL Server Express edition, a freely available, freely distributable, lightweight version of SQL Server 2005. SQL Server tightly integrates with the .NET Framework, whose native SQL Server drivers provide superior performance for all editions of SQL Server. Developers also have the added benefit of SQL Server Express Management Studio, an IDE that boosts productivity by simplifying the design, building, and management of databases.
On the Web front, Microsoft Internet Information Services (IIS) provides a complete Web application server platform for online development and ships standard with all versions of the latest Windows operating systems, not just Windows Server editions. It offers Web, ftp, and mail services for applications, but also boasts an extensibility model that allows for the addition of custom handlers for specific file types. One of the most popular extensions for IIS is ASP.NET, a Web application framework that allows developers to build Web applications and Web services using the .NET language of their choice. ASP.NET also simplifies the complexities of building additional IIS extensions and filters, which are normally written in C++. Aside from ASP.NET, there are a variety of other extensions including custom handlers for PHP, PERL, ASP 3.0, and even JSP, so you have the capability to run just about anything you want from IIS.
As you've seen, Microsoft has a wide array of tools available to get you started on a coding adventure, but all the supplies in the world won't do you a bit of good if you don't know how to use them. Somewhere along the line you need to either have someone educate you on their proper use or you need to figure it out for yourself, and training classes aren't cheap. Normally this relegates developers to scouring the Web in search of information, which can be exceptionally frustrating if you can't find what you need. Microsoft has spent many years and many millions of dollars compiling one of the most comprehensive knowledge bases in existence. The Microsoft Developer Network (MSDN) Website contains architectural overviews, detailed object models, design patterns, articles, tutorials, troubleshooting checklists, product documentation, technology selection guides, installation overviews, tools, developer forums, and blogs to support developers. Language and technology references are presented in a highly consistent format, providing a comfortable familiarity for developer regardless of the subject matter being sought.
Grows with You
Another question that you have to ask yourself when you venture out into the wild is what happens if you become wildly successful during your adventure? What do you do when you build the killer app that everyone wants or develop the Web application that everyone blogs about? When you stop being the hobbyist or the startup company and suddenly find yourself as a successful entrepreneur? Some companies smolder out as quickly as they sparked to life because they collapse under the weight of their own success. Microsoft understands that businesses grow and that products have to grow along with a business, which is why there are a variety of product editions designed to suit various business needs. Visual Studio Express may work well for a single developer, but when time is critical Visual Studio Professional editions offer a number of advantageous over its entry level sibling. And if you suddenly find yourself with a team of developers then Visual Studio Team Edition is there to help effectively share code and manage projects. SQL Server, Windows Server, MSDN, and other Microsoft technologies offer a variety of growth options for businesses looking to stick around for a while.
Microsoft Windows runs the majority of both business- and home-based desktops, so dismissing the Microsoft platform can mean dismissing an extremely large user base and possibly an extremely large revenue source. ISV NXT is a recent initiative by Microsoft to help software vendors interested in porting their software to the Microsoft platform reclaim this potential market. ISV Next is tasked with assisting vendors plan, execute, and launch an offering quickly and cost effectively. Vendors have the option of using the resources available through ISV NXT on their own, or partnering with an ISV NXT Delivery Partner who specializes in their particular area of need. Delivery Partners like Bit Rock and Spike Source, for example, specialize in packaging open source technologies along with an ISV's solution to create a single installation package that Windows users have come to expect. Other delivery partners focus on porting Web application, desktop application, and a variety of other specialized areas to meet your particular needs.
Whether you're a hobbyist out for a hike, or a mountaineer looking to scale the peak, Microsoft offers an exception development platform for open-source developers that can grow along with your needs. You can set off and conquer with the knowledge that you're backed by a solid technology offering, but also one that makes business sense and which is backed by a company who has a vested interest in seeing you succeed.
* This article was commissioned by and prepared for Microsoft Corporation. This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.