Windows Update Deletes Files

By Shamus Posted Sunday Oct 21, 2018

Filed under: Rants 83 comments

I stumbled on this story at random, but apparently it’s been a thing since the start of the month. The rumor is that Windows update 1809 can delete all your user data. Or at least, all your data under c:\Users\Username.

This article suggests that data loss happens to one hundredth of one percent of users. That figure comes from Microsoft and we all know how much publicly-traded corporations love owning up to destructive mistakes, so maybe that data needs a pinch of salt. You might remember that about two years ago I was one of the “very small number of users” who had their machine crippled by the anniversary update.

According to Microsoft:

[mass file deletion] occurred if Known Folder Redirection (KFR) had been previously enabled, but files remain in the original “old” folder location vs being moved to the new, redirected location. KFR is the process of redirecting the known folders of Windows including Desktop, Documents, Pictures, Screenshots, Videos, Camera Roll, etc. from the default folder location, c:\users\username\, to a new folder location. In previous feedback from the Windows 10 April 2018 Update, users with KFR reported an extra, empty copy of Known Folders on their device. Based on feedback from users, we introduced code in the October 2018 Update to remove these empty, duplicate known folders. That change, combined with another change to the update construction sequence, resulted in the deletion of the original “old” folder locations and their content, leaving only the new “active” folder intact.

On one hand, that’s a pretty unusual thing to do so I can believe that it doesn’t impact many people. On the other hand, this is a shocking thing for Microsoft to do. Why on earth would you EVER do a mass-delete on a user’s machine? Are you trying to save them hard drive space? How could such a move benefit Microsoft? Assuming this is something the OS needs to address, wouldn’t it be safer and more sensible to give the user a little notification, “Hey buddy. You’ve got xxGB of data in c:\Users\Username that you’re not using.”

Didn’t the mere suggestion of doing a mass-delete of “unused” user files make the entire development team panic? Shit, I get nervous anytime I write code to delete a folder. It’s just so easy to create regret when doing those sorts of things, and so hard to un-do them.

You’ll Never Get Away With This!

I feel anxiety when I see this screen. I always wonder if my machine will emerge intact.
I feel anxiety when I see this screen. I always wonder if my machine will emerge intact.

I’ve been reading comment threads about this and seeing people saying things like, “Microsoft won’t be able to get away with this shit for much longer!” That’s a nice sentiment, but I don’t see how it could possibly be true.

If anything, the world seems to be getting used to this horrible system of mass forced updates that break workflow and destroy data. Outrage is our only weapon, and we seem to be running out. Microsoft is obviously aware that they’re the market hegemon and many people are stuck here. There’s probably some software you need that’s only available on Windows. Maybe that software is a game. Maybe it’s something you need for work. Maybe it’s a bit of creative software. Let’s call this application WhateverWare.

  • Stay on old versions of Windows 10? Not possible. The OS updates when it wants to. I’ve heard that the higher-grade editions of Windows 10 will let you control when updates happen, but even if I was willing to pay MORE money to Microsoft to escape a problem they created, you can’t forestall updates forever.
  • Stick with Windows 7 or Windows 8? That won’t be a viable strategy forever. Sooner or later you’re going to discover that the new version of WhateverWare only runs on Windows 10. Sooner or later you’ll upgrade your hardware and discover that Windows 8 can’t handle it. Sooner or later the lack of ongoing security updates will get to you.
  • Move to Linux? Yeah. Good luck with that. Odds are that WhateverWare doesn’t have a Linux version.
  • Move to Mac? On the upside, WhateverWare might be available on Mac. On the downside, it’s not like overbearing corporate-mandated end-user sabotage is an alien concept to Apple. You might change platforms to discover you’re in the same predicament but now you’re paying twice as much for the privilege.

A lot of us are stuck on Windows, and Microsoft seems to be aware of this. I just don’t see what’s to stop them from continuing to “get away” with this. If they can nuke the /documents folder and it doesn’t make the international news then I don’t know what will.

Apparently they’ve stopped the roll-out of 1809 for the time being. I’m not so much worried about 1809Updates are numbered in the form of YYMM, so 1809 means “September 2018”. itself, but about the next big update. Maybe update 1908 will break my Steam install or update 2002 will drop support for half my USB devices.

Ah well. At least I won’t run out of things to worry about.

 

Footnotes:

[1] Updates are numbered in the form of YYMM, so 1809 means “September 2018”.



From The Archives:
 

83 thoughts on “Windows Update Deletes Files

  1. tmtvl says:

    Stick with Windows 7 or Windows 8? That’s won’t be a viable strategy forever.

    That’s won’t?

    Anyway, much as we Linux users tend to sneer, I’m gonna be serious for a moment and say that I hope Microsoft can get their act together so their users can stop worrying about these kinds of things.

    1. Michael Anderson says:

      No – in much the same way that running DOS or Windows 3.11 isn’t really a sustainable approach. Sure – *I* have a nice little old HP Omnibook running Windows 3.11 and a slightly newer Omnibook running mostly DOS … but that is something that I managed to get working and figure out how to make function for specifically the things I wanted. Imagine doing that for a dozen *people* – not machines. People who want the modern conveniences, which are always shifting, and hardware that is always breaking compatibility.

      Win7 is OK for now … but not too much longer.

      1. krellen says:

        tmtvl was pointing out a typo, not questioning the assertion.

  2. C__ says:

    Every time I see people cheering for the brand of their favorite console as if it were a football team and wishing that Sony / Microsoft finishes the competition to “show them” and become a monopoly, I remember that this is the kind of thing that happens in monopolies and you can not do much but tweet furiously about it.

    1. Agammamon says:

      Its why I swore off Apple years ago and stayed with MS – though that had faults of its own, it wasn’t trying to force control of the ‘total experience’ like Apple was.

      And then Window 10 came out and while they’ve backtracked a long ways (like with the always on XBone) they jumped in hard trying to do the same crap that drove me away from Apple in the first place.

      Though I’m hearing that soon you might be able to install their shovelware (I’m looking at you Xbox app) without the Powershell *and* without it being forceably reinstalled every time you get the slightest update.

  3. Thomas says:

    There’s a good ArsTechnica article on how Microsoft have moved to the modern continuous update development schedule without actually adapting their development methods.

    Whilst Google has built automated checking infrastructure so that new code is basically in good shape before it gets merged, Microsoft are treating users like beta testers, except now they’re doing it twice a year instead of once every three years.
    https://arstechnica.com/gadgets/2018/10/microsofts-problem-isnt-shipping-windows-updates-its-developing-them/

    1. LCF says:

      “Microsoft are treating users like beta testers, except now”
      They’ve always done that.
      The infamy of Windows 95? No test, rushed, out of the doors as fast as possible, and the users will tell what’s not working.
      It seemed they learned the lesson with 98 (slightly less buggy) and until Windows 7. Old habits die hard, apparently.
      Let’s remember them why people took to calling them Micro$oft.

  4. Yerushalmi says:

    This is *exactly* why I not only refused to install Windows 10, but put my Windows 8 updates on manual mode so I can go over them one by one. It’s also why I refuse to get a smartphone.

    Given the choice, I will never, ever, ever purchase a device that installs updates or makes other changes without my consent. These devices always think they’re smarter than the user, and it’s never true.

    1. King Marth says:

      Why the smartphone mention? Mine gives me plenty of advance notice for OS updates as they’re manual even if the download part is automatic, and my app updates are also manual, though Google Play has made it harder and harder over time to see the permissions changes tied to an update (I’m guessing because the initial attempts to encourage users to be aware of app permissions were seen as irritating extra steps).

      That said, having seen how normal people usually use computers, automatic updates are a big step towards less botnets. Perhaps not enough of a step to escape connected appliances running outdated Linux, but a step all the same.

      As for why they deleted anything at all, the press release there tells you: People were confused and scared by seeing an empty folder, and complained directly to Microsoft about it. An OS update isn’t the right place to address that sort of issue, but the flip side of serving the entire market for computers is that most of your customers don’t know what they’re doing… And those with the technical acumen to encounter problems are also capable of fixing them.

      1. Yerushalmi says:

        Google Play has made it harder and harder over time to see the permissions changes tied to an update

        That’s part of it. I don’t trust Google *not* to suddenly make it impossible to stop OS updates. And the OS updates they send out, even if you can set them to manual, aren’t fully explained and can make wide-ranging changes that you aren’t fully warned about in advance. At least from what I’ve seen on my wife’s phone, anyway.

      2. default_ex says:

        Google Play has made it harder but Android itself has made it easier to say ‘no’ without breaking the apps. Settings -> Privacy -> Privacy Guard. Let’s you change which permissions are granted, which are denied and which you want a confirmation prompt for. Set confirmation prompt on your camera for everything and watch how many apps try to access it, hilarious and frightening at the same time.

    2. Zak McKracken says:

      My Android phone doesn’t update without me actively doing something.
      That said: I’m not always aware what a particular update will do (though I guess I could probably look it up on the net), and there have been updates after which Google Services demanded some new permision to continue doing what they were doing (which is … what? I’m none too sure. “Services”, I guess…) That said: I have no Google account (F-Droid and Yalp are your friends for software), and that helps a lot with ease-of-mind about Google collecting data. I’m also using OSMand for navigation (download maps at home over wifi, navigate offline), and a bunch of other free software, so it’s mostly under my control.

      That said: The “proper” way to get your phone under control is of course LineageOS. However, that requires rooting the device and installing the stuff yourself, and I’m not sure if/how I could get back to the regular system if I find that LineageOS doesn’t work for me, also I’m a bit low on time to figure all of it out.

  5. Asdasd says:

    I actually thought to myself ‘did he really take a photo of that update screen? Does the guy not know how to take a screenshot?’ before feeling very silly.

  6. Dan Efran says:

    Sooner or later the lack of ongoing security updates will get to you.

    This. I’m happy to keep my PC on Windows 7, which seems pretty stable, but eventually it will probably need to be cut off from the Internet.

    My current plan is a combination of 2, 3, and 4: keep running Windows 7 into the ground; when they stop the security updates on that, start dual-booting Linux and “unplug” the Win7; and keep a Mac handy (for newer software). Awkward, but I don’t see a better way forward. (If I want Win10-exclusive software someday I guess I’d add another computer on top of the above, but I’d rather not play this game.)

    I miss the days when a computer was a tool, at the user’s command, with a power switch you could just flip off. The Windows “Do not turn off your computer!” screens (without even an estimated duration!!) strike me as an affront, a violation of the user-computer relationship. These forced updates that delay your work and delete your files just add injury to insult.

    Oh, and get off my lawn!

    (In fact I’m literally going to go write some Apple ][ code now…!)

    1. “keep my PC on Windows 7, which seems pretty stable, but eventually it will probably need to be cut off from the Internet”

      Not sure why though, as long as you only expose the ports you need to the net this should be a non-issue. It’s also possible to set the firewall to deny all outgoing and ingame by default in the Windows Firewall. It’s a bit of a hassle at first as you have to approve “everything”.

      Protip: After you make your Windows admin account, also create a limited (regulate/non-admin) user account. From now use the normal account for daily stuff. You only need to elevate/enter your admin password for driver updates or OS setting changes. A lot of software let you do Per-user installs (some of them may show the admin prompt, but if you click cancel (failing the prompt) you get a per user install instead, I think Firefox and Chrome both behave this way).
      This way nothing can open network ports without you knowing.

      Also I’m curious why you’d need security patches “beyond a certain point”. Will you be running lots of unknown software? Sure, a security patch may protect the system if a infected website manages to punch through the webrowser to your system, but if you normal user account is not a admin the impact is usually minimal, it’s possible that running on a normal account is enough on it’s own to make a virus or trojan fail (they want or need to infect a admin account).

      If you are really paranoid, get VirtualBox (free) and use a VM and put a browser in that and use incognito mode, and if you got the cash to burn plop a VPN into the mix as well.

      Some of these security issues are the fault of Microsoft, others the fault of Intel, or the Browser developers. OR certain software. Windows has way too many ports open/in use by default. A lot of games like to run local “servers” splitting your game into a client server thingy, even if you are just playing single player. Software suites (Adobe?!) may run services or databases etc. You have keyboard RGB lighting effect APIs that run as a service and answers on a port, get the permissions wrong and that port might accidentally be exposed to the net. And then there are buffer overflows in JPG decoders of video players that can occur. Internet routers (or other devices) with default passwords with open public ports is another issue.

      “Everybody” needs to fix their shit, it’s really messy these days. Nobody has the full overview of things any more.

      1. guy says:

        The problem is that security updates cover things like privilege escalation attacks that let malicious code on a normal user account act as an administrator. If an OS isn’t getting security updates key assumptions other security measures rely on may be invalidated by known exploits.

        1. evileeyore says:

          Actually once you’re a whole OS behind, the risk plummets.

          That’s generally how I’ve rolled, always getting the ‘last’ OS right before MS stops selling it (or allowing it to be sold). Then once my current OS stops being useful (read ‘a game I want won’t run on it’) I move the the OS I got to upgrade to.

          That’s the only reason I moved from XP to 7. XP was throttling my memory and 7 was being discontinued.

          1. guy says:

            Once an OS gets discontinued it stops being targeted nearly as much but any known exploits are going to linger forever so any leftover malware is going to keep working. That’s a bigger concern for institutions that might be specifically targeted than individual users, but occasionally you might stumble into a botnet targeting old machines.

            1. “a bigger concern for institutions” I agree but these also have a IT department with hopefully experience people working there.
              If you are a computer chip manufacturer running Windows XP unpatched and you allow employees plug a USB stick with malware on it in the machine it’s not really Microsoft’s fault.
              At this point you got billions in the bank and can afford a tailored Linux or tailored Windows enterprise version anyway.

              “security updates cover things like privilege escalation attacks”
              True, but how did that malware get execution rights in the first place? Did a browser blindly run a executable from the temp folder? Did a user click a email attachment and ran it?

              It’s kinda weird to worry about the lock to the home office room door when the intruder is walking around in your kitchen already. It’s only a matter of time until they find a way to get into your office. They should never have gotten into the house in the first place.

              If browsers was airtight and there was no buffer overflow in audio/image/video codecs and users didn’t blindly click email attachments then malware would never be able to run on the system in the first place.

              Once you have removed the handle on the outside of the window, then you can worry about the lock on a door inside your house. :)

              Once inside your computer, even if they do not have admin access they can still get to all your emails and my documents and selfie porn images intended for the eyes of your SO only etc.
              There is very little “personal stuff” in the “admin” parts of a OS. The default Windows account you make is a admin/user dual account.

              BTW! Even if you do not want to make a separate user account for daily use, you can still install stuff without admin elevation (again just cancel the prompt, on some software it will use the user folder).

              Why I’m harping on about making a normal user account it’s that if the user account gets messed up the rest of the OS is “okay” (sure if you got malware you may be screwed anyway regardless), but I’ve seen malware just fail to fully deploy on a regular user account.

              It also helps you see how archaic some software installers are (most games and software do not really need admin privileges to install, in theory many could have their folder zipped up and later unzipped gain and run just fine).
              This is partly why Microsoft is pushing UWP so hard, devs still can’t seem to get their act together and do proper per user installs.

              But I digress. windows 7 is a good OS and the best of the classic Windows I’d dare say. Windows 10 as a OS is great on it’s own. But it’s part of the next gen OS (it started with Win 8). Win 10 is pretty good and I’m hailing back from the days of Amiga (before even Win 95). Win 10 is “fine” there is nothing remarkable with it. It’s an “OS” not a fashion statement. I’ve tried Linux OS UIs now and again but they always felt “off” or clunky.

              I have no idea what Microsoft is doing with Win 10, will they continue it in perpetuity? Or will they at one point announce Windows 11? Problem is that those who say Windows 10 sucks are also those that would say Microsoft sucks if a Windows 11 was not compatible with all software dating back to Windows 95.
              “I think” Microsoft wish to throw away decades worth of backwards compatibility, I’m fairly certain half the Win32 OS APIs could easily be cut away with no issues to the OS itself.
              It’s also weird how there is still a 32bit WIndows 10 despite no 32bit x86 CPUs being sold any more. Windows 10 should have been x64 only (but still retained ability to run x86 as it does today).

              I’m kinda hoping a WIndows 11 will be x64 only and ditch x86 executable support, this would get rid of a lot of old junk. (sadly lots of old 32bit games would no longer run though, but a re-release could fix that, publishers could extend the long tail even further).

              Fuck I did it again, getting sidetracked.

              Windows security issues are mostly due to complexity and backwards compatibility baggage.
              A OS like Windows and a CPUs like those Intel and AMD make are so complex that no single individual knows how everything works internally. Which is scary as hell as you then rely on other having done a perfect job on the parts you did not make and if either one of you screw up (as a programmer) you might end up with a security hole.

              1. guy says:

                Well if you don’t have the Meltdown and Spectre software mitigation patches you’re at risk of something running in a virtual machine reading encryption keys out of kernel memory. Or javascript in a browser doing the same. Security measures depend on the OS working as intended. Most of the problems that get patched aren’t that dramatic, but many flaws in the operating system can let things get around security precautions.

              2. John says:

                It’s also weird how there is still a 32bit WIndows 10 despite no 32bit x86 CPUs being sold any more. Windows 10 should have been x64 only (but still retained ability to run x86 as it does today).

                As recently as a year ago you could still buy a new netbook with an Intel Atom processor running 32-bit Windows 10 Home Edition. You absolutely should not have done such a thing–those computers had so little storage space that they could barely contain a Windows install–but you technically could have.

              3. Viktor says:

                I’m in the bidding department for my firm. Contractors, many of which are tiny operations with names I’ve never heard of, email us plans and it’s my job to download the email attachments and then open them as PDFs. Yes, we do a virus scan and daily backups, and I’m decent at spotting the obvious scams, but anyone who tried could get a virus through. You can’t isolate my machine since 4 other depts need access to the stuff I create, you can’t limit my internet since half the time I’m going to proprietary cloud storage sites to download 10 gigs of files, and you can’t limit my access to the network because the nightmare is files being deleted, not anything more complex.

                User security is great in theory, but in practice security updates are vital for the way people actually use the systems.

                1. Valid points.

                  But why should other companies have to compensate for the security bugs in Adobe’s PDF stuff?
                  (I know too little about PDFs but I’ll assume it’s Acrobar Reader that has had security issues and not the actual PDF specification itself, if that is the case not using PDFs would fix a lot of the security issues.)

                  “You can’t isolate my machine since 4 other depts need access to the stuff I create,”
                  Remote desktop to the machine with the VM maybe? That way if the VM image is infected and in a worst case scenario it broke out of the VM and into the host it would still be just that one machine that your remote into.
                  AFAIK you can’t infect other machines via remote desktop or VNC or similar (it’s images and sound and possibly clipboard contents).
                  To be extra safe the host machine for the VM could be on it’s own network, that way if the host is compromised it can’t mess up the internal company network/LAN.

                  1. guy says:

                    At a certain point these measures start costing too much time and money and it’s better to take the damn update.

                    Assuming the machine sends data to anywhere ever it’s possible malware could tamper with legitimate traffic to embed malicious code in stuff that’s supposed to be accessed. That’s not likely to just coincidentally happen, but if you use remote desktopping into a VM to protect against malware and the GRU would very much like to infect you with malware they’re going to look for ways to get malware out of your remote desktop VM so you don’t want to have unpatched known exploits that let them do that. And you don’t care whose fault it is that they’re able to get the malware into your remote desktop VM; you care about how to stop it from getting out.

                    Stuxnet got onto machines that were air gapped and only transferred data via USB sticks used for that sole purpose. These things happen. Obviously updates won’t protect against zero-day exploits but an exploit that’s been known for a year might as well be a zero day if you haven’t updated in the last year.

                    1. guy says:

                      Also in general the purpose of computers is to do things and if your security measures get rigorous enough to make that too difficult people will start cutting corners because they have a job to be doing and can’t spend all day on getting a PDF to their machine.

                2. Cubic says:

                  You should have two machines.

              4. TylerDurd0n says:

                “I think” Microsoft wish to throw away decades worth of backwards compatibility, I’m fairly certain half the Win32 OS APIs could easily be cut away with no issues to the OS itself.

                Win32 is a mess, but as long as Microsoft likes to keep small- to medium-sized businesses locked into Windows, they won’t deprecate it. There are just too many business applications without any viable alternatives out there that keep people from updating those or Windows itself (see: Microsoft still updating Windows XP as the financial sector is so very reliant on tried-and-tested software).

                But as long as Microsoft doesn’t deprecate Win32 or 32-bit apps in general, nothing will happen there. For years Apple has announced that they will drop support for 32-bit, they did so with iOS 12 and will (probably) follow-up with macOS 10.15. And – surprise – the vast majority of macOS-only software has been 64-bit for years already. Which apps haven’t? Well, e.g. most Unity-based games released just a few years back.

                Developers are lazy, and that’s usually not a bad thing. It’s why scripting languages like Python and GNU make and all these automation tools exist. But it also means that if devs don’t have to switch to new APIs or frameworks, they’ll just keep writing the same old code over and over again.

          2. Moridin says:

            Not necessarily. Windows 10 and Windows 7 share enough code that any vulnerability found on Windows 10 has a pretty good chance of existing on Windows 7 as well.

        2. RFS-81 says:

          Do you really even need root (err…admin) to have the computer participate in a DDOS, for example?

          1. In practice, no. But it’s hard if not impossible to “hide” under a normal user privilege level. Something that has root (or administrative admin) access is difficult if not impossible to kill and remove, requiring wiping the system instead. Admin access might also make it possible to flash/manipulate the bios, which can make a virus survive a OS wipe.

          2. guy says:

            You don’t need admin to execute a DDoS, but it’s a lot easier to install stuff and bypass security restrictions with admin privileges.

    2. John says:

      . . . keep running Windows 7 into the ground; when they stop the security updates on that, start dual-booting Linux and “unplug” the Win7; and keep a Mac handy (for newer software) . . .

      That’s approximately what I did when they discontinued Windows XP. I set up a Linux partition for day-to-day stuff like web-browsing and kept the XP install in place for games. Eventually, I realized that I had enough Linux games and enough Windows games that I could get running under Linux that I switched to pure Linux. I’m pretty fortunate in that none of my must-have applications require Windows. There are a lot of Windows-only games that I’d like to play, of course, but they’re only games and I’ve had enough unpleasant experiences with Windows 8 and especially Windows 10 on my wife’s computer that I’m willing to go without them. My wife, unfortunately, is in much the situation that Shamus describes. She needs to be running Windows for work-related reasons.

  7. Michael Anderson says:

    I am typing this on an iPad, which I can use for a whole bunch of social, productivity, music and game stuff. But there is a vast graveyard of unsupported apps in its history, no way is it sustainable.

    I agree with some others.- the real hope is ‘please stop being stupid’.

    1. Zak McKracken says:

      I think the only way to get the likes of Apple and Microsoft (also Google, with Android) to behave is by having sufficient demand for them to behave. They’d need to realize that there’ll be bad consequences if they don’t.

      …fat chance of that ever happending, because they’ve got bloody monopolies. Same as Facebook. One data scandal after the other, and pretty much no change in behaviour apart from ever new creative apologies. Whatcha gonna do, get all your friends and family on Diaspora?

      Google just started charging for the Google Services on Android — unless phone manufacturers prominently promote Chrome and other Google stuff for everything. This is pretty much like MS bundling IE with Windows, but because of the theoretical possibility of the manufacturer (thus the consumer) paying Google for the privilege to stop doing that, they’ll probably get away with it. They can, too. Monopoly!

  8. whitehelm says:

    This only affected people who signed up to get updates early. It got pulled before it went out to everyone as a forced update.

    1. AndrewCC says:

      “People who signed up to be beta-testers for MS for free”
      FTFY.

  9. Mechaninja says:

    Actually this HASN’T been a thing for almost a month.

    Microsoft insiders were bitching about it for, I don’t know, based on what I read it sounded like 6 months or something, and no one at Microsoft ever noticed, so they rolled it out, and immediately got lambasted for it. They took it down and were working on a fix. I’m not sure you can even get 1809 right now.

    1. I have 1809, systemwide Dark Mode looks awesome BTW!.

  10. The main mistake Microsoft’s Windows team did here was that they used delete instead of merge.
    Why they thought to delete the old (not in use) user folder instead of moving the files to the active one I have no clue.

    The known folder thing can be a tad weird. For example I have the userfolder on the boot drive, but the document folder (which resides in the userfolder) has been changed to a folder on my secondary driver. But there are still files in the old documents folder (they are both part of a known folder “library” with the custom location being the default choice for new files.).

    It’s really weird they just decide to delete the old files. Especially since Windows 10 has a “ok” duplicate files prompt you get when copying files to a folder that already have the same files. They could have used that.
    Example: “Your system appears to have a old My Documents folder, we will now merge this with your default and allow you to choose what to do in case of conflicts.” not that hard really!?

    @Shamus and I feel ya on the panic when adding any code that deletes a file or folder. I once had a bug in a tool, it created a temp folder and deleted it afterwards (can you see where this is going?), But I also allowed the user to specify the path (through a requester) where the temporary folder could be created, and I allowed the FULL path to be edited, so they removed the default (which was c:\some user folder hierarchy\temp) and put just “D:\” instead. All was well until the program cleaned up the temp folder (aka, ALL of the D drive).
    Now I’m anal at anything that deletes anything, even if it means annoying users with request dialogs. And any folders have the folder forced to the end.
    I.e. I check if “\foldername” is the end of the chosen path and if it is not then I force it, that way I ensure the program folder or temp folder is always made while still allowing re-cycling a previous folder (in the case of a program update) that replace the files. Temp files and folders are created in the default OS temp path with a random name (using the proper OS APIs).

    Fail early, fail often, validate everything, be liberal in what you accept and strict in what output.
    If a config file is missing the defaults are all solid and makes sense, if program files are missing a error is shown and the program quits, or placeholder stuff is used. I’ve found that I like to make my software more and more robust over the years.
    If something ripped through the memory of my program Id’ want my program to handle it and quit gracefully.

    Also, protip: On Windows there is no need to free memory when you quit. Do not run the garbage collector or stuff like that. Just make sure you release any OS API handles (as documented on MSDN), close any network connections, then just quit, don’t free any memory. The OS (Windows) will handle memory stuff in the background and free stuff.
    Instead of letting the user wait 2-3 minutes to have fragmented memory cleaned up the program will take less than a single second to quit.

  11. Jabrwock says:

    Move to Mac? On the upside, WhateverWare might be available on Mac. On the downside, it’s not like overbearing corporate-mandated end-user sabotage is an alien concept to Apple. You might change platforms to discover you’re in the same predicament but now you’re paying twice as much for the privilege.

    Or that WhateverWare doesn’t supports the same features across multiple platforms. Say you’re trying to load the latest numbers from your co-worker, but they use some feature that’s in WhateverWare’s Windows version, but isn’t in the Mac version because reasons.This applies to games too, even if they have a, let’s call them Vapour game platform. Saved game? Different format, even if the underlying game engine supports cross-platform consistency. Configs? Stored in a different location, doesn’t sync properly.

    1. Agammamon says:

      I don’t know about the last bit. From what I’ve been seeing, a lot of games are using the same save formats across platforms – Windows/XBone/PS4. They did a lot between Windows and 360 in the last gen (not sure if PS3 could). Porting rarely requires changing save formats.

      There are a lot of games that if you can root the console’s OS in order to get access to the file structure, you can extract the saves, take them to a PC, mod them, and put them back. It was even technically possible to do this to mod FO/skyrim on the console.

      1. guy says:

        As I understand it the newer consoles are essentially PCs internally; there’s some hardware differences but not particularly more dramatic ones than might occur between PCs from different manufacturers. So nowadays porting is much less difficult from a purely technical perspective and you don’t have to change save formats. Maybe you can get slightly faster load times on consoles by optimizing the save format for their exact design, but it wouldn’t surprise me if you couldn’t and anyway it’d be a huge undertaking for a fairly marginal benefit.

      2. ElementalAlchemist says:

        They did a lot between Windows and 360 in the last gen

        The 360 and Windows use entirely opposite endianness. Even if the file structure at a high conceptual level was the same, the actual physical saves themselves would be completely incompatible.

        1. Cubic says:

          That’s what htonl() is for. (Well, there’s of course more to it but you get the general idea.)

        2. guy says:

          Not necessarily; machines can generally handle any endianness as long as it’s known. There’s overhead to converting so it’s best avoided, but the system will have built-in support. These days it’s pretty unlikely that alone would make saves incompatible; it is fairly likely they’d either save with just one and convert as part of the loading process on the other platform (if they’re doing a low-quality port) or there’d be an identifier of some sort so the devs could use their PCs to examine bad saves from the 360.

  12. Cilba Greenbraid says:

    Shamus said: “A lot of us are stuck on Windows, and Microsoft seems to be aware of this.”

    This made me chuckle pretty hard, inasmuch as it’s been the fundamental core of Microsoft’s business strategy for 30 years to obtain a monopoly lock and then protect it at all costs and mercilessly exploit locked-in users.

    It’s deliciously relevant that we’re coming up on the 20-year anniversary of the first leak of what are now known as the Halloween Documents, which discuss this very thing in depth, right from Microsoft’s own mouth. :)

    1. bropoc says:

      That’s pretty much the modus operandi for ANY company who has a controlling share of the market, really.

  13. Jabberwok says:

    The mandatory updates are my least favorite thing since switching to Windows (that and the constant Norton notifications). I really don’t like not having control of that, and not knowing what’s being done to my computer. Was using a Mac before, and at least Apple allowed me to choose when to update (if ever) and gave a few patch notes. Not that I don’t hate Apple for a whole host of other reasons…

  14. RFS-81 says:

    Stick with Windows 7 or Windows 8? That won’t be a viable strategy forever. Sooner or later you’re going to discover that the new version of WhateverWare only runs on Windows 10. Sooner or later you’ll upgrade your hardware and discover that Windows 8 can’t handle it. Sooner or later the lack of ongoing security updates will get to you.

    Yeah…I actually held my nose and got Windows 8 when I bought my latest gaming PC, about 3 years ago. I didn’t want Windows 10 because of the user-tracking*, but I wanted to keep getting security updates past Windows 7’s lifespan. I don’t know what I’m going to when Windows 8 stops getting updates. Hope that I grow out of this silly gaming hobby? Seems unlikely by now. Maybe enough new games I’ll be interested in will be on Linux, and WINE will work well enough for older games?

    At least running Windows isn’t something I *have* to do to earn my paycheck, so I guess I’m luckier than Shamus ;)

    * Some people say that if you’re not paying, then you’re the product. How much do I need to pay to not be the product anyway?

    1. Cilvre says:

      Microsoft included updates in windows 8 to do the same user tracking as 10. Just fyi.

      1. RFS-81 says:

        I assume it’s about this. At least it’s only telemetry rather than ad tracking…I’ll look into disabling it, thanks for the heads-up.

  15. MadTinkerer says:

    Microsoft pulling shit like this is what continues to make Win7 a viable option for me.

    That, and you need to pay extra if you don’t want Win10 spying on you, so there’s no irony when I say I literally can’t afford to upgrade to Win10 for free.

    1. ElementalAlchemist says:

      All of Win 10’s spyware was back-ported to both 8 and 7. You haven’t escaped it.

      And paying more doesn’t get you out of it in 10 either. The only way to stop it is at the network level.

      1. MadTinkerer says:

        Even so, upgrading to Win10 is what Microsoft wants me to do, so fuck them.

        I am not upgrading to Win10. Ever. Win7 still works. It’s actually lasted longer than I expected it, but Microsoft pissed off more people than they expected.

        When I get a new PC, I will be checking to make sure I can install Win7 on it. I am not using Win10.

        One day I will need to use something other than Win7, but it will not be Win10 or MacOS. At this rate, it won’t be Linux either. At this rate, I will finally find the time to make my own adequately featured for my purposes OS before I’m forced to stop using Win7.

        No one tells me what OS to use, especially when I’m capable of writing my own.

  16. Rymdsmurfen says:

    Disarming the automatic updates is one of the first things I do on a new Windows 10 installation. I cannot stand software that thinks it knows what I need better than I do. It’s the reason I dropped Chrome and went back to Firefox.

    1. Decius says:

      That literally can’t be done. There’s a Trojan deep inside that will counter all of your best efforts, even making the services list lie to you and overriding filesystem permissions.

      1. FluffySquirrel says:

        I’ve had pretty good success with setting connection to metered, so far at least. Need to change the registry though

  17. RJT says:

    I recently started a large coding project, and before I did that I disabled updates because about 1/5 of them in the past have crashed my computer. Once it even crashed the backup hard-drive as well.
    The reasoning I got from Microsoft is that USB devices being plugged in can cause crashes during an update. Well, of course you can’t control when an update happens, so how would you know to unplug your mouse first? To disable updates, I set the internet connection to “metered.” Now, it tells me “OH NO WE WERE UNABLE TO UPDATE” every time I turn the computer on, but at least my data is safe.

  18. Christopher Wolf says:

    Good rule of thumb. If you are rolling out something to make a product better, don’t make it worse. That is how you lose people.

  19. Cilvre says:

    In case it hasnt been mentioned, you dont need a higher version of windows 10 to stop updates. Flag your internet connection in the settings as metered and windows will not download the big feature updates or most updates. You will get nagged on occasion but I’ve avoided some of these messes this way for a good few months.

    1. Decius says:

      How long will it wait before ignoring your preference to not incur a large data bill?

      1. Mephane says:

        Wouldn’t that open them up to lawsuits, since exceeding the data cap can incur you extra cost?

      2. 4th Dimension says:

        How long untill one of those small updates “accidentally” resets that setting.
        Whoops.

        1. Cubic says:

          It’s like telling Dropbox to pause syncing. It will … for a while.

          1. Cilvre says:

            I’m still on 1703, I just get a nag message anytime i restart.

  20. Mephane says:

    The OS updates when it wants to. I’ve heard that the higher-grade editions of Windows 10 will let you control when updates happen, but even if I was willing to pay MORE money to Microsoft to escape a problem they created, you can’t forestall updates forever.

    I am still on Win8.1, so I have no personal firsthand experience with this. I have heard that the normal (i.e. “home”) edition of Win10 would always force updates, and do so whenever it wants to, even if you’re in the middle of something. And I’ve heard in the Pro (or whatever they might call it now, MS likes to be inconsistent here) edition and above, you can control it yourself.

    How much of this is actually true? I’ve heard conflicting things, some people claim you absolutely can control when to download and install updates in all Win10 editions, some people claim you can’t.

    My next computer upgrade is still some time in the future (aiming for ~2020 here) but it is clear at that point it will be Win10 anyway. And during that Win10 upgrade debacle (when some people declined to upgrade, only to suddenly find their machines upgraded anyway after a few weeks because Microsoft rolled out the same upgrade again), I’ve set my updates to manual. It’s become an easy ritual now every day to manually check for updates (as that is basically just a click on an icon I put on the start screen), and I prefer it that way. I am willing to pay a bit more for a Pro edition if that’s what it takes to get that, but not if it’s actually unnecessary.

    1. guy says:

      I can definitely delay updates for a while on Home Edition by postponing reboots, but I haven’t made an effort to force them to manual entirely.

      I’m inclined to suspect that like a goodly number of things with Win10 you can but it’s scattered throughout the system and confusingly labelled such that buttons that look like they ought to shut off automated updates don’t.

      1. Mephane says:

        The option to delay is not good enough for me if that still means I get a popup in the middle of things where I am merely allowed to say “remind me again in 4 hours”.

        1. guy says:

          Yeah, like I said I haven’t tried switching it all the way off. I’m not likely to put in the time to investigate updates anyway so I mostly just care about keeping it from rebooting mid-use.

          There’s a lot of things in Win10 where you can turn them off but you need to toggle four things in different places to switch them all the way off and none of the places tell you this.

  21. Moridin says:

    The sad part is that for a large portion of users, moving to Linux(or Mac) IS a perfectly viable option(albeit one that requires them to actually spend a little time learning new things), yet they won’t even consider it no matter how Microsoft abuses them. If you’re a professional graphics designer that needs to use Photoshop for their work, that’s one thing, but if you only need image manipulation tools or drawing tools once in a while, Krita(or GIMP) is a perfectly viable option. LibreOffice can do very nearly anything MS Office can. And then there’s always Wine…

    1. Philadelphus says:

      I know, right? I’d be willing to bet that for a lot of people WhateverWare is simply games; I can’t imagine there are really that many people making a living off of running Windows-only software on their personal computers (exceptions excepted, of course). Yes, it’s uncomfortable at first, trust me, I know; and yes, you might* not be able to play the latest AAA hot mess that’s just come out; but not having to worry about this kind of thing for the past four years since I switched? Priceless.

      *I can’t really say for any particular game as it’s highly variable and I don’t run Windows-only games using WINE personally except for a very few I owned before making the switch.

  22. Liessa says:

    I’ll probably need to buy a new machine around 2020 when support for Windows 7 finally runs out. I’m still debating what to do about an OS, but simply switching to Windows 10 is not an option. At present I’m vaguely considering partitioning the hard drive so I can use Windows for gaming and WhateverWare, and Linux for everything else. (Mac is not an option either; I have an iPad, but I hate how restrictive the OS is. It won’t even let me change my default browser ffs!)

  23. Zaxares says:

    While it’s true that there’s still no reliable competitor to Windows regarding the IT space it occupies, Microsoft still has to be careful. Business history is littered with the corpses of other giant corporations who got too complacent, alienated their customers, failed to keep up with changing consumer demands, and ultimately they got left behind when a new company came on the scene and died.

    1. Cubic says:

      Stationary computers or even laptops seem to be turning into niche products anyway.

      1. Zaxares says:

        True, but Microsoft products still form the bedrock on which a lot of IT services depend. Don’t think so much about PCs, but about server infrastructure.

  24. Cubic says:

    I somewhat recently upgraded my Mac laptop to a spiffy new version that included an entirely new file system, and once it was over I had a further 40 GB free. Um, that’s … great?

    (But I haven’t noticed anything missing, so I guess it’s OK.) (And I take backups.)

    1. Droid says:

      I guess it’s possible that the filesystem changed the cluster size of your hard drive, or the “unit data size” if you will.

      (in case you don’t know: this value is usually chosen to be a power of 2, like 4096 Bytes, and then the OS aligns all files to start at a multiple of that value and take up however much space they need, and it keeps an index of all the clusters it has already filled up with data. So the downside of choosing the cluster size too small is that your index grows huge (it has to enumerate all “units” as far as I’m aware, so 512 Bytes will have 1024x the index size of 512 kB even on an almost empty drive). On the other hand, choosing it too large will make small files take up a sizeable chunk of your hard drive, as files cannot share one “unit” of space/one cluster on the drive.)

      So maybe the update decided to optimize that cluster size for you?

      1. guy says:

        The index only needs to enumerate units in use, but it needs to use addresses big enough to uniquely identify everything. Depending on the use case it won’t necessarily need to index every used cluster directly, but it can’t index things smaller than a cluster and there needs to be enough information to load requested data somehow, so at the least it needs to track the start of each file and if files aren’t contiguous either the overall index or the file itself needs to track each chunk.

        What this ends up meaning is that hard drives contain lots of space that’s assigned to files that don’t use that space and cannot be used for any other purpose, and changing the file system can free it up. Probably at some tradeoff in retrieval speed under certain conditions; it likely would increase fragmentation of files that periodically grow in size because they haven’t reserved contiguous space already.

      2. Cubic says:

        I looked through how the new filesystem (APFS) differs from the old one (HFS+) but honestly, I couldn’t see anything immediately obvious to explain all that free space. Block size is still 4K. OK, APFS is apparently especially good for SSD-equipped computers, but it’s not clear what that entails. (It has electrolytes?)

        It could be that there was a lot of old system junk around (obsolete logs or journals or something?) that could safely be deleted. I suspect the exact causes will remain a mystery. However that may be, I’m enjoying my temporarily roomy new quarters until the free GBs start approaching zero again.

  25. Rosseloh says:

    On one hand, that’s a pretty unusual thing to do so I can believe that it doesn’t impact many people.

    Hey, I’m unusual!

    I did notice the extra folders pop up and I was surprised and annoyed. This now urges me to go look in there and double-check, because I think there ARE files stored in there. Not by me, either, but because the redirection system isn’t working correctly. All my “user profile” files are supposed to get redirected to the SSD I specified for them, except music which goes to a regular drive. But I looked a while back and saw there were files in the regular C:\Users folder that shouldn’t have been there…..

  26. zackoid says:

    I think it’s important to note that, while the quality of MS’ updates, and this update in particular, have been unacceptably low, the update with the data loss bug wasn’t ever pushed to normal users. It only happened to beta users and those who downloaded it manually (if I’m reading correctly).

    Automatic updates are a good thing, generally, and hopefully this experience forces MS to get their shit together.

    I moved my documents folder so I better check my own stuff.

  27. TylerDurd0n says:

    See, here’s the thing: If people had actually listened to their IT departments, their nerd friends and every panicked report on the news and installed the goddamn updates when they were available, stopped downloading sketchy pirated software from the web and didn’t run trojan-infested key generators, didn’t click on any goddamn attachment that flew into their inbox, we wouldn’t be in this mess right now.

    But people – in general – are gullible and very, very hesitant to learn about the tech they use. Instead they just click on everything. And then bitch and complain about their own mistakes and expect their OS to become a de-facto nanny state that takes control of everything and makes sure that whatever they do, they won’t be able to compromise their systems.

    Hence mandated automatic updates. Hence walled gardens. Hence locked down APIs. Hence a 30% cut of App Store revenues. Hence the news jumping on every story, telling how Apple or Microsoft have failed to protect their customers, who – as we all know – are always right and most-cherished and yada, yada, yada.

    Aaaanyway.. – on the other hand it’s pretty damn convenient. All my Apple devices update over night, with TimeMachine/iCloud keeping hourly backups in case anything fails, and it really “Just Works” (until it doesn’t and may God have mercy on your soul if something actually stops working properly on a Mac).

    I still remember how cumbersome WindowsUpdate used to be in the Windows 98 days and how it took ages to update, failed for obscure reasons, how certain updates made updating itself impossible, etc. Microsoft has come a long way since then and Windows 10 – for me – is the first Windows OS that doesn’t drive me crazy and into the arms of Apple and I’ve been a Windows guy since Windows 3.1. It’s the closest thing Microsoft has achieved to “It Just Works” (then again, I’m using my Windows machine for gaming only, all my actual work is done on macOS, so YMMV).

    Which makes stupid mistakes like this one so hard to read. Because the insiders had reported this since 6 months ago. And they just didn’t do anything about it. It’s mind-bogglingly stupid, as otherwise this half-yearly update would have come and gone and nearly nobody would have bid an eye-lid.

    Except for nerds and gamers which manage to believe every fps-boosting snake-oil salesman on the planet, playing around with settings they don’t understand and usually have no effect anyway (e.g. enabling Triple Buffering in the nVidia control panel, which affects OpenGL only, disabling prefetch on SSDs).

    In 2018, you just install Windows 10, the newest nVidia driver and Do. Nothing. Else.That’s it. Your system runs automatically optimized. So we come full circle to people who don’t listen to the experts and instead click on everything (figuratively) again.

  28. Carlos García says:

    I’m one who made it so document, downloads and other folders (though not the whole of the Users/username tree can be moved from C:/ as then the OS won’t start, because when ordering a new PC, custom build, I wanted to keep a disk exclusively for OS and to save money and get a better graphics card for gaming I read OS can do well with 50GB so I bought a 64GB.
    It turns out some programs still don’t let you choose where to install them and some write quite a bit in the AppData I can’t move away from C: so I’ve been having problems to get some updates. In the bright side, the small OS HDD allows to put in a big file so the OS won’t have enough drive space to complete the update so it won’t apply it. The 1803 from April I couldn’t install until end of August when I found out where I was losing like 8GB of space in C:/ to free that.

Thanks for joining the discussion. Be nice, don't post angry, and enjoy yourself. This is supposed to be fun. Your email address will not be published. Required fields are marked*

You can enclose spoilers in <strike> tags like so:
<strike>Darth Vader is Luke's father!</strike>

You can make things italics like this:
Can you imagine having Darth Vader as your <i>father</i>?

You can make things bold like this:
I'm <b>very</b> glad Darth Vader isn't my father.

You can make links like this:
I'm reading about <a href="http://en.wikipedia.org/wiki/Darth_Vader">Darth Vader</a> on Wikipedia!

You can quote someone like this:
Darth Vader said <blockquote>Luke, I am your father.</blockquote>

Leave a Reply

Your email address will not be published. Required fields are marked *