Recently I have had a chance to do something I haven't done in a long time and I had forgotten how much I enjoyed doing it - writing code! I have to admit it's been a while since I did any real software development and I was just a little bit rusty to start but I soon found I have a lot of help. Now I have managed development and architecture teams for years since then and occasionally I have paused to wonder if I could ever really go back or would even want to. So when a client of mine asked me to help them out and put together a quick call tracking / ticketing system it was with some hesitation that I agreed.
So where would I even start? I certainly hadn't done any recent development and in fact the last bit of code I had really written from scratch was some web site stuff in classic ASP but even that was pretty limited and I had relied heavily on my old school knowledge to get me through it. Naturally I turned to my vendor of choice for some help. My first stop was the Microsoft Developer Network web site and I quickly found what I was looking for - and at a price even I was happy with! The site is full of all kinds of information about Microsoft's development tools and preferred languages and includes links to blogs and community sites where you can find all kinds of good information and lots of startup code. But best of all Microsoft has created a FREE version of their popular Visual Studio development suite - Visual Studio Express. As its name implies there are some missing features but for the new developer or for someone that only occasionally needs a tool this is great.
Visual Studio Express comes in four flavors; Visual Basic, Visual C#, Visual C++ and Visual Web Developer. The first three are language specific and targeted for Windows Framework application development while the fourth is meant for creating web applications and allows you to code in C# or VB. Along with these 4 components there is the free SQL Server software called, not surprisingly, SQL Server Express. All of these tools are based on the current 2008 versions of their commercial counterparts Visual Studio 2008 and SQL Server 2008 but naturally have some limitations - for example the SQL Server Express only supports 1 processor, 1GB of memory and a maximum database size of 4GB, certainly enough for development and even small applications.
So naturally I dove in and quickly discovered that these tools were nothing like what I had used in my past. Sure I was familiar with the automatic generation of code stubs for forms and controls and I had even seen the Intellisense to some degree but once I started using all of this stuff I was amazed at just how fast things came together. For anyone not familiar with Intellisense it is the ultimate "sentence finisher". As soon as you begin typing it begins to prompt you with options and then filling in pieces of code that you will need. For example, it attempts to complete variable names for you or code segments such by automatically adding things like the "End If" statement for you whenever you start and "If" statement. And if you are like me and aren't really sure of what properties or methods can be used with which objects and when it will prompt you though that as well based on the type of object or function you are working with. Help like this was never around when I was coding for a living!
Anyway, I could go on for hours about all the cool things I rediscovered and how much fun and easy it is with the tools available today. For those of you that are looking to get into development or know someone who is I highly recommend checking out these fantastic tools. There are even toolkits for creating Facebook and Popfly applications not to mention complete open source starter kits for all kinds of typical applications. So go download these free products and start unleashing your creative powers!