![]() This week, we’ve got Google’s succession plans, Bun tattoos, and my virtual wolfpack chatroom from 2005. Welcome to #110.
Live footage of the C++ succession ceremony Google wants to build the TypeScript of C++It all went down last week in Toronto at a C++ Conference (yes those are real, I checked). Chandler Carruth (leader of the C++, Clang, and LLVM teams at Google) stepped onstage to give the keynote speech, slowly locked eyes with everyone in the audience, and delivered the news: “C++ kind of sucks, actually.” Ok, he didn’t say it quite like that. But he did say that the language is “falling short” of its stated goals — which include software and language evolution, creating code that is easy to write and understand, and more. Why though? Just like your parents, most C++ issues stem from the fact that it’s pretty old and unwilling/unable to change (still love you, mom). The language is bogged down by decades of technical debt, but it needs to focus on backwards compatibility (at the expense of incremental improvements) to make sure it doesn’t break all of the low-level systems that use it to power… (*checks notes*) most of the modern world. After outlining all of the C++ problems, Chandler (aka Chan-C) also offered a solution that he’d been cooking up with his friends at Google: an experimental “successor language” to C++ called Carbon. This approach is similar to JavaScript → TypeScript and Java → Kotlin: it’s designed for tight interop with C++ and large-scale adoption/migration, while giving Carbon the freedom to make improvements much faster. Highlights:
Bottom Line: There are lots of great options for modern, low-level programming languages out there (Rust, Go, Kotlin, and more). But the C++ ecosystem isn’t going away anytime soon, especially now that Google has stepped in the ring. Stay tuned.
“Looks like I got stuck hand-rolling auth again” [sponsored] FusionAuth is the holy grailTrying to build authentication from scratch is like trying to hold in diarrhea while meeting your future in-laws – it’s painful, complicated, and you’re one wrong step away from a complete disaster. That’s why we’re huge fans of FusionAuth. They’re a complete auth solution that takes care of all the gross stuff like SSO, MFA, user management, and security – and if you don’t know what one or more of these things are… you probably need it. Their Free Community version is surprisingly robust (no credit card, no limits, and it’s free forever if you self host 🙏). That makes it great to learn with or use for side projects, but it’s also got a pretty seamless integration process for existing apps. And if you ever get stuck, you can call their support line and talk to an actual engineer who really knows auth – instead of just typing your questions into a support chat box that no one will read (like some other auth companies I know). Check it out and never worry about auth again.
Design system support group Radix releases v1.0 so you can stop pretending to build your ownRemember ~2 years ago when every frontend dev wanted to work on design systems, only to realize it’s basically like working in the basement of Lumon Industries? Fortunately, Radix UI (Latin for round) just released v1 of their set of primitive, un-styled React UI components — so we can all stop pretending to build our own 🙏. What makes Radix so good? Every React app does styling differently, which can make certain component libraries a no-go. Radix, however, is unstyled, which makes it easy to adopt and customize. Each component encapsulates the markup and core UI behaviors while ensuring that accessibility features like keyboard navigation, focus management and screen readers work out of the box (aka all the things your PM would cut from the scope because “we need to move fast and break things”). Basically, Radix let’s you live your life, while they earn the finger traps for providing some top-tier goodies out of the box:
Bottom Line: You know a component library must be great if big bois like Vercel, Linear, and Supabase were already using it before Radix had released v1. Excited to see where it goes from here 🚀. Spot the Bug — Sponsored by AppwriteTheir secure, open-source backend asa service gives you all the core APIs you need to build anything you can think of.
JobsFrontend software engineer at PhantomPhantom is looking for frontend engineers who enjoy massive ownership and freedom, and who want to work with a variety of technologies, including React, TypeScript, and React Query. You’ll be directly impacting the development of their flagship mobile app and working closely with the founders to improve the product. The role is fully remote. Cool Bits
Spot the Bug Solution — Sponsored by AppwriteIf you run the original code, you’ll get “Uncaught TypeError: Cannot read properties of undefined (reading ‘length’)“. The only place we’re using Whenever you’re trying to figure out what the
Second, the better way - using an arrow function.
The reason this works is because with arrow functions, Want to read more? Check out Understanding the “this” keyword, call, apply, and bind in JavaScript. |