Dr. Dobb's is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Channels ▼

Web Development

The Current Windows Ecosystem

The Windows third-party developer ecosystem, carefully cultivated by Microsoft, has long been one of the most vibrant communities of its kind, adding value and innovation to the core Windows platform. Trusted third-party components can speed the development process, cut costs, and ultimately make the difference between project success and failure.

Windows is so pervasive in the technology industry that it’s likely almost every commercial developer has done some sort of Windows development at one point in time. Through the years, third-party tools, frameworks, and libraries have blossomed around the popular Windows-based technologies of the day. Today, it’s blossoming again around Silverlight and the cloud. Other areas of the Windows ecosystem include application design and code generation (IBM’s Rational, for example), SharePoint tools, SQL Server modeling and development tools, and Windows server management. Tools help make developers successful, and Microsoft itself, by design, is far from the only vendor for native Windows application development. Let’s explore this in greater detail.

Widget Libraries

Microsoft has always been a leader in user interface design, often creating Windows widgets (called Controls) for its products, then making them available to developers through the Windows Software Development Kit. Examples are the toolbar, with its associated tooltips and, more recently, the Ribbon interface. However, with special support for native custom Windows control and ActiveX control development, Microsoft also has fostered a third-party Windows widget ecosystem.

Early vendors such as Sheridan (acquired by Infragistics) offered specialized custom Windows controls. These widget libraries helped fill niches, target specific industries, and plug gaps in Windows’ own toolkit. This meant that Microsoft wouldn’t need to bear the burden of providing all of these widgets and controls, and third-party application developers were offered options through the very ecosystem that they were a part of.

This ecosystem has grown beyond single UI-based solutions and now extends to full libraries. The Boost C++ Libraries, which support the C++ Standard Template Library and other up-to-date C++ standards on Windows, is an example. In addition, communities such as Codeguru.com have grown to provide an avenue for developers to offer their libraries for all facets of Windows development to other developers within the ecosystem. This includes enhancements to the .Net framework, Windows Presentation Foundation (WPF), the Windows Phone 7 Software Development Kit, and Silverlight.

The Open Source Question

Microsoft has resisted the open source movement in terms of its crown jewels: Windows and the Office suite. Even Visual Studio has remained closed with commercial licensing, though the relatively limited Express edition is available free of charge.

This doesn’t mean that open source tools, compilers, and IDEs don’t exist for Windows. IBM’s Lee Nackman claims that the open source Eclipse IDE, along with the choice of name, was created to target Microsoft and, specifically, Visual Studio. Eclipse is known as a Java development environment, but combined with other open source frameworks, it supports native Windows application development. For example, the Minimalist GNU for Windows (MinGW) proj ect provides a complete framework and set of open source tools for native Windows development. It contains no commercial libraries, but fully supports and depends on Microsoft’s own libraries, such as the MSVCRT.DLL CRuntime for Windows.

Microsoft’s decision to make the runtime easily accessible in this form was intentional, and it has allowed for the further growth of the developer ecosystem. As a result, Microsoft can boast support for open source Windows application development without having to release and support its own software with open source licensing.

Regardless of how you feel about Microsoft’s strategy, it does result in a win-win scenario for both Microsoft and developers who want open source tools. For developers, the resulting open source market for tool and IDEs has lowered the entry costs for Windows development, increased mindshare among students, and cultivated startups around Microsoft technologies. The result is quicker and cheaper market solutions for third-party developers and an increase in Windows-based technologies being deployed in data centers.

Related Reading

More Insights

Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.