Legacy software support is no reason to maintain outdated constructs

Legacy software support is no reason to maintain outdated constructs

Summary: The debate and commentary has been quite lively concerning my idea to get rid of DOS drive letters from our midst. The worst argument so far is to maintain them to support legacy applications.

TOPICS: Microsoft, Windows

Before you read this, go look at your calendar—electronic or paper. My calendar has the numbers 2013 at the very top. What numbers does yours have? I'll wait. OK, now that you're back, if yours has any year except 2013, then please stop reading and go play a few rounds of Pong or Breakout. For those of us who live in the present, this post is specifically for you. It seems that many well-meaning IT professionals believe (falsely) that Microsoft should maintain DOS drive letters to support legacy applications that rely on those drive letters for proper operation. Yeah, that's a great argument—let's maintain drive letters to support 20-year-old applications whose vendors can't update their lousy software.

I totally understand the illogic behind this argument. When I ran my own computer consulting firm (1995-2003), I, and my employees had to maintain legacy software for two reasons. One was because the vendors wouldn't or couldn't update their software to a non-DOS version or the users were too stuck in their ways to learn something new.

Notable applications included*:

  • WordPerfect
  • AutoCAD
  • Lotus 1-2-3
  • WordStar
  • PeachTree Accounting
  • DDMS

Those were painful times indeed. We also had to maintain AOL for some offices, which was a real joy most notably because I hated AOL, not because it was difficult to support. Unfortunately—or maybe fortunately for me—previous support people couldn't make the great leap to Windows applications either.

I digress.

In 2013, if you're still using so-called legacy applications, DOS applications, or obscure software that hardly anyone supports, STOP IT. Find another vendor and get on board with something modern and useful. Yes, there will be a learning curve, but you can do it. I have confidence in you.

The argument that Microsoft can't move away from drive letters in its operating systems and applications is simply not true—not to mention utterly ridiculous. Of course they can.

Most users only know that they have an H: drive because you've told them that they do. But applications can be setup to save documents in any location or share without the user's knowledge. Why do users care about drive letters? Answer: They don't.

Users only care about doing their jobs with the applications, computers, and other resources that they need. I'm positive that very few of them are emotionally bound to the H: drive that you so expertly conceived and implemented for them.

Stating that Microsoft can't get rid of drive letters makes as much sense as saying we can't move away from 5.25" or 3.5" floppy disks. Oh wait, sorry, we did that didn't we?

But if I'd written that we need to ditch the floppy for flash, there'd be protest on that front too. You know it's true. 

"Oh Ken, you are such a rube. You can't be serious that we could actually stop using floppy disks. Think of how many thousands of users depend on them. Think of how many thousands of software programs are on floppies. How can you be so stupid? Ken, is it a slow news day on ZDNet or do you just make up this stuff?"

Floppies are gone.

Drive letters should be gone too.

You can lament their termination all you want. You can reminisce about the 'good ol' days', talk geek about "sneakernet", and generally annoy people like me who can't listen to such nonsense. I'll quickly walk out of the cubicle and go for a soda until you decide to get back to work. No one cares that you were there at the dawn of the PC, that you used CP/M on a Compaq luggable, or that you "remember a time when...". Please shut up and get back to work on your modern, not floppy-having systems that don't use any DOS applications.

To summarize, the lame argument that drive letters can't go away is just silly and incorrect. They can and will go away. The concept, 30+ years ago, worked. It no longer works. To imply that such a limitation is a requirement, is less than an intelligent argument.

If you think this is a great argument, let me present the argument to you as if it were a brand new thing that I came up with. Here goes.

Hey, ZDNet readers, I have a new plan. Instead of using mount points on partitions, I want to go to a new system that uses alphabet letters, you know, A through Z. Well, actually, you can't use A, B, C. The letter C is the default for your primary disk partition, which you now know as / (root). So, you have letters D through Z for other local partitions and network mapped locations.

Doesn't this new paradigm sound awesome? Sure, it does. Let me explain further before you judge too quickly.

Letters D through Z give you 23 whole possibilities for partitions and mapped locations to remote systems. 

So, your primary disk, where all of your software goes is the C: drive. If you have a second partition on your disk, just in case you want to separate your system software from other stuff, you'll have a D: drive. Your CD/DVD drive will be E: Any SD cards, USB flash drives, or other locally connected drives could be F: through whatever connections you can make. 

And, if you want to map remote shares, you'll have G: or H: or I: through Z: That's an amazing 18 or 19 letters left for everything. Who'll ever need more than that?

Sure, I know that right now, you have an unlimited number of possibilities for partitions and maps because you use that legacy mounting thing but come on, this is way better. Users will love having a drive letter to which they can refer.

Think of the possibilities. A common group of users can now discuss their M: drive over lunch or on break, while we, the awesome IT geniuses, can laugh at the way we used to mount and unmount partitions, disks, and remote file systems as if they were local. What were we thinking?

End of drive letter argument.

What, indeed, were we thinking?

Yes, I'm making light of the situation to illustrate how silly the drive letter limitation has become. Microsoft knows about the limitation and that's why you can now mount partitions and disks onto folders. It's not terribly difficult to do so but it's also not trivial either.

There's no reason to maintain DOS drive letters anymore. There's no argument good enough. There's no legacy software worth it. It's time to grow up. It's time to leave that part of the past behind us. Drive letters should only be the topic of geeky conversations that I'll walk away from. Sorry drive letter fans, it's time to birth a new legacy: Drive letters.

*Windows versions became available during those years. Some were available but clients wouldn't or couldn't use them for many reasons.

What do you think? Time to kill drive letters and legacy software? How long are we supposed to support outdated software and outdated constructs? Talk back and let me know.

Topics: Microsoft, Windows


Kenneth 'Ken' Hess is a full-time Windows and Linux system administrator with 20 years of experience with Mac, Linux, UNIX, and Windows systems in large multi-data center environments.

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.


Log in or register to join the discussion
  • The problem isn't legacy programs.

    The problem is current programs continue to rely on them. Windows already provided, back in Windows 2000, the means to use mount points. It has also provided the ability to dynamically manage disks. Few, relatively speaking, people use these capabilities. I suspect it's because they find no use to do so and run the risk of applications breaking. Even modern applications.
    • mounting shares and partitions

      Shares and partitions map cleanly to the directory structure in *nix without specialty disk management. You just "mount -t type /dev/sdb6 /home/cooluser/data/thiswierdspot/temp/sdb6"
      and poof, you're done.

      When Windows lets me do that, I'll be happy to let the drive letters go, because, generally speaking, drive letters really irritate me. I can't tell you how much I'd love c:\users to be on a separate partition than the OS binaries; or how I'd REALLY love it to be just \users with no c:. Windows can keep its backwards-slash loving ways, that doesn't irritate me that much.

      Now, to be fair, windows has provide api to get a string representation of the proper directory to save and load files from for a very long time.... So legacy programs aren't a problem in general, but bad legacy programs that depend on C: or some other drive letter being in str[0] and str[1] position will break, potentially in really bad ways too.
      • I know how UNIX mounts shares.

        I use and own several UNIX systems. My primary experience is with Solaris.

        With that said I'm not sure what relevance your post has to what I said.
    • It's part of a wider debate

      Once code or a methodology gets in, it's takes a gargantuan effort to remove it or change peoples habits. Given modern hardware and technology we are using operating systems that are decades old in their design and not really suitable for current use. There is a new OS waiting out there to be written from the ground up.
      Alan Smithie
  • I do have to ask: What problem are you trying to solve?

    You appear to be on a tirade against the way Microsoft does files ystems. What is driving this?
    • @ye

      Tired of workarounds and hassles from using drive letters. And tired of running out of drive letters.
      • You didn't answer my question.

        That question is: What PROBLEM are you trying to solve?
        • @ye

          I answered it. That's not the question you asked. The problem I'm trying to solve is the limitations from using drive letters. That isn't obvious from the post?
          • No, you did not answer it.

            You responded to it. But you didn't answer it. What are you trying to do where drive letters become a limitation?
          • 27 mount points.

            seems like a lot... until its not.
          • Still trying to figure out a real world use case where "27" letters...

            ...is insufficient. I love to hear about them to see if there are reasonable alternatives.
          • alternatives

            Yes there are, but its not clean the way mapping to a drive letter is. When you click "map network drive" in explorer, you get a dialog with a drive letter selection combobox and a text box to enter the share name in.

            What would be nice, just as in *nix, if I could map server3:/xdata to c:\users\name\documents\s3data right off that dialog box.
          • We don't know what alternatives are available.

            Because we don't know what problem he's running into.

            "What would be nice, just as in *nix, if I could map server3:/xdata to c:\users\name\documents\s3data right off that dialog box."

            With Windows I don't believe you can user a mount point as the target when mapping a share.
          • The problem he's encountering

            Is running out of letters for drives.

            I've run out of letters for drives, I've got a Windows desktop with no disk drives hooked up and LSI cards out the ass.

            I can tell you it's especially hard to work with a business who uses Windows Server exclusively, and has a large storage capacity need. Even with RAID and JBOD it's still annoying when the drive letters run out and it's time to break out the folder mapping.

            I don't understand why Microsoft wouldn't at least have it as an option, since redirecting calls to existing directories is already based on things like Environment Variables or whatever they're called, like %APPDATA%. Why not want more choice in your OS, especially when it's trivial for the source code holders to implement?
          • Typo

            No DVD drives/optical drives that is.
          • What is the PROBLEM.

            I understand you're running out of drives letters. But that doesn't tell me what problem you're running into that requires roughly 26 drive letters.

            It sounds as if you have a lot of local storage on your systems. Is this correct? If so why don't you mount them within the existing directory structure just like you do in UNIX?

            The only case I can see where the number of drive letters is an issue is when you're attempting to mount approximately 26 remote shares. And I can't think of a use case where one would need to do so. But I'm open to an example.
          • What?

            "Even with RAID and JBOD it's still annoying when the drive letters run out and it's time to break out the folder mapping."

            In Disk Manager, you can easily mount any volume to a folder. You don't have to wait until your drive letters run out. Whatever limit there is to mounting volumes in Windows, it is FAR bigger than 26.

            A lot of these arguments I'm reading seem to be saying this:
            "Drive letters are a pain because when they run out, I have to resort to using the mount functionality that Windows provides natively and that's sucky. A far better solution is to not have any drive letters so that I ALWAYS have to use the mount functionality that Windows provides natively, the same mount functionality I just described as sucky."

            If there are weaknesses in the native functionality that Windows offers, let's hear them. One is that you have limited support through the GUI. However, no one has yet been able to state any other reasons why the mounting functionality in Windows is bad, other than the fact that it is optional and that you don't have to use it if you don't want to.
          • I get the impression they didn't know about the ability to mount...

            ...drives in a manner similar to UNIX.
          • They must have known about the ability to mount drives

            "Even with RAID and JBOD it's still annoying when the drive letters run out and it's time to break out the folder mapping."

            Otherwise I would have no idea what they mean by "folder mapping". There are only 2 ways to mount a local volume:
            Mount to a drive letter
            Mount to a folder

            If they are successfully mounting more than 26 volumes, they MUST know that they can mount drives like this since there isn't any other way.

            Note that I use the term "volume" specifically to refer to a partition on a local drive. Since the OP is talking about RAID and JBOD, this is almost certainly what he is talking about. Mounting volumes is done in Disk Manager which has a GUI for mounting a volume anywhere you want to.

            I believe that you've been able to mount volumes to folders with either CLI or GUI for a VERY long time in Windows, at least as far back as Windows 2000.
            •Grafts the root folder of a local volume onto a Windows 2000 version of NTFS folder (or "mounts" the volume)"
          • I'm not sure what they're issue is.

            Still waiting to hear what the problem is that they're running into. So far no one has told me anything other than "running out of drive letters".