This Dot Blog
This Dot provides teams with technical leaders who bring deep knowledge of the web platform. We help teams set new standards, and deliver results predictably.
Why TypeScript is the Most Important Tool in Open-Source with Nick Taylor
In this episode of the Modern Web Podcast, Nick Taylor, Senior Software Engineer at OpenSauce discusses the current state of open source, including the challenges around funding, sustainability, and contributor burnout. Nick shares insights into how open source has impacted his career and highlights the growing importance of tools like TypeScript in the open-source ecosystem. The panel also discusses the evolution of TypeScript, its widespread adoption, and its role in shaping the modern web development landscape. They explore the nuances between JavaScript and TypeScript, the friction that developers sometimes face when working with types, and how TypeScript has grown into a default tool for many projects. Chapters 00:00 - Introduction and Co-Host Introductions 00:47 - Guest Introduction: Nick Taylor 01:37 - The Current State of Open Source 02:50 - Funding Challenges in Open Source 03:54 - Open Source Success Stories and Funding Examples 05:35 - Open Source Burnout and Quiet Quitting in Tech 06:43 - Challenges for Open Source Maintainers 07:26 - Motivation and Incentives for Contributing to Open Source 08:35 - Career Benefits of Open Source Contributions 10:11 - Nick’s Journey into Open Source Contributions 12:38 - The Burden of Managing Popular Open Source Projects 14:27 - Hacktoberfest and Low-Quality Contributions 16:14 - Challenges for Beginners Contributing to Open Source 18:01 - The Impact of Hacktoberfest and Mitigating Spam PRs 20:12 - TypeScript's Rise in Popularity 23:16 - Why TypeScript Became Popular in Open Source 25:45 - The Debate Around Static Typing in JavaScript 27:08 - TypeScript vs. JavaScript: Future Considerations 30:21 - The Role of Build Steps in Modern Development Frameworks 33:35 - The Complexity of TypeScript for Different Developer Levels 36:12 - Enum Usage and TypeScript's Type System 38:53 - TypeScript’s Structural Typing and Its Implications 39:47 - Nick’s Contact Information and Closing Remarks Follow Nick Taylor on Social Media Twitter: https://x.com/nickytonline Linkedin: https://www.linkedin.com/in/nickytonline/ Github: https://github.com/nickytonline...
Sep 27, 2024
2 mins
Advanced TypeScript - Schema Validation with Zod - Type Inference & Generics with Josh Goldberg
TypeScript has become an essential tool for developers seeking to enhance the robustness and maintainability of their codebases. While many are familiar with the basics of TypeScript, there are advanced concepts that can take your TypeScript skills to the next level. In this JSDrops Training by Josh Goldberg, viewers will explore some of these advanced TypeScript concepts, including schema validation using Zod, leveraging TypeScript's powerful type inference capabilities, and effectively utilizing TypeScript's type system. One crucial aspect of building reliable applications is ensuring data integrity. This is where schema validation libraries like Zod come into play. Zod allows developers to define complex data models and validate incoming data against these models. By leveraging Zod's expressive API, developers can easily define object schemas, conditional types, and literal types, ensuring that the data meets the expected structure and constraints. This not only helps catch errors early but also provides a clear and concise way to handle data validation and error handling. TypeScript's type inference is a powerful feature that can save developers time and effort. By allowing TypeScript to infer types based on context, developers can write cleaner and more concise code. Additionally, leveraging generics can further enhance type inference. Generics enable developers to write reusable code that adapts to different types, making logic inference more flexible and efficient. Understanding how to effectively use generics and type inference can greatly improve code readability and maintainability. While advanced TypeScript concepts can greatly enhance code quality, it is important to strike a balance between utilizing these features and maintaining code simplicity. It is crucial to understand TypeScript terminology and best practices to avoid overcomplicating code. Additionally, debugging techniques specific to TypeScript can help identify and resolve issues more efficiently. By carefully considering when and where to apply advanced TypeScript concepts, developers can create code that is both powerful and easy to understand....
Jul 26, 2024
2 mins
What’s Great About TypeScript ESLint v8 + The “Trough of Disillusionment” in Adoption with Josh Goldberg
In this episode of Modern Web, Josh Goldberg discusses the benefits of TypeScript ESLint v8 and as well as other various topics related to JavaScript tools, AI in coding, and industry dynamics. Josh breaks down the latest version of TypeScript ESLint, v8. He points out the big performance boosts and introduces the cool new feature of type-aware linting. With this, developers can catch potential errors and follow best practices by using TypeScript's static type checking. This not only cuts down on bugs but also makes the code easier to read and maintain. Tracy and Josh talk about the importance of using the right tools for better coding results. They discuss how the Gartner hype cycle can influence developers' choices and warn against adopting tools just because they’re trendy. Instead, they suggest carefully evaluating tools based on specific needs and project requirements. By picking the right tools, developers can simplify their workflows, improve code quality, and get better outcomes overall. The conversation also touches on the impact of companies like Vercel and the unexpected consequences in tech development. While new tools and technologies can be super beneficial, they can also bring unexpected challenges. It’s important for developers to be aware of these potential issues and address them to ensure smooth development and successful projects. They also chat about the "trough of disillusionment" in tech adoption and mention upcoming typed linting tools which aim to further improve code quality and developer productivity. Lastly, the two talk about the SquiggleConf conference, which focuses on web development tools. They explain the term "squiggle" in error indicators and why clear, informative error messages are important for helping developers debug and troubleshoot. The conference is a great place for developers to learn about the latest web development tools and share tips on improving the developer experience. Check it out on October 3-4, 2024 in Boston, MA! Download this episode here....
Jul 19, 2024
2 mins
React Version Transitions, Library Updates, and Why Standards Bodies are so Complex with JLarky
On this episode of Modern Web, hosts Tracy Lee, Ben Lesh, Adam Rackis, and guest JLarky share their latest takes on the JavaScript ecosystem, including React version transitions and TypeScript compatibility. They also explore the challenges of library updates, as well as web standards and the complexities within standards bodies. One recurring theme in the podcast is the heavy reliance on third-party libraries and the potential JavaScript bloat in React applications. They express concerns about the long-term sustainability of this approach and emphasize the need for industry support and collaboration. They discuss the challenges faced when updating libraries and the importance of carefully considering the impact on the overall application. This highlights the need for developers to strike a balance between leveraging the benefits of third-party libraries and maintaining control over their codebase. The conversation also explores the evolution of web standards and the complexities within standards bodies. The hosts discuss the resistance to adopting new technologies, such as React server components, and the challenges faced in driving industry-wide adoption. This highlights the importance of understanding the broader context in which web development operates and the need for developers to stay informed about emerging standards and technologies. By keeping an eye on the evolving landscape, developers can make informed decisions about the tools and frameworks they choose to work with. Throughout the podcast, they emphasize the importance of considering production-level considerations in software development. They discuss the challenges of dealing with hydration errors and the need for robust error handling mechanisms. This highlights the significance of thorough testing, performance optimization, and maintaining a strong focus on user experience. By prioritizing production-level considerations, developers can ensure their applications are reliable, performant, and user-friendly. Download this episode here....
Jun 27, 2024
2 mins
Strength in Numbers: How Community Support Drives Open Source with Daniel Roe
In this episode of the Modern Web Podcast, Daniel Roe reminds us of the importance of nurturing our passion and well-being in open-source development. Along with Tracy Lee, Daniel sheds light on the challenges and rewards of maintaining web frameworks, while emphasizing the significance of relationships, self-improvement, and community support. Daniel Roe's dedication to open-source development is fueled by his passion for helping others and his enjoyment in maintaining web frameworks. Despite the frustrations that come with transitioning between software versions and the ever-evolving nature of the field, Daniel remains positive and grateful for the privilege of pursuing his passion. His story serves as a reminder that finding purpose in our work can bring immense fulfillment, even in the face of challenges. One of the key takeaways from the conversation is the importance of feeling valued in our work. Daniel shares his experience of starting his own companies after feeling undervalued in a corporate setting. This highlights the significance of recognizing our worth and seeking environments that appreciate our contributions. Additionally, Daniel advocates for a balanced approach to work hours, emphasizing the need for self-care activities like going to the climbing gym and attending conferences. Taking care of our well-being is crucial for maintaining productivity and enthusiasm in the tech industry. Tracy and Daniel's shared enthusiasm for technology is evident throughout the conversation. They discuss programming languages like TypeScript and React, sharing their experiences and insights from the tech industry. They also emphasize the importance of community support in open-source development. Building relationships and connecting with like-minded individuals not only provides valuable resources and knowledge but also fosters a sense of belonging and motivation....
May 21, 2024
2 mins
What’s New for Astro & TypeScript + “Team Islands” with Elian, Josh, & Chris (Backstage @ CityJS Conf)
Elian Van Cutsem, Josh Goldberg, and Chris Noring, joined Tracy Lee backstage at CityJS Conf London to talk about what’s new in the Astro, and TypeScript ecosystems. The conversation also touched on the utilization of iterators in JavaScript and their potential to augment web application functionality. The group weighed in on hot topics in web development, like islands, resumability, and the nuanced interplay between TypeScript and iterators were explored, offering profound insights into optimizing code for enhanced user experiences. The discourse also highlighted the paramount importance of collaboration in driving advancements within web development. Despite perceived competition among technologies, the group emphasized the importance of collaboration for propelling innovation. By fostering a collaborative environment where different technologies learn from each other's strengths, address shared challenges, and collectively evolve, the web ecosystem becomes more inclusive and progressive. Furthermore, the podcast episode explored the empowering aspects of the Astro ecosystem, and TypeScript. The group elaborated on the latest updates and advancements in these tools, emphasizing their capacity to empower developers. Astro, renowned for its modern approach to front-end development, alongside the robust capabilities of TypeScript, equips developers with the means to craft scalable, maintainable code and exceptional web experiences....
May 1, 2024
1 min
End-to-end type-safety with JSON Schema
The article explores end-to-end type safety in JSON APIs using JSON Schema and TypeScript. It delves into methods such as generating types from schema definitions and utilizing TypeBox, data validation of serialized JSON data....
Apr 17, 2024
6 mins
Why Every Developer Should Try Elm, + Are We Abandoning JavaScript? with Lindsay Wardell
Lindsay Wardell, Senior Software Engineer at NoRedInk joins Rob Ocel by covering many of the functional programming advantages afforded by Elm. By immersing themselves in the intricacies of languages like Elm, developers can harness its functional approach to bolster application resilience and minimize errors. Lindsay draws parallels with TypeScript's emphasis on strong typing, and how it empowers developers to detect and rectify errors early on, fostering the creation of more maintainable codebases. A pivotal theme emerging from Lindsay's discussions is the importance of adaptability in choosing which languages a developer focuses their energy on. As technology continues to evolve, developers must embrace versatility to remain competitive. Lindsay and Rob Ocel talk about the potential shifts in front-end development paradigms, beyond the dominance of component-based frameworks like React. This underscores the necessity of keeping an open mind and exploring emerging technologies to stay at the forefront of the industry's evolution. Moreover, Lindsay and Rob accentuate the significance of tools such as Nuxt for facilitating seamless backend integration within frameworks like Vue.js. These integrations streamline the development process, enabling developers to concentrate on crafting robust and scalable applications. Their conversations serve as a testament to the ongoing evolution of programming tools, marked by a trend towards simplification and enhanced development efficiency. Download this episode....
Apr 3, 2024
1 min
TypeScript Integration with .env Variables
Learn to integrate .env variables with TypeScript effectively. Our guide covers creating an environment.d.ts file, a simple solution for improved type-checking and development clarity in TypeScript projects....
Mar 13, 2024
2 mins
How to configure and optimize a new Serverless Framework project with TypeScript
Elevate your Serverless Framework project with TypeScript integration. Learn to configure TypeScript, enable offline mode, and optimize deployments to AWS with tips on AWS profiles, function packaging, memory settings, and more....
Jan 26, 2024
7 mins
Testing a Fastify app with the NodeJS test runner
ant to simplify your testing process? Our new blog post on Node.js' built-in test runner is a great place to start. Learn how to test Fastify apps, including practical examples for testing an API server and SQL plugins....
Nov 29, 2023
5 mins
Understanding Vue's Reactive Data
A blog post that unravel how Reactivity works in Vue 3...
Nov 22, 2023
7 mins
Let's innovate together!
We're ready to be your trusted technical partners in your digital innovation journey.
Whether it's modernization or custom software solutions, our team of experts can guide you through best practices and how to build scalable, performant software that lasts.