Just Add Water
By Elden Nelson
I don't think I've written an application from scratch, top-to-bottom, since college. Or maybe not since high school. I'd much rather spend a little time and find someone else's code that does what I need - or close to what I need - and make it my own. And I'm betting that because you're reading this magazine, where we make a big fuss about the fact that we give you lots of working code, you're not opposed to adapting code to your own purposes, either.
Well, you and I now have a lot of great new ingredients to work with as we make our ASP.NET cakes. Microsoft is assembling five ASP.NET Starter Kits - free downloads that should make creating some of the most common Web apps a much simpler task (http://www.asp.net/starterkits). And asp.netPRO will take you inside these kits, showing you how to use them, tweak them, and where the good stuff is.
What's in the Kits?
According to Shawn Nandi, Microsoft's ASP.NET product manager, "The ASP.NET Starter Kits are designed to help developers kick-start their projects by delivering a solid base of code to build on." There are five of these kits, each addressing one of the most common ASP.NET development projects. Each has both inline and code-behind versions available. Here's a quick overview of what these kits are and do:
- Community: The Community Starter Kit lets you quickly create a community Web site such as a user group site, a developer resource site, or a news site. Nandi notes that you can use this Starter Kit as "a basic working community site out of the box - no coding required." It will let you maintain nine different content types including articles, events, links, downloads, a photo gallery, and more.
- Portal: This one will be familiar to anyone who's visited IBuySpy (http://www.ibuyspy.com). In addition to Web-based administration and content management, the portal also is easy to extend. It's not a bad place to start learning how to put ASP.NET and the .NET Framework to work, whether for an Internet/intranet portal or as a base for your own ASP.NET applications.
- Time Tracker: This line-of-business application lets you track how much time you've put into projects. It also lets project managers track the status of projects they manage by viewing users' time entries as well as create detailed reports for those time entries. As you dig into this app, you'll see a real-world example of globalization, charting with GDI+, mobile Web forms, and role-based security using a custom principal for role authorization.
- Reports: This Starter Kit is a guide for creating and publishing customizable Web reports using ASP.NET. Using eight samples, the Reports Starter Kit presents functional online reports and their printer-friendly equivalents. Expect to see good examples of displaying relational data, DataGrid paging and sorting, and server control nesting.
- Commerce: Here's another one that might give you a sense of d j vu. Based on the IBuySpy storefront, the Commerce Starter Kit demonstrates basic online shopping tasks, including a product catalog, user authentication and personalization, shopping baskets, and order checkout.
Get More With asp.netPRO
By themselves, the Starter Kits are very useful - no doubt about that. Starting in the June 2003 issue of asp.netPRO, though, we're going to make them even more helpful. Even now, we're dissecting the Starter Kits, looking at how they work, finding the best parts, and seeing how you can take parts of these apps and use them in whole different ways. We'll also show you how you can extend them, customizing them for your own needs. Issue by issue, we'll show you how to squeeze every last drop of useful code out of these apps.
Are these Starter Kits something you can use? Should Microsoft be working on additional Starter Kits? Tell me what you think. Send me e-mail at [email protected].
Elden Nelson is editor-in-chief of asp.netPRO and its companion e-newsletter, asp.netNOW.
Tell us what you think! Please send any comments about this article to [email protected]. Please include the article title and author.