Sometimes there are accessibility options that speed it back up (don’t redraw until mouse let go) - I know you can turn off animations but not sure you can disable that one.
JS can run full GPU accelerated graphics with WebGL (and soon WebGPU), with shaders, complex geometries, textures, etc at 60 FPS: https://threejs.org/examples/#webgl_animation_keyframes.
The MacOS 9 demo as shown, is impressive, but it is far from optimized, given that it is a side project. But it's impressive all the same that it's emulating a full Mac environment in the browser. Read the developer's own comments on it: https://blog.persistent.info/2022/03/blog-post.html
The discussion was to answer, "And why is everything just so slow!"
> The web has a reputation for being slow, thanks to a traditional lack of GPU acceleration as well as 25 years of legacy code attached to its Document Object Model, that are pretty gnarly for browser vendors to deal with. That has nothing to do with JS itself.
That's not exactly true, though, as many discussions here on HN have demonstrated. The web is not slow due to, "a traditional lack of GPU acceleration." The DOM is the execution environment of JS in the browser. This isn't a discussion about JS in any other environment.
While you may have a vested interest in JS, that doesn't change its properties. Please, let's get back to the actual discussion.
I would hazard that the vast majority of "jank" you see in desktop apps today is due to cross-platform code. A large portion of this is webviews (ex. Slack), but some of it is also poorly-implemented shims between the platform's native APIs and shoehorning that into some cross-platform library (ex. Photoshop).
Wondering which model you have? Is it fanless? I’ve never used until o got my 2022 m2 air. It’s the best computer I’ve ever used.
Before that, 10 years of Mac Pro, and they’ve all been old (2010 models) and fast.
The 2010 Mac Pro doesn’t run macOS 11+, that might be its X factor.
The Mac Pro can run newer os with the help of open core. I can do many things with it like run Mac osX 10.6 using my modern amd rx570.
I can also run macos 12+ which I do. It runs great!
It’s more pronounced while recording but that’s the idea.
The Early 2020 MacBook Air is a joke from a CPU/Graphics perspective - even compared to other Intel Macs.
I still think something's wrong with your computer, as I have worked with multiple of that model and they weren't nearly this bad (even accounting for screen recording) - perhaps your cooling is worse?
It's just so much faster than any other GUI-based editor.
Sure, under the hood Electron is powered by Chromium V8 (which also powers Node.js), which is written in C++. But that is just the basic packages and services available to all Electron desktop and Node.js apps.
The current macOS is humungous, kernel aside. There is a variety of systems running under the hood (Spotlight, fsevents, Apple Events, duet, launchd, MIGs, XPCs, caches, endless network services, launch services, anti-malware background programs, AppleID agents, diagnostics, cloud/AppleID integration, auditing, RAM compression, energy management, backups, filesystem snapshotting, COW,.... not to mention that huge OS inside the OS that is the browser) that is more than a surgeon can know about the human body.
Of course most of that is spying on you and telemetry... But you just have much more features these days and stability and security increased a lot. If that is not added value for you just work on one of those "minimal" OSes that appear from time to time. I guarantee you that you will miss a modern "bloaty" OS in no time.
This is all very close to the metal. On early 68K Macs, these routines are in ROM, and are very compact with each call only 2 bytes of code, actually being actual CPU opcodes (trap instructions). So if you sequence these Toolbox invocations correctly, as a great master programmer of coroutines who never mistreats a handle as a pointer, you can render a complex scene with hundreds of polygons and a full screen of text in 200 milliseconds at 8 MHz.
But it takes 1000 lines of hand-holding the machine to do it.
Today, all of this is typically handled by instantiating a window object which draws into a private framebuffer which the system composites. That right there is tens of megabytes of RAM overhead. Then you use a thread to handle the UI and a thread to draw and etc. There's almost no boilerplate to just show a window. Perhaps one line of code. And it doesn't get overwritten by intrusive neighbour windows. Creating frameworks that can do all that bookkeeping in a flexible and general way (don't forget you want to be able to render vector fonts for any Unicode language) has a tremendous overhead.
There was an extension to enable window previews whilst dragging.
FWIW the slowest spec of DDR3-800 transfers 100MB is about 15ms.
Outlook is old, old code and still does things network I/O in the same thread as window repainting. I wouldn't treat it as a reference of anything other than how much Microsoft has struggled with the baggage from a bunch of mistakes they made in the 90s.
If you use Safari, Apple Mail, or almost any other macOS app, it is instantaneous — and unlike the older Mac apps like the Finder which did the rubber-band overlay until you released the mouse button, that means things like Safari seamlessly reflowing the entire Mac OS 9 emulator the whole time.
However in support of Apple's M1/M2 macs, I dont have this problem so much!
Apart from Electron based apps...
Which is why I find the wide spread love of VS Code so befuddling!
It's fine.. but so laggy when redrawing windows, switching tabs and so on!
Maybe it doesn't seem slow when in isolation, but compared to a GUI editor like Sublime Text, it's very noticeable!
But yes - your broader point stands and drives me nuts!
Somewhat gone are the days of upgrading your computer and everything being noticable faster because the software is the same! (to be fair, the M1 upgrade from Intel was impressive)
These days to have a decent experience (as a self confessed geek with high standards) you need an M1 Mac or on Linux and Windows a modern CPU, decent GPU and as much RAM as you can fit!
That's what always annoys me. I have a computer that's easily 100x or 1000x more powerful than my 1995 desktop yet so many actions have noticeable lag.
Like, try it, resize outlook right now (just stretch the side left and right). You'll see so much jank and jitter. How is something like that not instantaneous?