Many developers know that they should use it but don't really understand why.
Moreover many developers simply don't use it because they don't understand what it does for them and trying to adjust size/layout on the <Image /> component is kinda finicky compared to sizing a standard <img /> element with css.
Of course, this quirky layout api is to prevent layout shift but again, many developers don't know this.
Another thing i think many developers don't know is that every next app has a whole hidden image service spun up along side it at an endpoint "/_next/image" that takes the images passed to the <Image /> component and optimizes them by adjusting size, quality, and format.
The <Image /> component even tries to load different sized images based on the size of the device viewing the page and nextjs does this by filling in the srcset attribute for you on the underlying <img /> element.
But all of this is too magical imo. The developer experience when trying to use the <Image /> component is bizarre and the abstractions are leaky. To utilize it well you need to understand the underlying concepts/impl anyway.
<img /> concepts including srcset, sizes, and webp are important to understand as a web developer, especially if you find yourself outside of the context of nextjs.
Binsta does all this stuff for you but more transparently so that you're in control and get to learn about web fundamentals. Binsta also can handle videos which is cool and works outside of the context of nextjs.
Indeed it's hard to drag things around in 3d which is why we restrict movement of parts to the XZ plane effectively making it a 2d editor in a 3d viewer.
Hard to use? what do you mean, you drag parts around and then you click a simulate button, that's it. You think configuring a transient analysis with 8 parameters is easier? I'm sure it's easy for people who are already familiar with it. But face it, no high schooler is going to be itching to start an electrical engineering career because they got their hands on a spice simulator.
Aesthetics aside, we're interweaving a wasm port of ngspice with a microcontroller simulator and running realtime simulations all in the browser which i would say is innovative in several ways
Yeah, so we started diode 3 months ago and in the beginning here we're focused mostly on making electronics more accessible to youth/beginners.
One major advantage of web based tools is shareability and we hope to see content creators writing articles with embedded diode projects so that tutorials can include inline interactive examples.
This is already common in the software world with tools like codesandbox and stackblitz, but not so much in the hardware world. Hardware tutorials often include fritzing diagrams, but we think the next step is interactive simulations anywhere and everywhere.
3d opens up a few extra possibilities for us, but i think there's definitely advantages to 2d as well and seeing every solder joint on the arduino board is just a waste of cpu/memory at the moment. We have some camera presets that let you position the camera directly overhead for a top-down view which effectively is a 2d building experience. We might create a dedicated 2d view if there's enough demand for it!
3d does present some additional challenges, but we decided to go this route to reduce friction for beginners who might not understand how schematics or other abstract representations map to the real world circuits they're playing with
Moreover many developers simply don't use it because they don't understand what it does for them and trying to adjust size/layout on the <Image /> component is kinda finicky compared to sizing a standard <img /> element with css.
Of course, this quirky layout api is to prevent layout shift but again, many developers don't know this.
Another thing i think many developers don't know is that every next app has a whole hidden image service spun up along side it at an endpoint "/_next/image" that takes the images passed to the <Image /> component and optimizes them by adjusting size, quality, and format.
The <Image /> component even tries to load different sized images based on the size of the device viewing the page and nextjs does this by filling in the srcset attribute for you on the underlying <img /> element.
But all of this is too magical imo. The developer experience when trying to use the <Image /> component is bizarre and the abstractions are leaky. To utilize it well you need to understand the underlying concepts/impl anyway.
<img /> concepts including srcset, sizes, and webp are important to understand as a web developer, especially if you find yourself outside of the context of nextjs.
Binsta does all this stuff for you but more transparently so that you're in control and get to learn about web fundamentals. Binsta also can handle videos which is cool and works outside of the context of nextjs.