12 ms·
Oh, this is nothing. Windows force-updated my Notepad.exe to the new modern UI version. It is very visibly laggy for basic actions such as opening menus or sc
by jiggawatts 4y ago
Oh, this is nothing.
Windows force-updated my Notepad.exe to the new modern UI version.
It is very visibly laggy for basic actions such as opening menus or scrolling through text.
You have to be spectacularly bad at programming to make something so basic so slow in 2022 on a very high-end gaming computer.
Not just bad, but utterly oblivious. Casey Muratori excoriated the Windows Terminal dev team for failing to achieve a consistent 60 fps when displaying fixed-width text, which is such a trivial exercise that Casey whipped up a demo in like two weekends. [1]
Now the Notepad team insisted on following in the Windows Terminal team's footprints and slowing down the other fixed-width text app that needs to be lightweight fast for all sorts of reasons. Nobody needs Notepad to be pretty. Everyone needs it to work.[2]
Just amazing to see something like this happen. It's like a slow motion train wreck, ruining one Windows app at a time.
[1] These videos are especially "shocking" because the code he wrote is terse, straightforward, lightning fast, and more correct than whatever madness Microsoft was doing.
First weekend: https://www.youtube.com/watch?v=hxM8QmyZXtg https://www.youtube.com/watch?v=hxM8QmyZXtg
Second weekend: https://www.youtube.com/watch?v=99dKzubvpKE https://www.youtube.com/watch?v=99dKzubvpKE
[2] For example, opening a 300 MB log file takes a solid minute of time, which is absurdly slow. It also bloats this to 800 MB of memory usage. For comparison, TextPad opens it in 5 seconds and uses 30 MB of memory. VS Code, an electron application(!) opens in under 2 seconds.
- sixothree 4y agoNothing annoys me more than having to use notepad when remoted into a server. It is the biggest pile of crap and having something even halfway competent included in a very expensive operating system would be a baseline I could accept.
- smegsicle 4y ago> excoriated look at that- with so many wonderful words to chose from, why do people fall back on 'decimated' ?
- pessimizer 4y agoTo excoriate means to condemn. to decimate means to heavily damage. They are not synonyms.
- danielheath 4y agoThe Roman punishment of “decimation” was to make each ten-man team in an army murder one of their number (the whole team being killed if they refused). Practically “Saw”, in real life.
- smegsicle 4y agocrap i thought it meant 'skin alive'
- hnick 4y agoThat would be flaying. But in a medical context I think excoriating is skin removal... it's just not being used literally here.
- ShroudedNight 4y agoIt apparently does have continued use as an approximate synonym to chafe or flay when used in the appropriate context: https://www.merriam-webster.com/dictionary/excoriate https://www.merriam-webster.com/dictionary/excoriate https://www.collinsdictionary.com/dictionary/english/excoriate https://www.collinsdictionary.com/dictionary/english/excoria...
- ffhhj 4y agoClever way to push users from Notepad into OneNote, ruin their previous experience.
- robertsdionne 4y agonotepad dot electron
- jiggawatts 4y agoThe new Notepad uses XAML, probably using Win UI 2 or 3. VS Code, which is an Electron application, opens text files something like 20 times faster than the new Notepad. Whoever wrote and shipped the new Notepad should feel ashamed at their failure as a professional software engineer. This isn't some Github toy project. It's being forced onto billions of users, without the slightest bit of quality assurance or adherence to the basic practices of the art.
- beachy 4y ago> Whoever wrote and shipped the new Notepad should feel ashamed at their failure as a professional software engineer. Steady on old chap. Who's to say the hapless developer isn't embarrassed about things themselves, but is prevented from doing the right thing by some management edict, ancient process etc. My money's on that rather than one person's incompetence.
- donatj 4y agoYou put up the stink of your life or you quit. Anything less and you are a coward and shouldn't work in the industry.
- __ryan__ 4y agoIn this hypothetical, the individual is choosing between possible homelessness and making Microsoft look bad by following Microsoft’s orders and releasing bad software. And they should choose possible homelessness?
- userbinator 4y ago"possible homelessness"? For someone who at least met the bar for getting hired by Microsoft? On the contrary, I think that individual would easily find a job somewhere else.
- userbinator 4y agoFortunately you can copy the binary from an older version of Windows. At least you could thank Microsoft for being backwards-compatible. I've done this with calc.exe since ~Vista. the Notepad team That's probably part of the problem --- Notepad is something that could be written by a single person in less than a day (it's not more than a wrapper around a Win32 multiline editbox.) Yet give a whole team of multiple people the task of "modernising" it, and work will magically appear to fill the available resources.
- jpitz 4y agoObligatory Raymond Chen reference: https://devblogs.microsoft.com/oldnewthing/20180521-00/?p=98795 https://devblogs.microsoft.com/oldnewthing/20180521-00/?p=98...
- biryani_chicken 4y ago> For example, did you know that you can type https://www.microsoft.com/ https://www.microsoft.com/ into Notepad’s File Open dialog? I tried it. Everything in the File Open dialog got disabled except for the cancel button for about 30 seconds until it loaded. For comparison, curl took 2.3s (250ms in later runs so probably waiting for curl to load) and my browser took around 250ms with cache disabled as well. Why does it take Notepad so long?
- paulmooreparks 4y agoAs noted in the sibling comment, Notepad does A LOT of stuff, some of it to deal with users who use (abuse?) it to do things it was never intended to do, and MS saw fit to keep it doing those things for compatibility. It did these things prior to the update, and knowing MS I imagine it's had to maintain some compatibility with the older version. That said, I've not encountered the same slowness issues since updating that are discussed here. I'm not a fan of the menu animations, but it's a minor nitpick. For editing huge texts it is significantly more efficient, in my experience. I remember turning off word-wrap in the old notepad after loading a huge log file, then having to wait minutes for Notepad to become responsive again. Yeah, I know, anecdata.... Edit: The source code to the older Notepad is rather easy to find online. I won't link to it, but it's an interesting read.
- musicale 4y ago> You have to be spectacularly bad at programming to make something so basic so slow in 2022 on a very high-end gaming computer. I don't understand why desktop app user interfaces aren't blazingly fast and 240fps. That being said, I think current iOS and macOS can run their UIs at 120fps (and Apple devices still seem to have decent battery life.)
- duped 4y agoGPU accelerated vector graphics rendering is an open problem.
- naikrovek 4y agois it? MacOS has rendered the entire UI via PDF since OSX was first released.
- danielvaughn 4y agoafaik there just hasn’t been a lot of work done towards leveraging the GPU for vector graphics. The one example I can think of is the Slug library.
- djbusby 4y agoLike? SVG UIs everywhere? Could you make a UI that's like SVG and onclick handlers do the "magic". We could have a VB6 like SVG UI designer and program "actions" in $LANG?
- ygra 4y agoWPF would probably be that. In any case, modern UI toolkits often are vector-based anyway because of UI scaling. Heck, even ancient ones are, if you look at the Marlett font. That contained scalable UI elements for Windows 95.
- ehvatum 4y ago> afaik there just hasn’t been a lot of work done towards leveraging the GPU for vector graphic Sure there has been, in the form of the nvidia path rendering extension. https://developer.nvidia.com/nv-path-rendering https://developer.nvidia.com/nv-path-rendering It works great, on nvidia cards. Adobe Illustrator on Windows makes good use of it. Calling the extension from C/C++ and Python is no big deal.
- nyanpasu64 4y agoI've had the misfortune of watching Windows 11's Notepad crash on opening a specific text file I was taking notes in.
- newZWhoDis 4y agoThat was just the malware owning your system
- nyanpasu64 4y agoTo be fair, this HP consumer laptops did come with a lot of preinstalled bloatware malware, some which even lacked uninstallers. But IIRC the Notepad crash persisted after a so-called clean Windows reinstall from Settings, which removed most bloatware apps but not advertising shortcuts in the Start menu and etc.
- abruzzi 4y agoin fairness the old XP/Server 2003 notepad would frequently freak out on me and suddenly remove all <CR> (or <LF>, I don't really know) from a file I was editing (not a unix or mac generated file, so it was not a <CR><LF> issue.) That would force me to quit and reload the file and start my edits over again. This was almost always on servers, so I never bothered to find a fix or workaround, but it made me never trust notepad. So old notepad sucked, and apparently new notepad sucks.
- nyanpasu64 4y agoWindows 10 notepad was good for a brief glorious period, they fixed mixing status bar with line wrap, they made files with LF only render as multiple lines (don't know what happens when you save them). I have no plans to move off Ameliorated 10 to Windows 11 with their botched Notepad, slow store apps, and reduced ability to install explorer and taskbar customizations (though 7 already required patching out signature checks, and 8 through 10 progressively broke Aero Glass and widget controls patching).
- user3939382 4y agoSomeone once explained that MS hires a lot of short-term contractors who then don't own the consequences of the code they write. I wonder if this is still true and responsible for this.
- deepsun 4y agoSame thing in other faang companies, even with employees, who got the promotion and got hunting for another one. You won't get promoted for supporting an existing project.
- sgerenser 4y agoProbably not. Contractors tend to be hired for a lot for non engineering tasks (admin, recruiting, facilities) and the sometimes to fill out a dev team with specific skill sets or to cover some grunt work. In my experience on dev teams (in the US at least) FTEs outnumber contractors by at least 8:1, so I’d be surprised if much was done on Windows Terminal by contractors. (I work for Microsoft but not on anything even adjacent to Windows Terminal).
- naikrovek 4y agoto be fair to Microsoft, the terminal developers didn’t have a lot of experience with approaches like the one Casey used. Casey had 25+ years of game development experience to draw from, and the Windows Terminal team didn’t. game development is an entirely different paradigm than enterprise software development; they aren’t really comparable, other than they both produce software which successfully executes. in games, any code which does not directly contribute to the final product is not written, or is removed after it is not needed. in enterprise software, tens of thousands of lines of code are produced simply so the project layout is familiar for everyone working on it, because that’s important, somehow? Casey was right to complain about the performance, and to show them how it should work. licensing it so that they couldn’t even look at it was both 100% intentional and 100% a dick move, and i will not credit him for that. that code could have been used as a wakeup call regarding performance for a lot of people within Microsoft, but he licensed it so they can’t even look at it. perfomance of microsoft software isn’t great, i’ll agree. poking fun at them then hiding the code that was easy enough to write for him, but completely not obvious to the Windows Terminal team, doesn’t really make Casey the Software Quality Hero you’ve portrayed him as. Casey writes excellent software, don’t get me wrong. this particular example and series of events is not a high point in his career, to me.
- acrispino 4y agoIs releasing software for free under the GPL-2.0 a "dick move" ?
- naikrovek 4y ago> Is releasing software for free under the GPL-2.0 a "dick move" ? it is when you know that Microsoft employees are forbidden from looking at GPL code because they may unconsciously recall it and use it in a Microsoft codebase. Casey knew that at the time and admitted to licensing it GPL for that exact reason. That is a “dick move” to me. maybe i’m wrong. you be the judge, i guess.
- phenylene 4y agoAs you say, Casey is experienced and his code is valuable. MS should pay him if they want to look at his code! He said as much in his tweets… I mean, why should he be doing charity for MS by fixing their products for them?
- leeoniya 4y agoi had the same experience after they revamped the Windows Calculator. it went from instantaneous to ~2s startup with UI jank. (highly recommend Notepad3) i don't miss the ceremony of trying to debloat Windows after every unstoppable auto-update; what a goddamn nightmare that was. now permanently on EndeavourOS KDE/Plasma and everything "just works, very fast". i do wish that Affinity products where available for Linux, i dont think you can run them with Proton/Wine :(
- jiggawatts 4y agoI wrote a rant about the Windows Calculator change as well. They're loading things like Windows 10 Hello for Business login recovery assistant modules, NVIDIA telemetry, creating threadpools, writing multiple log files, and on and on. If you asked me what a calculator app "should" do, none of those would ever enter into my brain.
- yyyk 4y agoI didn't get a chance to use the new calculator yet (I usually use Linux. Windows 11 changes make it unlikely I'll 'upgrade' a VM). Is it this one? https://github.com/Microsoft/calculator https://github.com/Microsoft/calculator
- userbinator 4y agoYes, that's the horrible telemetry-infested (yes, really!) UWP monstrosity that MS was proud to open-source instead of the good old classic one (whose source got leaked a long time ago...) https://news.ycombinator.com/item?id=19321217 https://news.ycombinator.com/item?id=19321217 https://news.ycombinator.com/item?id=26579481 https://news.ycombinator.com/item?id=26579481
- matheusmoreira 4y agoFirst they ruined the perfectly functional calculator software by bloating it up to the point it takes several seconds to even appear on screen. Now you're telling me the next time they update Windows at work, the notepad will also be ruined. It just keeps getting worse. I mean how hard is it to do nothing and leave these old apps alone?
- sitzkrieg 4y agooverpaid ui designers that should probably be contracts maybe. so much pointless 'work' there is fogies complaining about change, then there is making things objectively worse for zero gain. christ and they are releasing a new taskmgr on win11 to boot
- vladvasiliu 4y ago> and they are releasing a new taskmgr on win11 to boot Which is borken. In the performance tab, I often see the right-hand side elements cut-off (like RAM size, etc) even though there's still space left in the window. Resizing it brings the text back. But hey, at least it now supports dark mode!
- sitzkrieg 4y agonothing is sacred! go figure
- WesolyKubeczek 4y agoWhat do you want from a company that cannot fit their progress indicator squares neatly into their own progress bars since 1995? (Anyone who has seen scandisk and defrag from Windows 95 will understand)
- ncmncm 4y agoThere's no excuse for 2 seconds. Machines are a thousand times as fast as in the 90s, and a text editor didn't take any 2000 seconds, or even 2 seconds, back then. Now they load up the monstrous libraries they need to negotiate a way to communicate with the desktop, and then negotiate that. A screen buffer is so yesterday, so I guess they have a scene graph now that some library renders whenever a pixel might have changed, triple-buffered to prevent artifacts.
- nik282000 4y ago> Windows force-updated my If you don't like how your OS works, pick a different one.
- lmm 4y agoIt's a monopoly.
- nik282000 4y agoUnless you are in a REALLY specific field (programming PLCs, interacting with weird hardware), everything is in a browser, an office suite or dev. You can stay corporate and run MacOS, or you could run Linux or BSD.
- mike741 4y agoThere are also bash scripts to stop Windows from force-updating. Its a lot less work than switching to an entirely new OS and doesn't require giving up video games. But if someone can afford to learn Linux, or any OS that doesn't force updates, then its probably better to do so in the long run.
- nik282000 4y agoWith Proton you can run a hell of a lot of your Steam library. It's far enough along that you don't need to be terminal guru any more.
- mike741 4y agoI've heard of Proton a few times but last time I checked only 600 out of Steam's 50,000+ games are compatible with it. Not bad by any means but using an older Windows version still seems to offer more at the moment.
- nik282000 4y agoUsing an older Windows version to run Steam is a really bad idea. Steam requires an internet connection, old versions of Windows, are by definition, not up to date.
- foobiekr 4y agoI have a 2000 line markdown file that I edit with the Mac native Markdown+ application. It is so slow that I can type full sentences before it can update. This on an M1 with 16GB of RAM doing nothing else. 2000 lines is nothing. I routinely edited book length texts in Microsoft Word for DOS on a 4.77 MHz 8088.
- aldonius 4y agoNot familiar with that specific app, but... I'm guessing it's trying to re-rendering the entire document every keystroke?
- KerrAvon 4y agoThat’s my guess. Hard to do it any other way for Markdown. However, it could probably do that on a background thread and still be responsive with large amounts of text.
- ComputerGuru 4y agoForget background threads. People don’t know basic programming principles. The thought of debouncing user input didn’t even occur to them.
- foobiekr 4y agoThis. Incredible. Debouncing was done in the early 70s and even someone on;y familiar with more modern similar ideas would note that Nagling was invented in 1984 at the latest...
- stingraycharles 4y agoNot a UI / frontend developer. Doesn’t denouncing user input increase the latency before changes are rendered onto the screen? I would expect the changes to be visible ideally in the next frame, but I guess that’s not really an option?
- thrdbndndn 4y ago> force-updated my Notepad.exe to the new modern UI version. > opening a 300 MB log file takes a solid minute of time But notepad.exe is always slow when opening large files. If anything I think it's better now than it was in XP/7.
- userbinator 4y agoIf anything I think it's better now than it was in XP/7. Unless you're using the same hardware, that's probably all hardware improvement.
- joe_the_user 4y agoYeah, I'm using Windows Home at the house of the person I'm working for and It's remarkable how much worse it is than either my Linux laptop or Windows of ten years ago. Media Player has apparently been replaced by "DVD Player(free)" which is not only intentionally crippled (you have to use the keyboard to access the DVD menu and if the Menu begin with no item having focus, you're SOL) but also crashes 75% of the time upon attempting to play the disk (I spent five starting the thing until I installed VLC). The entire scheme is apparently to try to leverage the monopoly MS has on low-end systems.
- WalterBright 4y agoMy text editor (a version of MicroEmacs) is 55Kb in size, and opens instantly. Of course, it was designed to be performant under DOS.
- ojr 4y ago“electron application”, so many smart people working on optimizing javascript, simplicity wins again
- hackerlight 4y ago> It is very visibly laggy for basic actions such as opening menus or scrolling through text. Some (not all) of the lag in Windows is on purpose by the UI engineers. Google "disable windows animation" for a starting point on how to fix it.
- Stratoscope 4y agoIt's not just the slowness, but the loss of basic functionality too. Keyboard shortcuts, for example. On my machine, Notepad still seems to have the traditional keyboard shortcuts. But in Paint they are completely missing. Alt-F-A? No Save As dialog for you. Close the app with unsaved changes? You get something like the traditional "do you want to save your work?" dialog, but the left and right arrow keys do not work in the dialog. And you can't type N or Alt+N for "Don't save". These do work in the latest Notepad on my machine. These keyboard shortcuts used to work in every Windows app, and especially in all the standard Microsoft apps. Now it seems to depend on whether the individual developer knows about them.
- johnfn 4y agoCasey Muratori is an extremely proficient programmer. Windows probably employs a couple of new grads to work on the terminal. (Even if they aren't, it'd be hard to come close to the breadth of experience that Casey has.) I never understood why this is a surprise at all - "Casey Muratori excoriated the Windows Terminal" basically translates to "L8 smarter than L2".
- Falkon1313 4y agoReally? Many of us discovered around the age or 13 or 14 that POKE #B8000 plus a little arithmetic was significantly faster than using OS calls to write text to the screen. We were wrapping those in functions, inlining ASM, and building text-mode UIs as teenagers - not as long-time professionals, not college grads, and without all the information available on the modern internet. Over the next few years, as graphical stuff became more common, we were trying different algorithms to optimize polygon fills, mouse drivers, custom fonts, etc. That was a part-time hobby for teenagers. Did not require greybeard gurus with lifetime achievement awards and college degrees and the entire internet of information always available. It was just the basics, the fundamentals, a few decades ago.
- jiggawatts 4y agoEveryone has somehow internalised the "fact" that all performance optimisation is a black art that only "hugely experienced" devs can possibly know. I'll give you an example. I've seen developers and DBAs working on databases simply create new indexes on the fly to fix some performance issue. It takes ten seconds, it's fairly safe, and it is relatively easy to gauge the effect. "Before minutes, after milliseconds". Done. I've seen other places where merely suggesting the use of an index -- no matter how beneficial, trivial, or safe -- resulted in everyone foaming at the mouth in abject terror. Wailing and gnashing of teeth. "How dare you suggest that we touch the mystical black box!? Begone with you, foul wizard!" This is what I saw with the Casey Muratori vs Windows Terminal team arguments. Everyone acts like Casey pulled out some dark tome only the most grey haired wizards are allowed to see and spoke secrets that Microsoft isn't even allowed to legally hear. Do you actually know what he suggested? Make a grid, just a 2D array. Put the characters in them. Use the characters to look up small images of individual characters in another grid. If the other grid is missing a characters, find an empty spot an replace it with the missing character image. (If the second grid is bigger than the first one, this is always possible.) That's... it. Just array lookups, 2D images, and a hashtable. This is child's play not wizardry.
- cholantesh 4y agoI liked the modern Notepad UI when I tried it, but to be fair I didn't use it for long, having discovered a regedit fix to replace it with N++.
- samstave 4y agowhy the fn heck does "notepad" even need an 'update'? An update to do what. >c:\copy con FILE.txt F6
- stjohnswarts 4y agoJust install notepad++ and associate it with the files you want, it will open instantly and has 100x the capability of notepad, even if you don't need it.
- deleted 4y ago[deleted]
- moralestapia 4y ago>Casey Muratori excoriated the Windows Terminal dev team for failing to achieve a consistent 60 fps Oh I remember that! He even got lectured by some expert nitwits at MS which were making dozens of arguments about how it was allegedly impossible to create a fast terminal (on modern machines, most of them with GPUs in the TFLOPS range, LOL). I have no idea why those "engineers" weren't fired on the spot.
- thefz 4y ago> You have to be spectacularly bad at programming to make something so basic so slow in 2022 on a very high-end gaming computer. With all the telemetry going on in the background, Windows is worse every day. I tried Windows 11 and was amazed at how it completely nullified having a top-tier mobile i7 paired with 32GB RAM. Take a look at how much a modern install of Windows is thrashing your drive. It's scanning everything, all the time.
- ridgered4 4y agoI'm of the opinion that all the telemetry is used to identify the remaining parts of Windows users can still rely upon and so they can be 'improved' by a PM looking to redirect an existing user base onto some new-crap. In this way, users have nowhere to hide. Any refuge from the new UI changes will be tracked, identified and targeted for termination.