What I Learned From State of JS 2024 ![rw-book-cover](https://i.ytimg.com/vi/49tDJCW9PsI/maxresdefault.jpg) ๐Ÿ”— **Source:** [What I Learned From State of JS 2024](https://www.youtube.com/watch?v=49tDJCW9PsI) > [!note]+ Document Notes > tags: [#StateOfJS, #JavaScript, #Frameworks, #Trends, #Tools] > - #JavaScript > - #Survey > - #WebDevelopment > Author: Jack Herrington > Source: YouTube > Reference: [State of JS 2024 Summary](https://www.youtube.com/watch?v=49tDJCW9PsI) > date created: 2024-12-03 12:00 > > # Title: Insights from the 2024 State of JavaScript Survey > <!-- deep-read:sections start --> ## Table of Contents: 1. [๐Ÿ“ Summary](#-summary) 2. [๐Ÿ“– Main Content](#-main-content) - [๐Ÿ—’๏ธ Notes](#-notes) 3. [๐Ÿ“– References](#-references) 4. [๐Ÿ—ฃ๏ธ Paraphrase](#-paraphrase) 5. [๐Ÿ“ฐ Newsletter](#-newsletter) 6. [โœ… Action Items](#-action-items) 7. [๐Ÿงช Hypotheses](#-hypotheses) 8. [๐Ÿ“Š Methodology](#-methodology) 9. [โ“ Questions](#-questions) 10. [๐Ÿ”ฎ Future Research](#-future-research) 11. [๐Ÿ’ก Implications](#-implications) 12. [๐Ÿง  Learning Styles Assessment](#-learning-styles-assessment) 13. [๐Ÿ“Š Accessibility Assessment](#-accessibility-assessment) 14. [๐ŸŒ DEIB Assessment](#-deib-diversity-equity-inclusion-and-belonging-assessment) 15. [โœ… Logical Validity](#-logical-validity) 16. [๐Ÿ” DARVO Analysis](#-darvo-analysis-prompt) 17. [๐Ÿ” SEO Evaluation](#-seo-evaluation) 18. [๐ŸŽฏ Conclusion](#-conclusion) --- ## ๐Ÿ“ Summary: The 2024 State of JavaScript survey, presented by Jack Herrington, offers a deep dive into JavaScript's current trends, frameworks, and tools. The survey highlights the evolution of non-mutating array methods, inconsistencies in browser APIs, and the landscape of testing tools. Additionally, it examines the challenges in modern JavaScript package management and emerging TC39 proposals like deferring module evaluation and the Temporal API. --- ## ๐Ÿ“– Main Content: ### ๐Ÿ—’๏ธ Notes: - **Community Engagement** ([00:03](https://www.youtube.com/watch?v=49tDJCW9PsI&t=3)): - Surveys encourage reflection on tools and trends. - Introduces unfamiliar syntax features for developers. - **Non-Mutating Methods** ([02:10](https://www.youtube.com/watch?v=49tDJCW9PsI&t=130)): - Methods like `toSorted` and `toReversed` support functional programming. - Highlights gaps in knowledge of Web APIs. - **Browser API Inconsistencies** ([06:31](https://www.youtube.com/watch?v=49tDJCW9PsI&t=391)): - Transitioning from errors to promises is complex. - Positive experiences noted with frameworks like React and Solid. - **Frameworks and Testing Tools** ([08:49](https://www.youtube.com/watch?v=49tDJCW9PsI&t=529)): - Frameworks such as Next.js and Astro receive praise. - Testing tools like Storybook emphasize modern testing needs. - **Challenges in React Native** ([13:17](https://www.youtube.com/watch?v=49tDJCW9PsI&t=797)): - Quick bit rot in React Native apps complicates long-term maintenance. - **Tool Preferences** ([15:45](https://www.youtube.com/watch?v=49tDJCW9PsI&t=945)): - Tools like TSC CLI and Vite are praised for efficiency. - **Emerging Trends** ([27:36](https://www.youtube.com/watch?v=49tDJCW9PsI&t=1656)): - The Temporal API and module evaluation improvements noted. - Reflects on the absence of a JavaScript standard library. Key Insights for [What I Learned from State of JS 2024](https://www.youtube.com/watch?v=49tDJCW9PsI) by [Merlin AI](https://merlin.foyer.work/) **Overview of State of JavaScript 2024 Survey** - The State of JavaScript 2024 survey offers insights into trends, technologies, and features within the JavaScript ecosystem. - Participation aims to benefit the community by sharing knowledge and identifying common challenges developers face. - The survey helps keep track of the evolving JavaScript landscape and highlights technologies that might be unfamiliar to many developers. **JavaScript Features and Syntax** - The survey investigates various JavaScript syntax features, such as dynamic imports, nullish coalescing, and logical assignment, with developers sharing their usage experiences. - New features like non-mutating array methods (e.g., `toSorted`, `toReversed`) are praised for promoting functional programming styles. - The participants often express a need to explore features they haven't used, such as private properties and certain browser APIs. **Browser APIs and Their Usage** - The survey reveals a wide range of familiarity with different browser APIs, including WebGL, Web Animation, and Speech API. - Some APIs, like RTC (Real-Time Communications) and Geolocation, are noted for their complexity or lack of usage in personal projects. - Developers discuss the challenges posed by inconsistencies among browser APIs, emphasizing the need for a more standardized approach. **Frameworks and Libraries** - A variety of frameworks are discussed, including React, Vue.js, Angular, and newer options like Solid and Astro, with many developers reporting positive experiences. - The use of meta-frameworks like Next.js and Gatsby is highlighted, showcasing their utility in modern web development. - Testing libraries such as Cypress and Storybook are acknowledged for their importance, although some developers express concerns about upgrade difficulties. **Pain Points and Challenges** - Common pain points include managing asynchronous code effectively and dealing with complex package management systems. - Developers mention memory management and reference handling in JavaScript as frequent sources of confusion. - The survey also points out issues with finding packages and the lack of built-in solutions for common problems like async code handling. **Future of JavaScript and Emerging Trends** - Excitement surrounds upcoming TC39 proposals, particularly those related to performance improvements and new language features like temporal APIs. - Developers express a desire for enhancements to JavaScript's standard library and the introduction of observable patterns. - Concerns about the future of JavaScript frameworks are noted, especially regarding how AI models might influence the development of new tools and frameworks. Summary for [What I Learned from State of JS 2024](https://www.youtube.com/watch?v=49tDJCW9PsI) by [Merlin AI](https://merlin.foyer.work/) Exploring the 2024 JavaScript Survey: Key Syntax Features and Trends Revealed by Jack Herrington. [00:03]([00:03](https://www.youtube.com/watch?v=49tDJCW9PsI&t=3)) Participating in the 2024 State of JavaScript survey enhances community engagement and knowledge. - Filling out the survey can reveal trends and personal insights into current JavaScript features and tools used in development. - Engaging with the survey also allows for discovering unfamiliar syntax features that may be beneficial for future projects. [02:10]([02:10](https://www.youtube.com/watch?v=49tDJCW9PsI&t=130)) Exploring non-mutating array methods and browser APIs for JavaScript. - Non-mutating methods like 'toSorted', 'toReversed', and 'toSpliced' allow functional programming style without altering the original array. - Discussion on unfamiliarity with certain Promise methods and various Web APIs, highlighting the need for further exploration. [06:31]([06:31](https://www.youtube.com/watch?v=49tDJCW9PsI&t=391)) Browser APIs face inconsistency, impacting developer experiences across frameworks. - Developers encounter inconsistencies in browser APIs, transitioning from error-returning functions to promises, which complicates development. - The speaker shares positive experiences with various frameworks like React, Solid, and Alpine, suggesting a preference for those that are straightforward and close to the web's fundamentals. [08:49]([08:49](https://www.youtube.com/watch?v=49tDJCW9PsI&t=529)) Overview of experiences with various meta frameworks and testing tools. - Positive experiences shared using frameworks like Next.js, Gatsby, and Astro for development projects. - Frequent use of testing tools such as Storybook and Mocha highlights the evolving landscape of software testing. [13:17]([13:17](https://www.youtube.com/watch?v=49tDJCW9PsI&t=797)) Testing and development in React Native has inherent challenges. - React Native apps experience quick bit rot, complicating maintenance over time. - Navigating both Android and iOS from a single React Native project amplifies complexity. [15:45]([15:45](https://www.youtube.com/watch?v=49tDJCW9PsI&t=945)) Exploring various JS tools and frameworks with mixed feelings. - NativeScript is recognized but not preferred due to its age; newer options are favored for building content. - Tools like TSC CLI, Vite, and Turbo Pack receive positive mentions for their speed and efficiency in handling TypeScript. [20:20]([20:20](https://www.youtube.com/watch?v=49tDJCW9PsI&t=1220)) Overview of frequently used libraries and frameworks in daily development. - Discusses various libraries such as core.js, Zod, and Framer that are integral to daily use. - Mentions runtimes like Deno and bun, emphasizing automatic service worker creation in frameworks. [22:53]([22:53](https://www.youtube.com/watch?v=49tDJCW9PsI&t=1373)) Discussion on favorite runtimes and AI tools for coding. - Highlights various programming languages like Go, Rust, and Dart, emphasizing their unique features and usage frequency. - Mentions AI tools like Claude and GitHub Copilot for coding assistance, noting their roles in the programming workflow. [27:36]([27:36](https://www.youtube.com/watch?v=49tDJCW9PsI&t=1656)) The challenges of modern JavaScript package management and emerging TC39 proposals. - The removal of helpful package recommendations in npm Trends complicates the process of finding suitable packages. - Emerging TC39 proposals like deferring module evaluation and the Temporal API aim to improve performance and handle data APIs more efficiently. [29:53]([29:53](https://www.youtube.com/watch?v=49tDJCW9PsI&t=1793)) Exploring potential additions and concerns in JavaScript's evolving landscape. - Discussion on new features like pipe operators and observables that might transform JavaScript's functionality. - Reflections on the need for a standard library and type system, weighing the benefits of JavaScript's current state against potential complexity. [34:19]([34:19](https://www.youtube.com/watch?v=49tDJCW9PsI&t=2059)) The speaker shares personal background and experiences related to the State of JS survey. - The speaker has been in the field for 40 years and currently works independently as a principal developer. - They emphasize the importance of community feedback for improving future surveys and invite viewers to share their thoughts. [36:37]([36:37](https://www.youtube.com/watch?v=49tDJCW9PsI&t=2197)) Encouragement to engage with the channel's content. - Viewers are encouraged to like the video to support future content. - Subscribing and activating notifications ensures viewers donโ€™t miss new releases. --- ## ๐Ÿ“– References: - [State of JS 2024 Summary](https://www.youtube.com/watch?v=49tDJCW9PsI) --- ## ๐Ÿ—ฃ๏ธ Paraphrase: 1. Original: "React Native apps experience quick bit rot, complicating maintenance over time." - Paraphrase: Maintaining React Native applications becomes challenging as they deteriorate rapidly with age. 2. Original: "Non-mutating methods like 'toSorted' and 'toReversed' allow functional programming without altering the original array." - Paraphrase: Methods such as `toSorted` and `toReversed` enable functional programming by preserving the original array state. --- ## ๐Ÿ“ฐ Newsletter: ๐ŸŽ‰ **JavaScript Trends 2024!** Discover the highlights from the latest State of JS survey, exploring new array methods, popular frameworks like React, and emerging tools like Turbo Pack. Curious about whatโ€™s next in JavaScript? Dive into TC39 proposals like the Temporal API and learn how these changes will shape web development. [Watch Now](https://www.youtube.com/watch?v=49tDJCW9PsI) ๐Ÿš€ --- ## โœ… Action Items: 1. Present the survey insights in WordPress workshops to discuss JavaScript trends. 2. Highlight tools like Vite and Turbo Pack in a newsletter feature. 3. Develop training content on non-mutating methods for contributors. --- ## ๐Ÿงช Hypotheses: - Developers using functional programming adopt new array methods faster. - Emerging frameworks like Solid gain traction in enterprise-level applications. --- ## ๐Ÿ“Š Methodology: - **Research Designs**: Compare developer surveys over years. - **Data Sources**: GitHub trends, npm downloads. - **Analysis Techniques**: Thematic coding, statistical trends. --- ## โ“ Questions: - How do non-mutating methods impact developer workflows? - Will TC39 proposals streamline JavaScript syntax or introduce complexity? --- ## ๐Ÿ”ฎ Future Research: - Investigate adoption rates of Temporal API. - Study the longevity of React Native projects. --- ## ๐Ÿ’ก Implications: - Enhanced developer efficiency with modern methods. - Improved cross-browser development consistency. --- ## ๐Ÿง  Learning Styles Assessment: - **Visual**: Minimal visual aids; improve with infographics. - **Aural**: Could use podcast summaries. - **Kinesthetic**: Add exercises on using new array methods. --- ## ๐Ÿ“Š Accessibility Assessment: - **Improvements Needed**: Alt-text for visuals, better mobile optimization. --- ## ๐ŸŒ DEIB (Diversity, Equity, Inclusion, and Belonging) Assessment: - **Suggestions**: Incorporate examples from non-Western frameworks. --- ## โœ… Logical Validity: - **Positive Reasoning**: Clear use of evidence for emerging trends. - **Fallacy**: Slight overgeneralization on browser API inconsistencies. --- ## ๐Ÿ” DARVO Analysis Prompt: - No DARVO elements observed; neutral tone focused on insights. --- ## ๐Ÿ” SEO Evaluation: - **Keywords**: Effective integration of JavaScript, trends. - **Improvements**: Add meta descriptions for video timestamps. --- ## ๐ŸŽฏ Conclusion: The State of JS 2024 offers a snapshot of JavaScriptโ€™s evolving landscape. Key takeaways include functional programming tools, challenges in React Native, and promising TC39 proposals for future enhancements. Engage with the content to stay ahead in JavaScript trends. <!-- deep-read:sections end --> ๐Ÿ“„ **Full text:** ![[Full Document Contents/Articles/What I Learned From State of JS 2024|What I Learned From State of JS 2024, Jack Herrington]] ## Highlights - the state of JavaScript 2024 survey is out let's fill it out ([View Highlight](https://read.readwise.io/read/01je71ma5vvjfdwfyx076htbzk))