<!DOCTYPE html><html lang="en" xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" style="font-size:16px;"><head></head><head><meta charset="utf-8"/><!--[if !mso]><!--><meta http-equiv="X-UA-Compatible" content="IE=edge"/><!--<![endif]--><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="x-apple-disable-message-reformatting"/><meta name="format-detection" content="telephone=no,address=no,email=no,date=no,url=no"/><meta name="color-scheme" content="light"/><meta name="supported-color-schemes" content="light"/><title>⚛️ Shopify ditched React Native and cut Android startup in half</title><!--[if mso]><xml><o:OfficeDocumentSettings><o:AllowPNG/><o:PixelsPerInch>96</o:PixelsPerInch></o:OfficeDocumentSettings></xml><![endif]--><style>
:root { color-scheme: light; supported-color-schemes: light; }
body { margin: 0; padding: 0; min-width: 100%!important; -ms-text-size-adjust: 100% !important; -webkit-transform: scale(1) !important; -webkit-text-size-adjust: 100% !important; -webkit-font-smoothing: antialiased !important; }
.body { word-wrap: normal; word-spacing:normal; }
table.mso { width: 100%; border-collapse: collapse; padding: 0; table-layout: fixed; }
img { border: 0; outline: none; }
table { mso-table-lspace: 0px; mso-table-rspace: 0px; }
td, a, span { mso-line-height-rule: exactly; }
#root [x-apple-data-detectors=true],
a[x-apple-data-detectors=true],
#MessageViewBody a { color: inherit !important; text-decoration: inherit !important; font-size: inherit !important; font-family: inherit !important; font-weight: inherit !important; line-height: inherit !important; }
span.MsoHyperlink { color: inherit !important; mso-style-priority: 99 !important; }
span.MsoHyperlinkFollowed { color: inherit !important; mso-style-priority: 99 !important; }
.a { background-color:#FFFFFF; }
.b { background-color:#030712; }
.c { background-color:#ffffff; }
.d { background-color:#EAEBEC; }
.d2 { background-color:#FFFFFF; }
.d3 { background-color:#FFFFFF; }
h1 a { text-decoration:underline;color:#a6825a !important;font-weight:bold; }
h2 a { text-decoration:underline;color:#a6825a !important;font-weight:bold; }
h3 a { text-decoration:underline;color:#a6825a !important;font-weight:bold; }
h4 a { text-decoration:underline;color:#a6825a !important;font-weight:bold; }
h5 a { text-decoration:underline;color:#a6825a !important;font-weight:bold; }
h6 a { text-decoration:underline;color:#a6825a !important;font-weight:bold; }
h1, h1 a, h2, h2 a, h3, h3 a, h4, h4 a, h5, h5 a, h6, h6 a, ul, li, ol, p, p a { margin: 0;padding: 0; }
h1 { font-family:'Trebuchet MS','Lucida Grande',Tahoma,sans-serif;font-weight:400;font-size:28px;color:#2A2A2A;line-height:1.75;padding-bottom:4px;padding-top:16px;mso-margin-top-alt:16px;mso-margin-bottom-alt:4px }
h2 { font-family:'Trebuchet MS','Lucida Grande',Tahoma,sans-serif;font-weight:400;font-size:24px;color:#2A2A2A;line-height:1.5;padding-bottom:4px;padding-top:16px;mso-margin-top-alt:16px;mso-margin-bottom-alt:4px }
h3 { font-family:'Trebuchet MS','Lucida Grande',Tahoma,sans-serif;font-weight:400;font-size:20px;color:#a6825a;line-height:1.25;padding-bottom:4px;padding-top:16px;mso-margin-top-alt:16px;mso-margin-bottom-alt:4px }
h4 { font-family:'Trebuchet MS','Lucida Grande',Tahoma,sans-serif;font-weight:400;font-size:18px;color:#2A2A2A;line-height:1.125;padding-bottom:4px;padding-top:16px;mso-margin-top-alt:16px;mso-margin-bottom-alt:4px }
h5 { font-family:'Trebuchet MS','Lucida Grande',Tahoma,sans-serif;font-weight:400;font-size:16px;color:#2A2A2A;line-height:1;padding-bottom:4px;padding-top:16px;mso-margin-top-alt:16px;mso-margin-bottom-alt:4px }
h6 { font-family:'Trebuchet MS','Lucida Grande',Tahoma,sans-serif;font-weight:400;font-size:14px;color:#2A2A2A;line-height:0.875;padding-bottom:4px;padding-top:16px;mso-margin-top-alt:16px;mso-margin-bottom-alt:4px }
p { font-family:'Helvetica',Arial,sans-serif;font-weight:400;color:#2D2D2D;font-size:16px;line-height:1.5;padding-bottom:12px;padding-top:12px;mso-margin-top-alt:12px;mso-margin-bottom-alt:12px; }
p a, .e a, ul a, li a, .h a, .h2 a, .h3 a { word-break:break-word;color:#a6825a !important;text-decoration:underline;text-decoration-color:#a6825a;font-weight:bold; }
p a span, .e a span, ul a span, li a span { color: inherit }
p .bold { font-weight:bold;color:#2D2D2D; }
p span[style*="font-size"] { line-height: 1.6; }
.f p { font-size:12px;line-height:15px;color:#2D2D2D;padding:0; }
.f p a { color:#2D2D2D !important; }
.g p { font-family:'Helvetica',Arial,sans-serif;font-size:14px;line-height:20px;font-weight:400;margin:0; }
.g p a { text-decoration: underline; }
.i p { font-family:'Helvetica',Arial,sans-serif;line-height:1.5;font-size:15px;color:#2D2D2D; }
.i p a { color:#2D2D2D !important; }
.i2 p { font-family:'Helvetica',Arial,sans-serif;line-height:1.5;font-size:15px;color:#2D2D2D; }
.i2 p a { color:#2D2D2D !important; }
.i3 p { font-family:'Helvetica',Arial,sans-serif;line-height:1.8;font-size:24px;color:#2D2D2D; }
.i3 p a { color:#2D2D2D !important; }
.h p a { color:#0C4A6E !important; }
.h2 p a { color:#0C4A6E !important; }
.h3 p a { color:#0C4A6E !important; }
.f p a, .i p a, .i2 p a, .i3 p a, .h p a, .h2 p a, .h3 p a { text-decoration:underline; }
.j { border-top:4px solid #a6825a; }
.k p { padding-left:15px;padding-bottom:0px;padding-top:6px;mso-margin-top-alt:6px;mso-margin-bottom-alt:0px;mso-margin-left-alt:15px; }
.o { background-color:#FFFFFF;border:1px solid #F1F1F1;border-radius:5px; }
.o p { font-family:'Helvetica',Arial,sans-serif;padding:0px;margin:0px; }
.l p,
.l p a, .l a { font-size:14px;line-height:20px;font-weight: bold;color:#2D2D2D;padding-bottom:6px;mso-margin-bottom-alt:6px;text-decoration:none; }
.m p,
.m p a { font-size:13px;line-height:18px;font-weight:400;color:#2D2D2D;padding-bottom:6px;mso-margin-bottom-alt:6px;text-decoration:none; }
.n p,
.n p a { font-size:12px;line-height:17px;font-weight:400;color:#2D2D2D;padding-bottom:6px;mso-margin-bottom-alt:6px;text-decoration:none; }
.p { background-color:#FFFFFF;max-width:520px;border:1px solid #E1E8ED;border:1px solid rgba(80, 80, 80, 0.3);border-radius:5px; }
.q { font-size:16px;font-family:Helvetica,Roboto,Calibri,sans-serif !important;border:1px solid #e1e8ed;border:1px solid rgba(80, 80, 80, 0.3);border-radius:10px;background-color:#FFFFFF; }
.q p { font-size:16px;font-family:system-ui,Helvetica,Roboto,Calibri,sans-serif !important;color:#222222;padding:4px 0; }
.r { border:1px solid #E1E8ED !important;border-radius:5px; }
.s p { font-size: 14px; line-height: 17px; font-weight: 400; color: #697882; text-decoration: none; }
.t p { font-family:'Helvetica',Arial,sans-serif;font-size:12px;line-height:1.5;font-weight:400;color:#000000;font-style:italic;padding:0px; }
.v { border-radius:10px;border:solid 0px #a6825a;background-color:#a6825a;font-family:'Verdana',Geneva,sans-serif;color:#000000; }
.v a { text-decoration:none;display:block;color:#000000; }
.w p { font-size:12px;line-height:15px;font-weight:400;color:#FFFFFF; }
.w p a { text-decoration: underline !important;color:#FFFFFF !important; }
ul { font-family:'Helvetica',Arial,sans-serif;margin:0px 0px 0px 25px !important;padding:0px !important;color:#2D2D2D;line-height:24px;list-style-type:disc !important;font-size:16px; }
ul ul { list-style-type:circle !important; }
ul ul ul { list-style-type:square !important; }
ul ul ul ul { list-style-type:disc !important; }
ul ul ul ul ul { list-style-type:circle !important; }
ul ul ul ul ul ul { list-style-type:square !important; }
ul ul ul ul ul ul ul { list-style-type:disc !important; }
ul ul ul ul ul ul ul ul { list-style-type:circle !important; }
ul ul ul ul ul ul ul ul ul { list-style-type:square !important; }
ul > li { font-family:'Helvetica',Arial,sans-serif;margin:10px 0px 0px 0px !important;padding: 0px 0px 0px 0px !important; color: #2D2D2D; }
.poll-choices > li { margin: 4px 0px 0px 0px !important; }
ol { font-family:'Helvetica',Arial,sans-serif;margin: 0px 0px 0px 25px !important;padding:0px !important;color:#2D2D2D;line-height:24px;list-style:decimal;font-size:16px; }
ol > li { font-family:'Helvetica',Arial,sans-serif;margin:10px 0px 0px 0px !important;padding: 0px 0px 0px 0px !important; color: #2D2D2D; }
li > p, li p { font-family:'Helvetica',Arial,sans-serif;font-size:16px;font-weight:400;line-height:24px;padding:0px; }
.e h3,
.e p,
.e span { padding-bottom:0px;padding-top:0px;mso-margin-top-alt:0px;mso-margin-bottom-alt:0px; }
.e span,
.e li { font-family:'Helvetica',Arial,sans-serif;font-size:16px;color:#2D2D2D;line-height:24px; }
.rec { font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !important; }
.rec__button:hover { background-color: #f9fafb !important; }
.copyright a {color: inherit !important; text-decoration: none !important; font-size: inherit !important; font-family: inherit !important; font-weight: inherit !important; line-height: inherit !important;}
.txt_social p { padding: 0; word-break: break-all; }
.table, .table-c, .table-h { border: 1px solid #C0C0C0; }
.table-c { padding:5px; background-color:#FFFFFF; }
.table-c p { color: #2D2D2D; font-family:'Helvetica',Arial,sans-serif !important;overflow-wrap: break-word; }
.table-h { padding:5px; background-color:#F1F1F1; }
.table-h p { color: #2A2A2A; font-family:'Trebuchet MS','Lucida Grande',Tahoma,sans-serif !important;overflow-wrap: break-word; }
@media only screen and (max-width:667px) {
.aa, .w100pc { width: 100% !important; }
.bb, .bb td { max-width: 100% !important; }
.bb img { max-width: 100% !important; height: auto !important; }
.dd { overflow-wrap: break-word !important; }
.cc { padding: 0px 8px !important; }
.ee { padding-top:10px !important;padding-bottom:10px !important; }
.ff ul, .ff ol { margin: 0px 0px 0px 10px !important;padding: 0px !important; }
.ff li { margin:10px 0px 0px 10px !important; }
.r {height:140px !important;}
.s p { font-size:13px !important;line-height:15px !important; }
.mob-hide {display:none !important;}
.mob-show {display: block !important; width: auto !important; overflow: visible !important; float: none !important; max-height: inherit !important; line-height: inherit !important;}
.mob-stack {width:100% !important;display:block !important;}
.mob-w-full {width:100% !important;}
.mob-block {display:block !important;}
.embed-img {padding:0px 0px 12px 0px !important;}
.socialShare {padding-top:15px !important;}
.rec { padding-left:15px!important;padding-right:15px!important; }
.bodyWrapper { padding:10px 4px 10px 4px !important; }
.social-mobile {float:left !important;margin-top:10px !important;}
}
@media screen and (max-width: 480px) {
u + .a .gg { width: 100% !important; width: 100vw !important; }
.tok-heart { padding-top:75% !important; }
.tok-play { padding-top: 250px !important; }
}
@media screen and (max-width: 320px) {
.tok-heart { padding-top:65% !important; }
}
.u { border: 1px solid #CACACA !important; border-radius: 2px !important; background-color: #ffffff !important; padding: 0px 13px 0px 13px !important; font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif !important;font-size: 12px !important; color: #767676 !important; }
.u a { text-decoration: none; display: block !important; color: #767676 !important; margin: 0px !important; }
.u span, .u img { color: #767676 !important;margin:0px !important; max-height:32px !important;background-color:#ffffff !important; }
</style><!--[if mso]><style type="text/css">
h1, h2, h3, h4, h5, h6 {font-family: Arial, sans-serif !important;}
body, table, td, p, a, span {font-family: Arial, sans-serif !important;}
sup { font-size: 100% !important;vertical-align: .5em !important;mso-text-raise: -1.5% !important;line-height: 0 !important; }
ul { margin-left:0px !important; margin-right:10px !important; margin-top:20px !important; margin-bottom:20px !important; }
ul li { margin-left: 0px !important; mso-special-format: decimal; }
ol { margin-left:0px !important; margin-right:10px !important; margin-top:20px !important; margin-bottom:20px !important; }
ol li { margin-left: 0px !important; mso-special-format: decimal; }
li.listItem { margin-left:15px !important; margin-top:0px !important; }
.paddingDesktop { padding: 10px 0 !important; }
.edm_outlooklist { margin-left: -20px !important; }
.embedImage { display:none !important; }
</style><![endif]--><!-- turkey.pink.45@rss.andrealin.itSVE9JWJXQUc88b925b-ad35-4013-ad2e-a5006015907561506297-0c60-4133-a925-5ec571ff2483 --><style></style></head><body class="a" style="margin:0px auto;padding:0px;word-wrap:normal;word-spacing:normal;background-color:#FFFFFF;"><div role="article" aria-roledescription="email" aria-label="email_name" lang="en" style="font-size:1rem"><div style="display:none;max-height:0px;overflow:hidden;"> plus the Chrome setting that can unmount your whole app  ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ </div><table role="none" width="100%" border="0" cellspacing="0" align="center" cellpadding="0" class="gg"><tr><td align="center" valign="top"><table role="none" width="670" border="0" cellspacing="0" cellpadding="0" class="aa" style="width:670px;table-layout:fixed;"><tr><td class="bodyWrapper" align="center" valign="top" style="padding:10px 5px 10px 5px;"><table role="none" width="100%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td align="center" valign="top" style="border-width:0px 0px 0px 0px;border-style: solid; border-color: #FFFFFF;border-radius:10px 10px 0px 0px;background-color:#ffffff;" class="c"><table role="none" width="100%" border="0" cellspacing="0" cellpadding="0" align="center"><tr id="header"><td style="padding:15px 15px 0px 15px;"><div style="padding-top:0px;padding-right:0px;padding-bottom:20px;padding-left:0px;"><table role="none" width="100%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td class="f" align="right" valign="top"><p> September 17, 2026 | <a data-read-online-tooltip="true" href="https://link.mail.beehiiv.com/v2/c/845b46357834046ae766340c53a470efae4c39e4639f72e7e6d64684f04e38b537337eb778017ba9bea5944be81a6632ba5304046048ba5d0adc4b6172f7d83a18bf0e84752353a15bf6950d1a1726faca7105cdb099e712f9426c0acc39273b0ef70665c9bffa20d5422e1313695b296cd24a61eb581717bcee5694deb35d9c6eac26c86f6b33831a6b61cef0eb4ee08bdae8adfdea3cb3793dbc380f4edf7f137e09c0502ffc3e71f0815a4ca6ed19/8402be4c789c331e">Read online</a></p></td></tr><tr><td style="line-height:0;"><div data-open-tracking="true"><img src="https://link.mail.beehiiv.com/v2/o/5aaf75135d7171dd48327e0bc7c1c67d96e3ba31121198091a073480bdc3db25eaadf8acae9abfdeb52605d40cd6c574751ec14ba531694ebac2836f64e19e03f46744a98164564be7a9fd737102dee173ca5ecf97b33d41b71dbddd16d7bac6b69df80202134e844afba8ec0cd63924e10e918ceea7641e73e1098b146bcea80409e6581d0d324bbbc0df87e9622776c63ac82a64f72fb27b08faa4330a46b2e448aee207c61d7fc32c5bdabd73f29d77ca119e581f9dc10294f2c53619dd2b4b589a34f18e41ff2c25d3534eb0ca7427fbba1c15cfc41167cb0c8e21854e6db16bd2156464213c28782f0715e9071af76df5c167fbb52930899592edb7599f9f5957d5a534ec19eb3cfaafbac9b48b2b7d61d60e521be97a2ca9cd24f8303d9d550165fbe30fe5c51082424b666da80563e8f843fde84ef899ba3d0a970fc8b59d1c603a1433265948837d9fe952296e9d37af08b44d36a195f3c989bebd9f4f126871d00bf554e9ecf7c5483ab5c5c9a7da278fa109f478adeb7b6e172b49f0ebcf9177775c20668df123547f5ea47e21d5783bc672aba90360db153e0bd95ec18905289c5e36cfcdb65e321fdb839dce630af8166908da04187cee92fdf91fe0a297f11ef87bdbf0cfec81dcf4dc/6d6b2e650246049b.gif" alt="" width="1" height="1" style="display:block;border:0;outline:0;"></div></td></tr></table></div></td></tr><tr id="content-blocks"><td class="email-card-body" align="center" valign="top" style="padding-bottom:15px;"><table role="none" width="100%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> Hey guys, </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> Welcome to another edition of Import React by Cosden Solutions! </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> Big week. <b>Shopify is walking away from React Native</b> after six years, and the reason isn't that it failed. There's a catch in their benchmark numbers, though, and an Expo founder called it out. Also in this issue: <b>a Chrome feature your users turn on that can unmount your React app</b>, a dropdown that went from 1,256ms to 96ms INP without a library, and a traffic light you should be able to build in 10 minutes (the trap is the cleanup). </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> Before we get into it, a quick word from this week's sponsor: </p></td></tr><tr><td id="1000-claude-prompts-top-professiona" class="dd" align="left" valign="top" style="color:#a6825a;font-weight:400;padding:0px 15px;text-align:left;"><h3 style="color:#a6825a;font-weight:400;mso-line-height-alt:125.0%;">1,000+ Claude Prompts Top Professionals Actually Use at Work</h3></td></tr><tr><td align="center" valign="top" style="padding-bottom:20px;padding-left:15px;padding-right:15px;padding-top:20px; " class="dd"><table role="none" border="0" cellspacing="0" cellpadding="0" class="bb" style="margin:0 auto 0 auto;"><tr><td align="center" valign="top" class="bb" style="width:630px;"><a href="https://link.mail.beehiiv.com/v2/c/5f19815eba80d4ad2f3eafb0e4c582a760626adf8d50a05a2ecb5abe0defc2eaa691e8bbba60cacd513541fa67e330a8a4dce4b59b7027136723a0a7117599afb2cddcb09b0d3d935bc54b1fe515cef1c6a54c6aeecd69b4611ba8331c7702fea4c16c6f8bed103d23ca794e0812ba04d0b24e71df409a573a2fda4c7eb164751b7d7eca4a586b032acf57ae05f9969bea91eb5494019fe57136ff4afa6dd1b38bcfd73a67106fdfcb8f0d5021c02a764410a00836a161ef2a72c7fb5a439e3fd7557ea6cbf6aa8b8309a12a46ae8f2f575690b462751e534d43377ac3b983bc9ce42c578c2f6c059a72e48a608c89a209f8a78864618a219ab0e74589ab9274/05f531860bdbfef2" rel="noopener noreferrer nofollow" style="text-decoration:none;" target="_blank"><img src="https://media.beehiiv.com/cdn-cgi/image/fit=scale-down,format=auto,onerror=redirect,quality=80,width=1920,height=3840/uploads/asset/file/f92d8dbe-a0dd-41f0-84ba-6b19318d83c9/1_000%2B_Claude_Prompts_to_Supercharge_your_productivity_V4.jpg?t=1785337624" alt="" height="auto" width="630" style="display:block;width:100%;" border="0"/></a></td></tr></table></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> Claude can be your analyst, editor, and strategist. </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> But most professionals are using it to fix grammar. </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> These 1,000+ Claude prompts take it from grammar tool to your most powerful AI work assistant. </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> Sign up for <a class="link" href="https://link.mail.beehiiv.com/v2/c/db9d6f5eaf2490bc0ce669e1a9d986a66dc6cecbea3c9085d0e7c3ac48884a970e1e7fde6a821fb55ad4611eddbf1720e19a18675141becf87a430336b9a8079f2247e0cfaf8ebbd62d4e0cfb082f9b49cf013351bb24e03d62f0910cd5e098438ea50d7570940921bff91ea109ee8f71d938a031de1001d054262861fa49b752f7a452a96c66c12cf85a235cc1d709919f8fca7311fad2b96a183e9d1e0bfebae6da894a22b10fb34d90a128f1f67a2decef5693b7fea83cb5a9a3a0f6dd8d2b7fea6b9e8b4022d6cfa16bc4d322b0908730dce6a0c9c76ca33a8d6e2d9c046b7e33ed67ecd871b6cf13bef19f94341aa7589baa9a30b808d44e4b3a391ba4b/2cb896aadfacaa7d" target="_blank" rel="noopener noreferrer nofollow"><span>Superhuman AI</span></a> and get: </p></td></tr><tr><td style="padding-bottom:12px;padding-left:37px;padding-right:27px;padding-top:12px;" class="ee"><div style="margin-left:0px;" class="edm_outlooklist"><ul style="font-weight:400;list-style-type:disc;margin-bottom:12px !important;margin-top:12px !important;padding:0px 0px 0px 0px;"><li class="listItem ultext"><p style="mso-line-height-alt:150.0%;padding:0px;text-align:left;word-break:break-word;"> 1,000+ ready-to-use Claude prompts to get real work done in minutes — researched, tested, and used by professionals at Google, Microsoft, and NASA </p></li><li class="listItem ultext"><p style="mso-line-height-alt:150.0%;padding:0px;text-align:left;word-break:break-word;"> Superhuman AI newsletter (4 min daily) so you keep learning new AI tools and skills to stay ahead in your career — the prompts are just the beginning </p></li></ul></div></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"><a class="link" href="https://link.mail.beehiiv.com/v2/c/b61b40ad2fc8d992b12771c2dee76e8df75ce930276f1341d5e6a335bc9986c3b0264ba83c872612dfc072d3ed8781911d9803217b97374d9e149c4d89f60f375d3bfddb4cbed0375c4f6e89afcb38868a1c9c48db75c90984e14351ef632ac5976943ed4dda0b1e8a4b9ba95e1082e32e1b5cb9ed33d61991e5976584195a1841e354ce192f5d89afd6212610f9f7c94a1a015c693cea77512cf0f04d649d115caf2644af5b410913f97e0b5aeab2d9cd03549e90011b583f7b4741d923d1057c0758532354ba1e1cb004ab17e624be464154dd1a1f46950fad440fcb78a2a336f54c30fdaf9c8fa7a7d2f251734b79db347293ffd2ed79abd594a150db5dc7/60e4f32b740965b7" target="_blank" rel="noopener noreferrer nofollow"><span>Claim your free prompts</span></a></p></td></tr><tr><td id="the-latest-in-react" class="dd" align="left" valign="top" style="color:#a6825a;font-weight:400;padding:0px 15px;text-align:left;"><h3 style="color:#a6825a;font-weight:400;mso-line-height-alt:125.0%;">⚡️ The Latest In React</h3></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> 📱 <a class="link" href="https://link.mail.beehiiv.com/v2/c/a6b368eb1f1d712b3df440eee8e93994d8e89f97cecaa36215bb1dc19fb922b0b9048de36c0e119a51ff4d80026832b25fa5ee2416d04a45e29b7d5610d4ea65855bd67e565fa53263bef461a93bd2917dc70eb6998f74f530c671023e9e97d12cba7aa8d43025f77377f5979cb2607d3c14f15252cd28c1688823d5187d1141be88b3857dd0bf8b612393add7750497c17bddf51411657dda56a8485fc995bfaa3c97614b105c1b0d18312bea182e49/0c0f316c00b46696" target="_blank" rel="noopener noreferrer nofollow"><span><b>Shopify Is Going Back To Native</b></span></a><br>Six years after going all-in on React Native, Shopify is rewriting its mobile apps in Swift and Kotlin. Their reasoning: coding agents mean building everything twice doesn't cost twice anymore. The <a class="link" href="https://link.mail.beehiiv.com/v2/c/c8a3147081960b0156d58281bf94319c3a55b72443a9bbdd5392b583542ab203810899cb94ab39b2766ab2f0ea8172fdee182d005df2dafce4c83172346d2cdfc2a1b33d7af0d2f10e1ea76096e8602a28fce2af1bb1297c7c119f24f37cba304f789ea1e6efa3b0f4590f643cc6b5cf058a0d8fbe43c7f02c97645d09d252705ebe4ea4820d57c53d4d4767a43c614b9d6310bb1e80512f3734f54514fa2b0f8a73586ada7cb03d5f034162f5969606/6c23c23bc77c8af7" target="_blank" rel="noopener noreferrer nofollow"><span>12-week Shop app rewrite</span></a> came back with big numbers: Android startup down 50%, iOS down 23%, and crashes down 10x. <b>But not everyone buys the comparison.</b> <a class="link" href="https://link.mail.beehiiv.com/v2/c/7d3bad5207dc30be5939d938ce07b5c0a9b3f213c021cc721102d161fa57a003c880de57f51f594d3d792838fc8a4c1ece827dfd9fa93a260a603a50eea2c4319456482a8be230ec69d9b9ef9349ab046ca85a8d259e8614b7af5363126fae9279da8840bd27ff10e1a783c4ccca886671cf6eb4332b5d03004d4446f2fba9adcee882e55a9fab3a80199e7964e67b1f3a2a27b70179808701fd325474032be5d255e87e3a9a6f1c001602fedd209148/eea6bcd5ad08623c" target="_blank" rel="noopener noreferrer nofollow"><span>The r/reactnative thread</span></a> has the one detail about the old app that changes how those numbers look. </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> 🇩🇪 <a class="link" href="https://link.mail.beehiiv.com/v2/c/1f4376b68a240d8595b813e91942790a0a2a404963e67852028a65ae9456d98fbb6d99d5a2f9f29fe8537ec2e53dacb45d9a3f1039192d4e9d22c29ab630890dc24064b32ab05f8abccaf67438d406aa8fff4450e3458e8b4337e0b2272d4b5d20e6a3c9fe086f4f6fe5b65d3f3156b5fba3e014685862b0505d159cdd171407590ca3eeb65e9cddb4c654875e79325a15e9c41b3a1ae866b5cb2376ade2f48e64516ea0a1946fbdec278ed5df8bc6c0/0a206c21b115b0b8" target="_blank" rel="noopener noreferrer nofollow"><span><b>reactCon, droidCon And swiftCon Are All In Berlin Next Month</b></span></a><br>If the Shopify news has you rethinking native vs cross-platform, next.app devCon puts both camps under one roof, <b>7–9 October in Berlin.</b> One ticket gets you into all of it: <a class="link" href="https://link.mail.beehiiv.com/v2/c/8e735c695d149263cec98f1e0cd8ed466922cdfaafdae525150e0eccd145fbf178734e726e1dbe41948097b2873fb1699dd59f672bd0573938a7cdb65d136aaee0c8af0b6783d44324eaeb5090f1e73fc4eb86ed6f04a1ecccc63e1be0a3db7a6dfcefefc80ecc1245fc42c74cdc8cb992afbd9048960e45a1e249b2be8d58e5c375f0050b5453fed3aeeca3681a1986e6ff4f57f54a2546c827970ba7ef3cb04e873360c625a4ad7345f622c8e5a30d/d27f23a62cee2e19" target="_blank" rel="noopener noreferrer nofollow"><span>reactCon</span></a>, droidCon, swiftCon, flutterCon, agentic codingCon and the techlead Summit, plus keynotes, workshops and the expo. There are team ticket packages too, and bundles with a hotel included if you're travelling in. </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> 🌐 <a class="link" href="https://link.mail.beehiiv.com/v2/c/3de0ba0fe131bee629bd9524010f985a6f8a927b999e259d76a7d6efe87870c08ab05395f32461b3c063644aa9572108cb68d1f33543af1a07a0fe5275c0808b5e74cc6a47a7c655aa7bb01a7f038c97ccbbd1de473daf04ecd37ef2ef4ec65b0d48c3f5002926a9498bf146ab0f9391b3cee99695665e035d4165487f60c988b31fa55afd86901cb3e065875dfe7dc13739ad62ccc788e522174ce7d78236bf6f7a3195c06b7e1e2e8695ce0cec2ceb/7b8d5d7668821a7d" target="_blank" rel="noopener noreferrer nofollow"><span><b>Your React App Can Unmount When A User Turns On Chrome Translate</b></span></a><br>If you've ever seen a random <code>removeChild</code> error in production and couldn't reproduce it, this might be why. <b>The common fix you'll find online makes the crash go away but leaves the UI broken.</b> This post explains why. </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> 🚦 <a class="link" href="https://link.mail.beehiiv.com/v2/c/d2787acc6526c5e2462a54bf2eb8b1fb301cc7d1ab74c5c0f0f3ca807fd0ca61e6ac655741f3a3ad8ff457af248faabb485bc6958e9d8cb3cce4acbca306ceb990d44bbbe658c5167c459ac4088e1db0f48502be95feba580afe267c6d0ea34c70c738ba888597158687732c401b52dba42466d8c19ba777a6d822b1443a6eabb36ded8cb7a3da32f2204352b3c652f1baec5e91ace9f296ca01d4c6094207e0db1c6628c909c1aaad1bc301a74fadbe/f3fa37cf96bc7b5c" target="_blank" rel="noopener noreferrer nofollow"><span><b>Can You Build A Traffic Light In 10 Minutes?</b></span></a><br>The UI is already built. You just write the logic that cycles red → green → yellow forever, each light with its own duration. <b>It sounds trivial until you get to the </b><code>useEffect</code><b> cleanup.</b> One of <a class="link" href="https://link.mail.beehiiv.com/v2/c/f3bab5c651f003b710999ff00f442d8413febcbb20f134a7d1ac187023e15655e0341ece62e6e2430c0b366aca48cd17b3369b44b3fb5779f40959e1fdd050094f080c6135a4d724ea5b291107487cc39d9f08ea4c83d3559a87e5576deda9c1d26a3f6a6602e66840824b0c0fa8bc5c27d2cac93ab25da0189e1576eab10eea76b334f02f36faaeeea7b38dea46a71713947c1c62d88a0733be422636c3957b12edfc6df40d35854cd389241ae24ea1/11b3a066dd384909" target="_blank" rel="noopener noreferrer nofollow"><span>5 fundamentals problems</span></a> someone shared on r/reactjs to shake off interview rust. </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> ⚡ <a class="link" href="https://link.mail.beehiiv.com/v2/c/7f6f6010bab996fe90098b408e1cf913d9cb96962b4ddf7f97d9319566a5be7a4ec74e072b6dc86b43f476f9ce9477ee94f19356f41c10f5c5ea47993cd11ec18b94de39a4b597fc653a25420f4772755b59435745ef603ee5c6bef4605cafb1bf8cb1c2abf06722af5602fff717fc408791566ae918648c21d853ac442ff910d884df8796eb03186aaffb7106fede23953803c3aa448f6a939ec3c9c3e044125e24842ded1b3d1e5def873148a421c7/55a7f61fa64b751a" target="_blank" rel="noopener noreferrer nofollow"><span><b>From 1,256ms To 96ms: Fixing INP In A Massive React Dropdown</b></span></a><br>A MultiSelect with about 1,200 options was freezing the main thread every time it opened. <b>No library needed, just a 90-line hook</b> that leans on one thing most dropdown lists have in common. </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> 🧱 <a class="link" href="https://link.mail.beehiiv.com/v2/c/e8a90bf5672137febe1bc7a603dab533eaa5e0f7e18cb48c9f810d66989da00e22c32fd42c152fa7755fdd0ef9a0043541e4b02efa134eecd7b546666279a0f100171c8a8e322a3402d50abc3f3fb24bf8bdb62e35685ba880eba422bffe0790246b880e010a2b390db0dddc5ea4627112f8bd4b0073bbf4755bfc96b54d720df51873c38d3dea2376a698d108c1da26c5888aea786e729ff735e1ba3b96e65ea2e3024e26f3df6dbdf4c0bbff613744/ec9d59bc971bef29" target="_blank" rel="noopener noreferrer nofollow"><span><b>Over-Abstracted React Costs 30% More To Maintain With AI Agents</b></span></a><br>The author built the same app at different levels of abstraction, then measured what it cost an agent to edit each one. <b>The over-engineered version burned 30% more time and money.</b> Plus 6 patterns you'll see in most React codebases that you can probably just inline. </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> ✨ <a class="link" href="https://link.mail.beehiiv.com/v2/c/e1757e2e182424dcd9de2b24753cb16224725edd137c9facaaf75407cde1a0f0f187cf5d80493f7bfaa5cda9c1385e9ae29ab945a68d2fd3cfd84771d10f9e3b4f7436145b1479ae98764503cf1e226d415d87141a62591085f792382f23211f30fb4c095e7c9e90bfecbf4451897ef1086627f0516d6892c9c2edbefd3a70323f24488918033407789402de5bd19c9414776910eef3b474386ebbdb879c9ef96739028965c0b8fce17bc966681e523d/cd3ecd9b56330c0c" target="_blank" rel="noopener noreferrer nofollow"><span><b>CSS Finally Has Native Squircles</b></span></a><br>Josh Comeau's playground for the new <code>corner-shape</code> property: squircles, bevels, notches and scoops, with borders and shadows that follow the shape. <b>It's Chromium-only for now, but it's purely cosmetic, so you can ship it today.</b> Go play with it. </p></td></tr><tr><td align="center" valign="top" style="font-size:0px;line-height:0px;padding:30px 0px 30px;" class="dd"><table class="j" role="none" width="80%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td> </td></tr></table></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"><b>Quick Links</b></p></td></tr><tr><td style="padding-bottom:12px;padding-left:37px;padding-right:27px;padding-top:12px;" class="ee"><div style="margin-left:0px;" class="edm_outlooklist"><ul style="font-weight:400;list-style-type:disc;margin-bottom:12px !important;margin-top:12px !important;padding:0px 0px 0px 0px;"><li class="listItem ultext"><p style="mso-line-height-alt:150.0%;padding:0px;text-align:left;word-break:break-word;"><a class="link" href="https://link.mail.beehiiv.com/v2/c/4107451aebc1be66db9fd705709a00931dcb849c52dc9948532dbd4b5d9ad6c95d949da9f9206e78471c95707880d6686650d378128802a1307749601d8de212913655a077d80744074a9db6a6bbbf1a9ec9e43b90326b380eff74d36c6dcc1137d9ca6a7de3c68ea3bd46a4312e52636f2b0edef92752b749dae4f884be0aaf64a09cc7029dcff1c77652e91bc3ac0060d4ebabbd86088bfa708fc001b35efabdcef098a00d793ba191cd7a0acff3fc/988a4173c7efa649" target="_blank" rel="noopener noreferrer nofollow"><span><b>The React Compiler Is Now Fully Rust</b></span></a> — One team moved a 1,000+ file app to oxc's port of the compiler, and the compile step dropped from 14.3s to 0.81s. It also handles patterns the Babel version skips, and the Vite config to switch is at the bottom. </p></li><li class="listItem ultext"><p style="mso-line-height-alt:150.0%;padding:0px;text-align:left;word-break:break-word;"><a class="link" href="https://link.mail.beehiiv.com/v2/c/64de10f4008868c1bfc3a74d34d14ec118a93009a793ab189c62b4f5ba1288bb25fe672848adf3ae99b7aad8e4087852e046a2494797af2945afa2199d89e5ac6008a5f112d7cdb05a2139ae2d0170c2cc1fe77a50612dee253132af6b32672046db753923bb66f46c61ca5ee74223046f9fdc02c83c7bf417fa63612f0760617975800caff1f9a83357fb67d51aa7da95ebeb315ae105a52f56b564605badb239c62c10ab53593cad178aa10a8320db/2649267a091ef75c" target="_blank" rel="noopener noreferrer nofollow"><span><b>How The Next.js Team Closed 1,500 GitHub Issues In A Month</b></span></a> — Yes, agents were involved. </p></li><li class="listItem ultext"><p style="mso-line-height-alt:150.0%;padding:0px;text-align:left;word-break:break-word;"><a class="link" href="https://link.mail.beehiiv.com/v2/c/d58c2f205ddc8c8bfe9e8688ae3c6e891e55876bcee06e95ea47d61aac52e02ded0c9d0db498e1a0fd0729f510e95ceb076dcde0502978303ca9dfc4fd92decf69dd41ddeafe23a42d011361049c9e7f1760b2c8684544aadca981c9df6e1cef0c6df67a4714b8bb81144bf3ab7b2c26c6f3050ca528e620efef43795d3414ead721eed774acc0d7cce4d782ab1908cfe1b8a8f6fd93fdf2ac3947c07ae60887a63b7c732846d129f64028c6bb214396/5b0a49ac3427c3b8" target="_blank" rel="noopener noreferrer nofollow"><span><b>What It Actually Took To Move Discord To RN's New Architecture</b></span></a> — Only 14% of the tickets were the migration itself. The rest was a long tail of broken assumptions. </p></li><li class="listItem ultext"><p style="mso-line-height-alt:150.0%;padding:0px;text-align:left;word-break:break-word;"><a class="link" href="https://link.mail.beehiiv.com/v2/c/3852df75f8a5c0a8e389b84f4419371870ba7d10520f807bcb138fe6d8bba227ac74c1e77705e7068cb5c4f0677b5d27ced6dfcd193f4dfc8d1c8ca99095dcbbf39197e09634debad4cfb4c22b9e8be4137192cd6d3a4e8fd0031e2ce7174757aea95bdd51879c103e27c5f7a5ad8fe8b49f36946f1341ba10e84f4c9fc1a9b611217b635c072e6ccc3698566c878a847f3528c34752cbd66a7ec28d2bfc5390b429d2c613705d16f49e77552fb89784/019c71376facd404" target="_blank" rel="noopener noreferrer nofollow"><span><b>Tailwind Labs Is Joining Shopify</b></span></a> — Same team, still MIT-licensed. Tailwind isn't going anywhere. </p></li><li class="listItem ultext"><p style="mso-line-height-alt:150.0%;padding:0px;text-align:left;word-break:break-word;"><a class="link" href="https://link.mail.beehiiv.com/v2/c/1979adb4d3fe9a4c7817a5545a9af3d49df514d62a8e3d82dc6587aafd1082bc27531b49797f8393c52196aaa14f9db9366b9bdc323c97b90624f7db707d70bdb76a32736df2ad0e7ce6583662cd37421ed6084fc3107e36972e8b5bcb0e988c098a1720dcdc33a5a0be1befdd0f780cb9eab37d3e080a1dc40face256e84d923b3c60cfb138aaa0349ea35b02d96ada7e2f62492576ac70973776cbfa33a17784d0f1202a7a2a1a52d6bc8d93e70a52/0cc5ad8d27d7a772" target="_blank" rel="noopener noreferrer nofollow"><span><b>Attackers Are Mass-Scanning For Exposed Vite Dev Servers</b></span></a> — They're exploiting a <code>server.fs.deny</code> bypass to pull <code>.env</code> files. It's patched in Vite 7.3.2 and 8.0.5, so update, and double-check your dev server isn't open to the internet. </p></li><li class="listItem ultext"><p style="mso-line-height-alt:150.0%;padding:0px;text-align:left;word-break:break-word;"><a class="link" href="https://link.mail.beehiiv.com/v2/c/22e68c77a79ec1c4a2668487d3c2351f71f2c6f2475f4f8af9df7dd20bebd84bf0a4bd5b4dd171b2089760d9d4972f26751b9ef5790e0ad6a2d57cfa1fada91cb3093f29bb521acb822ce1bfc07533dc6061d28b9935eb2e8019e1506e010898a4dcb446c368d2e3e2136e1686fb80c7631b6d54344f6e294a4e08a2c6afab681e95eff487ae8fd8c6e92d2e8fb6f983b407db4b30b9648898f3a915c40c0344e761b33abec10d8019d15e6daef7ed2d/f22debd97816d73e" target="_blank" rel="noopener noreferrer nofollow"><span><b>You Don't Need A Mac To Build iOS Apps Anymore</b></span></a> — Expo's EAS now runs iOS simulators in the cloud, so you can test from any OS or a browser. </p></li><li class="listItem ultext"><p style="mso-line-height-alt:150.0%;padding:0px;text-align:left;word-break:break-word;"><a class="link" href="https://link.mail.beehiiv.com/v2/c/d71d5b2b909d39b729a693ceb0806a388392d75844ab902c33840b61dcee5703e75a97c1ab1cfa301b3cbfe393684ed12d828de5456447b1f1da09cabbf83b17bcc4ccec4908e72fc485f82ad7ff9e7466f129124498110f0bb4469318387214bf1707615772a996da490816c17f8d1cd3eacd98b2feed56a387f5c34335ed097ec9edbaad59333063b8fee5565d76b41da06fca6ffa9181946015353c7745d982544845506fb1716c3f1ff45ae4720e/b4ffdc4d4b746bda" target="_blank" rel="noopener noreferrer nofollow"><span><b>Modern Web Types</b></span></a> — TypeScript only types DOM APIs that ship in 2+ browser engines. This drop-in replacement lowers that to 1, so you can use newer APIs without <code>@ts-ignore</code>. </p></li></ul></div></td></tr><tr><td align="center" valign="top" style="font-size:0px;line-height:0px;padding:30px 0px 30px;" class="dd"><table class="j" role="none" width="80%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td> </td></tr></table></td></tr><tr><td id="ai-general-programming" class="dd" align="left" valign="top" style="color:#a6825a;font-weight:400;padding:0px 15px;text-align:left;"><h3 style="color:#a6825a;font-weight:400;mso-line-height-alt:125.0%;">🧠 AI & General Programming</h3></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> 🧩 <a class="link" href="https://link.mail.beehiiv.com/v2/c/f2d40213b603f8e4cd3aaa472a68b94742a632f28419a989b853bace28a9d8c3365defdf3589d936b27a23f4196bb9ee32f2d41c958e95eec4df60972cf2ff5064a596979800ad933e11e6371e2b45263c834ddbef4aa1ca56462bd983ae5d710c28e407cabc0b62a1d65d1b6e950ca2f53c0cd3e2aee3597b0adbb329660b94a35485b01243830aa60687aa18fd10ee5faf8c5dd473bd5fa765b5e5e7d4cb7e62c311e83c248b51adac08db61c0d1b1/65bcf1c5a5f9b0e4" target="_blank" rel="noopener noreferrer nofollow"><span><b>Same Async/Await Code, Four Different Results</b></span></a><br>A quiz on how JavaScript, Rust, Python and Swift run the same async snippet differently. <b>Take the quiz before you read the answers.</b></p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> 🔐 <a class="link" href="https://link.mail.beehiiv.com/v2/c/b9024c2f3fee950b1f4fc63aee685fe8bf1021e5d3ced3910bf0219271c9684a6b04722a5710297c3b4a48fa7f8042f4b9fe8a8214795bb79bf6588ed8ef4732c59d8b79cf61646ca1925f04f600bfb288b0cb1cedd9455287d8d1a2aebad01c3d6d6c58e3286eed334d143bedb23789fed6315fddc72a60cf942a091e4a1624fa14f0c58259d4932a6d59a252c1a90d711c291e1cec0cf2dc1a1bb8d3302e6b92ee0a7d0e7ce18cf80fb14ab55308bf/406481775572eb32" target="_blank" rel="noopener noreferrer nofollow"><span><b>Escaping The OpenAI Codex Sandbox, Twice</b></span></a><br>One escape pulled a trusted token out of a shared JavaScript heap to reach the unsandboxed parent process. Both were fixed within eight days. <b>The lesson: keep real credentials outside whatever you're sandboxing.</b></p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> 🤖 <a class="link" href="https://link.mail.beehiiv.com/v2/c/ca06d426ee6eb5afd36014a4199ba9bffae5f1423b4c39f03050851aff9ad708fb262a5dc69b0605a0ba751c52ee5f489855b1f44eb20662c4dd806d31f778f11831ab36e5b740d67593e02f22a8d5af45efbea799d9a98697dab937be92f197c3fad29e96ef6dc06dd457d255bf0eb47f910d773fa59354c962de5261a5e563343b7713de4b11dd9fec51fe560247c78f31963bde5f111532d23c489cf4094255e50085716ac66a58e2555f6e4a3602/ce112875357f2a88" target="_blank" rel="noopener noreferrer nofollow"><span><b>1,393 Agents Refactored A Million-Line Codebase</b></span></a><br>It took about 19 hours and $19,300, and cut 34.4% of the source. <b>Tests passed. Human reviewers still found removed public APIs.</b></p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> 🧹 <a class="link" href="https://link.mail.beehiiv.com/v2/c/003cee7033803dc4b8450640571b2995445d1f1ca43b9db6f854707cc8d32e5bbe3687e0206d06d0a3dd7089c3636a61e7e795ac560f846b3a0cf6cdad43a1a48d3f180767dc1ff0531874a43987b8679c9cac8c61da714964f321b9c5d7f831691a30c0606080c9659ec86d9b98732a1ca52f7b73084ee3e1bba27c04ff41fcb442a98852a2f71288a433ad13434a4b0eb5fc14b47bda29a897e67548647af5cbf4fa4df1c8d8de29a4c7b091b82327/544204b7a020ca0d" target="_blank" rel="noopener noreferrer nofollow"><span><b>AI-Written Code Is About Twice As Sloppy As Human Code</b></span></a><br>Correct doesn't mean clean, and <b>on multi-round tasks the strict pass rate hit 0%</b> as bad decisions piled up. </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> 🤔 <a class="link" href="https://link.mail.beehiiv.com/v2/c/dff72e61d71ab1c1336396247caa1fc6cf3ed38ec23f527b6556d1b8a4b08f369cd69921e2af7b00a7de3dcbeb90b08a9453dd5efe83e68ff24a7a04958609de7a7412027aa1f36792f9545f08543f1f29ee9df3412b50cad0450cdd7a52d5e0e80f2dc0d74276963c648b05610e12e5ecfb0160fce00314acc93e7d924e41e6cdae5012f861da354d83a8c13a0af31fed034104a0293dc13a449450ae363eca583ed967b5c0231db20be11610b22fa8/38566de9363d9120" target="_blank" rel="noopener noreferrer nofollow"><span><b>Why Aren't Better Models Making Us Faster?</b></span></a><br>Armin Ronacher on why models this good still aren't making us more productive. </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> 🔁 <a class="link" href="https://link.mail.beehiiv.com/v2/c/819591941b5b9375efcd15102c5709998f358fec425098fcc149884a161e2d2f8f28abfa80830bbe81960b99c26306c8a8ec2a99308b677f4460617618d42700eea6b5e307872870e9a2bcf59d79747cb492668612788a5da37bd0addc30ccaf95c61545ae784f9b024369e2b4c5c80518c8223a1ca11043700d8124f46fabdd59d8a5eb7d08ba2933e7016cb5c723a69e5d8e9714bae84a4d516459e37209e8a3778490cf6adad89f63f9907935fddd/58de97b456d8fcf1" target="_blank" rel="noopener noreferrer nofollow"><span><b>Programmers Dislike reduce</b></span></a><br><code>map</code> and <code>filter</code> sail through code review; <code>reduce</code> gets flagged. A few theories on why. </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> 📦 Also shipped: <a class="link" href="https://link.mail.beehiiv.com/v2/c/3e07e31e87c87353850e06ef2a9bf65ba865aa02416b7c043c2224e204df84a00e3dccf947344e64d14738a23c312c7d94161a282b547cc9e02ef8325016beaadd6f662bd93637779023f0d4d62f876ca1e4da714723b054dbf46554d4c63f5859b38323f5f5cdf8dd446faaf04ab9ca4082d6480373a338eff48a6b35e6caec423dca47b68c5f7e6b5ac6de1ec907f183d580894d1e5fe4e25ff268da476bfacf8b640b14d4f8f6124934e95c7c6e62/c0ded11bfb9e4cdd" target="_blank" rel="noopener noreferrer nofollow"><span>pnpm 12.4</span></a>, which now installs Rust crates and Python packages next to your npm deps · <a class="link" href="https://link.mail.beehiiv.com/v2/c/9fb40b0a68cb5a5ef5f5bc170b584ee6f8e9c38442a81ecf7c608992b0ee3b453f878e2cc6e1fd083e1c4203e11735acd9c87b092bfed5598689e34d350730cbeb7d1715e1dc22037d3f8e9d252078b0e5389c716e23b7b9174c7ac245caf730abcad84982ebd529461050d387b428eac605da2a06c333803450ef81f25285f06ab8740fe20ba28c83771f6e20baeea02ea5495ff14c7b2bad258b41c7b9c12243ae74fd07c23cab91f5d5fb1cf54d65/8f204e7ccd796f14" target="_blank" rel="noopener noreferrer nofollow"><span>React Router 8.4</span></a>, with state split into 4 contexts so <code>useLocation()</code> re-renders less. </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> ✅ <a class="link" href="https://link.mail.beehiiv.com/v2/c/168d5d0479bc8d6caf758d062e7e7a2735863d54ef82464f76dcecfa2bd12051b161c42efb91ddbb9baa6c04c8903cae1f2c77e9ff773c8b7935eb812c7c4c36876c305245d9bb49516e441ee0ee64630e4091a6024a30c1c04b81666a46d93233e1db361fbef5f85c4b509e59422d23f662e097e08b5e9d80e45924fe4f7548cb798ca0c1471b41d7b34a2370feb4c83f0ffad63d945460ed998ce6f0665c7da0ed14480cd024996d0037aa0c4f034b/6f3f7f6ee4d00508" target="_blank" rel="noopener noreferrer nofollow"><span><b>Reaching Developers Doesn't Require Tracking Them</b></span></a><br>ClickRelay is a CPC ad network built for dev tool marketers who are tired of paying for impressions they can't verify. No behavioral targeting, no bot-inflated click counts, every click checked by a third-party vendor before it's billed. If you're trying to get in front of an audience like this one, <a class="link" href="https://link.mail.beehiiv.com/v2/c/58e2566b59d77466b4ccfcd4396c23fa38ce0548962015a3d9743bf9daca55d8a13cb020a777d9ee1936143459ff761ad4aafd997efbe74570b17e2a5510f2a45f3c17205c2e024c0f2e6f728b59b3185fe9942c019118daa89cbeff65f3a520827a6074589f43e9f20ebd29a246895dfb25179d6f2ec996b53fd5636330dce149308b534d97e928b7442ccfa0db386213d9ba40e0d903e1f6a8c3e2b1c639835795e916ad31eb0b4edd5616f8db0a37/8b2fc177b693e048" target="_blank" rel="noopener noreferrer nofollow"><span>here's how a campaign runs</span></a>. <i>[ad]</i></p></td></tr><tr><td align="center" valign="top" style="font-size:0px;line-height:0px;padding:30px 0px 30px;" class="dd"><table class="j" role="none" width="80%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td> </td></tr></table></td></tr><tr><td id="one-thing-i-keep-thinking-about" class="dd" align="left" valign="top" style="color:#a6825a;font-weight:400;padding:0px 15px;text-align:left;"><h3 style="color:#a6825a;font-weight:400;mso-line-height-alt:125.0%;">💭 One Thing I Keep Thinking About</h3></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> I don't think the Shopify post is really about React Native. The interesting bit is the claim that <b>writing code twice doesn't cost twice anymore.</b></p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> If that's true, it doesn't stop at mobile. A lot of what we build in React exists to avoid duplication: shared components, hooks, abstraction layers. But look at the abstraction piece above. The same agents that make duplication cheap also pay a 30% tax on every layer they have to wade through. </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> What doesn't get cheaper is <i>living with</i> two codebases: reviewing them, debugging them, keeping them in sync. Same story with the Hermes refactor: tests passed, and humans still caught what broke. I'd want to see Shopify's numbers in two years. </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> See you next week, </p></td></tr><tr><td class="dd" align="left" style="padding:0px 15px;text-align:left;word-break:break-word;"><p style="mso-line-height-alt:150.0%;"> Darius </p></td></tr></table></td></tr></table></td></tr><tr><td align="center" valign="top"><table role="none" width="100%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td><tr><td class="b" align="center" valign="top" bgcolor="#030712" style="padding:0px 0px 0px 0px;border-style:solid;border-width: 0px 0px 0px 0px;border-color: #FFFFFF;border-bottom-left-radius:10px;border-bottom-right-radius:10px;"><table role="none" width="100%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td align="center" valign="top" bgcolor="#a6825a" style="padding:12px"><table role="none" width="100%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td><span style="padding-left:1px;"></span></td><td align="center" valign="middle" width="75" style="width:75px;"><a href="https://link.mail.beehiiv.com/v2/c/5c5be13616462687b047a293fb6472c675fd3921a371e2b6c983ab583c5bfcf893df19a13b1dbd3808b2dd74fe36509874b450b048096f916a697c0320ccafdbd7a7334998e2c99a4a111cc6c6d6287d03be474bc7c431138c11fe25ede293f79b2161672c3edc70a10c1481a32f0572a688a8d4c98ec556f19b00e33051dd8f082396985dc78e2a8f06a4a881a9e1c89d69c417a1741da27fdce2bb6594fc517120e9e703c530071aad17ab31d5bb1f/b162827cf064ad40" style="text-decoration:none;"><img width="22" height="16" alt="yt" border="0" style="display:block;max-width:22px;color:Dark" src="https://media.beehiiv.com/cdn-cgi/image/fit=scale-down,format=auto,onerror=redirect,quality=80/static_assets/youtube_dark.png"/></a></td><td><span style="padding-left:1px;"></span></td></tr></table></td></tr><tr><td height="10" style="line-height:1px;font-size:1px;height:10px;"> </td></tr><tr><td class="w" align="center" valign="top" style="padding:15px 15px 15px 15px;"><table role="none" width="100%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td align="center" valign="top"><p style="font-family:'Verdana',Geneva,sans-serif;color:#FFFFFF!important;"> Update your email preferences or unsubscribe <a class="link" href="https://link.mail.beehiiv.com/v2/c/876989355239c816dce63b3af00676c9114286335b77ba626962ab1c43fdf33760c118e43bc7b6366679499162fd16448af399ebc6b0118cb9c86dfd2a74cf48ecf45dbb7f2c30063eed3d8d3b7babd6988c75bb67967c2897f15badd8013119ac6d68411f4c1dc4b1552700b1556959b62d11cbe84b7c6fb6bf7df2eabc3582b8df8062b7e06485c3a8fb7960370b373eafabef639c01dd97ccc21eff749a71477228ef66637f4a00b10ef0486cceb9/4897643a8d9b038a" style="text-decoration:underline;text-decoration-color:#FFFFFF!important;color:#FFFFFF!important;"> here</a></p><p class="copyright" style="font-family:'Verdana',Geneva,sans-serif;color:#FFFFFF!important;"> © 2026 Import React </p><p style="font-family:'Verdana',Geneva,sans-serif;color:#FFFFFF!important;"> 228 Park Ave S, #29976, New York, New York 10003, United States </p></td></tr><tr style="display: table-row !important;"><td align="center" valign="top" style="padding-top:20px;" style="display:table-cell !important;"><table role="none" border="0" cellspacing="0" cellpadding="0" align="center" style="display:table !important;"><tr style="display:table-row !important;"><td class="u" align="center" valign="middle" height="32" style="height:32px;display:table-cell !important; max-height: 32px !important;margin:0px !important; background-color: #ffffff !important;"><a style="line-height:32px !important;text-decoration:none;display:block !important;" href="https://link.mail.beehiiv.com/v2/c/c27f79b453fb8fbf2beea1bcb73356ec797c765d2a1461eab338b6ee6fef6720d106f006010cdc8293c408dee9be57cb97dd72067ef6efd85d216e58e5719c6b7047af578d6f035c5e71f59358b6641eb737dfa8ff35d7865bdc0b4ae653972ba103cfe39ad38bbbb5a30dc347039cf70b7ebfd6ea83f24c601adc09e6c09c726a289ad6dfb274d7164c8170322d1355366db732e0e6e41a49cc9428e92f5c78ee9b1712da1fee9f46d15cc474309b59/0a6bfd679db23e36"><img width="16" height="16" alt="beehiiv logo" style="display:inline-block !important;max-width:16px !important;vertical-align:-3px !important;width:16px !important;height:16px !important;" border="0" src="https://media.beehiiv.com/cdn-cgi/image/fit=pad,format=png,onerror=redirect,quality=100,width=16,height=16,gravity=center,background=transparent,dpr=2/output-onlinepngtools.png"/><span style="padding-left:11px !important;display: inline-block !important;">Powered by beehiiv</span></a></td></tr></table></td></tr><tr><td align="left" valign="top" height="2" style="height:2px;line-height:1px;font-size:1px;mso-line-height-rule:exactly;"><a href='https://hp.beehiiv.com/c88b925b-ad35-4013-ad2e-a50060159075' style="color: #030712 !important; cursor: default; font-size: 1px; text-decoration: none;"></a></td></tr><tr><td align="left" valign="top" height="2" style="height:2px;"><a href='https://email.beehiivstatus.com/054965c27ecafde32aee36229ce5a99cbb9f4ab3/hclick' clicktracking="off" style="color: #030712 !important; cursor: default; font-size: 1px; text-decoration: none;"></a></td></tr></table></td></tr></table></td></tr></td></tr></table></td></tr></table></td></tr></table></td></tr></table></div></body></html>