Close
  • Latest News
  • Artificial Intelligence
  • Video
  • Big Data and Analytics
  • Cloud
  • Networking
  • Cybersecurity
  • Applications
  • IT Management
  • Storage
  • Sponsored
  • Mobile
  • Small Business
  • Development
  • Database
  • Servers
  • Android
  • Apple
  • Innovation
  • Blogs
  • PC Hardware
  • Reviews
  • Search Engines
  • Virtualization
Read Down
Sign in
Close
Welcome!Log into your account
Forgot your password?
Read Down
Password recovery
Recover your password
Close
Search
Logo
Subscribe
Logo
  • Latest News
  • Artificial Intelligence
  • Video
  • Big Data and Analytics
  • Cloud
  • Networking
  • Cybersecurity
  • Applications
  • IT Management
  • Storage
  • Sponsored
  • Mobile
  • Small Business
  • Development
  • Database
  • Servers
  • Android
  • Apple
  • Innovation
  • Blogs
  • PC Hardware
  • Reviews
  • Search Engines
  • Virtualization
More
    Subscribe
    Home Development
    • Development

    Whats Next for Next-Generation Apps

    Written by

    eWEEK EDITORS
    Published December 12, 2005
    Share
    Facebook
    Twitter
    Linkedin

      eWEEK content and product recommendations are editorially independent. We may make money when you click on links to our partners. Learn More.

      Don Box is an architect assigned to the “indigo” project at Microsoft Corp., where he is working on next-generation Web services protocols and plumbing. Box recently spoke with eWEEK Senior Editor Darryl K. Taft about upcoming technologies from the Redmond, Wash., company such as the Language Integrated Query project, Windows Workflow Foundation and Windows Communication Foundation (aka Indigo).

      What do you see as the most interesting technology in your space?

      I think the Windows Workflow Foundation stuff is the most interesting thing in my space. We call it “dub, dub, F” because its so long to say. We did a lot of work in Indigo since the last PDC [Professional Developers Conference].

      If I look at the division I work in, were basically shipping another round of Indigo and getting ready to call it done. Weve been listening to people telling us what they like and where we suck. And were trying not to suck.

      I think people are excited about the fact they can take a single Indigo program and, through declarative configuration, without recompiling the code, add all these new protocols, like JSON [JavaScript Object Notation] that the AJAX [Asynchronous Java and XML] gives you, or POX [Plain Old XML] or REST [Representational State Transfer] or any of that stuff. So thats actually really good and not a lot of effort on our side because the architecture was already built to be extensible. So, we just needed to exploit that a little bit. I think the WWF stuff is going to just completely melt peoples minds.

      Whats the concern some people have about “WSDL [Web Services Description Language] first” or “contract first” development and whether Microsoft supports it?

      Lets take a step back. Indigo is based on contracts. We take contracts very seriously. The contract system, for me, is the heart of Indigo. Now the contract can have many representations. We need an in-memory rep so that we can load it into the CLR [Common Language Runtime] and do something with it. The question is how we externalize that stuff, like how do we put it in a text file and share the text file.

      There are basically two ways that we support with full fidelity, first class to all the contracts in Indigo: You can write WSDL or you can write annotated C# or VB.Net—annotated CLR-friendly languages. We dont care which one you do; it doesnt really matter to us. [None] of those is the native format we use in Indigo. We shred [the code] into something thats highly optimized for the way our system works.

      But we take the data from either side—you can mark up your code, or you can mark up your markup. We dont really care.

      If I were an enterprise architect and I had to write a bunch of contracts, Id write in a dialect of XML vocabulary that was fairly close to my world … and then write the transforms to spit out the WSDL and whatever else I needed to make my platform of choice run. If its Indigo, Im going to spit out those annotated C# files.

      If its Java, Im going to spit out annotated Java files. You could use WSDL as the source material to generate that stuff, which is the mentality a lot of people have. The problem is its just not the best way to go.

      Next Page: Questions and skepticism.

      Questions and Skepticism

      Why is the perception out there that you guys dont support it?

      I think its because of the way people demo it. Its not our job to give people a religion. Its not our job to tell people this is the right way or this is the wrong way. Its not my job to convert people; its my job to ship software that people want to use.

      Speaking of religious issues, you came out a bit skeptical about JBI [Java Business Integration]. What was that all about?

      It was not clear to me exactly what was going on. I looked at what JBI was, and, for me, it was like, “Wow, that looks kind of like what we did in Indigo.” However, when I talked to my friends in the Java community, they said they wanted to achieve the same things they wanted to achieve in Indigo, which was to have a single way to do messaging. The problem was, in my mind, its a little too “meta.”

      When we did Indigo, we basically said, “Were going to own the box. Were going to say, We know Windows programmers or .Net programmers want to program with messaging.” So we said, “Were going to figure out what the right way to program messaging is, and thats the way were going to do it.”

      /zimages/3/28571.gifClick here to read more about Microsofts progress with Indigo.

      And we will make sure that we have a clean message to the developer community about where were going and what were going to do. Specifically, the things we needed to look at around MSMQ [Microsoft Message Queuing] were a lot of infrastructure out there and a lot of programs.

      So we said, “Were going to make sure that the MSMQ API, which is specific to MSMQ, wasnt ready to be generalizable to JSON or POX or whatever.” So, well make sure that MSMQ developers have a clean path to get into the Indigo world. Thats the way its going to work. So, we just have one method, and we write these adapter thingies to spit them out as arbitrary formats.

      With JBI, I look and I think, “Man, how does that link to JMS [Java Message Service]? Do I need both? Do I want both?” It just wasnt clear to me. In some ways, as some Java guy termed it, it is basically a metacommunity. And I am at a point in my life where Id rather not go meta; Id rather just build the right thing and use the right thing. But thats where the Java community was. The user base seems pretty happy, even though IBM and BEA [Systems Inc.] arent jumping on yet. So its not for me to judge.

      When you made your blog post on this, you got a lot of responses. Did anything come back to change your thinking at all?

      Well, I was genuinely puzzled as to how to think about this for EJB [Enterprise JavaBeans] versus the servlet. For me, I look at the servlet architecture and API and say, That would not have been a horrible place to start.

      With EJB, theres a lot of “cruft” [a term for old, dusty code] and would maybe not be where I would go, but servlets didnt look so bad. Servlets have a non-HTTP-specific model—at least the last time I looked at them, before I worked at The Firm—that has a general notion of a request or a reply. Everybody knows it. And everybody who knows it, by the way, likes it a lot.

      So maybe if I ran the Java world, I wouldve generalized servlets a little bit more to satisfy some of these needs.

      But instead, its like, lets do yet another one of these “gimundo” architectures. And its yet another thing I have to have a security spec for because I have to secure it. I have to [know] how transactions relate. Its a lot of work.

      I cant say it sucks. It just may not have been the approach I wouldve taken.

      Next Page: The open-source world.

      The Open

      -Source World”>

      Whats your view on the open-source world taking this stuff on?

      I think its great! The more people we have thinking about hard problems, and maybe coming up with solutions, to me is strictly good.

      So you dont care about any IP [intellectual property] issues that might arise?

      There are people that care about the IP issues, and as a shareholder of Microsoft, I hope the right things happen. But just as a general technical guy, which is really the only way I know how to operate, I think its great that people are thinking about solving hard problems. I hope people are innovating and not doing other things.

      Well, how much work is yet to be done?

      Indigos going to ship. Its going to be next year. But we have so much work to do. I look at the WWF stuff, and that opens up so many things and makes me say, “If we knew then what we know now.” … Theres a lot of value left to add.

      So whats the next interesting thing beyond that?

      I think there are a lot of seeds of interesting stuff in WWF. So if you want to ask me what would be an interesting area to mine for directions, ideas, differentiators or new innovations, I think WWF is just a cauldron of interesting goop that both the community at large and [we] will figure out as we go along.

      The reason I find it interesting—just to be clear—is that we know at the heart of that system is the separation between code and declarative metadata.

      If all we did was LINQ and said all were going to do is ship LINQ and were not going to do anything else for five years, wed still be kicking ass. Its that good.

      I think theres a lot of fodder for innovation in the basic premise of WWF. The separation of opaque code from the transparent description, configuration, model or whatever you want to call it—that to me is the most interesting thing on the planet today.

      Thats a theme. Were doing it on the communications pillar side. But the presentation guys are using the exact same premise. We focus on the roles of the programmer and the business analysts. They look at the programmer and the designer. Its the exact same premise and almost the same technology stack.

      Are you saying WWF also supports model-driven development?

      Thats a fancy name for it. I just look at it as a pure programmer. What theyve done is embraced and celebrated the difference between the programmer and the person who uses the artifacts of the programmer. So writing those XAML [Extensible Application Markup Language] files that tie together the activities, and having the tooling support, is a really interesting story. Theyre going to have a great V1 [Version 1]; their V1 is really good. They own their own tooling, and its great. Its fantastic; it makes me tear up. The Indigo guys say, “How can we get one of those?”

      They have a general-purpose engine for taking XAML and code and wiring it up together and making it run. So we thought about what it would look like if we made some of that code Indigo code. I think the combination of the two is greater than either one alone.

      So, how does this make things easier for developers?

      One of the things we hear from people who want to use Indigo is: “I wish I had a model (and I dont mean the highfalutin model) where I could have parts of the service that I could change without having to bring in a high-priced developer. Id like to let the IT pro have a say and maybe be able to write declarative policy using the rules facility of WWF to do the authorization choices.” Or, “Id like to be able to make routing decisions based on business conditions.” WWF gives us a really nice palette to build out that kind of solution.

      Check out eWEEK.coms for Microsoft and Windows news, views and analysis.

      eWEEK EDITORS
      eWEEK EDITORS
      eWeek editors publish top thought leaders and leading experts in emerging technology across a wide variety of Enterprise B2B sectors. Our focus is providing actionable information for today’s technology decision makers.

      Get the Free Newsletter!

      Subscribe to Daily Tech Insider for top news, trends & analysis

      Get the Free Newsletter!

      Subscribe to Daily Tech Insider for top news, trends & analysis

      MOST POPULAR ARTICLES

      Artificial Intelligence

      9 Best AI 3D Generators You Need...

      Sam Rinko - June 25, 2024 0
      AI 3D Generators are powerful tools for many different industries. Discover the best AI 3D Generators, and learn which is best for your specific use case.
      Read more
      Cloud

      RingCentral Expands Its Collaboration Platform

      Zeus Kerravala - November 22, 2023 0
      RingCentral adds AI-enabled contact center and hybrid event products to its suite of collaboration services.
      Read more
      Artificial Intelligence

      8 Best AI Data Analytics Software &...

      Aminu Abdullahi - January 18, 2024 0
      Learn the top AI data analytics software to use. Compare AI data analytics solutions & features to make the best choice for your business.
      Read more
      Latest News

      Zeus Kerravala on Networking: Multicloud, 5G, and...

      James Maguire - December 16, 2022 0
      I spoke with Zeus Kerravala, industry analyst at ZK Research, about the rapid changes in enterprise networking, as tech advances and digital transformation prompt...
      Read more
      Video

      Datadog President Amit Agarwal on Trends in...

      James Maguire - November 11, 2022 0
      I spoke with Amit Agarwal, President of Datadog, about infrastructure observability, from current trends to key challenges to the future of this rapidly growing...
      Read more
      Logo

      eWeek has the latest technology news and analysis, buying guides, and product reviews for IT professionals and technology buyers. The site’s focus is on innovative solutions and covering in-depth technical content. eWeek stays on the cutting edge of technology news and IT trends through interviews and expert analysis. Gain insight from top innovators and thought leaders in the fields of IT, business, enterprise software, startups, and more.

      Facebook
      Linkedin
      RSS
      Twitter
      Youtube

      Advertisers

      Advertise with TechnologyAdvice on eWeek and our other IT-focused platforms.

      Advertise with Us

      Menu

      • About eWeek
      • Subscribe to our Newsletter
      • Latest News

      Our Brands

      • Privacy Policy
      • Terms
      • About
      • Contact
      • Advertise
      • Sitemap
      • California – Do Not Sell My Information

      Property of TechnologyAdvice.
      © 2024 TechnologyAdvice. All Rights Reserved

      Advertiser Disclosure: Some of the products that appear on this site are from companies from which TechnologyAdvice receives compensation. This compensation may impact how and where products appear on this site including, for example, the order in which they appear. TechnologyAdvice does not include all companies or all types of products available in the marketplace.