Interview With Senior JS Dev | Theo Reacts (it's about me lol)

Theo - t3․gg
6 May 202412:24

TLDRThe transcript appears to be a humorous take on the complexities and choices involved in modern JavaScript development. It discusses the selection of JavaScript libraries, the growth of JavaScript in infrastructure, and the author's surprise at being mentioned in a video. The dialogue touches on various technologies such as Next.js, TypeScript, Tailwind, Tamaguchi, and Prisma, contrasting them with alternatives like Superbase and Drizzle. It also pokes fun at the rapid changes in the tech industry and the challenges of keeping up with the latest tools and frameworks. The author humorously suggests that despite the industry's push towards serverless architectures, there's a resurgence in server usage, and ends with a satirical advice for senior engineers on learning new technologies.

Takeaways

  • 🎯 The importance of selecting the right JavaScript libraries is emphasized, as they can significantly impact the infrastructure.
  • 🚀 T3 and T4 are two options discussed, with T3 representing a more web-focused approach using Next.js, Tailwind, and Prisma.
  • 🌐 T4, on the other hand, is cross-platform from the start, leveraging React Native through Expo and integrating with Superbase and Drizzle.
  • 📚 Tailwind has a large community but is considered by some as less cutting-edge compared to other newer libraries like Tamaguchi.
  • 🔄 T3 attempts to integrate Tailwind with React Native through Native Wind, which has been made compatible after significant development.
  • 🚧 Next.js is mentioned as a framework that works with various hosted solutions, but it doesn't work on mobile without additional configurations.
  • 🛠️ Prisma is highlighted as being inefficient and having a large impact on bundle size, which can be a concern for performance.
  • 📈 T4's use of Drizzle and Superbase allows for a more optimized and scalable solution, especially when considering free hosting on Vercel.
  • 📱 The discussion touches on the performance and code sharing benefits of using Rust and WebAssembly for the desktop app, with T4 offering high performance and type safety.
  • 🤖 The script humorously explores the idea of serverless architecture and the shift towards it, despite the ongoing debate and challenges.
  • 🌟 The speaker shares a personal anecdote about the recognition of their development stack in the video, adding a light-hearted and relatable touch to the technical discussion.

Q & A

  • What is the main topic discussed in the video?

    -The main topic discussed in the video is the selection of JavaScript libraries and frameworks for web development, with a focus on comparing T3 and T4, and the various technologies associated with each.

  • What does T3 stand for in the context of the video?

    -In the video, T3 stands for 'Theo,' referring to a skater boy from California, and it represents a particular set of technology choices for web development.

  • How does the speaker feel about being mentioned in the video?

    -The speaker seems to be surprised and honored to be mentioned in the video, referring to it as the 'highest honor' and suggesting they have 'peaked' in their career.

  • What is the significance of the mustache in the video's analogy?

    -The mustache is used as an analogy to describe how JavaScript can grow and take over an entire infrastructure, similar to how a mustache can grow and cover a person's face.

  • What is the community size difference between Tailwind and Tamaguchi mentioned in the video?

    -The video mentions that Tailwind has a larger community with 4994 members on Discord, compared to the 584 members of the Tamaguchi community.

  • Why does the speaker consider T4 to be more cutting edge than T3?

    -The speaker considers T4 to be more cutting edge because it is cross-platform from the start, natively composed for mobile as React Native through Expo, and uses more up-to-date technologies.

  • What is the role of Clerk in the context of T3?

    -Clerk is mentioned as a hosted solution for Next.js in the context of T3, although the speaker humorously pretends that it might not be accurate, later clarifying that Next.js is framework agnostic.

  • What is the issue with Prisma mentioned in the video?

    -The issue with Prisma mentioned in the video is that it is considered inefficient and ugly, as it revalidates every row in a JSON response even if the result is in the first row.

  • What is the speaker's stance on using Redux in the development stack?

    -The speaker humorously suggests abandoning Redux from their vocabulary but then reintroduces it once they abandon JavaScript, indicating a playful critique of the complexity of managing state in large applications.

  • What does the speaker suggest as an alternative to Prisma?

    -The speaker suggests using Drizzle as an alternative to Prisma, noting that it is compatible with Superbase and can work on the edge.

  • What is the speaker's opinion on the current state of serverless architecture?

    -The speaker humorously refers to the repeated claims that each year is 'the year of serverless,' suggesting skepticism. However, they acknowledge that there has been a shift towards serverless architecture, albeit with some remaining challenges.

  • What advice does the speaker give to senior engineers trying to learn all the new technologies?

    -The speaker advises against trying to learn everything through online courses to get a job in the current developer market. Instead, they humorously suggest 'BYO coin fish' and not to 'fry in the kitchen,' implying a need for practical experience and a focus on what's truly valuable.

Outlines

00:00

😀 JavaScript Library Selection and Infrastructure Impact

The speaker discusses the importance of selecting the right JavaScript libraries, likening it to physical fitness. They humorously compare two options, T3 and T4, with T3 using Next.js, Tailwind, and Clerk, while T4 opts for TypeScript, Tamaguchi, and Drizzle. The conversation touches on the community size, the last commit dates indicating the libraries' activity, and the compatibility of these tools with React Native. It also delves into the use of Prisma versus Superbase for database queries, the inefficiency of Prisma, and the speaker's recent contribution to Next.js by fixing documentation.

05:02

😉 Hosting Solutions and the Quest for Serverless Architecture

The paragraph focuses on various hosting solutions, starting with the comparison between Vercel (T3's choice) and PlanetScale or Railway. It humorously suggests that Salesforce's ownership of Heroku makes it 'evil,' advocating for Cloudflare as a free hosting option due to its edge capabilities. The speaker also addresses the challenges of scaling applications, the potential of using Rust and WebAssembly for the frontend, and the performance benefits of T4's chosen stack. There's a playful mention of the 'year of serverless' being proclaimed annually, and a satirical take on the idea of rewriting the entire tech stack to keep up with trends.

10:03

😂 The Evolution of Web Stacks and Market Advice for Senior Engineers

This paragraph reflects on the evolution of web technology, reminiscing about simpler times with PHP and SQL setups. It humorously discusses the shift towards serverless architectures and the perennial declaration of each year being 'the year of serverless.' The speaker then offers tongue-in-cheek advice to senior engineers, suggesting that learning all the latest technologies through online courses might not be the most effective strategy in the current job market. There's a playful self-reference to the speaker's own stack and an acknowledgment of the fun and trollish nature of the video's content.

Mindmap

Keywords

💡JavaScript

JavaScript is a high-level, interpreted programming language commonly used for enhancing web pages by adding interactive elements. In the video, it is discussed as a core technology that can 'take over' one's infrastructure, indicating its importance and potential for extensive use in web development.

💡Next.js

Next.js is a popular, open-source framework for building server-rendered React applications. It is mentioned in the script as a part of the T3 setup, emphasizing its role in web app development and its compatibility with various technologies.

💡Tailwind

Tailwind is a utility-first CSS framework for rapidly building custom designs. It is highlighted in the script as a choice for styling with a large community support, contrasting it with 'tamagotchi', another styling option discussed.

💡React Native

React Native is a framework for building mobile apps using React. It is referenced in the context of cross-platform development, where T4 is described as natively composed for mobile through Expo, a tool for building React Native apps.

💡Expo

Expo is a set of tools and services built around React Native, used for creating native iOS, Android, and web apps. It is mentioned as a tool that allows T4 to work on mobile platforms, showcasing its utility in cross-platform development.

💡Prisma

Prisma is an open-source ORM (Object-Relational Mapping) tool for Node.js and TypeScript. It is criticized in the script for being inefficient and 'ugly', particularly in comparison to Superbase, another database tool discussed.

💡Superbase

Superbase is a real-time GraphQL server with RESTful endpoints. It is presented as a more efficient and modern alternative to Prisma, highlighting its compatibility with mobile platforms and its ability to scale.

💡Serverless

Serverless computing refers to the concept of building and running applications without the need for server management. The term is humorously discussed in the script, with a suggestion that the 'year of serverless' is a recurring theme, reflecting the ongoing trend towards cloud-based services.

💡TypeScript

TypeScript is a statically typed superset of JavaScript that adds optional types to the language. It is mentioned in the context of T3 and T4 setups, indicating its growing popularity in modern JavaScript development for its type safety and tooling support.

💡Drizzle

Drizzle is a React Hooks library for building GraphQL-based applications. It is mentioned as a tool that works well with T4 and Superbase, suggesting its utility in creating data-driven applications.

💡Zustand

Zustand is a small, fast and scalable bearbones state-management solution for React. It is briefly mentioned in the context of modularity, where it is implied that it does not deeply integrate with other parts of the system, unlike other components that are included.

Highlights

The importance of selecting the right JavaScript libraries for a project's infrastructure is emphasized.

The T3 and T4 options are introduced, with T3 representing a more established approach and T4 being more cutting edge.

T3 uses Tailwind CSS, while T4 uses Tamaguchi, with the latter being more up-to-date.

T4 is cross-platform from the start, natively composed for mobile as React Native through Expo.

T3 has been trying to get Tailwind compatible with React Native, which was abandoned but is now fully compatible.

T3 uses Next.js, a framework-agnostic solution, while T4 uses a different approach that doesn't work on mobile.

The speaker becomes a contributor to Next.js, fixing broken documentation links.

Prisma is criticized for being inefficient and ugly, with T4 using a more efficient solution for user data.

T4 uses Drizzle, which is compatible with Superbase and can scale to infinity for $0 on Vercel if the bundle size is under 1 Megabyte.

T3 and T4 use different helper libraries, with T3 potentially extending with Pusher for web sockets and T4 using Valid Bot Million.

The discussion touches on the use of analytics, suggesting Plausible as a better choice than Google Analytics.

Hosting options are compared, with T3 typically hosted on Vercel and T4 considering hosting on the edge with Cloudflare.

The potential for rewriting the stack using different technologies like Rust and WebAssembly is mentioned.

The idea of using a native WebView for a desktop app supporting React web code is discussed, with T being considered over Electron.

The speaker humorously suggests that serverless might be the way forward, despite the industry's repeated claims over the years.

A warning is given to senior engineers to be careful about the vast amount of information they try to learn from online courses to secure a job in the current market.

The speaker ends on a light-hearted note, acknowledging the fun and trollish nature of the discussion.