Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles
(untagged)

Joshua Trupin of MSDN: What .NET means to developers

0.00/5 (No votes)
23 Jan 2003 1  
Joshua Trupin talks about the past, present and future of .NET, and discusses its impact and its acceptance by the developer community.
Joshua Trupin is the Executive Editor of MSDN Magazine. Josh was formerly an author, programmer and regular columnist for MSJ and Microsoft Internet Developer. He currently lives in New York city with his wife, two children, two dogs, and reportedly an estimated 1.4 million dust mites.

I caught up with Josh to get his perspective on how .NET has been faring so far, its influence on developers and his guess as to what the future may hold.

CodeProject: The official explanation of what .NET is, to many, a little lacking. How would you describe .NET and where do you see it most affecting everyday development?

Josh: The way I see it, the naming scheme itself is what’s created some confusion. Microsoft announced .NET, and they announced the .NET Framework, and they’re not identical terms. The part that we’re concerned with, the framework, is a set of concrete technical specifications – the CLR, the Framework Class Libraries, MSIL, and so on. “.NET” is also used as a marketing term for a group of products that use XML Web Services for interoperability.

Since this is a source of potential confusion, we try to make it clear in the magazine that we’re talking about the .NET Framework when it comes up. As for where it affects development, I don’t know many people who’ve used Visual Studio .NET for a while, then decided to go back to the pre-framework days. Our readers have told us that using the .NET Framework is much more intuitive and productive. I’ve written a couple of standalone applications, and for me, the difference was pretty striking. To take one simple example, I used to use the WebBrowser control to retrieve Internet content in batches, and it just didn’t work right. Now I can just use WebRequest and WebResponse, and I have confidence that it’s going to work without getting “stuck” all the time.

In turn, the ease of use of the Internet classes in particular is going to spark off hundreds of new ideas. Programmers can get past the plumbing phase more quickly and concentrate on the logic of their program.

CodeProject: From your experience with the development community and industry, how would you judge the reception to .NET so far? Do you see any one segment of the community or industry adopting it more than other segments? Which segment of the developer community do you feel has been left out of the party?

Josh: Starting at the July 2000 PDC and continuing through today, the reaction I’ve heard from developers is that .NET is at least as important an advance as the Win32 API was back in the early 1990s. I don’t think I’ve heard anyone who’s not an evangelical Java language partisan say that .NET is a poor idea. The biggest problem in its adoption so far has been its release in the middle of a lousy economy. I think that some companies just don’t have the startup resources for new projects right now. For developers who’ve committed, more or less, to Microsoft tools, .NET usage is at 50/50 or better and growing. One of the great things about the .NET Framework is that you can download the basics without paying for it, and you get a C# and a Visual Basic .NET command-line compiler. Without any initial outlay, individuals can grab a couple of samples off GotDotNet or CodeProject, compile them, and start playing around.

CodeProject: What is your opinion on the decision to combine all development environments (Web, desktop, VB, C++) into the one IDE? How have developers reacted?

Josh: I think there was some initial resistance to the idea, especially in the Visual Basic community. Some of that was born from changes in the language itself; some people felt like they were being dragged along. In over two years, we haven’t received any letters from people who were upset about the IDE, beyond the standard version complaints about where menu options had gone to.

As a concept, it makes sense to combine programming languages into a single IDE. There’s a lot of reusability benefit. Programmers can learn programming instead of multiple IDEs. It’s easier for Microsoft to engineer a single codebase. At this point, it’s a non-issue for most users.

CodeProject: Are the changes in the IDE and the traditional Windows development languages too much as some complain, or is it simply a reaction against change and the traditional antagonism between developers from different tribes?

Josh: Although C++ was the first language I used professionally, I’ve been a strong proponent and user of Visual Basic from the pre-1.0 “Days of Thunder”. And I’ll admit, I do miss Visual Basic 6.0 a little. I keep it on my dev machine, but I only use it for project maintenance now. I use Visual Basic .NET for all my new development.

CodeProject: If you could change the way Microsoft had introduced .NET and VS.NET to the community, what would you suggest be been done differently?

Josh: Many people think it would’ve been helpful to maintain source-code compatibility between Visual Basic 6.0 and Visual Basic .NET. I understand these sentiments completely, but the mere thought of trying to implement that while advancing the language is just mind-boggling. If you look back, things haven’t been kept completely compatible in the past. I found a Visual Basic 1.0 project on the Web a couple of years ago, and tried to open it in Visual Basic 6.0. It wouldn’t work – the project file format was changed at some point, and newer versions of Visual Basic no longer read older files.

As I mentioned earlier, the whole .NET vs. .NET Framework difference could’ve been differentiated in advance. We started to get “.NET Creep,” where products (from a number of companies) wanted to call themselves Something .NET because it sounded good for their next version. Microsoft could have emphasized better that you can develop desktop applications with the .NET Framework – a lot of the early talk was about Web Services and the types of applications that most people weren’t doing at the time.

I think that Microsoft did a lot of things right, though. Beta 2 was pretty stable, and lots of companies were able to deploy ASP.NET applications before the final code drop. The wide distribution of betas (in our magazine and elsewhere) got a lot of people excited about the new technology. And we really got to open up the magazine pretty quickly to serve lots of .NET Framework information. There’s so much in there that we’re still discovering new nooks and crannies to cover every month.

CodeProject: Do you think that .NET and VS.NET will encourage more developers to move over to Microsoft products, or do you think there is a danger that developers may have been alienated?

Josh: Initial reports from the field have been positive. I’ve spoken with traditional tools vendors who are discovering that almost all new product requests are .NET-related. There are three types of developers I can see. There are the long-term loyal Microsoft customers who’ve invested a lot of time and effort into getting the most out of Microsoft tools, there are the devs who’ve made it their life’s quest to show that all features in all Microsoft tools are inherently evil, and there are the pragmatists who want to get their work done. We do our best to serve the first and third groups with the magazine, and we understand that there’s no value in arguing with people who hold the second worldview. It doesn’t help us, it doesn’t help them, and it doesn’t help our customers.

It’s our duty to help our customers by listening to them, providing them all the information they need, when they need it, in the form they want it, and do it without taking unnecessary shots at competitors. The developer audience is unique in their ability to detect that one part per million of marketing and tactical spin; it’s not what they’re looking for when they come to us for help doing their work. I think that MSDN Magazine, and everyone who works for the larger MSDN umbrella, are truly committed to helping the developer with straightforward information, and that’s the best way to keep users from feeling alienated.

CodeProject: We've already seen the first fork in the VS.NET tree - namely the WebMatrix. Do you think that other features of VS.NET will be split out into separate apps much like the days of yore, or is this simply the symptom of a worthy product still finding its feet?

Josh: I don’t see the product splitting back up, since it’s just been assembled! There will always be tools like WebMatrix that provide alternate ways for people to do their jobs most efficiently. I can see Visual Studio .NET extending in other ways we can only guess at right now. The Visual Studio roadmap for the next three releases looks extremely interesting, however. The version after Visual Studio .NET 2003 will be integrated with SQL Server and will let you write code for Microsoft Office. After that, there’s a version planned for Longhorn, which in many ways will be as revolutionary as the .NET Framework itself was – managed interfaces will eventually be the core of the operating system itself, not just a feature.

I’ve been working for MSDN Magazine (and before that MSJ and MIND) as an editor since 1996, and I wrote for MSJ for four years before that. I can truly say that this is the most exciting time for developers – there’s so much innovation going on right now, and the tools and hardware are really getting fun to use. There are applications I could only dream of creating ten years ago that are now just a few mouse clicks away.

CodeProject: Before .NET, aspiring web developers had a reasonably simple time writing apps using VBScript and ASP. Do you feel that ASP.NET, with its initially daunting programming model, object oriented languages and development model, and the necessity to use VS.NET or WebMatrix for development will scare away new Web developers, and instead encourage them to take up PHP or JSP?

Josh: I don’t see that much of a problem with the new programming model in ASP.NET, if you’re using a tool to generate the code. When I first took a shot at ASP programming a few years ago, it took me a while to get mentally acclimated to the model, because it wasn’t what I was used to. It felt more like a batch language or QBasic – the statements had to go in order, one after the next. Sure, it was easy to drop into Notepad and write a quick little page, but doing it by hand isn’t the optimal situation for a project of any weight. Trying to connect to a database was a tedious chore, and doing simple tasks like capturing a redirected Web page needed a separate tool like ASPTear, which had to be found, downloaded, added to the registry, then declared by hand within code. The ease of doing tasks like this in ASP.NET more than makes up for the loss of “simplicity”, which really served to make many simple tasks challenging.

CodeProject: What area of development do you feel will be the next Big Thing? 

Josh: I keep hoping that it’s going to be mobile development. I’ve been a big fan of Windows CE for years – I keep a sample GPS program updated, and I just converted it to the Compact Framework and presented it at ASP.NET Connections in Orlando.

I think that the proliferation of wireless networking is very, very promising. If you get 802.11 or Bluetooth built into most handhelds, it’ll finally start to snowball. The market for these devices (and other devices like cell phones and even watches) is still ripe for expansion. Look at the popularity of something as simple as SMS in Europe. People will pay a few cents to be able to use dumbed-down instant messaging, and those cents add up quickly.

CodeProject: What do you see as the long term future for the .NET Framework?

Josh: The long-term future is going to start with Longhorn and the inclusion of the framework in the operating system’s core. I think that it’s great (and important) that the Compact Framework is coming out with 12% of the full framework’s footprint. Imagine that shrunk down even more, until we have .NET Framework for wristwatches. (This isn’t just dreaming, either – we’re about to see watches that store contacts from a Palm.) The fact that Rotor is working on FreeBSD and Mac OS X is another interesting development.

If I said that .NET would someday be in our clock radios, everyone reading this would roll their eyes. But look at how music has evolved over the past five years. Back in 1997, I thought it was exciting that I could burn a CD with my favorite songs on it. Now, I commute with a 20 GB MP3 player that holds a couple hundred of my favorite albums, from the Boo Radleys to the Divine Comedy. (It even lets me capture and watch video and JPEGs.) I don’t have to choose 10 CDs to lug into work anymore, and the player is smaller than the cassette players I see others using.

So suppose I wanted to listen to a different MP3 every morning to wake me up. There’s no reason not to make an alarm clock with a USB port and a four-line LCD screen on top and a 64 MB memory chip inside. That’s all you need for that particular device, and you could produce them now for a few dollars (and sell them in an airline’s sky catalog for $299). If you look at any gadget catalog now, you’ll see lots of these specialized products, and there’s no reason you can’t create a small version of the .NET Framework that will make them programmable in some way. I just wish I’d gone for an EE degree, but it seemed so boring back then.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here