For those MSDN Universal (update: ALL) subscribers who aren’t at Tech·Ed 2004 in San Diego, you can now download the Visual Studio 2005 Community Technology Preview May 2004 from MSDN Subscriber Downloads. The 32-bit edition weighs in at 2.53GB, while the 64-bit edition (yes, that’s right…the 64-bit edition) is a hefty 3.32GB of pure goodness. Both are provided as DVD ISO images. If you don’t have a DVD burner, you can use a tool like Undisker to open and extract the files directly.
This technology preview contains our just-announced Visual Studio 2005 Team System. It’s an exciting set of technologies that I’ll post about later. Start your downloads now!
Update: Andy Boyd (Microsoft) informs me that all MSDN Subscription levels can now download the bits.
I read Coder to Developer (by Mike Gunderloy) this weekend, and overall, I think it’s a good book for someone who has worked on smaller software projects and is interested in putting a little more rigor into their development process. The book discusses the non-coding aspects of producing software, from early discovery and project estimation to creating the final installation package. Among the topics Mike covers are: requirements, project tracking, methodology choice, architecture, design patterns, source code control, defensive coding tactics, unit testing, Test-Driven Development, refactoring, Visual Studio .NET customization and extension, FxCop, code generation, risk management, application logging, working with small and distributed teams, developing a build process, continuous integration, IP protection, and installation.
If you think this is a lot of material to cover in 288 pages, you’re right. Although it can seem like Mike is glossing over some detail at times, for the most part, he goes just deep enough in each section to provide a good introduction to each topic. The end result is a book that gives a quick overview of many current development practices and techniques. Mike mentions and gives his impressions on a number of utilities throughout the book, and a few of his recommendations already look like tools I’ll be using on current and future projects. He also maintains a web site with links to a lot of the tools he discusses in the book.
In short, although some of the tool suggestions many become dated over time, it's a solid book for anyone who wants to appreciate the current .NET development landscape, and it's a great way to familiarize yourself with techniques that will improve software quality and predictability. And it's a bargain at only $29.99.
The book reminds me of The Pragmatic Programmer by Andrew Hunt and David Thomas, another worthwhile read that focuses on issues larger than just coding skills.
Alex Papadimoulis has created a plug-in for Visual Studio .NET called Smart Paster. From his description:
I don't know about you guys (and gals), but I often find myself pasting large string literals (SQL queries or dialogs) into code. It started to become quite a hassle to fire up EditPlus, paste, replace line breaks with quote characters, copy, and paste it into Visual Studio. So, I put together an add-in to help with this task and called it Smart Paster.
Download it here.
Update: Alex informs me that version 1.1 is now available.
A recent posting at Alan Cooper’s site talks about Designing Products for Offshore Development. It isn’t an in-depth article, but it does touch on some of the challenges that are faced when working with a disperse team whose culture, language, and time zone have a direct influence on the quality of communication within a project. The project I’ve been working on for the past year-and-a-half has leveraged offshore resources with some success. We’ve been very diligent about remaining in contact with the offshore team, and we’ve tried to be very explicit about our design and quality assurance requirements. That said, I would agree that communication has sometimes presented a challenge, and it’s something that needs to be closely watched.
Martin Fowler has also posted some good advice on Using an Agile Software Process with Offshore Development. We’ve found automated continuous integration to be a huge benefit when working with an offshore development team (of course, it has huge payoffs for any development team). Knowing that your source is in a healthy and buildable state at any given time makes it easier to leave the office at 5:00pm EST knowing that your resources in India (or wherever) won’t have any integration challenges when they “get latest” to begin their work day. If you haven’t tried continuous integration yet, I’d encourage you to give it a spin. We’ve been using CruiseControl.NET, although Draco.NET is another tool that is often recommended.
There’s a new .NET Show on Longhorn Avalon:
In this episode of the .NET Show David Ornstein and Pablo Fernicola discuss the purpose and benefits of the new graphical model for Longhorn. Later, Rob Relyea and Nathan Dunlap walk through some source code to show how the use of XAML in writing user interfaces for applications can create a better collaboration between designers and programmers.