Microsoft's Jason Zander on Visual Studio and dynamic languages

By Scott M. Fulton, III | Published February 29, 2008, 10:10 AM

The mindsets of the dynamic language programmer and the classical, static language developer are practically different beasts. So can they share the same IDE? We spoke with the man in charge of what aims to be that one IDE, Visual Studio 2008.

Of the two dilemmas, one would probably prefer the type that Microsoft's newly appointed Visual Studio general manager Jason Zander faced this week, to the one facing the SQL Server team: holding a gala launch for a product that actually started shipping last November, as opposed to one that may end up shipping in July.

Zander is a veteran Microsoft developer, having been one of the few, original core developers of the Common Language Runtime that is now the heart of the .NET Framework. He spent eleven years championing that programming system up until last September, when he found himself promoted to a lead role with Visual Studio 2008 -- a product line he had actually been involved with before being moved to .NET over a decade ago.

Last Wednesday at the "Heroes Happen Here" gala launch party, Zander sat down with BetaNews firstly to celebrate the fact that Visual Studio was already well aloft, as launches were concerned, but then to discuss a multitude of topics in Zander's trademark explicit detail. One of them was dynamic languages -- specifically, the re-emergence of quick-and-dirty programming with pliable and embraceable dialects like IronRuby, IronPython, and the prolific D language -- and their newfound role as elements of Visual Studio programming.

But to begin, we touched on a development from Adobe that took place two days earlier: the release of its 1.0 edition of the AIR graphical Web development platform, Silverlight's principal nemesis.

SCOTT FULTON, BetaNews: Is there any kind of inherent advantage, is there more in terms of building a stand-alone, rich Web application that a developer can do with Silverlight and Visual Studio that he cannot accomplish today with AIR 1.0 and Flex Builder 3?

Microsoft General Manager for Visual Studio Developer Division, Jason Zander
Microsoft General Manager for Visual Studio Developer Division, Jason Zander
JASON ZANDER, General Manager, Visual Studio Developer Division, Microsoft: I think the big thing you're going to get with Silverlight...is the richest possible solution. Because sometimes the problem you can have with a solution that runs everywhere is, you're basically bringing yourself down to a common set of technologies. Your look-and-feel may or may not match the environment that you're in, things like that. So with Silverlight, we've really tried to make sure that you can take XAML and you can do that cross-platform, so you can use it on the desktop application itself. We give you .NET consistently across the board. Those are the key things that we're trying to concentrate on.

I think the interesting question on those other platforms is, do you want to really deeply take advantage of the platform you're running on, or do you want to have more like a box where your app is running? I use WPF [Windows Presentation Foundation], I can integrate directly with the coding system on Windows itself. I can integrate with Search, I can integrate with the local disk, very seamlessly because it's taking advantage of the operating system.

SCOTT FULTON: You've had the good fortune of being able to work with .NET Framework as well as Visual Studio, and you played a role in implementing dynamic languages.

JASON ZANDER: The dynamic language stuff, I started that about three years ago [when] I hired a guy named Jim Hugunin, who had done a compiler called IronPython. [At first], he had set out to prove why .NET was really bad [for dynamic] languages, but he's such a great, professional developer that by the time he actually went in and implemented it and did it the right way, he said, "Wow, this stuff's actually good!" and then I invited him to come out and meet with the team.

Since then, we took a bunch of those core components that Jim came up with -- [including] the Dynamic Language Runtime which is a layer that sits on top of the Common Language Runtime, [and which] makes it really easy to write dynamic languages -- and plugged them into the environment. We've done Ruby and Python so far.

SCOTT FULTON: We saw in the keynote, during the demos, the case for why Web application development needs its own studio, its own Expression aside from Visual Studio. With your experience in dynamic languages, and the differences in the mindset of somebody who is developing and coding essentially on the fly [and that of a static language programmer], is there a case where a DLR developer needs his own different toolset, maybe not so much Visual Studio but something like it, its own IDE?

JASON ZANDER: I think that Visual Studio has actually translated quite well. In fact, we have dynamic languages that plug in with Visual Studio. The normal artifacts of [developing programs] -- "I've got code, I want to do Intellisense, I want to debug it" -- all those things are very consistent for [both] dynamic and functional languages.

Now, I think with dynamic languages, typically what you're more used to is this kind of [mindset] where you want to go type in this chunk of code, execute it, see it run, in a kind of "continue-to-move" environment. Otherwise I could be typing stuff in, I could use EMACS for that if I wanted to. You could go old school if you want. I think with a dynamic language, you really want that interactivity: Type it in and see what happens, play with it, and keep going. We have that in Visual Studio as well; it's called the Immediate Window.

I do think there are some great trends with that, and you can actually do more in the environment going forward that would make that feel very comfortable for a dynamic language programmer. But beyond that, just as you can embed JavaScript -- which is a dynamic language -- inside of HTML, I think we're going to be able to do the same kind of thing, I think it'll be pretty consistent.

Next: Can Python break into PHP territory?

1 | 2 | Next Page →

Comments

View comments by with a score of at least

You may be interested to know that SapphireSteel Software has just released the first public alpha of the Ruby In Steel IDE for IronRuby (in Visual Studio 2008). The alpha version includes an IronRuby form designer, code coloring/folding, code formatting, project management and many other features. More features will be added as IronRuby continues to be developed. "Ruby In Steel Personal For IronRuby" will be released as free software. The alpha is available for immediate download here:

http://www.sapphiresteel...y-In-Steel-For-IronRuby

best wishes
Huw Collingbourne

SapphireSteel Software
Ruby and Rails In Visual Studio
http://www.sapphiresteel.com

Score: 0

|

A real beta process at work: Mozilla fires up Firefox 3.6 Beta 2

In the clearest sign yet that public input really does help the development process, a flurry of bug detections provoked Mozilla to release Beta 2 of the next Firefox.

Snow Leopard and Windows 7 still can't crack the netbook problem

Apple has killed Atom support in OS X 10.6.2 and Windows 7 Starter Edition is stripped of "basic" functionality.

Microsoft's Top 3 advances in Exchange Server 2010

The latest round of changes launched today will impact how admins deliver services to e-mail recipients, and how much companies will pay along the way.

Firefox turns five: Thanks for giving us a choice

Carmi Levy | Wide Angle Zoom: No longer the phoenix rising from the ashes, Mozilla has carried on more than just Netscape's legacy.

Kindle for PC opens in beta, underwhelms

Amazon has opened the beta of Kindle for PC, a companion to the Kindle, but little else.

European ministers approve watered-down 'neutral net' language

The latest provision in the EU's telecoms regulatory framework would let businesses cancel individuals' Internet access, if they go to court first.

It's the US vs. the EU over Oracle+Sun and the meaning of 'open source'

Now that the EU is a virtual country, the US Justice Dept. is taking a stand in favor of its view -- and against the EC's -- that MySQL will survive under Oracle.

Qualcomm: $1.3 billion Samsung licensing deal unrelated to fair trade violations

Samsung has come to a 15-year licensing deal with Qualcomm over 3G and 4G wireless technology.

Nokia's 'limited number' of recalled chargers exceeds 14 million

Today, the Finnish phone maker has begun a recall of mobile phone chargers that are a shock hazard.

Ubuntu 9.10 upgraders report frustration

For those Wine aficionados out there, beware of the remote possibility that your Linux system could be infected by Windows-seeking malware.

Supreme Court considers patentability of abstract methods today

Can software that executes a formula for a business process qualify for federal patents? An appeals court already said no, and inventors are making their case.