Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl Monk, Perl Meditation
 
PerlMonks  

Re^3: Nobody Expects the Agile Imposition (Part VI): Architecture

by BrowserUk (Patriarch)
on Jan 23, 2011 at 12:13 UTC ( [id://883764]=note: print w/replies, xml ) Need Help??


in reply to Re^2: Nobody Expects the Agile Imposition (Part VI): Architecture (Python 3)
in thread Nobody Expects the Agile Imposition (Part VI): Architecture

It seems that Windows NT was a rewrite of Windows 3

Absolutely not. Windows NT was an entirely separate, new development of 32-bit code. Ie the Win32 API.

Win32s was a thunked win32 emulation retrofitted to the 16-bit Windows 3.


Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.

Replies are listed 'Best First'.
Re^4: Nobody Expects the Agile Imposition (Part VI): Architecture
by eyepopslikeamosquito (Archbishop) on Jan 23, 2011 at 12:24 UTC

    Yes I knew that, so maybe I'm using the term "rewrite" imprecisely. To me, it qualifies as a rewrite because Microsoft chose not to adapt the existing Windows 3/95/98 code base for future Windows versions (e.g. Windows XP, Windows Vista) but rather to write a new code base from scratch. How about: Windows NT was a rewrite of the Windows operating system?

      Hm. I'm not sure that the term "re-write" comes into it anywhere.

      Windows NT was a completely new OS written from scratch.

      Bits (Kernel API; UI; etc.) of that new 32-bit OS were backported to the newer versions of the old 16-bit versions of Windows in order to provide a migration path.

      Saying one is a re-write of the other is like saying OSX is a re-write of MacOS. They are both essential very thin skins of look&feel layered over completely different underpinnings, design philosophy and target audience.

      Like saying this is a "rebuild" of this, because of their superficial similarities, completely ignoring the difference in their purpose and technology.


      Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
      "Science is about questioning the status quo. Questioning authority".
      In the absence of evidence, opinion is indistinguishable from prejudice.

        Yes, the definition of what "rewrite" means is open to interpretation. FWIW, I was following the spirit of the definition used by Joel Spolsky in this article where he argued that Netscape made a strategic mistake by rewriting their whole code base from scratch for Netscape 6 rather than using their Netscape 4 code base as a starting point and adding new features to it. Like Spolsky, I was trying to compare the alternative strategies of adding new features on top of an old and tangled code base versus throwing it all away and starting afresh.

        There are certainly shades of grey here. I remember an old work mate of mine who loved to joke that if he said he was going to "rewrite" some horrible old component, he would never get management approval, while if he said he was going to "refactor" it, he would get approval ... and then proceed to ruthlessly "refactor" it until it was essentially a rewrite.

        Out of curiosity, would you agree with tilly that Perl 5 was a "rewrite" of Perl 4? And is Perl 6 a "rewrite" of Perl 5?

Re^4: Nobody Expects the Agile Imposition (Part VI): Architecture
by girarde (Hermit) on Jan 25, 2011 at 03:59 UTC
    If NT was a re-write of anything, it was a re-write of VMS. ;-)
      girarde,
      Windows NT (WNT) - 1 = VMS IBM - 1 = HAL
      Coincidence, I think not ;-)

      Cheers - L~R

        “My mind is going ... I can feel it, Dave ... I can feel it ...”   Abort, Retry, Ignore?

      Indeed. With big chunks of RSX thrown in the courtesy of Dave Cutler.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://883764]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others perusing the Monastery: (7)
As of 2024-03-28 15:12 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found