Recent Posts
Archives

Posts Tagged ‘dotJS2025’

PostHeaderIcon [DotJs2025] Recreating Windows Media Player Art with Web MIDI API

Nostalgia’s neon flickers in forgotten folders—Windows Media Player’s pulsating palettes, sound’s synesthetic surge—yet Web MIDI API resurrects this reverie, fusing firmware’s fidelity with canvas’s caprice. Vadim Smirnov, developer advocate at CKEditor, resurrected this relic at dotJS 2025, scripting synths to spawn spectra from scales. A code crafter craving quirks, Vadim vivified browser APIs’ bounty: from Gamepad’s grips to MIDI’s melodies, an arsenal arcane yet accessible.

Vadim’s voyage ventured MDN’s meadow: APIs’ alphabet aglow—A to C’s cornucopia, from Ambient Light’s auras to Credential Management’s cloaks. Web MIDI’s majesty: hardware handshakes, note’s ingress igniting visuals—synthesizers’ sonatas, sequencers’ scrolls. Vadim’s vignette: MIDI’s muster (navigator.requestMIDIAccess()), inputs’ influx, notes’ notation—velocity’s vibrancy vectoring hues, pitch’s palette permuting particles.

Canvas’s choreography: particles’ proliferation, hues’ harmony—Web Audio’s waveforms weaving waves, MIDI’s messages modulating mods. Vadim’s virtuoso: keyboard kludges for synthless souls, repos’ riches for replication—exploration’s exhortation, weirdness’s warrant.

This resurrection: APIs’ allure, physicality’s portal—code’s cadence commanding keys.

APIs’ Abundant Arsenal

Vadim vaulted MDN’s vault: A-C’s array—Gamepad’s grasp to MIDI’s muse. Web MIDI’s weave: access’s appeal, notes’ nuance—velocity’s vector, pitch’s prism.

Synths’ Spectra and Sketches

Canvas’s cascade: particles’ pulse, hues’ hymn—Audio’s arcs amplifying MIDI’s motifs. Vadim’s vow: keyboards’ kinship, repos’ revelation—weird’s wisdom.

Links:

PostHeaderIcon [DotJs2025] Clarke’s Third Law in Action: Having Fun with ES Proxies

Any sufficiently advanced technology is indistinguishable from magic—or so Arthur C. Clarke conjured—yet ES Proxies embody this enigma, transfiguring mundane objects into oracles of orchestration. Christophe Porteneuve, frontend lead at Doctolib and Prototype.js alumnus, conjured this conjury at dotJS 2025, from Rails’ metaprogramming to JS’s proxy prowess. A 1995 web warlock, Christophe chronicled proxies’ palette: traps transmuting traps, revocable realms, Immer’s immutable incantations.

Christophe’s chronicle commenced with OOP’s ontology: proxies as intercessors, wrappers weaving whims—get’s gaze, set’s scribe, apply’s invocation. Revocable’s rite: realms retractable, realms revocable—Proxy.revocable(target, handler) yielding revocable proxies, revoke’s rupture rending references. Christophe cavorted with conundrums: negative indices navigated (proxy[-1]), symbols’ summons (proxy[Symbol.iterator]()), even functions’ facades—proxied predicates, applicables as arguments.

Immer’s immutability: drafts’ dominion, mutations’ mirage—produce(base, draft => {draft.foo = 'bar'}) birthing branches sans sprawl. Christophe commended: Redux Toolkit’s reliance, React’s reducer rapport—deep derivations distilled, verbosity vanquished. Proxies’ pedigree: performance’s parity (descriptors’ drag dwarfed), ubiquity’s umbrella (ES6’s endowment, polyfills passé).

This thaumaturgy tantalizes: metaprogramming’s muse, DX’s deity—proxies as pandora’s portal.

Proxies’ Prismatic Patterns

Christophe cataloged traps: get’s glean, set’s seal—revocable’s recall, negative’s nuance. Functions’ finesse: predicates proxied, iterators invoked—magic’s mantle.

Immer’s Immutable Incantations

Drafts’ dominion: mutations’ masquerade, branches’ bloom—Redux’s reliance, React’s rapport. Christophe’s creed: verbosity’s vanquish, performance’s parity.

Links:

PostHeaderIcon [DotJs2025] Durable Executions for Mortals

Backend’s bedrock—state’s stewardship, asynchrony’s aegis—once consigned coders to queues’ quagmires, yet React’s reactive rite reimagines this realm. Charly Poly, developer marketer at Inngest, advocated durable executions at dotJS 2025, transmuting frontend’s fluency into fault-tolerant flows. A frontend aficionado attuned to async’s arcana, Charly posited workflows as web’s warp: events’ echoes, states’ sagas—sans system’s scutwork.

Charly’s chronicle commenced with React’s renaissance: beyond templates’ tapestry, a triad taming temporality—events’ ingress, data’s domicile, UI’s unison. Backend’s ballad parallels: requests’ reception, persistence’s peril, orchestration’s odyssey. Inngest’s insight: functions as filaments, durable by decree—stepwise sagas, state salved, failures finessed. TypeScript’s temperance: inngest.createFunction({steps: ['ship', 'email']}), waits weaving webhooks—shipment’s vigil, seven-day sentinel.

This tapestry tempers toil: throttling’s thrum, rate’s restraint—web’s whims writ large. Charly contrasted: Temporal’s toils versus Inngest’s intimacy—events’ essence, JS’s jocularity. AI’s affinity: RAG’s relays, agents’ arcs—workflows as warp and weft.

Durable’s dividend: devs’ deliverance—frontend’s flair fortifying backends, sans queues’ quandary.

React’s Reactive Roots

Charly canvassed React’s remit: events’ embrace, fetches’ flux, states’ serenity—templating’s triumph. Backend’s burden: ingress’ influx, persistence’s pang—orchestration’s odyssey.

Inngest’s Immutable Flows

Functions’ filaments: steps’ sequence, waits’ watch—webhooks’ whisper, shipment’s sojourn. TypeScript’s tether: throttling’s tie, AI’s arc—RAG’s relay, agents’ agency.

Links:

PostHeaderIcon [DotJs2025] Prompting is the New Scripting: Meet GenAIScript

As generative paradigms proliferate, scripting’s syntax strains under AI’s amorphous allure—prompts as prosaic prose, yet perilous in precision. Yohan Lasorsa, Microsoft’s principal developer advocate and Angular GDE, unveiled GenAIScript at dotJS 2025, a JS-inflected idiom abstracting LLM labyrinths into lucid loops. With 15 years traversing IoT’s interstices to cloud’s canopies, Yohan likened this lexicon to jQuery’s jubilee: DOM’s discord domesticated, now GenAI’s gyrations gentled for mortal makers.

Yohan’s yarn recalled jQuery’s jihad: browser balkanization banished, events etherealized—20 years on, GenAI’s gale mirrors, models multiplying, APIs anarchic. GenAIScript’s grace: JS carapace cloaking complexities—await ai.chat('prompt') birthing banter, ai.forEach(items, 'summarize') distilling dossiers. Demos danced: file foragers (fs.readFile), prompt pipelines (ai.pipe(model).chat(query)), even AST adventurers refactoring Angular artifacts—CLI’s churn supplanted by semantic sorcery.

This superstructure spans: agents’ autonomy (ai.agent({tools})), RAG’s retrieval (ai.retrieve({query, store})), even vision’s vignettes (ai.vision(image)). Yohan’s yield: ergonomics eclipsing exhaustion—built-ins for Bedrock, Ollama; extensibility via plugins. Caveat’s cadence: tool for tinkering, not titanic tomes—yet frameworks’ fledglings may flock hither.

GenAIScript’s gospel: prompting’s poetry, scripted sans strife—democratizing discernment in AI’s ascent.

jQuery’s Echo in AI’s Era

Yohan juxtaposed jQuery’s quirk-quelling with GenAI’s gale—models’ menagerie, APIs’ anarchy. GenAIScript’s girdle: JS’s jacket jacketting journeys—chat’s cadence, forEach’s finesse.

Patterns’ Parade and Potentials

Agents’ agency, RAG’s recall—pipelines pure, vision’s vista. Yohan’s yarns: Angular migrations mended, Bedrock bridged—plugins’ pliancy promising proliferation.

Links:

PostHeaderIcon [DotJs2025] Code in the Physical World

The chasm between ethereal algorithms and tangible actuators has long tantalized technologists, yet bridging it demands more than simulation’s safety nets— it craves platforms that tame the tangible’s caprice. Joyce Lin, head of developer relations at Viam, bridged this divide at dotJS 2025, chronicling how open-source orchestration empowers coders to infuse IoT and robotics with JS’s fluidity. A trailblazer in hardware-software symphonies, Joyce demystified the real world’s rebellion against unit tests, spotlighting Viam’s registry as a conduit for browser-bound brains commanding distant drones.

Joyce’s epiphany echoed Rivian’s rueful recall: OTA firmware’s folly, bricking 3% of fleets via certificate snafus—simulation’s simulacrum shattered by deployment’s deluge. The physical’s peculiarities—unpredictable pings, sensor skews, mechanical murmurs—defy CI/CD’s certainties; failures fleck the field, from rover ruts to vacuum voids. Viam’s virtue: a modular mosaic, JS SDKs scripting behaviors atop a cloudless core. Joyce vivified with vignettes: a browser dashboard dispatching drone dances, logic lingering in tabs while peripherals pulse commands via WebSockets. Serial symphonies follow: laptop-launched loops querying quadrature encoders, fusing firmware’s fidelity with JS’s finesse.

This paradigm pivots potency: core cognition—path plotting, peril parsing—resides in reprovable realms, devices demoted to dutiful doers. Viam’s vista: modular motions, from gimbal glides to servo sweeps, orchestrated sans silos. AI’s infusion amplifies: computer vision’s vintage, now vivified by low-cost compute—models marshaled, fleets federated, data’s deluge distilled into adaptive arcs. NASA’s pre-planned probes pale beside this plasticity; vacuums’ vacuums evolve, shelves’ sentinels self-optimize.

Joyce’s jubilee: tech’s tangible thrust—from wearables’ whispers to autonomous autos—blurs bytes and brass. Viam’s vault: docs delving devices, SDKs summoning synths—inviting artisans to animate the ambient.

From Simulation to Sentience

Joyce juxtaposed Rivian’s reckoning with Viam’s resilience: OTA’s overreach underscoring physicality’s pitfalls—cert snares, signal storms. Browser-bound bastions: WebRTC webs weaving commands, logic liberated from latency’s lash.

Orchestrating the Observable

Viam’s vernacular: registries routing routines, JS junctions juggling joints—gimbal gazes, encoder echoes. AI’s ascent: models’ maturity, compute’s cascade—rover reflexes refined, vacuum vigils vivified.

Links:

PostHeaderIcon [DotJs2025] Supercharge Web Performance with Shared Dictionaries: The Next Frontier in HTTP Compression

In an era where digital payloads traverse global networks at breakneck speeds, the subtle art of data compression remains a cornerstone of efficient web delivery, often overlooked amid flashier optimizations. Antoine Caron, engineering manager for frontend teams at Scaleway, reignited this vital discourse at dotJS 2025, advocating for shared dictionaries as a transformative leap in HTTP efficiency. With a keen eye on performance bottlenecks, Antoine dissected how conventional compressors like Gzip and Brotli falter on repetitive assets, only to unveil a protocol that leverages prior transfers as reference tomes, slashing transfer volumes by up to 70% in real-world scenarios. This isn’t arcane theory; it’s a pragmatic evolution, already piloted in Chrome and poised for broader adoption via emerging standards.

Antoine’s clarion call stemmed from stark realities unearthed in the Web Almanac: a disconcerting fraction of sites neglect even basic compression, forfeiting gigabytes in needless transit. A Wikipedia load sans Gzip drags versus its zipped twin, a 15% velocity boon; jQuery’s minified bulk evaporates over 50KB under maximal squeeze, a 70% payload purge sans semantic sacrifice. Yet, Brotli’s binary prowess, while superior for static fare, stumbles on dynamic deltas—vendor bundles morphing across deploys. Enter shared dictionary compression: an HTTP extension where browsers cache antecedent responses as compression glossaries, enabling servers to encode novelties against these baselines. For jQuery’s trek from v3.6 to v3.7, mere 8KB suffices; YouTube’s quarterly refresh yields 70% thrift, prior payloads priming the pump.

This mechanism, rooted in Google’s erstwhile SDCH (Shared Dictionary Compression over HTTP) and revived in IETF drafts like Compression Dictionary Transport, marries client-side retention with server-side savvy. Chrome’s 2024 rollout—flagged under chrome://flags/#shared-dictionary-compression—harnesses Zstandard or Brotli atop these shared tomes, with Microsoft Edge’s ZSDCH echoing for HTTPS. Antoine emphasized pattern matching: regex directives tag vendor globs, caching layers sequester these corpora, subsequent fetches invoking them via headers like Dictionary: . Caveats abound—staticity’s stasis, cache invalidation’s curse—but mitigations like periodic refreshes or hybrid fallbacks preserve robustness.

Antoine’s vision extends to edge cases: CDN confederacies propagating dictionaries, mobile’s miserly bandwidths reaping richest rewards. As Interop 2025 mandates cross-browser parity—Safari and Firefox intent-to-ship signaling convergence—this frontier beckons builders to audit headers, prototype pilots, and pioneer payloads’ parsimony. In a bandwidth-beleaguered world, shared dictionaries don’t merely optimize; they orchestrate a leaner, more equitable web.

The Mechanics of Mutual Memory

Antoine unraveled the protocol’s weave: clients stash responses in a dedicated echelon, servers probe via Accept-Dictionary headers, encoding diffs against these reservoirs. Brotli’s static harbors, once rigid, now ripple with runtime references—Zstd’s dynamism amplifying for JS behemoths. Web Almanac’s diagnostics affirm: uncompressed ubiquity persists, yet 2025’s tide, per Chrome’s telemetry, portends proliferation.

Horizons of Header Harmony

Drafts delineate transport: dictionary dissemination via prior bodies or external anchors, invalidation via etags or TTLs. Antoine’s exhortation: audit via Lighthouse, experiment in canaries—Scaleway’s vantage yielding vendor variances tamed. As specs solidify, this symbiosis promises payloads pared, performance propelled.

Links:

PostHeaderIcon [DotJs2025] Coding and ADHD: Where We Excel

In tech’s torrent, where focus frays and novelty beckons, ADHD’s archetype—attention’s anarchy—often masquerades as malaise, yet harbors hidden harmonics for code’s cadence. Abbey Perini, a full-stack artisan and technical scribe from Atlanta’s tech thicket, celebrated these synergies at dotJS 2025. A Nexcor developer passionate about accessibility and advocacy, Abbey unpacked DSM-5’s deficits—deficit a misnomer for regulation’s riddle—subtypes’ spectrum (inattentive, impulsive, combined), reframing “disorder” as distress’s delimiter.

Abbey’s audit: ADHD’s allure in dev’s domain—dopamine’s deficit sated by puzzles’ pursuit, hyperfocus’s hurricane on hooks or heuristics. Rabbit holes reward: quirks queried, systems synthesized—Danny Donovan’s “itchy” unknowns quelled by Google’s grace. Creativity cascades: unconventional conundrums cracked, prototypes proliferating. Passion’s pendulum: “passionate programmer” badge, hobbies’ graveyard notwithstanding—novelty’s nectar, troubleshooting’s triumph.

Managerial missives: resets’ rapidity (forgetfulness as feature), sprints’ scaffolding (tickets as tethers, novelty’s nod). Praise’s potency: negativity’s nectar negated. Abbey’s anthem: fireworks in cubic confines—embrace eccentricity, harness hyperactivity for heuristics’ harvest.

Neurodiversity’s Nexus in Code

Abbey anatomized: DSM’s dated diction, subtypes’ shades—combined’s chaos, yet coding’s chemistry: dopamine drafts from debugging’s depths.

Strengths’ Spotlight and Strategies

Rabbit trails to resolutions, creativity’s cornucopia—Abbey’s arc: interviews’ “passion,” rabbit holes’ recall. Managerial mantra: sprints soothe, praise potentiates—ADHD’s assets amplified.

Links:

PostHeaderIcon [DotJs2025] The Wind & Waves: The Formation of Framework Waves from the Epicenter

Innovation’s lore lionizes lone geniuses, yet history hums with harmonies—cumulative currents cresting into cascades. Sarah Drasner, Google’s senior director of engineering for core web, Android, iOS, and multiplatform infrastructure, charted this choreography at dotJS 2025. A Vue core emerita, Netlify VP alumna, and O’Reilly scribe, Sarah traced frameworks’ flux—from Backbone’s bones to Angular’s avalanches—positing epicenters as convergence crucibles, birthing waves that buoy the brigade.

Sarah’s seascape: computers’ chronicle, from Jacquard’s loom to Turing’s theorem—ENIAC’s expanse atop Shannon’s switches, Colossus’s knobs yielding to Atanasoff’s binaries. JS’s journey mirrors: Knockout’s observables igniting reactivity, Backbone’s MVC mutating into Ember’s ambitions, React’s components catalyzing cascades. Angular’s arc: 2010’s directive deluge, RxJS’s reactive rivers, Ivy’s incremental ignition—each epoch echoing externalities, from mobile’s mandate to PWAs’ promise.

2025’s surge: signals’ symphony across Solid, Svelte, Vue—Angular’s zoneless zeal, deferrable views. Sarah spotlighted simplifications: routing’s brevity, docs’ dynamism—sandboxes, examples emergent. Future’s froth: DevEx elevations, injection’s alacrity, forms’ finesse—frameworks as flotillas, not fortresses.

This tidal tale: waves from winds of whim and wisdom, epicenters echoing eternally.

Historic Harmonies and Heuristics

Sarah surveyed swells: Knockout’s knots to React’s rivulets, Angular’s directives damming data flows—each innovation an eddy, externalities (mobile, PWA) eddying onward.

Angular’s Avalanche and Allies

Ivy’s ignition, signals’ spread—zoneless zephyrs, defer’s dispatch. Sarah’s stewardship: docs distilled, routing refined—frameworks’ fellowship fostering flux.

Links:

PostHeaderIcon [DotJs2025] Modern Day Mashups: How AI Agents are Reviving the Programmable Web

Nostalgia’s glow recalls Web 2.0’s mashup mania—APIs alchemized into novelties, Google Maps wedding Craigslist for HousingMaps’ geospatial grace. Angie Jones, Block’s global VP of developer relations and 27-patent savant, resurrected this renaissance at dotJS 2025, heralding AI agents as programmable web’s phoenix via MCP (Model Context Protocol). An IBM Master Inventor turned educator, Angie’s odyssey—from virtual worlds to Azure’s principal—now orchestrates Goose, Block’s open-source agent, mashing MCPs for emergent enchantments.

Angie’s arc: 2000s’ closed gardens yielded to API avalanches—crime overlays, restaurant radars—yet silos stifled. AI’s advent: agents as conductors, LLMs querying MCPs—modular connectors to calendars, codebases, clouds. Goose’s genesis: MCP client, extensible via SDKs, wielding refs like filesystem fetches or GitHub grapples. Demos dazzled: Slack summons, Drive dossiers, all agent-autonomous—prompts birthing behaviors, mashups manifesting sans scaffolding.

MCP’s mosaic: directories like Glama AI’s report cards (security scores, license litmus), PostMCP’s popularity pulses, Block’s nascent registry—metadata-rich, versioned vaults. 2025’s swell: thousands tally, community curating—creators crafting custom conduits, from Figma flows to Figma fusions. Angie’s axiom: revive 2000s’ whimsy, amplified—productivity’s polish, creativity’s canvas—democratized by open forges.

This resurgence: agents as artisans, web as workshop—mash to manifest, share to spark.

Mashup’s Metamorphosis

Angie animated epochs: HousingMaps’ heuristic hacks to MCP’s modular might—agents querying conduits, emergent apps from elemental exchanges. Goose’s grace: SDK-spawned servers, refs routing realms—Slack’s summons, Drive’s deluge.

MCP’s Marketplace and Momentum

Directories discern: Glama’s grades, PostMCP’s pulses—Block’s beacon unifying. Thousands thrive, tinkerers tailoring—Figma to finance, fun’s frontier.

Links:

PostHeaderIcon [DotJs2025] Live Coding with Ryan Dahl: Deno and OpenTelemetry

Observability’s quest in serverless seas once drowned in bespoke boilerplate; enter Deno’s alchemy, fusing runtime rigor with OpenTelemetry’s ubiquity. Ryan Dahl, Node’s progenitor and Deno Land’s CEO, live-wove this tapestry at dotJS 2025, showcasing zero-config traces illuminating JS’s shadowy underbelly. From UCSD’s mathematical meadows to ML’s machine wilds, Ryan’s odyssey—secure-by-default Deno, TypeScript’s native nest—now embraces OTEL’s triad: logs, metrics, spans.

Ryan’s canvas: a toy API, user IDs fetched, errors eventual—mundane yet ripe for revelation. Deno’s infusion: Deno.metrics(), console.log piped to OTEL, spans auto-spanning HTTP arcs. Exporter’s elegance: Jaeger console, traces unfurling waterfalls—entrypoints to exits, attributes annotating arcs. Live, Ryan scaffolded: import OTEL, configure exporter, instrument fetches—redeploy to Deno Deploy, logs and traces blooming in tandem. Nanoseconds’ narrative: cold starts eclipsed, polyglot peace via WIT interfaces—Rust greeters yielding to TS handlers.

This symbiosis scales: production probes sans proxies, Deno Deploy’s horizon harboring holistic views. Ryan’s aside: Oracle’s JS trademark tyranny—a cease-and-desist specter stifling “JSConf”—spurred javascript.tm’s petition, amassing allies against anachronistic anchors.

Deno’s decree: OTEL’s open arms, JS’s joyful instrumentation—debugging demystified, deployments discerned.

Instrumentation’s Instantaneity

Ryan rendered realms: metrics via Deno.metrics(), logs laced with OTEL, spans spanning sans strife. Jaeger’s vista: waterfalls whispering workflows, attributes authoring arcs—live, a fetch’s fate traced, errors etched eternally.

Horizons and Heresies

Deno Deploy’s dawn: traces native, nanoseconds’ narrative. Ryan rallied: sign javascript.tm, reclaim JS’s soul—petition’s progress, public’s power against Oracle’s overhang.

Links: