Microsoft Technical Fellow Anders Hejlsbergis spending most of his time and energy on C# 4.0, the next release of the programming language he invented. But Hejlsberg also is thinking ahead to some new programming concepts and models,that will affect Microsoft's future directions in the developer space.
I've launched this series -- "Microsoft Big Brains" -- to help remedy that shortcoming. In the coming weeks, I am hoping to profile as many of the company's tech fellows as to whom I can get access.
Microsoft's Technical Fellows came to the company via a variety of different routes. Some of them run divisions inside the company; some focus on particularly thorny technical issues that may span a variety of product units. Regardless of where they sit in the organization, the fellows all have been charged with helping Microsoft craft its next-gen products and strategies, much the way that Gates used his regular "Think Weeks" to prioritize what Microsoft needed to do next.
This Week's 'Big Brain': Anders Hejlsberg
Claim to Fame: The inventor of the C# programming language ("and the steward of it for about ten years now")
How Long You've Been With Microsoft: 12 years
More About You: Before joining Microsoft, was one of the original employees of Borland, where he authored Turbo Pascal. (He also was the chief architect of its successor, Delphi.) At Microsoft, was key in helping create the .Net Framework, Visual J++ and the Windows Foundation Classes.
Your Biggest Accomplishment (So Far) at Microsoft: "It's been satisfying to be at the right place at the right time to create an important part of our development infrastructure."
Team(s) You Also Work With: Still working daily with the C# and .Net teams, as well as various groups within the Connected Systems Division (which is "building a whole infrastructure on top of .Net"), SQL Server and Microsoft Research.
Why Stay at Microsoft? "I love working with smart people and being challenged. I also like working on stuff that's relevant. That's my adrenaline shot."
Technical Fellow Anders Hejlsberg is a guy who likes to see his projects through.
Currently, Hejlsberg is very focused at the moment on the next version of C#, known as C# 4.0. He is still the Chief Architect in charge of the product.
Microsoft shared a first tech preview build of C# 4.0 in late October. On the C# 4.0 new features list: Dynamic look-up; better COM interoperability; and more. And because language taxonomies are dying out, Hejlsberg said it's not strange that C# 4.0 will borrow from and be heavily influenced by dynamic languages. (C# 3.0 was more influenced by functional programming languages.)
His C# focus aside, Hejlsberg also is thinking ahead about bigger programming trends and technologies beyond his beloved C#. One of these is the concept of "metaprogramming."
"Metaprograms are programs that manipulate themselves or other programs as data," Hejlsberg explained. "They automate the act of programming and are closely aligned with DSLs (Domain-Specific Languages). Code generation is the poor man's term for this, but it really doesn't do it justice."
Everything from Ruby on Rails, to Microsoft's Oslo with its M language, to some of the code generators in LINQ to SQL, are examples of metaprograms, Hejlsberg said.
In spite of the "as a service" tag, compiler as a service doesn't mean turning a compiler into a hosted service. Hejlsberg explained the concept further:
"We need to open up the black box that is a compiler today. What if you could put APIs (appliction programming interfaces) on it and ask it to compile code for you."
Unlike some of Microsoft Technical Fellows, Hejlsberg isn't in charge of managing a team.
"I have no people reporting to me and don't expect to. My competency is in the tech realm. I work day-to-day on C# and .Net, and work at home two days a week so I can do deep thinking, writing and reflecting," Hejlsberg said.
The broader programming-language trend, of which Hejlsberg's projects and interests are all part, is making programming and programmers more productive, he said.
"This tends to be the undercurrent of all my work: How to do more with less," Hejlsberg said.