5 ms·
The UI and behavior is amazingly close to the real thing. But I cannot help but sigh when the brush tool lags more than Paint lagged on a 233 MHz Celeron. I re
by blt 9y ago
The UI and behavior is amazingly close to the real thing. But I cannot help but sigh when the brush tool lags more than Paint lagged on a 233 MHz Celeron.
I really think this is an awesome project, but I am old enough (30) to remember fast performing GUI apps and I don't know if I'll ever "get over" losing them.
edit: hopefully it is an inefficient implementation and not the inherent slowness of web apps.
- TeMPOraL 9y agoOne thing I noticed is that it doesn't draw zoomed-in images correctly - pixels are blurry. Didn't check if this is Canvas or WebGL, but something in the code begs being changed from LINEAR to NEAREST. (EDIT: turns out to be a Firefox issue; Chrome shows the sweet pretty pixels correctly.) > I really think this is an awesome project, but I am old enough (30) to remember fast performing GUI apps and I don't know if I'll ever "get over" losing them. Same here (I'm 29). I'm getting tired of complaining, this literally feels like trying to turn back the tide of a river. We're doomed to use slow and shitty software until the present web fads go away and the ecosystem stabilizes.
- danbolt 9y agoThe canvas tag has `image-rendering: pixelated;` set, but Firefox currently doesn't support the setting right now. [0] Are you able to try it in Chromium? I set the property on the canvas to `-moz-crisp-edges` in Nightly and that fixed it. [0] https://developer.mozilla.org/en-US/docs/Web/CSS/image-rendering https://developer.mozilla.org/en-US/docs/Web/CSS/image-rende...
- TeMPOraL 9y agoOh. Didn't even occur to me that it could be a browser issue (after all, I would think that not antialiasing things in an API meant for per-pixel operations would be the default). Alas, you're right and guessed correctly - I tested it on Firefox. I just tried it on Chrome, and there the pixels show correctly.
- danbolt 9y agoYeah, I've made pixelated-looking games for browsers before, and setting the extra CSS property is something I frequently forget to do!
- tbabb 9y agoThe spline and polygon tools also antialias, unlike the old app. Not knocking it though; it's an impressively close clone.
- laurent123456 9y ago> until the present web fads go away I don't see that happening. Web apps gave us an environment where it's easy to create complex applications quickly. Now efforts are going towards making these apps smaller and faster, but I don't see developers going back to C++ to develop GUI apps like this one.
- TeMPOraL 9y agoI meant it primarily as "present fads in the web ecosystem", not "web as a fad" (I ultimately gave up on the latter; that's one hell of a tide and it ain't getting turned around). > Now efforts are going towards making these apps smaller and faster Yes, I'm hoping those efforts will eventually bear some fruits.
- kuschku 9y agoJava gave us an environment where it was easy to create complex applications quickly as well. The web will fade away just like Java did.
- pjmlp 9y agoI do like Java, but sometimes get a bit pissed off how things went, because we had "an environment where it was easy to create complex applications quickly as well" in the form of Smalltalk, VB, Delphi and C++ Builder. With the exception of Smalltak, all had native code generation, then Java happened.
- badsectoracula 9y agoVB (i assume you mean classic VB, not VB.NET) wasn't really an environment to create complex applications though - at least not in VB itself. The best use for VB would be to use to mix together components made in other languages (often C and C++). If anything people who tried to use VB as the implementation language for complex stuff regretted it later. I agree about Delphi and C++ Builder though, but Borland seemed hellbent on chasing enterprise unicorns - and pricing their products according to those dreams - so the software and the ecosystem suffered because of it. I'm not sure about Smalltalk since i haven't used it much to know, although the first time i came in contact with was with a demo of IBM's VisualAge Smalltalk that was given on a magazine coverdisk and i ran away screaming (ie. deleted it immediately) when it took ages for the environment to load and do anything on the 4MB 386 i had and even then after following the simplistic tutorial it created an "executable" (that actually needed some other stuff to run) that was like 10MB (which for my 130MB HDD was a gigantic waste of space). Of course that was probably the entire image, but i didn't knew it at the time - and it wouldn't change much really, i needed the space for games and other stuff :-P. I remember liking being able to drag arrows between elements in the GUI to hook events and properties together. I haven't seen that bit in the little i played with Pharo some time ago, i wonder if it was VA-specific. I tried to run the demo when i got a better PC, but for some reason it wouldn't work in Windows 95 and it has been years since i lost the disk. I wonder if it is available somewhere online but all searches point me to IBM's pages that have nothing.
- z3t4 9y agoSoftware will always fill up the capacity of the hardware. For me the brush tool is very smooth (running Chromium browser on a 5 year old gaming/dev rig).
- TeMPOraL 9y agoThe problem is that most software of today doesn't do much more than software of a decade+ ago. The capacity of hardware is filled with boilerplate, abstraction layers and an occasional UI animation sprinkled on top, instead of more powerful solutions to more difficult problems.
- epicide 9y agoExcept that what used to require a much larger and heavier machine can now be done with a phone, if not a watch. Cars don't really do much more than they did a century ago. This doesn't mean there haven't been HUGE improvements to make them do their function better.
- TeMPOraL 9y ago> Except that what used to require a much larger and heavier machine can now be done with a phone, if not a watch. That's just a function of miniaturizing hardware. Think how much longer your phone's battery would last if not for the software bloat. > Cars don't really do much more than they did a century ago. This doesn't mean there haven't been HUGE improvements to make them do their function better. They serve the same fundamental purpose (moving people around), but they are faster, more economical, much more safe, and offer large amount of convenience features. In a way, it's the exact inverse of what's happening with software.
- z3t4 9y agoSee for example the history of Photoshop and games! When making software you don't optimize more then needed. It just have to be fast enough. But where performance is a selling point, things have actually gotten faster, for example JavaScript engines. And compilers can probably compile a 20 years old program and make the binary more optimized then it was before.
- dahart 9y ago> We're doomed to use slow and shitty software until the present web fads go away and the ecosystem stabilizes. I have two possibly conflicting thoughts about this. (I'm a little bit older, and I feel like this has nothing to do with the web.) One, everything computer related was much, much slower, and much, much shittier when MS Paint first came out. I feel like software and software standards and hardware and the web, all of it, has improved. Two, I'm not convinced we'll ever escape shitty software, I think we always have and always will have slow and shitty software, outside the web and inside. We always want the machine to do more than we have a budget for, we always want to write features in less time than we have, we always want cooler features than others, etc., etc. Keeping software fast and good is time consuming, expensive, takes more self control than most have, and often just isn't the highest economic priority. In short, I think there are legitimate reasons we're always sitting at the threshold of pain rather than the threshold of pleasure.
- chadlavi 9y agoSeems to me like "shitty software" is just a moving target. All software is shitty because we can envision something better. In 10 years we'll all be complaining that Windows 20/macOS 23/iOS 21/Android {{confectionName}} is shitty, though surely it will be something that our 2018 brains would find amazing.
- TeMPOraL 9y agoI'll give you one definition of shitty that particularly annoys me: does the same or less than an equivalent made 10+ years ago, while running just as fast or slower than the old one. Advances in hardware seem to be mysteriously eaten somewhere.
- endless1234 9y agoOr perhaps it's just a fun demo, not intended to be an actual replacement in performance for native mspaint.
- blt 9y agoI know, it just sucks that the default platform for making apps now gives you access to ~10% of the machine's computing power.
- paraboul 9y ago> But I cannot help but sigh when the brush tool lags more than Paint lagged on a 233 MHz Celeron. Probably just a vsync "issue" with either the window manager (trade-off between screen tearing and latency) or the browser. You can use this tool : https://www.vsynctester.com/testing/mouse.html https://www.vsynctester.com/testing/mouse.html to test your browser. Interesting read up here : https://www.vsynctester.com/manual.html https://www.vsynctester.com/manual.html
- ygra 9y agoWas very responsive and fast on my phone in Edge. Seems to depend more on the browser than on the actual hardware.
- Ajedi32 9y agoWhat browser and hardware are you using? I couldn't get it to lag or even drop frames at all in Chrome on my laptop even after I opened a Coinhive miner in another tab. It wasn't until I tried editing a 4K wallpaper that it started feeling sluggish, and even then the only lag I got was during the brief period between brushstrokes, where it's trying to save undo history and persist the in-progress image to localstorage. I do suspect there's probably still a lot of room for optimizing this as well, both on the app's and browser's side of things.
- dahart 9y ago> I am old enough (30) to remember fast performing GUI apps and I don't know if I'll ever "get over" losing them. I'm in my early 40s and feel like there are more fast performing GUI apps now than there ever were before. Windows 3 was not fast. Incidentally, I'm on a beefy machine so JSPaint isn't lagging for me, but it does have a frame rate that makes the paint splatters far apart if you move fast. Is that what's happening to you, or is it actually lagging as in stalling longer than 30ms between splats?
- Ajedi32 9y ago> it does have a frame rate that makes the paint splatters far apart if you move fast It's been a while so I might be misremembering, but didn't the original MS Paint also do that?
- bootlooped 9y agoYes, I think so. It even does this on the newest Paint version on my Windows 10 machine.
- shrimpx 9y agoIt's kinda silly to reminisce about the 90s when it comes to computing performance. I remember the 90s. A windows upgrade took 2-7 days to complete, a large file could take 10-30 seconds to save, opening and quitting apps was on the order of 10+ seconds optimistically. Everything crashed all the time. This was the default behavior of a brand new $3,000+ machine. No, thanks. :-P