Jan-Niklas interviews Josh Goldberg, a developer who transitioned from Microsoft to full-time open source work in the TypeScript ecosystem. Josh shares his daily routine, work structure, and insights on balancing passion projects with professional commitments.
The conversation covers Josh's current projects including Bingo (a repository templates tool) and maintaining legacy projects like Yeoman. They explore linting philosophy, TypeScript's significance, common developer mistakes, and tools like Prettier. The discussion also touches on TypeScript enums, type narrowing, AI's role in coding, and how open source contributions drive personal growth while creating valuable networking opportunities.
takeaways
- Josh transitioned from Microsoft to open source for passion, not money.
- He structures his open source work similarly to a 9-5 job.
- Balancing work and personal projects is crucial for mental health.
- Bingo aims to simplify the process of creating repository templates.
- Yeoman remains relevant for certain users despite its age.
- Maintaining legacy projects can be rewarding and insightful.
- Linting is customizable and should be adapted to project needs.
- Typed linting can enhance code quality but may slow down performance.
- Developers should not block builds on TypeScript errors during local development.
- Community trends show improvement in coding practices over time. There are three common forms of static analysis: linting, formatting, and type checking.
- Formatting should be automated to reduce cognitive load on developers.
- Type narrowing is a foundational feature in TypeScript that should be mastered early.
- Enums in TypeScript can lead to confusion and should be used cautiously.
- Unnecessary type annotations can clutter code and reduce TypeScript's effectiveness.
- AI tools should assist developers without making decisions for them.
- Open source contributions can lead to personal growth and better time management.
- Conflict resolution skills are essential in open source communities.
- Networking through open source can lead to valuable opportunities.
- Valuing one's time is crucial in balancing open source work and personal life.
Our fantastic Guest
Josh Goldberg is an independent full time open source developer. He works on projects in the TypeScript ecosystem, most notably typescript-eslint: a powerful static analysis toolset for JavaScript and TypeScript code. Josh is also the author of Learning TypeScript (O’Reilly), a Microsoft MVP for developer technologies, and an active conference speaker. His personal projects range from static analysis to meta-languages to recreating retro games in the browser. Also cats.
BlueSky
fosstodon
GitHub
Chapters
00:00 - Intro
00:38 - Josh's Journey in Open Source
01:38 - Daily Routine and Structure
02:24 - Transparency and Community Support
03:15 - Passion Projects and Work-Life Balance
05:00 - Personal Interests Outside of Coding
06:46 - Project Prioritization and Passion
08:10 - Understanding Bingo Project
31:04 - Enums in TypeScript
42:59 - Personal Growth Through Open Sourc
Thank you very much for listening!
We are also pretty much on all social media platforms, so make sure to like and subscribe!
Homepage - https://www.weeklybrew.dev/
BlueSky - https://bsky.app/profile/weeklybrew.dev
Instagram - https://www.instagram.com/weeklydevsbrew/
TikTok - https://www.tiktok.com/@weeklybrew.dev
YouTube - https://www.youtube.com/@theweeklydevsbrew
LinkedIn - https://linkedin.com/company/the-weekly-dev-s-brew