Join us today at 12pm PT for another open mic episode of Javascript Jam Live. Last time on JavaScript Jam Live, we were joined by Nick Taylor and Bekah HW from Open Sauced to discuss getting into open source and being respectful of open source maintainers.
Million v3, developed by Aiden Bai and team, introduces several updates aimed at improving React application development efficiency and performance. Installing Million v3 in projects using React or frameworks like Next, Astro, Vite, Remix, or Gatsby can be done with npx million@latest
.
The update from version 2.x.x to 3.x.x is designed to require no changes to existing code. The release of Million v3 is part of ongoing efforts to address web application performance issues. Key features of Million v3 include:
The team behind Million is seeking to expand, inviting applications from frontend developers and engineers with experience in dev tools and machine learning, based in the Bay Area. The Million project encourages feedback and participation from the development community. Developers are invited to share their experiences, join discussions on Discord, and contribute to the project on GitHub.
In summary, Million v3 offers updates focused on improving performance and developer experience in React application development. The introduction of a new hydration system, a rewritten compiler, expanded internationalization, and the preliminary launch of Million Wrapped are central to this release.
Theo gives his thoughts on LLRT, the new JavaScript runtime from AWS.
Find us online at the following links:
]]>Join us today at 12pm PT for another episode of Javascript Jam Live. This week we'll be joined by the Open Sauced team including Nicky T from New Jersey, Canada.
Last time on JavaScript Jam Live, we were joined by Ishan Anand, Rishi Raj Jain, and Bro Nifty to discuss the JavaScript news of the week.
In the ever-evolving landscape of web development a new player has emerged, dubbed the "AHA Stack," this approach combines Astro, htmx, and Alpine.js to offer a streamlined and efficient way to develop web apps. The philosophy of the AHA Stack is to simplify web development by sending HTML over the wire instead of relying on heavy JavaScript SPAs.
It embraces the foundational technologies of the web (HTTP, HTML, CSS, JavaScript) along with other web standards to build upon them without overcomplicating the process. For frontend developers familiar with React/JSX, the AHA Stack offers a similar DX but with a reduction in complexity.
The stack shifts the focus towards generating HTML on the server side and minimizes the reliance on client-side JavaScript. This approach not only simplifies the development process but also enhances performance by reducing the load on the client side. The approach is declarative, favoring minimal JavaScript usage.
It emphasizes using HTML for UI updates and employs HTML partials to refresh specific parts of the page without needing a full page reload. It represents a shift back to the basics of web development, leveraging the server's power to handle most of the heavy lifting. The stack allows developers to build multi-page applications (MPAs) efficiently, with the server responsible for rendering HTML pages.
This contrasts starkly with traditional SPAs, where JavaScript frameworks dictate the page content. By incorporating "JavaScript sprinkles of interactivity," the AHA Stack aligns with the original purpose of JavaScript. By adding interactivity to web pages without being the core driver of content and structure, the stack is a call to embrace the foundational technologies of the web and use them to our advantage.
Find us online at the following links:
]]>Join us today at 12pm PT for another open mic episode of Javascript Jam Live. Last time on JavaScript Jam Live, we were joined by Tobiloba, Fuzzy Bear, and Dan Shappir to discuss our predictions for JavaScript in 2024.
The web site versus web app dichotomy has been debated to death and many wish for the distinction to be abandoned entirely. Jake Lazaroff brings a fresh perspective to the topic and offers a new way to think about the landscape of web experiences. He emphasizes a spectrum that exists between two categories: online versus offline and static versus dynamic.
These spectrums are used to determine the appropriate technologies for building a web project. The article argues against a binary categorization of websites or web apps and proposes a more nuanced approach with four quadrants containing distinct characteristics and technological needs: informational, transactional, realtime, and local websites.
The article also discusses the role of JavaScript frameworks in web development, noting their use in creating dynamic aspects of websites. However, there is a growing trend towards more declarative ways to achieve dynamism. Approaches using HTML, CSS, web components, and technologies like HTMX allow for dynamic interactions without fully relying on JavaScript frameworks.
Finally, the article touches on the empowerment and convenience local-first software and asynchronous apps offer. It concludes by expressing hope for the future of web development: better declarative methods for dynamic interactions, more local-first software for real data ownership, and judicious use of JavaScript plus better implementation of service workers for offline use.
HTMX continues to be having a moment and the video HTMX For React Developers in 10 Minutes by Jack Herrington makes the case for HTMX being a lighter weight alternative to React that makes building simple interactive applications a whole lot easier.
Find us online at the following links:
]]>As 2023 draws to a close, we find ourselves reflecting on how grateful we are for those who joined us and contributed to our discussions this year. In the spirit of the holiday season, and to give our team some well-deserved rest, we'll be taking a break from JSJam Live in December.
JSJam Live will return on Wednesday, January 3rd at our normal time, 12:00 pm PT. We encourage everyone to use this time to unplug and enjoy the company of loved ones. We're excited to continue exploring the world of JavaScript with you and look forward to bringing you even more engaging and valuable content in 2024!
If you need more content while we're away you can checkout some of our favorite 2023 episodes from the JSJam Video backlog including:
Find us online at the following links:
]]>Vite, the popular JavaScript build tool and development server for web applications recently released their 5th major version a year after the release Vite 4.
The project has been seeing increasingly more npm downloads and overall growth in the ecosystem. The list of frameworks that have adopted Vite now includes Astro, Nuxt, SvelteKit, Solid Start, Qwik City, RedwoodJS, and Remix.
Evan You's presentation at ViteConf introduced the long-term plan to work on Rolldown, a Rust-port of Rollup with compatible APIs. This initiative aims to enhance build performance and reduce inconsistencies between development and production environments. Rolldown is currently in the early stages of development, with plans to open source the codebase.
Some of the key changes in Vite 5 that are highlighted in the Migration Guide include:
server.warmup
option to improve dev server startup time by pre-transforming commonly used modules.In the release announcement, users are encouraged to get involved in the Vite community, contribute to the project, and provides resources for contributing, such as:
Dylan Pierce from Pipedream (who previously dropped in as a guest on JSJam Live) joined the show to explain how to use Pipedream's AI plugin to scrape and analyze web data:
Find us online at the following links:
]]>This week, we'll be discussing the recent Next.js Conf and talking with attendees and speakers from the event. You can also listen to the previous episode of JSJam Live on X/Twitter.
Meta Open Source has unveiled Docusaurus 3.0, a new major release that streamlines the creation of premier documentation websites. One of the most salient features of this release is its array of new capabilities and dependency updates. Sites of a simpler nature may only require updates to a handful of dependencies, but there are some breaking changes to take note of. See the v3 upgrade guide for users for a comprehensive list of breaking changes.
The transitions from Node.js v16 to v18, React v17 to v18, and MDX v1 to v3 all emerge as central challenges for those looking to adopt Docusaurus v3. The good news is that the majority of breaking changes arise from updates addressed internally. However, users with complex sites should consider the official recommendations in the upgrade guide such as visual regression tests.
React 18's inclusion in Docusaurus 3.0 paves the way for a phased adoption of capabilities such as build-time React Server Components. The platform has also broadened its horizons by extending support to ES Modules, TypeScript configuration files, and TypeScript 5.0. Users can also anticipate a more enriched visual experience, thanks to the enhancements in code block syntax highlighting.
A slew of other enhancements pepper this release including the ability to render a new spectrum of diagram types with Mermaid v10, the addition of normalized SEO front matter support, the integration of query-string data attributes, and the roll-out of various new ESLint rules. With the core infrastructure updated, the Docusaurus team is gearing up to release even more user-centric documentation features in the upcoming minor versions.
Find us online at the following links:
]]>We'll be scaling back our weekly Twitter Spaces to twice a month for the foreseeable future so there will not be any JS Jam Live this week. However, you can listen to last week's conversation with Rishi Raj Jain, Bronifty, Sabin Adams, and Tobiloba right here.
Java always claimed that with the JVM you could, "write once, run anywhere." This was a dubious proposition for most of its lifetime. But now that the JVM officially supports Node and V8, this vision is finally a reality! That's right, your JavaScript code can now run in a JVM!
Who knows, it might even run on a JVM Lambda Handler! You'll need to account for the 15 second cold start but this incredible milestone ensures that no developer with ever again be tasked with the unreasonable and cruel assignment of having to write Java code.
If you're like me and have heard of React Forget but mostly just smile and nod whenever it's brought up, this video will give you a good overview of what it means for the future of React.
Find us online at the following links:
]]>This week on JavaScript Jam Live is another open mic, join us to discuss the JavaScript news of the week. Last week we were joined by Todd Libby to discuss his upcoming talk about deceptive patterns and FAST.
The latest release from SolidJS emphasizes strengthening foundational elements rather than introducing new features. As the transition from SolidJS 1.x to 2.0 is underway, the team has unveiled their new reactive experiments under @solidjs/signals
. This update targets advancing projects like SolidStart
by refining core components, notably Async and Resources.
@lxsmnsyc
.@intrnl
, removes unnecessary quotes, leading to more concise templates.In essence, while this release may not boast a plethora of new features, it fortifies the foundational structure of SolidJS, promising improved efficiency and performance for future iterations.
Find us online at the following links:
]]>On this week's JavaScript Jam Live, we'll have MagnoliaJS conference speaker Todd Libby to discuss the conference and his upcoming talk. Join us tomorrow at the usual time and place on Twitter (ahem X) Spaces.
Last week we had an
]]>On this week's JavaScript Jam Live, we'll have MagnoliaJS conference speaker Todd Libby to discuss the conference and his upcoming talk. Join us tomorrow at the usual time and place on Twitter (ahem X) Spaces.
Last week we had an informative conversation about the current hiring market for Devs, accessibility, and the joys of home-baked apps with Kayla Sween, Blake Watson, and Taylor Desseyn from MagnoliaJS. You can listen to it here.
Last week, an important but underreported clarion call went out to the web community for participation in Interop 2024. No, it's not the latest developer survey nor a hot new conference. It's a joint project between Apple, Bocoup, Google, Igalia, Microsoft, and Mozilla to ensure interoperability between browsers.
Ironically, it's only when a browser implements something new (and by definition) non-standard, that it tends to make headlines. So it's extremely easy to take the standards work of the Interop group for granted. You might think that once something is a "standard" everyone just follows it. But like laws, web standards are words on a piece of paper unless we give them teeth through action. In the case of Interop, that action is a series of automated tests to ensure the implementation of these standards behaves uniformly across different browsers. By moving beyond the basic "can-i-use" Feature X in Browser Y checkbox, the Interop group assures that when developers deploy Feature X in a browser, they're spared from confronting unpredictable variations or unexpected edge cases.
For those of us old enough to remember, the rise of jQuery and similar libraries of that era was partly to spare us from these differences. As browsers continue to advance and add new features, differences in implementation continue to pop up without the checks and balances of the Interop project. To illustrate both the problem and the progress, in the past nine months, the number of passing Interop 2023 tests has gone from 48% to 75% in all major browsers (with experimental versions passing 87% of the tests).
You can review the proposed focus areas for Interop 2024 in Github. Note that this isn't the right forum to propose a brand new Browser feature but rather if you have a thorny issue with a defined web standard not behaving properly across browsers.
Last week we released our interview with Matija Sosic and Martin Sosic about wasp-lang, an innovative declarative language for building apps with Node.js, React, and Prisma. Check it out here.
Find us online at the following links:
]]>This week we're back live on X (formerly Twitter) Spaces with special guests from from the MagnoliaJS conference, a software development conference in Jackson, Mississippi. Organizer Kayla Sween and speakers Blake Watson and Taylor Desseyn will be joining us to discuss
]]>This week we're back live on X (formerly Twitter) Spaces with special guests from from the MagnoliaJS conference, a software development conference in Jackson, Mississippi. Organizer Kayla Sween and speakers Blake Watson and Taylor Desseyn will be joining us to discuss the conference and their upcoming talks. Tune in tomorrow, at the same time as always.
The JavaScript ecosystem can be like the weather. If you don't like your current framework, just wait a minute and there will be a new framework to try.
This past week saw a bunch of discussion around Nuejs, a new framework that's kind of like if Htmx and Vue had a baby. It combines the ease of use and reactivity of Vue with the HTML-first development model of Htmx. As is de rigueur for a new framework, Nuejs promised not just a simpler approach but also a much smaller and faster library compared to {insert your favorite framework}.
Knives quickly came out against some of the triggering statements, including being anti-Typescript and anti-Tailwind. Until Ryan Carniato publishes an analysis, the best level-headed take on Nuejs was from Ben Holmes. Meanwhile, a vibrant discussion broke out on Hacker News, with users pointing out how it repeats past design mistakes other frameworks have learned and moved on from.
It's worth remembering of course that the biggest framework at the moment, React, met a hostile reception when it was first launched and questioned the existing best practices at the time. But technical issues aside, the biggest challenge any new framework faces is simply getting attention amongst all the noise. In that sense, maybe the controversy is actually marketing strategy.
Okay, I lied. We actually have two more things!
The first is our video interview with Brian Douglas, an early influencer in the Jamstack community and now founder of Open Sauced.
The second is our interview with Ryan Magoon from Paypal, where he discusses accessibility and cultivating empathy for disabled users.
Find us online at the following links:
]]>As we mentioned last week, we're taking this week off so there won't be a JavaScriptJam Live space on Wednesday. But don't worry, your favorite JavaScript Twitter (X) space will be back next week (October 4) at our regular time with a
]]>As we mentioned last week, we're taking this week off so there won't be a JavaScriptJam Live space on Wednesday. But don't worry, your favorite JavaScript Twitter (X) space will be back next week (October 4) at our regular time with a special guest from the MagnoliaJS conference. Tune in next week to find out who!
Last week, we discussed WordPress's new 100 year pricing tier (only $38,000), the implications of Chrome 118 Beta for the web, and using feature flags in React applications. You can listen to the recording here.
At last week's JavaScriptJam Live we discussed the implications of Chrome 118 beta, and this week it was Safari's turn with the release of Safari 17.0.
Unlike Android, iPhone users rapidly adopt the latest iOS updates with 80-90% of devices running the latest version. Combined with Apple's large market share in many markets this means that when Safari rolls out a new version you suddenly have a sizable addressable market for the latest features.
As befitting a design-focused company like Apple, many of the latest Safari features relate to new CSS and appearance options. Notable updates include:
While Safari has been sometimes accused of moving slower, the team shows they're picking up the pace.
A friend of the pod, Dev Agarwal, recently covered the JS ecosystem's perennial "What is Jamstack" topic with a new video "Jamstack Is Dead... Or Is It? Architecture In Depth" that also serves as a history lesson in how we got here.
Find us online at the following links:
]]>This week is another open mic to discuss the JavaScript news of the week. We'll be taking next week off, so don't miss your chance to hang out and get your fill of JSJam!
Last week, we discussed the release of Bun 1.0, the demise of Rome, and the upcoming Strange Loop conference. You can listen to the recording here.
Released on Wednesday, September 13, 2023, the Chrome 118 beta brings a plethora of enhancements across platforms including Android, ChromeOS, Linux, macOS, and Windows. This version is built with user experience and developer convenience in mind. Here's a rundown of all the new additions:
label
attribute is used uniformly across different modes.beforeunload
handler dialog update: Refining cancel dialog conditions.Ryan Carniato had Pooya Parsa from the Nuxt team on his stream and he made a big announcement related to SolidStart! They will no longer be pursuing the Astro integration and will instead be using Nitro as their underlying server for the SolidStart metaframework. Check out the video to learn why:
Find us online at the following links:
]]>We took last week off for a much needed summer vacation, but this week we'll be covering the final year of the legendary Strange Loop conference! Historically hosted in St. Louis, Missouri, the multi-disciplinary conference brings together developers and thinkers building tomorrow's technology. Join us tomorrow, same time as always.
Bun 1.0, the all-inclusive toolkit for JavaScript and TypeScript, has now officially launched, declaring that it is ready for production use. The announcement post highlights that the JavaScript tooling ecosystem has grown very complex over the years.
Bun aims to eliminate this complexity while retaining JavaScript's strengths. It provides a voluminous list of stalwart JavaScript and TypeScript tools it aims to replace and how it plans to replace them. The release includes the following headline features:
node
, npx
, nodemon
, dotenv
, and cross-env
.tsc
, babel
, and tsx
.esbuild
, webpack
, parcel
, and rollup
unnecessary.npm
, yarn
, pnpm
, and lerna
.jest
and vitest
.Bun positions itself as a unified and streamlined solution that creates a holistic development experience. But of course, it's not the first or only attempt at building such a project. On the bird app, I made a comment about the irony of Bun 1.0 being released in quick succession after the dissolution of the Rome project and subsequent funeral/rebrand to Biome.
There's something very poetic about @bunjavascript hitting 1.0 the same week @rometools finally collapsed.
While no one was paying attention, an entirely different person built essentially the exact tool that Rome promised to provide and set out to build in early 2020.
The biggest difference was @jarredsumner lit his own savings on fire to do it instead of everyone else's.
If you're not familiar with Rome's history and the accusations levied against its founder, that message likely doesn't make any sense. I'd recommend reading the excellent account of Rome's history (complete with event timeline) by Bytes. It's the kind of history that can only be told by someone who lived through it in real time.
In a funny coincidence, Bytes covered Rome for their 9th issue in 2020 as well as FSJam (my own podcast) which covered Rome for our 9th episode.
When Rome was announced in 2020, I was one of the many JavaScript developers immediately sold on the vision. I believed there could be a better way to develop our apps by consolidating the many disparate tools and processes we'd been using at the time (and still do today) into a single platform. I became even more personally invested in the mission the following year.
I befriended former RedwoodJS contributor, the late, great Aldo Bucchi in 2021. Aldo was multiple years deep into building a unified JavaScript platform that included everything you would need to develop a large scale, high volume application. Sound familiar? Called Decoupled at the time, Aldo later renamed the project to The Lambdragon. Aldo was a very guarded person and it took a lot to earn his trust.
As a consequence, he stayed off Twitter for most of the 2010s and became increasingly disconnected from the wider JavaScript and web development scene. Despite being years ahead of Rome, in timeline and feature development, Aldo had never heard of Rome until I mentioned the project to him off hand one day. Because of his isolation, he was understandably unaware that he'd fallen into the next JS zeitgeist years ahead of schedule.
I'll never forget his excitement when he realized not only was someone else working on this problem, they had been handed a truck load of cash to do so. This was corroborated even further when Swyx's blockbuster post, The Self Provisioning Runtime, gave a name to Aldo's vision. Unfortunately, in a tragic turn of events, in 2022 Aldo passed away in Hawaii where he had been living during the pandemic. The Lambdragon was forever put to rest.
Aldo was convinced that consolidation could stem the rising tide of hypercomplexity and prevent the death of simplicity. Before Rome and the Self Provisioning Runtime, Aldo worried his vision would never be complete. After, he knew at least his vision's spirit had been validated by the excitement of the developers and investors. This validation continues today with the excitement around the first major release of Bun.
Before passing, Swyx had Aldo on his stream to demo a bit of The Lambdragon. Check it out if the history of the project was interesting to you:
Find us online at the following links:
]]>JavaScript Jam Live will be back next Wednesday, September 13th, for another open mic discussion.
In the meantime, we encourage you to catch up on
]]>Hello! We're publishing an abridged issue this week to give our team a much-needed holiday break at the end of the summer season.
JavaScript Jam Live will be back next Wednesday, September 13th, for another open mic discussion.
In the meantime, we encourage you to catch up on any content you might have missed by exploring the JavaScript Jam back catalog of live episodes and videos.
Find us online at the following links:
]]>