.Net is real

By Cameron Laird and Kathryn Soraiz, Unix Insider |  Development Add a new comment

Microsoft's .Net initiative began to crystallize in the late 1990s. It was designed to solve several widespread Windows-generated exasperations: DLL (dynamic link library) hell, the complexity of installing and uninstalling software, and the fragility of proprietary configuration. To eliminate these problems, Redmond decided to add another layer of indirection while implementing interoperability through XML (Extensible Markup Language). According to Dick Hardt, founder of the ActiveState Tool Corporation, Microsoft has scripted the indirection and data transparency well enough that ".Net removes all the configuration issues and complexity with ActiveX and COM [Component Object Model]." At the same time, .Net has better performance than COM.


Of course, Microsoft has a history of making grand promises for its products and then not delivering on them. We're not certain that .Net's fate will be better, but early indications are promising.


".Net is about programmer productivity," Hardt says. We're struck by how much .Net is an elaboration of scripting technologies. Scripting has to do with effective patterns of generalization -- using the computer to automate solutions. Also, as Microsoft CEO and president Steve Ballmer aptly puts it, "The world is going more decentralized." These are precisely the ideas .Net exploits.


VS gets you to IL

.Net applications run both a runtime framework and an intermediate language (IL) execution engine; the latter performs just-in-time (JIT) compilation. IL appears to have as much power and flexibility as developers currently need, with working code generated for C, BASIC, COBOL, Perl, and Python. Different languages share the common language runtime (CLR), but in a manageable way. While DLLs easily fall into conflict with Windows systems, single .Net applications can incorporate multiple versions of a single DLL. The release of .Net should mark the end of the DLL conflicts that plague so many Windows desktops.


This means that, under .Net, the installation of software consists of copying a single executable file image -- no reboot required! Applications and DLLs include metadata that suffices for the resolution all interdependencies. There is even a standard mechanism for network retrieval of undefined or updated components. The same mechanism provides the opportunity for performance specializations: particular DLLs can be optimized for MMX-savvy chips or multiprocessing hosts, and will still follow generic instructions for the majority of installations.


Though Microsoft at the moment has terrible problems with the security of its software, .Net specifies a signature verification mechanism that promises "security granularity down to the method," according to Hardt.


Regular Expressions readers know how fond we are of anything that moves end users away from dealing with the details of installation -- the registry, datatypes, versioning, and other matters that computers ought to manage. .Net doesn't just eliminate the registry and open all metadata to plain-text introspection; it does all this with full cross-language integration and interoperability. IL provides for proper object inheritance expressible in any popular computing language.


The golden chain Microsoft has designed for developers is Visual Studio 7 (VS). VS fully unifies not only Visual Basic, Visual C++, and Visual InterDev, but ActiveState, Perl, and Python. VS defines the fundamental framework for development of .Net applications. The clever compilation of IL and .Net's excellent design appear to be yielding performance superior to that of COM-based applications.


Does this mean VS will become as necessary to developers as Windows and Office have been to conventional desktop users? It appears that .Net's fundamentals will be documented better than COM ever has been, so competition to VS will be more feasible on a technical level than it has been for the more closed products. On the other hand, if VS releases are of adequate quality, many developers will agree with Hardt when he says that "Microsoft has done a good job of advancing the base technology of what a modern OS needs to provide and improve."


Really real

Let's review the status of .Net's core pieces. SOAP exists now and has been reasonably well understood for many months. As of yet, there are virtually no shrink-wrapped applications that exploit SOAP in the way that Microsoft says will become natural once the Web replaces the desktop as the foundation of programming. Microsoft demonstrations raise security questions more than they excite prospective customers.


On the other hand, SOAP 1.1 answers some of those questions.

    Add a comment

    Post a comment using one of these accounts
    Or join now
    At least 6 characters

    Note: Comment will appear soon after you have activated your account.
    Obscene/spam comments will be removed and accounts suspended.
    The information you submit is subject to our Privacy Policy and Terms of Service.

    ITworld LIVE

    DevelopmentWhite Papers & Webcasts

    White Paper

    HP NonStop SQL Fundamentals whitepaper

    This whitepaper offers a detailed look into the fundamentals of HP NonStop SQL solutions. See how this system delivers unprecedented levels of application availability with fail-safe data integrity and meets the needs of enterprises with large-scale business critical applications.

    White Paper

    Nebraska Medical Center case study

    See how the Nebraska Medical Center implemented a SQL solution to make information more readily available to streamline operations, improve patient care and facilitate medical research with an enterprise solution running on HP NonStop servers.

    White Paper

    Concepts of NonStop SQL/MX

    For DBAs and developers who are familiar with Oracle solutions and want to learn about NonStop SQL/MX, this whitepaper provides an overview of the similarities and differences between the two products-with a specific focus on implementation.

    White Paper

    6 Things Your CIO Needs to Know About Requirements

    If your organization is not predictably successful on technology projects, there is likely an issue in requirements. CIOs must take action and own requirements maturity improvement. There are 6 main things a CIO must know about requirements.

    Webcast On Demand

    User Experience Monitoring

    In this webinar, you will learn hints & tips for improving end-user response times from Forrester Research analyst, Jean-Pierre Garbani.

    Sponsor: Nimsoft

    See more White Papers | Webcasts

    Ask a question

    Ask a Question