Demonstrations

Audio Waveform Visualization Simple Synthesizer Inline Editor Paint JavaScriptCore

Web Paradigm

organizational conventions

i like to inline my css and js, as opposed to using an html link tag or analagous externalization mechanism. The reason for this is simple: the css must be parsed before the first paint takes place, and inlining will reduce the number of fetch calls on the initial site request. not to mention reducing the time to first paint. less bandwidth, quicker loadtime. just so you dont think im a total rookie noob, is all.

on react, the state of the arc

i actually do enjoy programming web applications in react, however i do not feel as though this is a value-justified layer of complexity. javascript is such a unique language, and the web is so young. My preferred frontend development-stack needs only vanilla javascript. so many features! so robust!

when i wrote my first substantial react.js web application (early in my programming endevours, writing a chess camp placement tool, aimed towards ensuring students were accompanied with similarly skilled campers-) i ran into a situation where i had to write an iterator. I learned how to yield in highschool,and this was a rudimentary use case: cycle through 20 FENs (chess board states), where the contestant was nudged to make the single best move with which they could concieve. As an entry level javascript web-tech-programmer, it was not clear to me what features were ECMAScript/ES6-derived, and which were discreet extensions to the afforded language- react.js suga'.

when react became public, and popular, and the basis of hiring criterion, (around 2015), javascript was undergoing huge linguistic changes. namely, the addition of modules, classes, inheritance, and critical APIs like IndexedDB, Web Workers, navigation.serviceWorker, WebSocket, etc. With each of these APIs, in addition to new linguistic features, myriad new combinations of new and existing clientside-web-apis are unlocked. there is no advertized capability of web sockets inside web workers, you see. not at the time of writing atleast! With regards to the uniqueness in/of event listeners, asyncronous i/o, browser-specific runtime optimizations, web assembly, etc., javascript simply does not have well-understood-anscestors.