Advertisment

"Understand That Writing Scalable Code Is No joke"

author-image
DQI Bureau
New Update

Prasanth Viswanathan, President of Querisoft

Systems, a Pune-based application developer on NT, was also a member of the NT development

team in the early days. We touch base with him to find out more about NT, the development

platform.

Advertisment

You were in the early development

team for NT. What was the mandate for NT at that time? To what extent has that been

delivered? What is missing?




Very few companies around the world would undertake building an operating system platform
from scratch. Microsoft has the wherewithal to not only begin building a Mac-based

micro-kernel architecture but also support legacy applications on DOS, 16-bit etc. while

pushing the envelope on another Intel-only OS Windows95. The

first mandate was it should sell in the millions! The second mandate for the team was to

build an object-oriented, scalable, high-performance, secure, hardware-independent

application development platform. Period. It really is what it is today because of it

Microsoft has delivered on it and their competitors know it! What is missing? Well, it

depends in what context. Microsoft is completely a market-driven company. In the early

nineties it was to get enough features to beat Novell in the File/Print server business.

They beat it in the small-biz market (60 percent in the US). Now these services

are in kernel-mode, it is hard to match that kind of price/performance ratio. Then, in the

next couple, it was to beat Unixes in the application server business. In the last couple

of years it has been to deliver on a high performance Web Server. If the context is NOW,

people expect Microsoft to play in the enterprise/large corporate space. The traditional

Big Blue or Unix turf. Then I'd say, the in-the-box features that are missing are

enterprise-wide management tools and a global Directory Service. Hey, but that is why WE

exist.

To what would you attribute the

current success of NT as an OS? Is it just the product itself or is there anything

else-some innovating marketing by Microsoft, for example-that has contributed to it?
color="#000000" size="2" face="Arial">




True to both of your assessments-applicable to both product and marketing. And then some.
Marketing, by itself, does not help push a product. You have to recognize that Microsoft

is the ultimate Developer Company. Nobody, I repeat nobody, coddles and nourishes a

developer like Microsoft does. It comes from its BASIC days! Windows NT is a platform. To

push a platform you need applications. To build applications you need really good

developer tools, access to developer support, SDKs, early drop to sources, their

ubiquitous logo programs, and a good base of companies complementing the out-of-the-box

experience. Upfront Training: Developers going to Microsoft's highly ballyhooed TechEd,

Professional Developers Conference etc. is like going to Mecca for Haj. In my humble

opinion, this type of technical evangelism is probably the most significant factor I'd

attribute to NTs (and most of its products) success in the marketplace.

As a developer, how would you

compare NT with other operating systems-Unix, NetWare, and Windows 95? What is the biggest

advantage of developing for NT?




This is like comparing apples and oranges. Each OS was designed and built at various
stages to meet multiple market requirements. With Unix, the question is always "which

one?". With NetWare, it was easier getting your teeth drilled than writing an NLM.

The Win32 platform allows you to write applications for both NT and Win95. With the coming

releases of NT you can have one binary executable for multiple languages! That's

"cool". Writing for NT has many advantages, including better developer tool

support, multi-language support (it'd be cool to ship our products in Mandarin or Tamil),

multi-platform etc. Perhaps, Windows NT was revolutionary to the software world in the

sense that it was the first time that the OS was ready before the actual hardware chip

that could run it! Case in point PowerPC! Sun's SunSparc is the last holdout-from a

processor perspective, where NT does not reside.

Advertisment

Your web site states: "The

security tools market for Windows-based PCs has not matured beyond virus scanners. Even

information privacy and integrity, which represent basic human needs, have not gained mass

acceptance. Querisoft believes that the problem is primarily related to the high cost and

difficulty associated with using existing products." Couldn't this lack of maturity

be a result of the fact that the Windows family of operating systems are inherently weak

in their implementation of security as compared to say Unix, and that it is comparatively

difficult to implement effective security on NT?
size="2" face="Arial">



You are partly right. Windows 3.x and Windows 95 were consumer products meant for use for
desktops to support spreadsheets and wordprocessors. Now, NT is a US DoD defined

C2-compliant security system-what does it mean? Well, it means that security was NOT an

afterthought. It was designed to meet Intranet requirements. When the Internet boom

occurred the out-of-the-box NT security was just not enough. You needed security that

protected a network of NT and many non-NT systems and required a human to actually

configure the system. The Unix world just happened to take a beating for 20+ years to iron

out most of the security, and still there is a lot to be desired from both systems.

NT has a reputation for crashing

regularly. Why does this happen? What steps do you recommend to users to avoid/overcome

this?




One of the downsides of writing an operating system that is flexible, that supports
multi-vendor products etc. is the fact that whether it is the hardware's fault, or the

application writer's fault or the peripheral device problem, the onus lies on Microsoft!

This is actually quite unfair to them. When you want to write high-performance,

high-availability scalable applications, you need to get closer and deeper into the

operating system. There the code has to be really spiffy; so when Microsoft exposes APIs

that allow you to talk natively to the base, the application write or the device driver

has to be really careful; the design and programming considerations are enormous. Writing

to an OS, one that supports multiple processes and threads is a non-trivial task.

There are a number of freely

available programs like NTFSDOS and SAMBA that can mount and read NTFS volumes, thereby

nullifying whatever security is implemented on NT. Any comments?
color="#000000" size="2" face="Arial">



The operating system can protect itself if its own OS is running! In the NTFSDOS case, the
C2 requirements never said anything about protecting content when the operating system

way, the installation of drivers like the ones mentioned can be done only by the

administrator or by someone in the administrator group. Remember that Security is about

Configuration. All security is MOOT without a really good policy across the enterprise.

Microsoft had recently made a big

show of the scalability of NT. Any comments?
face="Arial">



If you want to play in the enterprise space and go against the Oracles, IBMs, and Suns,
you have to do more than just a show. You have to have customers that actually push the

limit of the hardware/software. Understand that writing scalable code is no-joke. Things

like Microsoft Viper (Transaction Server) really allow you to do some interesting things

in this area.

Advertisment