Visual Studio 2017 will be released on March, 7, 2017. The first version of Visual Studio was released in the year 1997: Visual Studio 97. Visual Studio celebrates 20 years. Of course I’ve used every single version of Visual Studio since then.
For me, Visual Studio is also connected to my book Professional C#. The first edition of Professional C# was released in the year 2001. What are some of the highlights and of these 20 years since I’m working with different versions of Visual Studio since 1997?
Before the first version of Visual Studio
I’ve used Microsoft developer tools long before the first version of Visual Studio. Visual C++ 1.5 was released in the year 1993, 2.0 and 4.0 in 1995. I used Visual C++ to create Windows applications using the Microsoft Foundation Classes (MFC), and COM components using the Active Template Library (ATL).
Visual Studio 97 (1997)
Visual Studio 97 included Visual C++ 5.0 and Visual InterDev. Visual InterDev was my tool of choice (instead of Microsoft FrontPage) to create Web applications. I’ve also used Visual J++ creating Java applications with delegates and events. Do you remember this product?
During that time I reviewed several C++ books – you can find my name listed as technical reviewer in books such as Professional ATL Programming from Richard Grimes, and Professional COM Applications with ATL from Panos Economopoulus.
Visual Studio 6.0 (1998)
With Visual Studio 6.0, Visual C++ 6.0 was released, and the last version of Visual J++. I’ve used Visual Basic 6.0 only occasionally, mainly for testing COM objects I created with Visual C++ 6.0. I think Visual Basic 6.0 is still in use with many companies nowadays, as the next version of Visual Basic was so different.
Visual Studio .NET (2002)
It took a long time for the next version of Visual Studio – from 1998 to 2002. The reason is obvious: .NET. .NET was announced in the year 2000 at the Professional Developers Conference (PDC) in Orlando, Florida, originally by the name Next Generation of Windows Services (NGWS). As huge as .NET was already in the beginning, it took some time for the release.
The shirt still fits. Speaking at Microsoft’s Developer Days I received a Visual Studio .NET shirt.
I was so impressed from .NET (which was originally known as NGWS (Next Generation of Windows Services), so I started writing books on my own. The first chapter I’ve written for a printed book was the chapter Assemblies. As Wrox received my first chapter, they asked me to write more, and I did. Professional C# was a book with multiple authors with Simon Robinson as the lead author.
My Assemblies chapter lasted in Professional C# until Professional C# 5.0 and .NET 4.5.1 – although it made it through many big changes. I kicked it out of the book with Professional C# 6.
The first edition of Professional C# was released in the year 2001 – with .NET available with Beta 2. The second edtion of Professional C# which already received some major updates was released with .NET 1.0 in the year 2002.
Because I’ve written just a few chapters for Professional C# (over time, more and more chapters were coming by me), I had time writing other books as well. Just check Beginning C#, Professional .NET Network Programming, Professional C# Web Services: Building .NET Web Services with ASP.NET and .NET Remoting, and ASP to ASP.NET Migration Handbook.
The first two books on .NET Remoting have been both from authors from Austria. I’ve written the .NET Remoting chapters in .NET Remoting and ASP.NET Web Services (Wrox Press), while Ingo Rammer wrote the book Advanced .NET Remoting for APress.
Visual Studio .NET 2003
Just one year after the release of Visual Studio .NET 2002, Visual Studio 2003 with .NET 1.1 was available, along with Professional C# 3rd Edition released in 2004. .NET 1.1 had minor updates, but big changes coming next. While .NET didn’t have that many changes, the book had it. The chapter count increased from 23 to 32 chapters, from 1223 to 1356 pages, and I was listed as 2nd author after Simon as the number of chapters I did increased that much.
With Visual Studio .NET 2003 I’ve also written my first single-author book, Enterprise Services with the .NET Framework for Addison Wesley. It seems like I can’t stop writing 😉
Visual Studio 2005
Generics have been introduced with .NET 2.0. This was a major change in the book, and the book title changed to Professional C# 2005. Starting with this edition, I changed to lead author of this great book.
With the book the chapters Generics, .NET Programming with SQL Server 2005, and Message Queuing have been added, and most of the chapters have been influenced by generics.
.NET 3.0 was another huge improvement with .NET – including Windows Presentation Foundation (WPF), Windows Communication Foundation (WCF), and Windows Workflow Foundation (WF). However, the tools were not ready. The next version of Visual Studio was not ready when .NET 4.0 was released. With Visual Studio 2005, preview tools could be installed and used to create WPF, WCF, and WF projects.
Because this huge change of .NET, Visual Studio 2005 resulted in two editions of the book. After Professional C# 2005 was released in the year 2005, Professional C# 2005 with .NET 3.0 was the next edition in the year 2007. This edition of the book enhanced to 45 chapters and 1800 pages – heavy! In addition to the new chapters Windows Presentation Foundation, Windows Communication Foundation, and Windows Workflow Foundation covering WPF, WCF, and WPF, the chapters ASP.NET AJAX, Windows Vista, and Language Integrated Query have been added. LINQ was added as preview to show what’s coming with C# 3.0 as the last chapter of the book. I was just wondering, but I really had this chapter completed for this edition of the book.
The tools for .NET 3.0 were not ready with the release of the framework. For Visual Studio 2005, preview versions of the tools were available. The tools for WPF, WCF, and WF have been released later on with Visual Studio 2008, when .NET 3.5 was available. This didn’t help with the adoption of these technologies in the 3.0 time-frame. I had a déjà vu when the .NET Core tools were only available as a preview for Visual Studio 2015 when .NET Core 1.0 was released.
Visual Studio 2008
Visual Studio 2008 included C# 3.0 and .NET 3.5 which meant LINQ with all the language extensions required for LINQ such as lambda expressions, extension methods, and more. The complete book Professional C# 2008 was influenced by these changes. The number of chapters (48 plus three appendices) and the page count (1848 pages) increased again. The chapter Language Integrated Query moved from chapter 45 to chapter 11 to add the syntax extensions to all the other chapters, and added the chapters LINQ to SQL, and LINQ to XML, Advanced WPF, Add-Ins, Visual Studio Tools for Office, Peer-to-Peer Networking, and Syndication. In the appendices, the chapter ADO.NET Entity Framework has been added. Entity Framework was not ready when .NET 3.5 was released, but it was included with .NET 3.5.1 later.
Visual Studio 2008 with C# 3.0 and .NET 3.5 resulted in a major rework of the book.
Visual Studio 2010
With the next edition we had to go down with the page count. 1848 pages was already too much. However, C# and .NET was extended again. With C#, the dynamic keyword was added with a few more smaller features needed for dynamic. .NET made a huge imporovement by adding the Task Parallel Library (TPL). It was not possible to increase the page count to 2500 pages. That’s why 10 chapters moved to a free Web download only. The book contained 47 printed chapters plus one appendix chapter, and 10 extra chapters for download.
A lot changed with the book, and the chapters Dynamic Language Extensions, Networking, Core XAML, Managed Extensibility Framework, ADO.NET Entity Framework, Data Services, Business Applications with WPF, Creating Documents with WPF, Silverlight, ASP.NET Dynamic Data and MVC (ASP.NET MVC 2), and the appendix with Guidelines for Windows 7 and Windows Server 2008 R2″ have been added to the book now titled Professional C# 4 and .NET 4. The threading chapter changed to *Threads, Tasks, and Synchronization and increased to 59 pages.
Silverlight made it only to a single edition of the book. There are some chapters with such a short-lived timeframe. Another one is the Add-Ins chapter covering the Microsoft AddIn Framework (MAF), System.AddIn. Instead of System.AddIn, the next edition of the book covered Microsoft Extensibility Framework (MEF).
2010 was the time when my publisher changed the book cover from pictures of the authors to something red. As I’m a fan of Formula 1, and this also is reflected in some code samples, the publisher agreed to having a red racing car, which is still the case up to today’s edition of the book.
Visual Studio 2012
2008-2010-2012: the two-year cycle of Visual Studio releases continued for another year. The next edition of my book changed the title back to Professional C# 2012 and .NET 4.5. The title was chosen from the publisher. C# 5.0 included support for asynchronous programming with the async and await keywords. The .NET Framework itself just received minor updates. The book however got an enhancement to cover the Windows Runtime and support to create Windows Store Apps with two new chapters. Also, the chapter from the previous edition ASP.NET Dynamic Data and MVC was splitted into two chapters ASP.NET MVC and ASP.NET Dynamic Data. ASP.NET MVC was now available with version 4.
I’m already working with early with all the editions of Visual Studio. Finding bugs, I report these to Microsoft. As a thank you I received Visual Studio cubes with several Visual Studio versions.
Visual Studio 2013
With Visual Studio 2013 the book received another edition. However, this time only minor updates have been done to the book. Creating Windows Store apps was enhanced with Windows Store Apps: Contracts and Devices, and the chapter ASP.NET Web API was new. Contrary to the previous editions of the book where always major rework has been done in nearly all chapters, this time the rework was kept very light to also support shorter cycles with the production of the book. Of course, errors were corrected.
Errors happen. The book goes through many cycles. I’m reading it several times, as well as technical reviewers, technical editors, production editors, copy editors, but some things are always missed. Also, technology changes faster than books can be printed. Nowadays I think the release cycle of books is not that important as an updated supporting Website for the book – and the new edition of the book has this with Supporting Website.
Visual Studio 2015
This time I didn’t complete the new edition of the book with the release of Visual Studio (Visual Studio 2015), but instead targeted the release of .NET Core 1.0. A major rework of the book was needed with Professional C# 6 and .NET Core 1.0 (2016). This really was a huge amount of work, and the first time I’ve been the only author of this big book. Many C# 6 language improvements made it through the complete book. Chapters were added: Testing, XML and JSON, Patterns with XAML Apps, Windows Apps: User Interfaces, Advanced Windows Apps, ASP.NET Core, Entity Framework Core, WebHooks and SignalR, and more. The book now contains 45 chapters and 1536 pages. And, as already mentioned, the book has now a supporting Website on GitHub where code updates and additional samples are added continuously.
Of course, what’s next is Visual Studio 2017. Some book chapters will be removed, new chapters will be added, and the chapters that stay in the book will receive updates. Besides teaching workshops and supporting my customers with coaching and consulting, speaking at conferences, and programming apps and services, I’m continuously writing 🙂
Looking forward to the next 20 years of Visual Studio and Professional C#.
In case you don’t own the book Professional C# 6 and .NET Core 1.0 yet, don’t wait for the next edtion, but get it now. I’m preparing downloadable PDF chapters for C# 7.0 and the new csproj project files, so you can use this edition of the book with Visual Studio 2017 easily. The next printed edition of the book could be out with the upcoming .NET Core 2.0.
Visual Studio 2017 will be released on March 7th, 2017. If you are in Vienna, Austria, join the .NET User Group Austria watching the live event at Microsoft Austria.
Have fun with programming and learning!
More information about the current edition of my book, and my workshops: