News for hackers. Stuff that matters.

rikarendsmp

Yea most dependencies in Rust land are entirely avoidable. Most even easily (like left-pad), sometimes its hard like a wasm engine. This wasm engine is the result of us trying to avoid a dep on a wasm engine from the ecosystem. It bloated the build time of our IDE by 300% to just include it (we were just 25% of the buildtime if i include wasmtime). Now was that a good idea? I don't know but we're getting very close now to a full product whilst still compiling in release build with all deps in <10s on a new mac. I'm personally really opposed to using small convenience libraries. Just write the code you need in a 'slightly less convenient way'. Use the standard library if you can. No need to pile on say entire networking stacks if you can talk to the platform networking apis for instance.
Essentially it is: avoid all dependencies, and if you take them on, like platform libs strip them down to only what you use
You should test it on a fast CPU tho on linux, its likely faster there. As you have said its likely an instruction cache issue.
For use in makepad (our Rust IDE/UI framework) as our extension-system Eddy Bruël built a new experimental spec compliant wasm interpreter that relies on sibling call optimisation to get within 4x of a wasm JIT. It has no dependencies and compiles in 2 seconds. Can ship on iOS and is very useful for low weight app extension systems
Re:Snappy UIs with WebAssembly and Web Workers on Tuesday August 08, 2023 @05:51AM (#37046640)
Browser apps are not only about these usecases, which are mostly a document-use-of-DOM feature. Which is fine for certain cases. However for a synthesiser UI, IDE, designtools or even a SDXL explorer flowgraph i don't really care about that. You want fast UI, with threads available to make workloads not hiccup the system. And thats what we're building with makepad. I found the stranglehold that HTML put on application developers over the years to be so demotivating i almost quit building applications that ran in a browser entirely. But luckily now we have wasm+rust+webgl/gpu and things can happen again.
Re:Makepad- Synthesizer Written in Rust on Thursday July 06, 2023 @06:15AM (#36613728)
It shouldnt be 'that' blurry tho, sounds like maybe you have a browser-zoom level thats not 100%. I try to deal with that, but there are browsers that mess it up (safari can for instance)
Re:Makepad- Synthesizer Written in Rust on Tuesday July 04, 2023 @03:50PM (#36591741)
Yea we're struggling a bit with super sharp rendering on lower DPI screens. It's on our todolist.
Re:Makepad- Synthesizer Written in Rust on Tuesday July 04, 2023 @03:04PM (#36591216)
What browser/OS are you on? Works fine here. Needs wasm+webaudio worklets and shared memory to work
Re:Makepad- Synthesizer Written in Rust on Tuesday July 04, 2023 @10:52AM (#36587520)
Good point, i'll work on it
Re:Makepad- Synthesizer Written in Rust on Tuesday July 04, 2023 @08:01AM (#36585524)
It's using lots of workers and SIMD. What is your OS/browser?
Re:Makepad- Synthesizer Written in Rust on Tuesday July 04, 2023 @07:28AM (#36585226)
We might, but only after we made our own. Our editor will finally break the barrier of inlining widgets/controls performantly. The editor is one piece with the visual designer (2 sides of a coin)
Re:Makepad- Synthesizer Written in Rust on Tuesday July 04, 2023 @07:01AM (#36584998)
Figma is an online designtool mostly used for doing UI designs.
Re:Makepad- Synthesizer Written in Rust on Tuesday July 04, 2023 @06:30AM (#36584718)
Yea that one is highest on the list.
Re:Makepad- Synthesizer Written in Rust on Tuesday July 04, 2023 @05:41AM (#36584313)
Thanks :) All the work of 'this is not rocket science'
Re:Makepad- Synthesizer Written in Rust on Tuesday July 04, 2023 @05:41AM (#36584310)
The RustNL presentation is a nice up to date view of where we are with makepad.
Re:Makepad- Synthesizer Written in Rust on Tuesday July 04, 2023 @05:40AM (#36584304)
Yep, with a visual studio style IDE for Rust. so Big project.
Re:Makepad- Synthesizer Written in Rust on Tuesday July 04, 2023 @04:45AM (#36583951)
We also have a much newer version however the workload of 'everything' has been a bit overwhelming since we aren't actually making a synth(thats just an example application) but an IDE, designtool and a framework.
Re:Makepad- Synthesizer Written in Rust on Tuesday July 04, 2023 @04:43AM (#36583923)
We can definitely support it being hosted, however this is extra work on the platform side. VST is a licensing nightmare tho, i didnt really feel like stepping into that for now.
Re:Makepad- Synthesizer Written in Rust on Tuesday July 04, 2023 @04:42AM (#36583914)
The audio worklet doesnt use postmessages anymore btw. I removed that way of commmunicating with the main thread. It's all shared memory in wasm now.
It's ok, we have been pretty quiet. Our primary launch goal is to have a full visual designer/IDE, not really push the UI framework stand-alone. However progress is happening and we are getting closer to that point as you can see in the talk above.
I used to use it, but its extremely font and glyph-sensitive wether or not it works. And if it doesn't work there is no easy fix (or ability to recognise it nonvisually)
I tried this, using https://makepad.dev our GPU accelerated UI and renderstack. And unfortunately it wasn't a great experience. Text popping forward for whatever reason is not really an improvement (i tried indent depth, syntax highlighting reasons, cursor behavior). Maybe 'veeeeery' subtly could do something, but otherwise you dont want it to break visual symmetry as we are used to
Re:Google Docs will now use canvas based rendering on Wednesday May 12, 2021 @05:34PM (#27135419)
Back in the day i made it work on Edge on an xbox. This was microsofts browser +JS engine. Nowadays its just chrome though. If it has problems, i'd be highly surprised.
Re:Google Docs will now use canvas based rendering on Wednesday May 12, 2021 @05:27PM (#27135337)
It may sound stupid, but this was the feature i tried to add to ACE and i couldn't. And i spent the last decade trying to invent a drawing API that would let me do this effect.
Re:Google Docs will now use canvas based rendering on Wednesday May 12, 2021 @04:40PM (#27134907)
Makepad kinda has a minimum GPU spec. It's aging-out for the people who don't have this, but some people still don't have gpu's that can bitblit their screen with a solid color.
Re:Google Docs will now use canvas based rendering on Wednesday May 12, 2021 @04:39PM (#27134898)
It most definitely does not.
Re:Google Docs will now use canvas based rendering on Wednesday May 12, 2021 @04:24PM (#27134712)
I tried for it not to be, however there is no technically specific reason no.