ConTejas Code

Josh Goldberg: How to Maximize Success with TypeScript and ESLint


Listen Later

Links

- Codecrafters (sponsor): https://tej.as/codecrafters

- Wix (sponsor): https://tej.as/wix

- Josh Goldberg: https://x.com/joshuakgoldberg

- Learning TypeScript: https://learning.oreilly.com/library/view/-/9781098110321/

- SquiggleConf: https://2024.squiggleconf.com/


Summary


Joshua K Goldberg is a full-time independent open source maintainer in the TypeScript ecosystem. He shares his journey into open source and the importance of filling in the gaps in the ecosystem. He also discusses the best incremental migration path to TypeScript and highlights advanced features like shenanigans with type parameters and the 'satisfies' keyword. The conversation covers topics such as literals in TypeScript, writing a book, the process of writing and shipping a book, the reception of the book, the development of TypeScript ESLint, abstract syntax trees (ASTs), parsing, and static analysis. We also discuss the future of TypeScript, the performance of ESLint, and configuration tips to improve ESLint's performance.


Takeaways


1. Being a full-time independent open source maintainer is rewarding and allows for direct contributions to tools that benefit everyone.

2. When migrating to TypeScript, it's best to start with one file at a time and gradually increase strictness.

3. Type parameters in TypeScript can be complex, but they are useful for advanced scenarios.

4. The 'satisfies' keyword in TypeScript allows for declaring data that adheres to a type while still inferring a more specific type.

5. Parsing is the process of converting a string of code into an AST.

6. ESLint provides a report function that allows lint rules to report issues to the user.

7. TypeScript ESLint supports typed linting, which allows for more powerful linting rules.

8. ESLint's performance can be affected by misconfiguration, the number of plugins, and the use of ESLint plugin prettier.

9. Separating ESLint and Prettier as separate tools can improve performance.

10. Being an open-source maintainer can be challenging, but having a fallback plan and a supportive community can make it sustainable.


Chapters


00:00 Josh Goldberg

03:37 Introduction and Background

06:22 The Journey into Open Source and Filling in the Gaps

15:15 The Best Incremental Migration Path to TypeScript

28:41 Introducing the 'Satisfies' Keyword in TypeScript

30:31 The Process of Writing and Shipping a Book

35:10 The Development of TypeScript ESLint

37:26 Parsing and Static Analysis with Abstract Syntax Trees

56:54 Improving ESLint Performance: Configuration Tips

01:01:00 Understanding the Role of ASTs and Compilers in TypeScript and ESLint

01:03:42 Configuring Type Linting in TypeScript

01:06:22 The Intersection of AI with TypeScript and ESLint

01:11:53 Creating a Standardized Open-Source Sponsorship Rating System

Hosted on Acast. See acast.com/privacy for more information.

...more
View all episodesView all episodes
Download on the App Store

ConTejas CodeBy Tejas Kumar

  • 5
  • 5
  • 5
  • 5
  • 5

5

8 ratings


More shows like ConTejas Code

View all
Hanselminutes with Scott Hanselman by Scott Hanselman

Hanselminutes with Scott Hanselman

377 Listeners

Software Engineering Radio - the podcast for professional software developers by se-radio@computer.org

Software Engineering Radio - the podcast for professional software developers

273 Listeners

The Changelog: Software Development, Open Source by Changelog Media

The Changelog: Software Development, Open Source

285 Listeners

The Twenty Minute VC (20VC): Venture Capital | Startup Funding | The Pitch by Harry Stebbings

The Twenty Minute VC (20VC): Venture Capital | Startup Funding | The Pitch

508 Listeners

Software Engineering Daily by Software Engineering Daily

Software Engineering Daily

631 Listeners

Soft Skills Engineering by Jamison Dance and Dave Smith

Soft Skills Engineering

275 Listeners

Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

Syntax - Tasty Web Development Treats

989 Listeners

Darknet Diaries by Jack Rhysider

Darknet Diaries

7,844 Listeners

Practical AI by Practical AI LLC

Practical AI

187 Listeners

The Stack Overflow Podcast by The Stack Overflow Podcast

The Stack Overflow Podcast

63 Listeners

Last Week in AI by Skynet Today

Last Week in AI

282 Listeners

Dwarkesh Podcast by Dwarkesh Patel

Dwarkesh Podcast

354 Listeners

Latent Space: The AI Engineer Podcast by swyx + Alessio

Latent Space: The AI Engineer Podcast

65 Listeners

The AI Daily Brief (Formerly The AI Breakdown): Artificial Intelligence News and Analysis by Nathaniel Whittemore

The AI Daily Brief (Formerly The AI Breakdown): Artificial Intelligence News and Analysis

428 Listeners

AI + a16z by a16z

AI + a16z

32 Listeners