[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"sanity-OMO2iU04-s11Wce8Ahcg12fKfPHysuZFAxFnkXg7FdY":3,"sanity-YxIa5zVzxqBD1Zw1H5FDBUU86KfBsgvZ2GPZIJ4wRiw":467},{"data":4,"sourceMap":-1},{"latestPodcast":5,"latestReleases":14,"post":39,"recent":442},[6],{"_id":7,"publishedAt":8,"slug":9,"sponsored":12,"title":13},"5c7f0882-e1a7-4d0e-9e06-86cce9c3613a","2026-07-02T07:40:00.000Z",{"_type":10,"current":11},"slug","ai-coding-chaos-into-a-repeatable-playbook",null,"How do you turn AI coding chaos into a repeatable playbook?",[15,21,27,33],{"_id":16,"publishedAt":17,"slug":18,"title":20},"eb5b66eb-9410-4329-83bb-22bbff39402a","2026-04-28T13:00:00.000Z",{"_type":10,"current":19},"turn-scattered-knowledge-into-trusted-intelligence","Turning scattered knowledge into trusted intelligence: Stack Internal 2026.3",{"_id":22,"publishedAt":23,"slug":24,"title":26},"369c2401-b62e-4a37-8ff8-bf603023ecad","2026-03-02T15:03:00.988Z",{"_type":10,"current":25},"what-s-new-at-stack-overflow-march-2026","What’s new at Stack Overflow: March 2026",{"_id":28,"publishedAt":29,"slug":30,"title":32},"5e9053a4-07ea-447c-91ea-29e0b6228537","2026-02-02T15:00:00.000Z",{"_type":10,"current":31},"what-s-new-at-stack-overflow-february-2026","What’s new at Stack Overflow: February 2026",{"_id":34,"publishedAt":35,"slug":36,"title":38},"a1b538eb-a8a6-46d0-80a1-ac70ec9bb935","2026-01-05T10:00:00.000-05:00",{"_type":10,"current":37},"what-s-new-at-stack-overflow-january-2026","What’s new at Stack Overflow: January 2026",{"_createdAt":40,"_id":41,"_rev":42,"_type":43,"_updatedAt":44,"author":45,"body":73,"comments":414,"dateUrl":415,"excerpt":416,"image":417,"legacyBody":420,"product":12,"publishedAt":423,"slug":424,"sponsored":12,"tags":426,"title":441,"visible":414},"2023-05-24T12:50:58Z","wp-post-19398","dgl3SCUzppW3U2LvCoT2I8","blogPost","2023-07-13T14:56:11Z",[46,62],{"_createdAt":47,"_id":48,"_rev":49,"_type":50,"_updatedAt":51,"avatar":52,"employee":57,"name":58,"role":59,"slug":60},"2023-05-23T16:27:18Z","wp-author-295","3Bta4LYddh6s1g3ALChVvb","blogAuthor","2025-05-09T17:21:54Z",{"_type":53,"asset":54},"image",{"_ref":55,"_type":56},"image-d670f8093b43e483a52ba692d929578633f70eb5-1024x1024-jpg","reference","current","Eira May","B2B Editor",{"current":61},"emay",{"_createdAt":47,"_id":63,"_rev":64,"_type":50,"_updatedAt":65,"avatar":66,"employee":69,"name":70,"slug":71},"wp-author-227","dgl3SCUzppW3U2LvCoP35A","2023-06-20T15:05:08Z",{"_type":53,"asset":67},{"_ref":68,"_type":56},"image-5df3158468f42b2e40ed766d70ce0ad6d5746955-1024x1024-jpg","none","Cassidy Williams",{"current":72},"cwilliams",[74,96,105,130,151,172,194,202,224,246,268,290,298,320,351,373,395],{"_key":75,"_type":76,"children":77,"markDefs":91,"style":95},"d5a532d4b8bc","block",[78,83,87],{"_key":79,"_type":80,"marks":81,"text":82},"d5a532d4b8bc0","span",[],"Welcome to ISSUE #108 of The Overflow! This newsletter is by developers, for developers, written and curated by the Stack Overflow team and ",{"_key":84,"_type":80,"marks":85,"text":70},"d5a532d4b8bc1",[86],"689f4cd624c6",{"_key":88,"_type":80,"marks":89,"text":90},"d5a532d4b8bc2",[],". This week: UX headaches, the clear downsides of phantom braking, and testing with real dependencies instead of mockup or fakes.",[92],{"_key":86,"_type":93,"href":94,"reference":12},"link","https:\u002F\u002Fitr-links.stackoverflow.email\u002Fu\u002Fclick?_t=3603a3d8f3104ca5bd7015a5845f7fb7&_m=EoL62DB0PIGuXz8jH5uBuQ84lXlHlps2&_e=_QiVw4xkxL6Kq_I-OU4afBnKfI77FjoIfX88HTVRZxPuTd2bnAMrrH9rcbsb0dWeVEF1qnpHf4xYVNc9DjG8B3SxoCwGD7YNwE1j5XUlAoVN5IWubZGRkJQZDmmaOZBv48jI4i91xWdFCil-LQ1NSRFjmqF5DoNWqj0-C-Jd-e6BG04-YOMtUtGjjvW4FlO4SiDdPs_9w2phRLlieyDSowbBJXd8neaip9JCBAeEhORiLVYGsioAE1W0vQlkjGKF","normal",{"_key":97,"_type":76,"children":98,"markDefs":103,"style":104},"493db6492979",[99],{"_key":100,"_type":80,"marks":101,"text":102},"493db64929790",[],"From the blog",[],"h2",{"_key":106,"_type":76,"children":107,"markDefs":127,"style":95},"c9006275591e",[108,114,118,123],{"_key":109,"_type":80,"marks":110,"text":113},"c9006275591e0",[111,112],"ba7e31456a4a","strong","Favor real dependencies for unit testing",{"_key":115,"_type":80,"marks":116,"text":117},"c9006275591e1",[]," ",{"_key":119,"_type":80,"marks":120,"text":122},"c9006275591e2",[121],"em","stackoverflow.blog",{"_key":124,"_type":80,"marks":125,"text":126},"c9006275591e3",[],"\nWhich dependencies should be present in your code base? This article suggests an answer to that question.",[128],{"_key":111,"_type":93,"href":129,"reference":12},"https:\u002F\u002Fstackoverflow.blog\u002F2022\u002F01\u002F03\u002Ffavor-real-dependencies-for-unit-testing\u002F",{"_key":131,"_type":76,"children":132,"markDefs":148,"style":95},"f5b639f8e275",[133,138,141,144],{"_key":134,"_type":80,"marks":135,"text":137},"f5b639f8e2750",[136,112],"14376032f776","The Bash is over, but the season lives a little longer",{"_key":139,"_type":80,"marks":140,"text":117},"f5b639f8e2751",[],{"_key":142,"_type":80,"marks":143,"text":122},"f5b639f8e2752",[121],{"_key":145,"_type":80,"marks":146,"text":147},"f5b639f8e2753",[],"\nAs most of us transition from one season to another, be it summer to autumn or winter to spring, we wanted to take a look back at how this year’s Winter Bash went for everyone.",[149],{"_key":136,"_type":93,"href":150,"reference":12},"https:\u002F\u002Fstackoverflow.blog\u002F2022\u002F01\u002F06\u002Fthe-bash-is-over-but-the-season-lives-a-little-longer\u002F",{"_key":152,"_type":76,"children":153,"markDefs":169,"style":95},"f91f4cdd6355",[154,159,162,165],{"_key":155,"_type":80,"marks":156,"text":158},"f91f4cdd63550",[157,112],"cd805630ca99","Podcast 403: Professional ethics and phantom braking",{"_key":160,"_type":80,"marks":161,"text":117},"f91f4cdd63551",[],{"_key":163,"_type":80,"marks":164,"text":122},"f91f4cdd63552",[121],{"_key":166,"_type":80,"marks":167,"text":168},"f91f4cdd63553",[],"\nThis episode is bookended by two questions about professional or academic ethics.",[170],{"_key":157,"_type":93,"href":171,"reference":12},"https:\u002F\u002Fstackoverflow.blog\u002F2022\u002F01\u002F04\u002Fpodcast-403-professional-ethics-and-phantom-braking\u002F",{"_key":173,"_type":76,"children":174,"markDefs":191,"style":95},"da0fbfba5bae",[175,180,183,187],{"_key":176,"_type":80,"marks":177,"text":179},"da0fbfba5bae0",[178,112],"ac21714270eb","Getting started with Atlas Search",{"_key":181,"_type":80,"marks":182,"text":117},"da0fbfba5bae1",[],{"_key":184,"_type":80,"marks":185,"text":186},"da0fbfba5bae2",[121],"promotion",{"_key":188,"_type":80,"marks":189,"text":190},"da0fbfba5bae3",[],"\nAutocomplete with fuzzy matching? Geo search with function scoring? No problem. MongoDB Atlas Search makes it easy to build fast, relevant search capabilities. Watch this video to learn more.",[192],{"_key":178,"_type":93,"href":193,"reference":12},"https:\u002F\u002Fwww.mongodb.com\u002Fpresentations\u002Fgetting-started-with-mongodb-atlas-search?utm_campaign=stack_ww_dg_flighted_getstartedatlassearchreplay_wbn_dev&utm_source=stackoverflow&utm_medium=sponsored_newsletter",{"_key":195,"_type":76,"children":196,"markDefs":201,"style":104},"845ba2085778",[197],{"_key":198,"_type":80,"marks":199,"text":200},"845ba20857780",[],"Interesting questions",[],{"_key":203,"_type":76,"children":204,"markDefs":221,"style":95},"4c11dddded21",[205,210,213,217],{"_key":206,"_type":80,"marks":207,"text":209},"4c11dddded210",[208,112],"33575b7fa6c1","Why avoid using “&&” in bash script?",{"_key":211,"_type":80,"marks":212,"text":117},"4c11dddded211",[],{"_key":214,"_type":80,"marks":215,"text":216},"4c11dddded212",[121],"unix.stackexchange.com",{"_key":218,"_type":80,"marks":219,"text":220},"4c11dddded213",[],"\nYou gotta keep &#8216;em separated.",[222],{"_key":208,"_type":93,"href":223,"reference":12},"https:\u002F\u002Funix.stackexchange.com\u002Fquestions\u002F684833\u002Fwhy-avoid-using-in-bash-script",{"_key":225,"_type":76,"children":226,"markDefs":243,"style":95},"d882e179a74f",[227,232,235,239],{"_key":228,"_type":80,"marks":229,"text":231},"d882e179a74f0",[230,112],"81914349b999","What is a polite way to ask for a status update?",{"_key":233,"_type":80,"marks":234,"text":117},"d882e179a74f1",[],{"_key":236,"_type":80,"marks":237,"text":238},"d882e179a74f2",[121],"workplace.stackexchange.com",{"_key":240,"_type":80,"marks":241,"text":242},"d882e179a74f3",[],"\nHint: Avoid imperatives.",[244],{"_key":230,"_type":93,"href":245,"reference":12},"https:\u002F\u002Fworkplace.stackexchange.com\u002Fquestions\u002F136064\u002Fwhat-is-a-polite-way-to-ask-for-a-status-update",{"_key":247,"_type":76,"children":248,"markDefs":265,"style":95},"745d9209c5e2",[249,254,257,261],{"_key":250,"_type":80,"marks":251,"text":253},"745d9209c5e20",[252,112],"0b436d1fdfcb","Zipping two lists with an offset in Python",{"_key":255,"_type":80,"marks":256,"text":117},"745d9209c5e21",[],{"_key":258,"_type":80,"marks":259,"text":260},"745d9209c5e22",[121],"codereview.stackexchange.com",{"_key":262,"_type":80,"marks":263,"text":264},"745d9209c5e23",[],"\nSeeking efficiency in Python.",[266],{"_key":252,"_type":93,"href":267,"reference":12},"https:\u002F\u002Fcodereview.stackexchange.com\u002Fquestions\u002F272683\u002Fzipping-two-lists-with-an-offset-in-python",{"_key":269,"_type":76,"children":270,"markDefs":287,"style":95},"02595f449cef",[271,276,279,283],{"_key":272,"_type":80,"marks":273,"text":275},"02595f449cef0",[274,112],"668659dfcb21","Is it good practice to allow users to navigate simply by hovering on a menu item without clicking?",{"_key":277,"_type":80,"marks":278,"text":117},"02595f449cef1",[],{"_key":280,"_type":80,"marks":281,"text":282},"02595f449cef2",[121],"ux.stackexchange.com",{"_key":284,"_type":80,"marks":285,"text":286},"02595f449cef3",[],"\nDoes this violate fundamental principles of design, or is it just annoying? (Spoiler: Both.)",[288],{"_key":274,"_type":93,"href":289,"reference":12},"https:\u002F\u002Fux.stackexchange.com\u002Fquestions\u002F141964\u002Fis-it-good-practice-to-allow-users-to-navigate-simply-by-hovering-on-a-menu-item",{"_key":291,"_type":76,"children":292,"markDefs":297,"style":104},"99387a2cef54",[293],{"_key":294,"_type":80,"marks":295,"text":296},"99387a2cef540",[],"Links from around the web",[],{"_key":299,"_type":76,"children":300,"markDefs":317,"style":95},"f4e835a186ea",[301,306,309,313],{"_key":302,"_type":80,"marks":303,"text":305},"f4e835a186ea0",[304,112],"a0f0b300617f","The type hierarchy tree",{"_key":307,"_type":80,"marks":308,"text":117},"f4e835a186ea1",[],{"_key":310,"_type":80,"marks":311,"text":312},"f4e835a186ea2",[121],"www.zhenghao.io",{"_key":314,"_type":80,"marks":315,"text":316},"f4e835a186ea3",[],"\nIf you’re coming from a type-free language over to something like TypeScript, here’s a good mental model for you.",[318],{"_key":304,"_type":93,"href":319,"reference":12},"https:\u002F\u002Fwww.zhenghao.io\u002Fposts\u002Ftype-hierarchy-tree",{"_key":321,"_type":76,"children":322,"markDefs":348,"style":95},"d5565a6da10f",[323,328,333,337,340,344],{"_key":324,"_type":80,"marks":325,"text":327},"d5565a6da10f0",[326,112],"f27f7e6394ae","The JavaScript ",{"_key":329,"_type":80,"marks":330,"text":332},"d5565a6da10f1",[326,112,331],"code","in",{"_key":334,"_type":80,"marks":335,"text":336},"d5565a6da10f2",[326,112]," operator",{"_key":338,"_type":80,"marks":339,"text":117},"d5565a6da10f3",[],{"_key":341,"_type":80,"marks":342,"text":343},"d5565a6da10f4",[121],"alex.party",{"_key":345,"_type":80,"marks":346,"text":347},"d5565a6da10f5",[],"\nThe “in” keyword in JavaScript can do more than you might think.",[349],{"_key":326,"_type":93,"href":350,"reference":12},"https:\u002F\u002Falex.party\u002Fposts\u002F2021-12-31-the-java-script-in-operator\u002F",{"_key":352,"_type":76,"children":353,"markDefs":370,"style":95},"339155eabd0a",[354,359,362,366],{"_key":355,"_type":80,"marks":356,"text":358},"339155eabd0a0",[357,112],"c4f68a63dd34","Empathetic animation",{"_key":360,"_type":80,"marks":361,"text":117},"339155eabd0a1",[],{"_key":363,"_type":80,"marks":364,"text":365},"339155eabd0a2",[121],"css-tricks.com",{"_key":367,"_type":80,"marks":368,"text":369},"339155eabd0a3",[],"\nYou don’t have to decide between accessibility and animation. You can have both!",[371],{"_key":357,"_type":93,"href":372,"reference":12},"https:\u002F\u002Fcss-tricks.com\u002Fempathetic-animation\u002F",{"_key":374,"_type":76,"children":375,"markDefs":392,"style":95},"1b3f1dec90d5",[376,381,384,388],{"_key":377,"_type":80,"marks":378,"text":380},"1b3f1dec90d50",[379,112],"f97ae1d60255","The UX on this small child is terrible",{"_key":382,"_type":80,"marks":383,"text":117},"1b3f1dec90d51",[],{"_key":385,"_type":80,"marks":386,"text":387},"1b3f1dec90d52",[121],"www.mcsweeneys.net",{"_key":389,"_type":80,"marks":390,"text":391},"1b3f1dec90d53",[],"\nCould somebody help this user debug some of the issues they’re seeing?",[393],{"_key":379,"_type":93,"href":394,"reference":12},"https:\u002F\u002Fwww.mcsweeneys.net\u002Farticles\u002Fthe-ux-on-this-small-child-is-terrible",{"_key":396,"_type":76,"children":397,"markDefs":411,"style":95},"0c41dff1941e",[398,402,407],{"_key":399,"_type":80,"marks":400,"text":401},"0c41dff1941e0",[],"Onboard, organize, and bring your team up to speed in a jiffy. ",{"_key":403,"_type":80,"marks":404,"text":406},"0c41dff1941e1",[405],"30e1a5ab76c3","Try Stack Overflow for Teams",{"_key":408,"_type":80,"marks":409,"text":410},"0c41dff1941e2",[],".",[412],{"_key":405,"_type":93,"href":413,"reference":12},"https:\u002F\u002Fitr-links.stackoverflow.email\u002Fu\u002Fclick?_t=3603a3d8f3104ca5bd7015a5845f7fb7&_m=J2j24lxDQTEuwPd5Cqu5ugxEP4Nup0Hd&_e=tvjhMrv7atYcgrppTk1g939n0TOMqK8VK0FIJna3k3KJASzVGae_sX5sf3KPi1hf2i5bxdA9xhH1f-iiMOO7ZFhn7xzAMFIbYnBhpTVT4YaVxNFzFGdAHiiEmx7YErIIVxBKkYUg6iknFjIhWONGTkIJn8IqBwnVV0l3yY7ScIAISOmXKMdnUAqYDRZbTBMJIkKY_QpH6yZNU_eh54wXqDW8Wpo2teMbvQF4Xm7qqXJd83J9ZY2IcjPlLJTDAm59hcKcidFcXov0SI1SA2sdJyQvN3-FBHLcc6AOGJQuveBkeTVp2-deuu3Ntnjx81ZzrM2rO56BYZb0_0JMMxOo0T1dQmOSzvTyeYRljnArFYMAOnBwZPb7gsBCwG0r13Z9YZh9Whu6zwJWSvKiJLX8Eg%3D%3D",true,"2022\u002F01\u002F14","",{"_type":53,"asset":418},{"_ref":419,"_type":56},"image-8da7e9d31b57e7fc6f486d419ff6f60cb93b1bf5-1200x628-png",{"code":421,"language":422},"\u003C!-- wp:paragraph -->\n\u003Cp>Welcome to ISSUE #108 of The Overflow! This newsletter is by developers, for developers, written and curated by the Stack Overflow team and&nbsp;\u003Ca href=\"https:\u002F\u002Fitr-links.stackoverflow.email\u002Fu\u002Fclick?_t=3603a3d8f3104ca5bd7015a5845f7fb7&amp;_m=EoL62DB0PIGuXz8jH5uBuQ84lXlHlps2&amp;_e=_QiVw4xkxL6Kq_I-OU4afBnKfI77FjoIfX88HTVRZxPuTd2bnAMrrH9rcbsb0dWeVEF1qnpHf4xYVNc9DjG8B3SxoCwGD7YNwE1j5XUlAoVN5IWubZGRkJQZDmmaOZBv48jI4i91xWdFCil-LQ1NSRFjmqF5DoNWqj0-C-Jd-e6BG04-YOMtUtGjjvW4FlO4SiDdPs_9w2phRLlieyDSowbBJXd8neaip9JCBAeEhORiLVYGsioAE1W0vQlkjGKF\">Cassidy Williams\u003C\u002Fa>. This week: UX headaches, the clear downsides of phantom braking, and testing with real dependencies instead of mockup or fakes.&nbsp;\u003C\u002Fp>\n\u003C!-- \u002Fwp:paragraph -->\n\n\u003C!-- wp:heading -->\n\u003Ch2 id=\"h-from-the-blog\">From the blog\u003C\u002Fh2>\n\u003C!-- \u002Fwp:heading -->\n\n\u003C!-- wp:paragraph -->\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fstackoverflow.blog\u002F2022\u002F01\u002F03\u002Ffavor-real-dependencies-for-unit-testing\u002F\">\u003Cstrong>Favor real dependencies for unit testing\u003C\u002Fstrong>\u003C\u002Fa>&nbsp;\u003Cem>stackoverflow.blog\u003C\u002Fem>\u003Cbr>Which dependencies should be present in your code base? This article suggests an answer to that question.\u003C\u002Fp>\n\u003C!-- \u002Fwp:paragraph -->\n\n\u003C!-- wp:paragraph -->\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fstackoverflow.blog\u002F2022\u002F01\u002F06\u002Fthe-bash-is-over-but-the-season-lives-a-little-longer\u002F\">\u003Cstrong>The Bash is over, but the season lives a little longer\u003C\u002Fstrong>\u003C\u002Fa>&nbsp;\u003Cem>stackoverflow.blog\u003C\u002Fem>\u003Cbr>As most of us transition from one season to another, be it summer to autumn or winter to spring, we wanted to take a look back at how this year’s Winter Bash went for everyone.\u003C\u002Fp>\n\u003C!-- \u002Fwp:paragraph -->\n\n\u003C!-- wp:paragraph -->\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fstackoverflow.blog\u002F2022\u002F01\u002F04\u002Fpodcast-403-professional-ethics-and-phantom-braking\u002F\">\u003Cstrong>Podcast 403: Professional ethics and phantom braking\u003C\u002Fstrong>\u003C\u002Fa>&nbsp;\u003Cem>stackoverflow.blog\u003C\u002Fem>\u003Cbr>This episode is bookended by two questions about professional or academic ethics.\u003C\u002Fp>\n\u003C!-- \u002Fwp:paragraph -->\n\n\u003C!-- wp:paragraph -->\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.mongodb.com\u002Fpresentations\u002Fgetting-started-with-mongodb-atlas-search?utm_campaign=stack_ww_dg_flighted_getstartedatlassearchreplay_wbn_dev&amp;utm_source=stackoverflow&amp;utm_medium=sponsored_newsletter\">\u003Cstrong>Getting started with Atlas Search\u003C\u002Fstrong>\u003C\u002Fa>&nbsp;\u003Cem>promotion\u003C\u002Fem>\u003Cbr>Autocomplete with fuzzy matching? Geo search with function scoring? No problem. MongoDB Atlas Search makes it easy to build fast, relevant search capabilities. Watch this video to learn more.\u003C\u002Fp>\n\u003C!-- \u002Fwp:paragraph -->\n\n\u003C!-- wp:heading -->\n\u003Ch2 id=\"h-interesting-questions\">Interesting questions\u003C\u002Fh2>\n\u003C!-- \u002Fwp:heading -->\n\n\u003C!-- wp:paragraph -->\n\u003Cp>\u003Ca href=\"https:\u002F\u002Funix.stackexchange.com\u002Fquestions\u002F684833\u002Fwhy-avoid-using-in-bash-script\">\u003Cstrong>Why avoid using “&amp;&amp;” in bash script?\u003C\u002Fstrong>\u003C\u002Fa>&nbsp;\u003Cem>unix.stackexchange.com\u003C\u002Fem>\u003Cbr>You gotta keep &amp;#8216;em separated.\u003C\u002Fp>\n\u003C!-- \u002Fwp:paragraph -->\n\n\u003C!-- wp:paragraph -->\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fworkplace.stackexchange.com\u002Fquestions\u002F136064\u002Fwhat-is-a-polite-way-to-ask-for-a-status-update\">\u003Cstrong>What is a polite way to ask for a status update?\u003C\u002Fstrong>\u003C\u002Fa>&nbsp;\u003Cem>workplace.stackexchange.com\u003C\u002Fem>\u003Cbr>Hint: Avoid imperatives.\u003C\u002Fp>\n\u003C!-- \u002Fwp:paragraph -->\n\n\u003C!-- wp:paragraph -->\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fcodereview.stackexchange.com\u002Fquestions\u002F272683\u002Fzipping-two-lists-with-an-offset-in-python\">\u003Cstrong>Zipping two lists with an offset in Python\u003C\u002Fstrong>\u003C\u002Fa>&nbsp;\u003Cem>codereview.stackexchange.com\u003C\u002Fem>\u003Cbr>Seeking efficiency in Python.\u003C\u002Fp>\n\u003C!-- \u002Fwp:paragraph -->\n\n\u003C!-- wp:paragraph -->\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fux.stackexchange.com\u002Fquestions\u002F141964\u002Fis-it-good-practice-to-allow-users-to-navigate-simply-by-hovering-on-a-menu-item\">\u003Cstrong>Is it good practice to allow users to navigate simply by hovering on a menu item without clicking?\u003C\u002Fstrong>\u003C\u002Fa>&nbsp;\u003Cem>ux.stackexchange.com\u003C\u002Fem>\u003Cbr>Does this violate fundamental principles of design, or is it just annoying? (Spoiler: Both.)\u003C\u002Fp>\n\u003C!-- \u002Fwp:paragraph -->\n\n\u003C!-- wp:heading -->\n\u003Ch2 id=\"h-links-from-around-the-web\">Links from around the web\u003C\u002Fh2>\n\u003C!-- \u002Fwp:heading -->\n\n\u003C!-- wp:paragraph -->\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.zhenghao.io\u002Fposts\u002Ftype-hierarchy-tree\">\u003Cstrong>The type hierarchy tree\u003C\u002Fstrong>\u003C\u002Fa>&nbsp;\u003Cem>www.zhenghao.io\u003C\u002Fem>\u003Cbr>If you’re coming from a type-free language over to something like TypeScript, here’s a good mental model for you.\u003C\u002Fp>\n\u003C!-- \u002Fwp:paragraph -->\n\n\u003C!-- wp:paragraph -->\n\u003Cp>\u003Ca href=\"https:\u002F\u002Falex.party\u002Fposts\u002F2021-12-31-the-java-script-in-operator\u002F\">\u003Cstrong>The JavaScript&nbsp;\u003Ccode>in\u003C\u002Fcode>&nbsp;operator\u003C\u002Fstrong>\u003C\u002Fa>&nbsp;\u003Cem>alex.party\u003C\u002Fem>\u003Cbr>The “in” keyword in JavaScript can do more than you might think.\u003C\u002Fp>\n\u003C!-- \u002Fwp:paragraph -->\n\n\u003C!-- wp:paragraph -->\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fcss-tricks.com\u002Fempathetic-animation\u002F\">\u003Cstrong>Empathetic animation\u003C\u002Fstrong>\u003C\u002Fa>&nbsp;\u003Cem>css-tricks.com\u003C\u002Fem>\u003Cbr>You don’t have to decide between accessibility and animation. You can have both!\u003C\u002Fp>\n\u003C!-- \u002Fwp:paragraph -->\n\n\u003C!-- wp:paragraph -->\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.mcsweeneys.net\u002Farticles\u002Fthe-ux-on-this-small-child-is-terrible\">\u003Cstrong>The UX on this small child is terrible\u003C\u002Fstrong>\u003C\u002Fa>&nbsp;\u003Cem>www.mcsweeneys.net\u003C\u002Fem>\u003Cbr>Could somebody help this user debug some of the issues they’re seeing?\u003C\u002Fp>\n\u003C!-- \u002Fwp:paragraph -->\n\n\u003C!-- wp:paragraph -->\n\u003Cp>Onboard, organize, and bring your team up to speed in a jiffy.&nbsp;\u003Ca target=\"_blank\" rel=\"noreferrer noopener\" href=\"https:\u002F\u002Fitr-links.stackoverflow.email\u002Fu\u002Fclick?_t=3603a3d8f3104ca5bd7015a5845f7fb7&amp;_m=J2j24lxDQTEuwPd5Cqu5ugxEP4Nup0Hd&amp;_e=tvjhMrv7atYcgrppTk1g939n0TOMqK8VK0FIJna3k3KJASzVGae_sX5sf3KPi1hf2i5bxdA9xhH1f-iiMOO7ZFhn7xzAMFIbYnBhpTVT4YaVxNFzFGdAHiiEmx7YErIIVxBKkYUg6iknFjIhWONGTkIJn8IqBwnVV0l3yY7ScIAISOmXKMdnUAqYDRZbTBMJIkKY_QpH6yZNU_eh54wXqDW8Wpo2teMbvQF4Xm7qqXJd83J9ZY2IcjPlLJTDAm59hcKcidFcXov0SI1SA2sdJyQvN3-FBHLcc6AOGJQuveBkeTVp2-deuu3Ntnjx81ZzrM2rO56BYZb0_0JMMxOo0T1dQmOSzvTyeYRljnArFYMAOnBwZPb7gsBCwG0r13Z9YZh9Whu6zwJWSvKiJLX8Eg%3D%3D\">Try Stack Overflow for Teams\u003C\u002Fa>.\u003C\u002Fp>\n\u003C!-- \u002Fwp:paragraph -->","html","2022-01-14T14:35:49.000Z",{"current":425},"the-overflow-108-determining-dependencies-and-phantom-braking",[427,434,439],{"_createdAt":428,"_id":429,"_rev":430,"_type":431,"_updatedAt":428,"slug":432,"title":433},"2023-05-23T16:43:21Z","wp-tagcat-newsletter","9HpbCsT2tq0xwozQfkc4ih","blogTag",{"current":433},"newsletter",{"_createdAt":428,"_id":435,"_rev":430,"_type":431,"_updatedAt":428,"slug":436,"title":438},"wp-tagcat-the-overflow",{"current":437},"the-overflow","the overflow",{"_createdAt":428,"_id":429,"_rev":430,"_type":431,"_updatedAt":428,"slug":440,"title":433},{"current":433},"The Overflow #108: Determining dependencies and phantom braking",[443,449,455,461],{"_id":444,"publishedAt":445,"slug":446,"sponsored":12,"title":448},"28e560af-f0aa-4d46-bd90-f435ad604aa7","2026-06-26T14:00:27.102Z",{"_type":10,"current":447},"paging-charity-how-can-engineering-leaders-avoid-becoming-bond-villains","Paging Charity! How can engineering leaders avoid becoming Bond villains?",{"_id":450,"publishedAt":451,"slug":452,"sponsored":12,"title":454},"4b22c2a3-3779-4966-93eb-5230391dbdce","2026-06-23T14:08:58.595Z",{"_type":10,"current":453},"your-ai-shipped-a-backend-that-boots-that-is-the-whole-problem","Your AI shipped a backend that boots. That is the whole problem.",{"_id":456,"publishedAt":457,"slug":458,"sponsored":12,"title":460},"5cf362e1-fe7b-45af-b69c-914731c6a052","2026-06-23T14:00:00.000Z",{"_type":10,"current":459},"the-2026-developer-survey-is-now-open-for-human-developers-only","The 2026 Developer Survey is now open (for human developers only)!",{"_id":462,"publishedAt":463,"slug":464,"sponsored":12,"title":466},"30b995f7-7cb9-4dd8-bf71-d0685940a32b","2026-06-19T14:00:00.000Z",{"_type":10,"current":465},"dispatches-from-o-reilly-from-capabilities-to-responsibilities","Dispatches from O'Reilly: From capabilities to responsibilities",{"data":468,"sourceMap":-1},{"count":469,"lastTimestamp":12},0]