<!DOCTYPE html><html lang="en"><head><meta http-equiv="Content-Type" content="text/html charset=UTF-8"><meta charset="UTF-8"><meta name="viewport" content="width=device-width"><meta name="x-apple-disable-message-reformatting"><title>TLDR Dev</title><meta name="color-scheme" content="light dark"><meta name="supported-color-schemes" content="light dark"><style type="text/css">
:root {
color-scheme: light dark; supported-color-schemes: light dark;
}
*,
*:after,
*:before {
-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
}
* {
-ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;
}
html,
body,
.document {
width: 100% !important; height: 100% !important; margin: 0; padding: 0;
}
body {
-webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-rendering: optimizeLegibility;
}
div[style*="margin: 16px 0"] {
margin: 0 !important;
}
table,
td {
mso-table-lspace: 0pt; mso-table-rspace: 0pt;
}
table {
border-spacing: 0; border-collapse: collapse; table-layout: fixed; margin: 0 auto;
}
img {
-ms-interpolation-mode: bicubic; max-width: 100%; border: 0;
}
*[x-apple-data-detectors] {
color: inherit !important; text-decoration: none !important;
}
.x-gmail-data-detectors,
.x-gmail-data-detectors *,
.aBn {
border-bottom: 0 !important; cursor: default !important;
}
.btn {
-webkit-transition: all 200ms ease; transition: all 200ms ease;
}
.btn:hover {
background-color: #f67575; border-color: #f67575;
}
* {
font-family: Arial, Helvetica, sans-serif; font-size: 18px;
}
@media screen and (max-width: 600px) {
.container {
width: 100%; margin: auto;
}
.stack {
display: block!important; width: 100%!important; max-width: 100%!important;
}
.btn {
display: block; width: 100%; text-align: center;
}
}
body,
p,
td,
tr,
.body,
table,
h1,
h2,
h3,
h4,
h5,
h6,
div,
span {
background-color: #FEFEFE !important; color: #010101 !important;
}
@media (prefers-color-scheme: dark) {
body,
p,
td,
tr,
.body,
table,
h1,
h2,
h3,
h4,
h5,
h6,
div,
span {
background-color: #27292D !important; color: #FEFEFE !important;
}
}
a {
color: inherit !important; text-decoration: underline !important;
}
</style><!--[if mso | ie]>
<style type="text/css">
a {
background-color: #FEFEFE !important; color: #010101 !important;
}
@media (prefers-color-scheme: dark) {
a {
background-color: #27292D !important; color: #FEFEFE !important;
}
}
</style>
<![endif]--></head><body class="">
<div style="display: none; max-height: 0px; overflow: hidden;">GitHub analyzed 2,500+ `agents.md` files and found the successful ones were specialists with clear jobs, not vague helpers β β β β β β β β β β β β β β β β β β β β β β β β β β β β β β β β β β β β β β β β β β β β β β β β β β β β </div>
<div style="display: none; max-height: 0px; overflow: hidden;">
<br>
</div>
<table align="center" class="document"><tbody><tr><td valign="top">
<table align="center" border="0" cellpadding="0" cellspacing="0" class="container" width="600"><tbody><tr class="inner-body"><td>
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr class="header"><td bgcolor="" class="container">
<table width="100%"><tbody><tr><td class="container">
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" style="margin-top: 0px;" width="100%"><tbody><tr><td style="padding: 0px;">
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div style="text-align: center;">
<span style="margin-right: 0px;"><a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Ftldr.tech%2Fdev%3Futm_source=tldrdev/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/yM1CIeVPk7NdIeXT2DigmtO46LX91OpkIBnFHMY9m94=433" rel="noopener noreferrer" target="_blank"><span>Sign Up</span></a>
|<span style="margin-right: 2px; margin-left: 2px;"><a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fadvertise.tldr.tech%2F%3Futm_source=tldrdev%26utm_medium=newsletter%26utm_campaign=advertisetopnav/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/SGh5LRglURxEq8jM0Tanqj9ad_JpQydkUCFUrXg8zsA=433" rel="noopener noreferrer" target="_blank"><span>Advertise</span></a></span>|<span style="margin-left: 2px;"><a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fa.tldrnewsletter.com%2Fweb-version%3Fep=1%26lc=156b9020-84b7-11f0-a976-55fc1d40139c%26p=a281c37a-cf4a-11f0-9e8a-e70d5dfa173c%26pt=campaign%26t=1764677269%26s=4438e71108f79b79c70e37f45a3cadc61338d76e3de500043a14b87f62c5d095/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/5rH9sVstVEoZgymWPhIuD3Et_p9PibplYpRPmMayeGk=433"><span>View Online</span></a></span>
<br>
</span></div>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="text-align: center;"><span data-darkreader-inline-color="" style="--darkreader-inline-color:#3db3ff; color: rgb(51, 175, 255) !important; font-size: 30px;">T</span><span style="font-size: 30px;"><span data-darkreader-inline-color="" style="color: rgb(232, 192, 96) !important; --darkreader-inline-color:#e8c163; font-size:30px;">L</span><span data-darkreader-inline-color="" style="color: rgb(101, 195, 173) !important; --darkreader-inline-color:#6ec7b2; font-size:30px;">D</span></span><span data-darkreader-inline-color="" style="--darkreader-inline-color:#dd6e6e; color: rgb(220, 107, 107) !important; font-size: 30px;">R</span>
<br>
</td></tr></tbody></table>
<br>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr id="together-with"><td align="center" height="20" style="vertical-align:middle !important;" valign="middle" width="100%"><strong style="vertical-align:middle !important; height: 100%;">Together With </strong>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fgo.clerk.com%2FzMvEri4/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/5BIOpSJ-FdsnpbaNRqqbUqzMREcKebD0VMpDxr0RFdQ=433"><img src="https://images.tldr.tech/clerk.png" valign="middle" style="vertical-align: middle !important; height: 100%;" alt="Clerk"></a></td></tr></tbody></table>
<table style="table-layout: fixed; width:100%;" width="100%"><tbody><tr><td style="padding:0;border-collapse:collapse;border-spacing:0;margin:0;">
<div style="text-align: center;">
<h1><strong> TLDR Dev <span id="date">2025-12-02</span></strong></h1>
</div>
</td></tr></tbody></table>
<table style="table-layout: fixed; width:100%;" width="100%"><tbody><tr id="sponsy-copy"><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fgo.clerk.com%2FzMvEri4/2/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/Qj94bYw4VIyWkhvG8A4DCGgZsEjkPSTH3e2pCGcgtzc=433">
<span>
<strong>Secure your backend services without the auth headaches (Sponsor)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
Your microservices, background workers, and distributed systems need authentication too, but rolling your own M2M auth is a nightmare. <a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fgo.clerk.com%2FzMvEri4/3/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/2yIwhnne7eGJqmurokp_Hdlak1bpXcUsnbxn0NCb1QA=433" rel="noopener noreferrer nofollow" target="_blank"><span>Clerk's M2M tokens</span></a> are now production-ready: stable APIs, usage tracking in the dashboard, and straightforward token-based auth between any backend service. No more managing service credentials, rotating secrets, or debugging custom auth flows. Ship secure service-to-service auth in minutes, not weeks.
</span>
</span>
</div>
</td></tr></tbody></table>
</td></tr></tbody></table>
</td></tr></tbody></table>
</td></tr>
<tr bgcolor=""><td class="container">
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td style="padding: 0px;">
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding-top: 0px; padding-bottom: 0px;">
<div class="text-block">
<div style="text-align: center;"><span style="font-size: 36px;">π§βπ»</span></div>
</div>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding-top: 0px; padding-bottom: 0px;">
<div class="text-block">
<div style="text-align: center;">
<h1><strong>Articles & Tutorials</strong></h1>
</div>
</div>
</td></tr></tbody></table>
<table style="table-layout: fixed; width: 100%;" width="100%"><tbody><tr><td style="padding:0;border-collapse:collapse;border-spacing:0;margin:0;" valign="top">
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fgithub.blog%2Fai-and-ml%2Fgithub-copilot%2Fhow-to-write-a-great-agents-md-lessons-from-over-2500-repositories%2F%3Futm_source=tldrdev/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/hpXnDeoEGsd2H5CjzL5zhyMDAh5ru4LiEXG3vEhlcaw=433">
<span>
<strong>How to write a great agents.md: Lessons from over 2,500 repositories (6 minute read)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
GitHub analyzed 2,500+ `agents.md` files and found the successful ones were specialists with clear jobs, not vague helpers. Good agents.md files give your agent specific commands to run, concrete code examples to follow, and explicit boundaries (like βnever touch these filesβ). Start simple with one focused task like writing tests or docs, then iterate based on what breaks.
</span>
</span>
</div>
</td></tr></tbody></table>
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fcss-tricks.com%2Fon-inheriting-and-sharing-property-values%2F%3Futm_source=tldrdev/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/NOP-oAQj_ZpjecryUcgA4RGMEIcluyOtTQmDspAxazA=433">
<span>
<strong>On Inheriting and Sharing Property Values (11 minute read)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
CSS doesn't let you set one property based on another's value (like `border-radius: height`), and there's no magic `compute()` function coming. Your best bets right now are to use CSS custom properties if you know the values, `aspect-ratio` to link width/height, `currentColor` to reuse colors, or container query units like `100cqh` to steal parent dimensions.
</span>
</span>
</div>
</td></tr></tbody></table>
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Faws.amazon.com%2Fblogs%2Faws%2Fintroducing-aws-lambda-managed-instances-serverless-simplicity-with-ec2-flexibility%2F%3Futm_source=tldrdev/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/qH7zkmpRnLy2HEFq3W6qtimABAMppZ6XYvjhUL8RvgY=433">
<span>
<strong>Introducing AWS Lambda Managed Instances: Serverless simplicity with EC2 flexibility (5 minute read)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
AWS Lambda Managed Instances is a new capability that can run AWS Lambda functions on Amazon Elastic Compute Cloud compute while maintaining serverless operational simplicity. It allows developers to access specialized compute options and optimize costs for steady-state workloads using a familiar serverless development experience. Lambda Managed Instances can be used to define how Lambda functions run on EC2 instances. Developers can just select compute profiles optimized for specific workload requirements without taking on the operational burden of managing Amazon EC2 infrastructure.
</span>
</span>
</div>
</td></tr></tbody></table>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding-top: 0px; padding-bottom: 0px;">
<div class="text-block">
<div style="text-align: center;"><span style="font-size: 36px;">π§ </span></div>
</div>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding-top: 0px; padding-bottom: 0px;">
<div class="text-block">
<div style="text-align: center;">
<h1><strong>Opinions & Advice</strong></h1>
</div>
</div>
</td></tr></tbody></table>
<table style="table-layout: fixed; width: 100%;" width="100%"><tbody><tr><td style="padding:0;border-collapse:collapse;border-spacing:0;margin:0;" valign="top">
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fadactio.com%2Fjournal%2F22265%3Futm_source=tldrdev/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/L5q8EJ5PinqO_gR1974P16tC1CdDXxbin4rWuxxarnY=433">
<span>
<strong>Why use React? (14 minute read)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
While React makes sense as a server-side authoring tool (developers love JSX and component architecture), shipping it to the browser hurts users with unnecessary JavaScript. Frameworks like Astro let you write in React but render plain HTML to users, while Next.js defaults to the βhydrationβ pattern that sends all that server-side JavaScript to the client anyway.
</span>
</span>
</div>
</td></tr></tbody></table>
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fopen.substack.com%2Fpub%2Fhighgrowthengineer%2Fp%2Fmy-weekly-tech-industry-intake-routine%3Futm_source=tldrdev/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/UyG2DZJChJS0e4jPAT69V67PYDS9erUpMx_NU_ITVSc=433">
<span>
<strong>My weekly tech industry intake routine as a Staff Engineer (10 minute read)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
A Staff Engineer shares his Saturday morning ritual for staying current: he batches all newsletters into a 2-3 hour block using Superhuman's split inbox (to separate articles from urgent emails) and Mailbrew (to group 60+ weekly emails into just 2 digests). His process is simple: queue interesting articles by title only, read them one by one, then immediately take action by either saving to Notion for reference or adding to Todoist as a work idea.
</span>
</span>
</div>
</td></tr></tbody></table>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding-top: 0px; padding-bottom: 0px;">
<div class="text-block">
<div style="text-align: center;"><span style="font-size: 36px;">π</span></div></div>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding-top: 0px; padding-bottom: 0px;">
<div class="text-block">
<div style="text-align: center;">
<h1><strong>Launches & Tools</strong></h1>
</div>
</div>
</td></tr></tbody></table>
<table style="table-layout: fixed; width: 100%;" width="100%"><tbody><tr><td style="padding:0;border-collapse:collapse;border-spacing:0;margin:0;" valign="top">
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fgo.clerk.com%2FgGLjCIO%3Futm_source=tldrdev/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/4htppKz3TxiFrwANfoaDeNVy2JseRVnPF9QawKmun74=433">
<span>
<strong>Track B2B growth like you track users (Sponsor)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
Your organizations are just as important as your users. Now track them the same way. Clerk's <a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fgo.clerk.com%2FgGLjCIO/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/cAlV4plPGMUv6X9rndfN2Kcd8gjHozs6VJbKAj_Vhew=433" rel="noopener noreferrer nofollow" target="_blank"><span>new Organization Growth Analytics</span></a> gives you retention, churn, and cohort analysis for every organization in your app. Daily, weekly, or monthly active orgs. Flexible filtering. Click any chart segment to drill into specific cohorts. Stop flying blind on B2B metrics.
</span>
</span>
</div>
</td></tr></tbody></table>
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Faws.amazon.com%2Fabout-aws%2Fwhats-new%2F2025%2F11%2Fpreview-aws-interconnect-multicloud%2F%3Futm_source=tldrdev/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/mBOpnmDKp_CRdFRhVjbsdxlNwThqSbYo-XBJ0s_YXk8=433">
<span>
<strong>AWS announces preview of AWS Interconnect - multicloud (1 minute read)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
AWS Interconnect - multicloud makes it easy to connect AWS networking services to other cloud service providers. It will start in preview with Google Cloud and then open up to Microsoft Azure later in 2026. The service is now available in preview in five AWS regions. Cloud service providers can easily adopt the service via a published open API package on GitHub.
</span>
</span>
</div>
</td></tr></tbody></table>
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fgithub.com%2Famterp%2Frad%3Futm_source=tldrdev/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/4lLKCrOy1zLpX7ZqdNQUs-xOY-dV4Do7ZwJZhfJ4FRU=433">
<span>
<strong>Rad (GitHub Repo)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
Rad gives users Python-like scripting with CLI superpowers built in. It allows users to write maintainable scripts with declarative argument parsing, built-in JSON processing, and more. The project is still in early development, but it is already useful for real scripts. Rad is optimized for CLI scripting - a general-purpose language may be more appropriate for enterprise applications, high-performance computations, and projects that require specialized libraries.
</span>
</span>
</div>
</td></tr></tbody></table>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding-top: 0px; padding-bottom: 0px;">
<div class="text-block">
<div style="text-align: center;"><span style="font-size: 36px;">π</span></div></div>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding-top: 0px; padding-bottom: 0px;">
<div class="text-block">
<div style="text-align: center;"><strong><h1>Miscellaneous</h1></strong></div>
</div>
</td></tr></tbody></table>
<table bgcolor="" style="table-layout: fixed; width: 100%;" width="100%"><tbody><tr><td style="padding:0;border-collapse:collapse;border-spacing:0;margin:0;" valign="top">
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fred.anthropic.com%2F2025%2Fsmart-contracts%2F%3Futm_source=tldrdev/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/o9XUdrSjHaQQNSH_EwSeMlv12MwvBEQY9W8vYrHYYv0=433">
<span>
<strong>AI agents find $4.6M in blockchain smart contract exploits (22 minute read)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
Anthropic researchers evaluated AI agents' ability to exploit smart contracts on a newly created benchmark, SCONE-bench. The agents, including Claude Opus 4.5 and GPT-5, successfully exploited vulnerabilities in smart contracts, collectively amassing $4.6 million in simulated stolen funds from contracts exploited after March. In a separate simulation, the AI agents uncovered two novel zero-day vulnerabilities in recently deployed contracts, showing the technical feasibility of profitable, real-world autonomous exploitation.
</span>
</span>
</div>
</td></tr></tbody></table>
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Finfrequently.org%2F2025%2F11%2Fperformance-inequality-gap-2026%2F%3Futm_source=tldrdev/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/A2i_8EkSmQXan96UuCSW71JYlFCPCrB2MJ1hky_yzfM=433">
<span>
<strong>The Performance Inequality Gap, 2026 (42 minute read)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
Despite devices and networks improving, the performance gap between rich and poor users is still growing. For 2026, the budget is ~150KiB of HTML/CSS/fonts and ~300-350KiB of JavaScript (gzipped) to serve the global 75th percentile, but less than half of mobile sites pass Core Web Vitals because developers keep shipping way more JavaScript than reasonable.
</span>
</span>
</div>
</td></tr></tbody></table>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding-top: 0px; padding-bottom: 0px;">
<div class="text-block">
<div style="text-align: center;"><span style="font-size: 36px;">β‘</span></div></div>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding-top: 0px; padding-bottom: 0px;">
<div class="text-block">
<div style="text-align: center;">
<h1><strong>Quick Links</strong></h1>
</div>
</div>
</td></tr></tbody></table>
<table bgcolor="" style="table-layout: fixed; width: 100%;" width="100%"><tbody><tr><td style="padding:0;border-collapse:collapse;border-spacing:0;margin:0;" valign="top">
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fwww.apple.com%2Fnewsroom%2F2025%2F12%2Fjohn-giannandrea-to-retire-from-apple%2F%3Futm_source=tldrdev/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/h9GxSi1Smy8HDJh_LUvpOOEHebTO96fb0nMKgx6QMZA=433">
<span>
<strong>John Giannandrea to retire from Apple (7 minute read)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
Apple announced that John Giannandrea will retire as senior vice president for Machine Learning and AI Strategy, and Amar Subramanya (previously part of Microsoft and ex-VP of the Gemini App at Google) will join as the new vice president of AI.
</span>
</span>
</div>
</td></tr></tbody></table>
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Ftonisagrista.com%2Fblog%2F2025%2Fgoogle-unkills-jpegxl%2F%3Futm_source=tldrdev/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/tFn9ZrILnYIQ-DV_1MLvyAAv3EKVDxrJSddiI2gUMec=433">
<span>
<strong>Google unkills JPEG XL? (6 minute read)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
After initially rejecting JPEG XL despite community support, Chromium has reversed its decision and will now support the format.
</span>
</span>
</div>
</td></tr></tbody></table>
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fstratechery.com%2F2025%2Fgoogle-nvidia-and-openai%2F%3Futm_source=tldrdev/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/Iy3aRGI9pZXqTF3HqnCpiu5ozO4a7-kCTb6K0X-anB8=433">
<span>
<strong>Google, Nvidia, and OpenAI (20 minute read)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
Google's advancements in AI with Gemini 3 and its TPU offerings are challenging the dominance of OpenAI and Nvidia, forcing them to re-evaluate their moats and strategies.
</span>
</span>
</div>
</td></tr></tbody></table>
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Feclecticlight.co%2F2025%2F11%2F30%2Flast-week-on-my-mac-losing-confidence%2F%3Futm_source=tldrdev/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/VEKoGs-3Hww2g6SVGUJNY1Ey2tYhyqmyZ3R2MQ3ADNk=433">
<span>
<strong>Last Week on My Mac: Losing confidence (30 minute read)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
This dev has lost confidence in macOS due to silent failures, uninformative error messages, and the resulting reliance on workarounds.
</span>
</span>
</div>
</td></tr></tbody></table>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td align="left" style="word-break: break-word; vertical-align: top; padding: 5px 10px;">
<p style="padding: 0; margin: 0; font-size: 22px; color: #000000; line-height: 1.6; font-weight: bold;">
Love TLDR? Tell your friends and get rewards!
</p>
</td></tr>
<tr><td class="container" style="padding: 0px 10px 15px;">
<div class="text-block">
Share your referral link below with friends to get free TLDR swag!
</div>
</td></tr>
<tr><td align="left" style="padding: 10px;">
<div class="text-block">
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Frefer.tldr.tech%2F8770c80a%2F3/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/taIRO8aUAq7JUNYkgLbIhWbTFF48W7jmorh4ktowyZg=433" style="color: #464ba4; text-decoration: underline;">https://refer.tldr.tech/8770c80a/3</a>
</div>
</td></tr>
<tr></tr>
<tr><td align="left" style="padding:5px 10px;">
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fhub.sparklp.co%2Fsub_7383e7653c81%2F3/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/ROAjEvLdnMDz5RCJpaFh0f_K6lZNqwntvDfcBY73LFQ=433" style="font-size: 16px; line-height: 1.6; padding: 10px 0; display: inline-block; text-decoration: underline;"><span style="mso-text-raise:13pt; text-decoration: underline;">Track your referrals here.</span></a>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td align="left" style="word-break: break-word; vertical-align: top; padding: 5px 10px;">
<p style="padding: 0; margin: 0; font-size: 22px; color: #000000; line-height: 1.6; font-weight: bold;">
Want to advertise in TLDR? π°
</p>
<div class="text-block" style="margin-top: 10px;">
If your company is interested in reaching an audience of web developers and engineering decision makers, you may want to <a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fadvertise.tldr.tech%2F%3Futm_source=tldrdev%26utm_medium=newsletter%26utm_campaign=advertisecta/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/ClAggaruvt_NL8nzrfwxT-HEFJ1sqc53mxDwY6K0Efc=433"><strong><span>advertise with us</span></strong></a>.
</div>
<br>
<!-- New "Want to work at TLDR?" section -->
<p style="padding: 0; margin: 0; font-size: 22px; color: #000000; line-height: 1.6; font-weight: bold;">
Want to work at TLDR? πΌ
</p>
<div class="text-block" style="margin-top: 10px;">
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fjobs.ashbyhq.com%2Ftldr.tech/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/jsETZSuXLtn5njjLRmSn5_tQV258sr4M6QvGCoQDwY8=433" rel="noopener noreferrer" style="color: #0000EE; text-decoration: underline;" target="_blank"><strong>Apply here</strong></a> or send a friend's resume to <a href="mailto:jobs@tldr.tech" style="color: #0000EE; text-decoration: underline;">jobs@tldr.tech</a> and get $1k if we hire them!
</div>
<br>
<div class="text-block">
If you have any comments or feedback, just respond to this email!
<br>
<br> Thanks for reading,
<br>
<span>Priyam Mohanty</span>, <a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fwww.linkedin.com%2Fin%2Fxu-jenny%2F/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/YsaNRuhjLeKpieAwbyH2ixIBy-pFunpD6g_f7k_grQQ=433"><span>Jenny Xu</span></a> & <span>Ceora Ford</span>
<br>
<br>
</div>
<br>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block" id="testing-id">
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Ftldr.tech%2Fdev%2Fmanage%3Femail=silk.theater.56%2540fwdnl.com/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/QN2VlBW1b1lCJSCxg3eKX2elytC6kreLAR00sXlzPN4=433">Manage your subscriptions</a> to our other newsletters on tech, startups, and programming. Or if TLDR Dev isn't for you, please <a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fa.tldrnewsletter.com%2Funsubscribe%3Fep=1%26l=e8d201ca-3e93-11ed-9a32-0241b9615763%26lc=156b9020-84b7-11f0-a976-55fc1d40139c%26p=a281c37a-cf4a-11f0-9e8a-e70d5dfa173c%26pt=campaign%26pv=4%26spa=1764676905%26t=1764677269%26s=4728ebc3793876de99963a377d7fb606815e45ef86ba518276fb940d46f0c02c/1/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/3rjjMKYWKQ_uvFIQeyTEUOmb6oe597k1SqQDniZbyn4=433">unsubscribe</a>.
<br>
</div>
</td></tr></tbody></table>
</td></tr></tbody></table>
</td></tr></tbody></table>
</td></tr></tbody></table>
</td></tr></tbody></table>
<img alt="" src="http://tracking.tldrnewsletter.com/CI0/0100019adef63922-ca8784ce-c0d6-476e-95de-bb868f8f05e7-000000/5kQ-9lpOQYO0F1JE6BWCdlGf08jD5HJ5vwQiDybpLHY=433" style="display: none; width: 1px; height: 1px;">
</body></html>