> Markdown version of [/magazine/455-dev-digest-120-apple-and-peers](https://www.wearedevelopers.com/magazine/455-dev-digest-120-apple-and-peers). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Dev Digest 120 - Apple and peers **By:** [Chris Heilmann](https://www.wearedevelopers.com/@chris-heilmann) **Published:** June 18, 2024 Hello fellow developer, yes, yes, yes, Apple announced a ton of things last week, so much so that you can't escape the announcements, which is why we won't cover them here. Instead, here are some interesting security and performance news. ## News and Articles [Cara](https://www.fastcompany.com/91135674/what-is-the-cara-app?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) is an app artists flocked to from Instagram as it promised more ownership and future "AI poisoning". Grand, but the sudden success resulted in a [$96k Vercel bill](https://threadreaderapp.com/thread/1798558292681343039.html?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) for the maintainers they hadn't planned for. This begs the question if relying on [Netlify, Vercel, Cloudflare, and so on](https://gomakethings.com/the-challenge-with-netlify-vercel-cloudflare-and-so-on/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd), is really the best option. Sure, you can survive spikes of success, but can you afford it? Another company [lost $10k because ChatGPT generated code hardwired an ID](https://web.archive.org/web/20240610032818/https://asim.bearblog.dev/how-a-single-chatgpt-mistake-cost-us-10000/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) so that people couldn't pay any longer. You can also [lose $40K in 2 minutes](https://cointelegraph.com/news/web3-dev-loses-40k-github-key-leak?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) by posting a secret key on GitHub. In other security news, [New York Times source code leaks](https://www.techradar.com/pro/security/new-york-times-source-code-leaks-on-4chan?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) on 4chan, [malicious VSCode extensions](https://www.bleepingcomputer.com/news/security/malicious-vscode-extensions-with-millions-of-installs-discovered/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) with millions of installs relied on similar naming, and a [tool preventing AI art theft](https://www.404media.co/hackers-target-ai-users-with-malicious-stable-diffusion-tool-on-github/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) turned out to be malware. **Microsoft** stepped on the brakes with their criticised Recall Windows feature and now [make it opt-in](https://www.theverge.com/2024/6/7/24173499/microsoft-windows-recall-response-security-concerns?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd). [TotalRecall](https://github.com/xaitax/TotalRecall?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) shows just how much information attackers could glean from the screenshots stored by the tool. Others see the idea as not bad and released [Open Recall](https://github.com/openrecall/openrecall?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd), an open source alternative, Security company **Snyk** has a [call for action](https://snyk.io/blog/exploring-vulnerabilities-github-actions/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) to explore vulnerabilities in Github Actions and a primer on [using AI without getting bad results](https://snyk.io/blog/ai-quality-garbage-in-garbage-out/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) **Google** want to speed up the web with [page prerendering](https://developer.chrome.com/docs/web-platform/prerender-pages?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) and a [Speculation Rules API](https://github.com/WICG/nav-speculation/blob/main/triggers.md?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd#speculation-rules) and Stoyan Stevanov has [some insights on that one](https://frontendmasters.com/blog/playing-with-the-speculation-rules-api-in-the-console/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd). They also simplified [customising performance workflows in DevTools](https://developer.chrome.com/blog/devtools-customization?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) and explained their plans for [AI in software engineering](https://research.google/blog/ai-in-software-engineering-at-google-progress-and-the-path-ahead/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd). However, [hosting Google fonts](https://www.tunetheweb.com/blog/should-you-self-host-google-fonts/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) yourself boosts performance. Things I didn't know that **Google** does: [optimise cargo ships](https://research.google/blog/heuristics-on-the-high-seas-mathematical-optimization-for-cargo-ships/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) and [traffic lights](https://www.wsj.com/tech/personal-tech/google-green-light-traffic-light-optimization-992e4252?st=eixmtwxmuylup7x&reflink=desktopwebshare_permalink&utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd). Lastly, [how deep is your DOM](https://frontendatscale.com/blog/how-deep-is-your-dom/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) is a question to worry about and there is a new way to report [web compatibility issues](https://webcompat.com/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd). ## Code and Tools Are you a fan of GraphQL? Matt Bessey [cooled on it](https://bessey.dev/blog/2024/05/24/why-im-over-graphql/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) and favours an OpenAPI compliant JSON REST API. Also check out some great tutorials we found on [2D rigid body collisions](https://www.sassnow.ski/rigid-body-collisions/1?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd), [data fetching patterns in SPAs](https://martinfowler.com/articles/data-fetch-spa.html?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd), and a [5m development speedrun](https://github.com/brisktest/brisk-extension/blob/main/WALKTHROUGH.md?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) on how to build a VS Code extension. For the **CSS** fans, here is a [range slider with motion](https://www.bram.us/2024/06/06/css-only-custom-range-slider-with-motion/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd), a problem solved [using the cap unit](https://ishadeed.com/article/css-cap-unit/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) and how to define [perfect font fallbacks](https://www.aleksandrhovhannisyan.com/blog/perfect-font-fallbacks/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd). If Node code leaks memory, [setTimeout could be to blame](https://lucumr.pocoo.org/2024/6/5/node-timeout/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd), and here's a roundup of [CLI AWS commands](https://dev.to/devops_den/all-useful-aws-commands-g4p?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd). Last but not least, **Sentry** wrote how they [removing ad trackers and cookies on their site](https://blog.sentry.io/removing-ad-trackers-and-cookies-the-technical-perspective/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) and what the effect was. And they run an online workshop soon explaining how [backend solutions can cause frontend issues](https://sentry.io/resources/tracing-frontend-issues-with-backend-solutions/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd), **Some tools for you:** - [Email.ml](https://email.ml/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) - in case you need an email that expires in an hour. - [Knip](https://knip.dev/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) finds unused files, dependencies and exports in JS/TS projects. - [Gitshare](https://gitshare.me/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) allows you to share private GitHub repositories. - Generate [CSS Animations from AI prompts](https://www.aicssanimations.com/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd). - [UIfaces](https://uifaces.co/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) - AI generated avatars for your creative projects. - [Entropy](https://github.com/EwenQuim/entropy?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) a CLI tool to scan codebases for high entropy lines (secrets). ## Videos ![REWE Rethink retail hackathon](https://wearedevelopers.imgix.net/public/magazine/articles/455/images/666bef08b8137e634adc52b4_Newsletter_Header.png?w=720&fit=max&dpr=2&auto=format) **Rethink Retail: Inside Austria's first REWE-Hackathon** Austria's first REWE Retail Hackathon 'Rethink Retail, put together in cooperation with WeAreDevelopers, took place on June 4-5. The coding challenge turned Vienna's The Social Hub into a melting pot for creative ideas, bringing together developers, tech fans, and retail pros. Over two days, 12 teams took on real business challenges, coming up with innovative retail solutions like using augmented reality in stores, in-store navigation, and smart product assistants. Don't miss [the event video](https://youtu.be/L6laJetjJs4?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) – it's awesome! **Other videos of note:** - **Rainer Stropek** - [Leveraging Server-Sent Events (SSE)](/videos/905-leveraging-server-sent-events-sse-for-efficient-data-streaming-in-ui-development) - **Clemens Helm** - [Snappy UI needs no Single-Page Application](/videos/904-snappy-ui-needs-no-single-page-application) - **Robert Hoffmann** & **Christian Denich** - [Forget Developer Platforms, Think Developer Productivity!](/videos/884-forget-developer-platforms-think-developer-productivity) ## Events ![WeAre D](https://wearedevelopers.imgix.net/public/magazine/articles/455/images/666bef08ee3fb9b754dd8d8c_WWC24_black_(1).png?w=720&fit=max&dpr=2&auto=format) **Call for moderators!** On the 17th to 19th of July we will run the WeAreDevelopers World Congress in Berlin and [we are still looking for stage moderator](https://youtu.be/vEUuc8yrXoc?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd)s to introduce speakers and run Q&A. [Apply now](https://www.wearedevelopers.com/world-congress/call-for-moderators?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd)! ## Work and Jobs A **McKinsey** survey shows that [Gen AI generates value](https://www.mckinsey.com/capabilities/quantumblack/our-insights/the-state-of-ai?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) and not just hype. However, **Stack Overflow** says that it won't [build your engineering team for you](https://stackoverflow.blog/2024/06/10/generative-ai-is-not-going-to-build-your-engineering-team-for-you/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd). Thea Flowers shares her [opinions after a decade of professional software engineering](https://blog.thea.codes/opinions-after-a-decade/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd). And a 1500 people **bambooHR** survey states 1/4 of [bosses hoped RTO would make employees quit](https://www.theregister.com/2024/06/09/rto_quit_study/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd). Is your office a place you look forward to being in? ## Procrastination Corner / Wonderful Weird Web - [Word Up game](https://wordupgame.co.uk/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) - use DevTools mobile emulation if it complains - [Roads of Ancient Rome](https://www.openculture.com/2024/06/the-roads-of-ancient-rome-visualized-in-modern-subway-maps.html?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) in the Style of Modern Subway Maps - [Ada Lovelace’s Endnotes](https://www.scientificamerican.com/article/ada-lovelaces-180-year-old-notes-previewed-the-future-of-computers/?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd) predicted in 1842 the future of computation - [Lord Kelvin built an analog computer in 1872](https://spectrum.ieee.org/tide-predictions?utm_source=hs_email&utm_medium=email&_hsenc=p2ANqtz-_HruEQyu2SUzoSAFw-4sYg62qvy3oW33IyDh4rTLb2T01AfZsmoI_IEXe4AgUcvSb1m7Qd). ‍ ## Related Articles - [Dev Digest 131 - AI'm not sure about OSS](https://www.wearedevelopers.com/magazine/472-dev-digest-131-ai-m-not-sure-about-oss) - [Dev Digest 118 - not a total recall](https://www.wearedevelopers.com/magazine/452-dev-digest-118-not-a-total-recall) - [Dev Digest 129 - Now that's what I call private data!](https://www.wearedevelopers.com/magazine/468-dev-digest-129-now-that-s-what-i-call-private-data) - [Dev Digest 121 - AI goes offline](https://www.wearedevelopers.com/magazine/456-dev-digest-121-ai-goes-offline) ## Related Videos - [WeAreDevelopers LIVE – AI, Freelancing, Keeping Up with Tech and More](https://www.wearedevelopers.com/videos/1786-wearedevelopers-live-ai-freelancing-keeping-up-with-tech-and-more) - [WeAreDevelopers LIVE - Dapr / Pixels and Generative Art / Open Source and Communities / and more](https://www.wearedevelopers.com/videos/1720-wearedevelopers-live-dapr-pixels-and-generative-art-open-source-and-communities-and-more) - [WeAreDevelopers LIVE – Keeping Up with Styles, Data & More](https://www.wearedevelopers.com/videos/1803-wearedevelopers-live-keeping-up-with-styles-data-more) - [WeAreDevelopers LIVE: Scammer Payback with Python, Grok Goes Unhinged, The Future of Chromium and mo](https://www.wearedevelopers.com/videos/1288-wearedevelopers-live-scammer-payback-with-python-grok-goes-unhinged-the-future-of-chromium-and-mo) ## Related Jobs - [Remote Senior Full-Stack Engineer](https://www.wearedevelopers.com/jobs/ext/683045-remote-senior-full-stack-engineer) at **Edge Impulse** - [Remote Senior Full-Stack Engineer](https://www.wearedevelopers.com/jobs/ext/679408-remote-senior-full-stack-engineer) at **Edge Impulse** - [Remote Senior Full-Stack Engineer](https://www.wearedevelopers.com/jobs/ext/643147-remote-senior-full-stack-engineer) at **Edge Impulse** - [Senior Software Engineer](https://www.wearedevelopers.com/jobs/ext/15942-senior-software-engineer) at **GitHub** - [AI Software Engineer (Germany)](https://www.wearedevelopers.com/jobs/48317-ai-software-engineer-germany) at **Sunhat** - [Remote Senior Full-Stack Engineer](https://www.wearedevelopers.com/jobs/ext/646086-remote-senior-full-stack-engineer) at **Edge Impulse**