<!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 WebDev</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;">Being technically skilled is a good start to advancing your career, but eventually, it will not be enough to stand out, as everyone becomes skilled โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ โ </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%2Fwebdev%3Futm_source=tldrwebdev/1/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/3B3eczY0soXQXrMFw6MXTGUh1RNflZ6d6f9A6l40iBg=421" 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=tldrwebdev%26utm_medium=newsletter%26utm_campaign=advertisetopnav/1/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/-Aqdeo7i8RBV8ox8GyOs5mTvEkMZDfGNd5-h48bdPS8=421" 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=d0774786-8c98-11f0-98b8-f7fc195374ed%26pt=campaign%26t=1757329653%26s=d8f1fd9877a03a5e408a922d13805fa5767542b45ccd925cfd5165ca573a1579/1/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/er7ZECyx16iknbk0QOoP4FmrEChbDs_jlyAZVL5Gf6I=421"><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></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 Web Dev <span id="date">2025-09-08</span></strong></h1> </div> </td></tr></tbody></table> <table style="table-layout: fixed; width:100%;" width="100%"><tbody></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%2Fblog.frost.kiwi%2Fdual-kawase%2F%3Futm_source=tldrwebdev/1/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/yxEuutGAKEZPseX40Ye2sIKenSH-oPyJYTy0mGdRcKo=421"> <span> <strong>Video Game Blurs (and how the best one works) (41 minute read)</strong> </span> </a> <br> <br> <span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;"> There are different ways to implement blurs in video games, from basic box blur to the efficient Dual Kawase Blur. This article goes over their mathematical principles and performance trade-offs. It even shows interactive visualizations and benchmarks to help understand the impact of different blur algorithms on visual quality and GPU performance. </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%2Fallan.reyes.sh%2Fposts%2Fkeeping-secrets-out-of-logs%2F%3Futm_source=tldrwebdev/1/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/wlWD-jlgDzLd14NGPCCcK0y9w6p_TzFxMiW_Qct2qnk=421"> <span> <strong>Keeping Secrets Out of Logs (36 minute read)</strong> </span> </a> <br> <br> <span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;"> It can be challenging to prevent secrets from being logged. There's no single solution - instead, one can use multiple imperfect methods for defense-in-depth. This article covers these methods: better data architecture, transformations, domain primitives, log formatters, tests, scanners, and pre-processors. </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%2Fevilmartians.com%2Fchronicles%2Fthe-whop-chop-how-we-cut-a-rails-test-suite-and-ci-time-in-half%3Futm_source=tldrwebdev/1/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/7sRwnVlj_LWUBJXlTwThJLfeBI2J-NtJ09GToq5PijE=421"> <span> <strong>The Whop chop: how we cut a Rails test suite and CI time in half (8 minute read)</strong> </span> </a> <br> <br> <span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;"> Whop's Rails test suite runtime was cut in half by using TestProf and StackProf to identify performance bottlenecks. The biggest win came from disabling Rails' verbose SQL logging and query log tags in the test environment, which eliminated I/O overhead from thousands of database queries being written to disk. Additional optimizations included disabling Sentry logging during tests and addressing FactoryBot overhead, reducing single process test runs from ~25 minutes to ~12 minutes and CI runs from ~4 minutes to ~2 minutes. </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%2Fjoshs.bearblog.dev%2Fbeing-good-isnt-enough%2F%3Futm_source=tldrwebdev/1/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/VG9kxkZsGz3ietPBzfvlndsGlq6J31ptUccIQAqV1Jo=421"> <span> <strong>Being good isn't enough (4 minute read)</strong> </span> </a> <br> <br> <span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;"> Being technically skilled is a good start to advancing your career, but eventually, it will not be enough to stand out, as everyone becomes skilled. Expanding your impact requires combining technical skills with product thinking, project execution, and people skills. The most important trait is agency: taking initiative to make things happen and continually improving in the open. </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%2Fgamesbymason.com%2Fblog%2F2025%2Fstop-shipping-pngs%2F%3Futm_source=tldrwebdev/1/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/XDFHmN1TOM3-WFmdRKOs5-NBAvQSbvLHhbMg4aFcWBA=421"> <span> <strong>Stop Shipping PNGs In Your Games (7 minute read)</strong> </span> </a> <br> <br> <span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;"> Using PNGs for game textures is suboptimal. There are better alternatives like KTX2 and DDS. These formats are designed for texture data, such as features like pregenerated mipmaps, cubemaps, and GPU-compatible compression (like BCn) for improved storage, VRAM usage, and performance. Tools like Zex can help export to these formats, as most image editors lack native support. </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%2Fcodesmash.dev%2Fwhy-i-ditched-docker-for-podman-and-you-should-too%3Futm_source=tldrwebdev/1/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/syqs88iJFn0sYRhc4bI27FR-ovx4nymLEkNaZNYp9ls=421"> <span> <strong>Switching from Docker to Podman (10 minute read)</strong> </span> </a> <br> <br> <span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;"> Podman is a better containerization tool than Docker due to its daemonless architecture. It is better for security and reduces single points of failure. Podman integrates well with systemd and Kubernetes, making deployment and management easier. </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%2Fwww.datadoghq.com%2Fresources%2Fimproving-customer-experience-ebook%2F%3Futm_source=tldrnewsletter%26utm_medium=newsletter%26utm_campaign=dg-coreplatform-ww-customer-experience-ebook-webdev/1/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/FN3_Xclw2xbnd5npfJPooj5NlhKkcmRr29u9DX3xMJI=421"> <span> <strong>The 4 Drivers of Better CX (Sponsor)</strong> </span> </a> <br> <br> <span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;"> Everyone claims to be customer-centric. How can dev teams actually deliver on this promise? This <a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fwww.datadoghq.com%2Fresources%2Fimproving-customer-experience-ebook%2F%3Futm_source=tldrnewsletter%26utm_medium=newsletter%26utm_campaign=dg-coreplatform-ww-customer-experience-ebook-webdev/2/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/JZOjAO07i1OeCculoBaTZ_tIoHVbVg2aO_UGmHY7Lg0=421" rel="noopener noreferrer nofollow" target="_blank"><span>Datadog eBook</span></a> looks at 4 key drivers: technology, analytics, security, and collaboration. <a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fwww.datadoghq.com%2Fresources%2Fimproving-customer-experience-ebook%2F%3Futm_source=tldrnewsletter%26utm_medium=newsletter%26utm_campaign=dg-coreplatform-ww-customer-experience-ebook-webdev/3/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/OilkmtjlEXnYWcnObN3iM-rB5p6ku3FyGukGjnOq-3o=421" rel="noopener noreferrer nofollow" target="_blank"><span>Get your copy</span></a> </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%2FBeaconBay%2Fck%3Futm_source=tldrwebdev/1/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/QixYO5XbSvhPMz-Pwe0mbMA_lSy5w2cVm6dcnLbFeVc=421"> <span> <strong>Ck (GitHub Repo)</strong> </span> </a> <br> <br> <span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;"> Ck is a semantic grep tool that makes code search better by understanding meaning rather than just keywords. It offers drop-in grep compatibility with added features like semantic, hybrid, and JSON output search modes. The tool indexes code once for fast semantic searches and automatically excludes common build and cache directories. </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%2Fkrasimirtsonev.com%2Fblog%2Farticle%2Fvanilla-react-server-components-with-no-framework%3Futm_source=tldrwebdev/1/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/8yj1Nue9BEJFJ5Wh8SSksZ3VgAzgIJ53N886qDzpXfo=421"> <span> <strong>React Server Components support without a framework (8 minute read)</strong> </span> </a> <br> <br> <span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;"> Forket is a tool that enables the use of React Server Components (RSC) without requiring a specific framework like Next.js. It works by splitting code into client and server versions, building a component dependency graph, and managing the serialization and hydration of components. To use it, run Forket during the build process to transform the code and then integrate runtime glue code into the HTTP server to handle component streaming and hydration. </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%2Flinks.tldrnewsletter.com%2FKukoOd/1/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/fVq6bTYqNrbKgS9lT4FI9UlEGHxosQezW9xQRWxZp7s=421"> <span> <strong>Why language models hallucinate (8 minute read)</strong> </span> </a> <br> <br> <span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;"> This research paper from OpenAI investigates why language models like ChatGPT hallucinate. Current training and evaluation methods inadvertently reward guessing over admitting uncertainty, as accuracy-focused scoreboards prioritize correct answers, even if obtained through chance. This incentivizes models to guess instead of abstaining when unsure, leading to confident errors on low-frequency facts that are difficult to predict. </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%2Fshmck.substack.com%2Fp%2Fclaude-code-framework-wars%3Futm_source=tldrwebdev/1/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/9_l2Z-lmuCIJpeo9hzRxBsyb_nn83RgMQTieQz0GP60=421"> <span> <strong>Claude Code Framework Wars (6 minute read)</strong> </span> </a> <br> <br> <span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;"> Providing structure to AI coding workflows improves output and shifts developer roles towards higher-level tasks. For example, devs can use markdown backlogs, role simulation, and custom tool libraries to improve Claude Code's capabilities. </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%2Faddyosmani.com%2Fblog%2Fchrome-17th%3Futm_source=tldrwebdev/1/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/AtNndectNtIOpCYMcGtQuat5toExUKuuERBKVrZPS2E=421"> <span> <strong>Google Chrome at 17 - A history of our browser (8 minute read)</strong> </span> </a> <br> <br> <span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;"> Google Chrome launched on September 2, 2008, with a multi-process architecture that isolated tabs into separate processes for better stability, along with the V8 JavaScript engine that improved web app performance. Over its 17-year history, Chrome has continuously focused on four core principles: speed, security, stability, and simplicity. The browser evolved from a small skunkworks project by ex-Firefox engineers at Google into a platform used by billions. It pioneered technologies like SPDY (which became HTTP/2) and QUIC (which became HTTP/3). </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%2Fserverlesshorrors.com%2F%3Futm_source=tldrwebdev/1/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/M3hslPiFKJIivYG0IM6G0rCMwdJh8htZjsmcFSDV8SY=421"> <span> <strong>Serverless Horrors (Website)</strong> </span> </a> <br> <br> <span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;"> A simple blog where you can read all the horror stories of serverless. </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%2Fsignalsandthreads.com%2Fwhy-ml-needs-a-new-programming-language%2F%3Futm_source=tldrwebdev/1/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/X9ybcYgt5HlyeAC5ph9nvsoMO9L8smwKl52F2NCKPIw=421"> <span> <strong>Why ML Needs a New Programming Language (86 minute read)</strong> </span> </a> <br> <br> <span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;"> This is an interview with Chris Lattner, creator of LLVM and Swift, about his new programming language Mojo, which is designed to address the performance and portability challenges of modern AI hardware by combining Python-like syntax with metaprogramming and type system features. </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%2Fwww.gilesthomas.com%2F2025%2F09%2Fmaths-for-llms%3Futm_source=tldrwebdev/1/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/vWiOz7kRIf5xRF76FuwrLNkPWw0U6GI9m_DhK73Wbw4=421"> <span> <strong>The maths you need to start understanding LLMs (19 minute read)</strong> </span> </a> <br> <br> <span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;"> This guide goes over the necessary high-school-level math concepts like vectors, matrices, and projections, essential for understanding LLM inference. </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%2Fpwy.io%2Fposts%2Fkruci-post-mortem%2F%3Futm_source=tldrwebdev/1/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/xCBa-ZL7vyOGwMH-4uWSnKaormB0sKMqOliV0y5lwJs=421"> <span> <strong>kruci: Post-mortem of a UI library (23 minute read)</strong> </span> </a> <br> <br> <span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;"> This dev tried to create a new terminal UI library in Rust, but ultimately concluded that the potential gains in performance were outweighed by the increased complexity and development challenges, leading them to abandon the project. </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;"> 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=tldrwebdev%26utm_medium=newsletter%26utm_campaign=advertisecta/1/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/o-v5oilqBnbTPEM0XQPRZ3OLI9v30DKG6gcsnrN3WjU=421"><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/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/RlbqV3_3f2vk3Aw-CiojSvg3GeWk8nA-R_LSOUGcrDM=421" 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/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/RWsQVNGlBGAVoxEyI9r5r0HGk8yoo51pe-xJM1riCsg=421"><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%2Fwebdev%2Fmanage%3Femail=silk.theater.56%2540fwdnl.com/1/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/dIyGPZR1VkBUJa_qXnZfSQYWwlkEe0aWJ4UhGWjZWFQ=421">Manage your subscriptions</a> to our other newsletters on tech, startups, and programming. Or if TLDR Web 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=d0774786-8c98-11f0-98b8-f7fc195374ed%26pt=campaign%26pv=4%26spa=1757329254%26t=1757329653%26s=421efa443b9fecf848352e55ac42bf0d99c29195e086070391bbded1e68645a7/1/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/qS8vEkU23UQjwEYqP_NrPMgvj14aa0jNmweq3hx0yPY=421">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/0100019929027e43-89744c29-ad3e-49a9-850b-907e24d2e58d-000000/zSrIsRe_5rR4EiT77nFB7Xtq4tN8F6s08SB1eEr8O1M=421" style="display: none; width: 1px; height: 1px;"> </body></html>