Today’s Signal
Today's signals center on open, low-cost access to AI tooling. An MIT-licensed AI engineering course reached 48.6k GitHub stars while freellmapi aggregated 635 free model endpoints behind one OpenAI-compatible API, and developers weighed a quieter shift as Apple moves Sign in with Apple email relay addresses to private.icloud.com.
- AI & Machine Learning
- Open Source
- Developer Tools
- Privacy
- Community Discussion
Top Signals
The few items worth your attention first – each with the one-line reason it stood out today.
-
1
AI Engineering from Scratch: open-source AI course repository
rohitg00/ai-engineering-from-scratch
Trending repository – 48.6k stars on GitHub.
- ★ 48.6k
- ⮂ 8.5k
A Python-based, MIT-licensed educational repository covering AI engineering topics including agents, computer vision, and AI agent development. It functions as a structured course, backed by a companion site at aiengineeringfromscratch.com, and its README opens by citing a preparation gap ("Only 18% feel prepared to use them professionally"). It has 48,609 stars and 8,527 forks on GitHub.
GitHub Trending
-
2
iCloud+ Hide My Email addresses will remain on icloud.com
Top Hacker News discussion – 511 points.
- ▲ 511
- 💬 155
An Apple Developer news update announces that starting later this year, new Sign in with Apple email addresses, previously issued on privaterelay.appleid.com, will be issued on private.icloud.com. This matters to developers because apps and backend email validation, sender checks, and domain allowlists that hardcode the old relay domain may need updating to keep accepting user emails. The Hacker News thread drew 511 points and 155 comments.
Hacker News
-
3
all-MiniLM-L6-v2: compact sentence-embedding model
sentence-transformers/all-MiniLM-L6-v2
Trending model – 256.2M downloads.
- ♥ 5.3k
- ⇣ 256.2M
all-MiniLM-L6-v2 is a sentence-transformers model that maps sentences and paragraphs to 384-dimensional dense vectors, used for tasks like clustering and semantic search. It is one of the most widely adopted embedding models on Hugging Face, with 256,200,741 downloads and 5,253 likes. Released under Apache-2.0, it ships in PyTorch, TensorFlow, ONNX, Rust, and OpenVINO formats.
Hugging Face Trending
-
4
AI promoted every developer to reviewer. Nobody tested the reviewer.
Popular developer article – 22 reactions.
- ♥ 22
- 💬 26
I wanted to disagree with 'AI made me a worse reviewer' from Michael Amachree (@dev_michael) …. Context: Dev.to – AI/ML.
Dev.to
-
5
bge-m3: multilingual multi-functional text embedding model
BAAI/bge-m3
Trending model – 36.4M downloads.
- ♥ 3.4k
- ⇣ 36.4M
bge-m3 is a sentence-embedding model from BAAI for sentence-similarity and feature-extraction tasks, usable via sentence-transformers. It is designed around three capabilities: multi-functionality, multilinguality, and multi-granularity, meaning it supports dense, sparse, and multi-vector retrieval and long inputs. It is built on XLM-RoBERTa, ships PyTorch and ONNX weights, and is MIT licensed. It has 36,435,148 downloads and 3,430 likes.
Hugging Face Trending
-
6
Moon (2024)
Top Hacker News discussion – 216 points.
- ▲ 216
- 💬 38
An interactive article by Bartosz Ciechanowski explaining the Moon, Earth's closest celestial neighbor, published December 17, 2024. It uses interactive visuals to walk through the Moon's appearance and behavior, including its phases of light and darkness that cycle dependably in our skies. The piece drew 216 points and 38 comments on Hacker News, reflecting strong reader engagement.
Hacker News
-
7
freellmapi: unified OpenAI-compatible gateway for free LLM providers
tashfeenahmed/freellmapi
Trending repository – 20.1k stars on GitHub.
- ★ 20.1k
- ⮂ 2.9k
freellmapi is an MIT-licensed TypeScript project that aggregates free tiers from 34 LLM providers covering 635 free model endpoints, exposing them all behind a single OpenAI-compatible /v1 API. It adds smart routing and automatic failover between providers, encrypts stored keys, and also supports custom OpenAI-compatible endpoints. The repo notes a pooled capacity of 7.4 billion tokens per month and is intended for personal experimentation only. It has 20,099 stars and 2,902…
GitHub Trending
-
8
I built a full image editor that never uploads your photo — here's how the on-device AI parts actually work
Popular developer article – 8 reactions.
- ♥ 8
- 💬 5
Most background-removal and object-removal tools online work the same way: you upload an image, a… Context: Dev.to – Webdev.
Dev.to
AI & Machine Learning
Models, agents, and applied machine-learning work moving today.
-
GitHub Trending
AI Engineering from Scratch: open-source AI course repository
rohitg00/ai-engineering-from-scratch
- ★ 48.6k
- ⮂ 8,527
A Python-based, MIT-licensed educational repository covering AI engineering topics including agents, computer vision, and AI agent development. It functions as a structured course, backed by a companion site at aiengineeringfromscratch.com, and its README opens by citing a preparation gap ("Only 18% feel prepared to use them professionally"). It has 48,609 stars and 8,527 forks on GitHub.
-
Hugging Face Trending
all-MiniLM-L6-v2: compact sentence-embedding model
sentence-transformers/all-MiniLM-L6-v2
- ♥ 5,253
- ⇣ 256.2M
all-MiniLM-L6-v2 is a sentence-transformers model that maps sentences and paragraphs to 384-dimensional dense vectors, used for tasks like clustering and semantic search. It is one of the most widely adopted embedding models on Hugging Face, with 256,200,741 downloads and 5,253 likes. Released under Apache-2.0, it ships in PyTorch, TensorFlow, ONNX, Rust, and OpenVINO formats.
-
Dev.to
AI promoted every developer to reviewer. Nobody tested the reviewer.
- ♥ 22
- 💬 26
I wanted to disagree with 'AI made me a worse reviewer' from Michael Amachree (@dev_michael) …. Context: Dev.to – AI/ML.
-
Hugging Face Trending
bge-m3: multilingual multi-functional text embedding model
BAAI/bge-m3
- ♥ 3,430
- ⇣ 36.4M
bge-m3 is a sentence-embedding model from BAAI for sentence-similarity and feature-extraction tasks, usable via sentence-transformers. It is designed around three capabilities: multi-functionality, multilinguality, and multi-granularity, meaning it supports dense, sparse, and multi-vector retrieval and long inputs. It is built on XLM-RoBERTa, ships PyTorch and ONNX weights, and is MIT licensed. It has 36,435,148 downloads and 3,430 likes.
-
Hugging Face Trending
bert-base-uncased: Google's base English BERT fill-mask model
google-bert/bert-base-uncased
- ♥ 2,740
- ⇣ 93.8M
This is Google's original BERT base model for English, pretrained with a masked language modeling objective and usable for fill-mask tasks via the transformers library. It is uncased, meaning text is lowercased before processing. Released under Apache-2.0, it ships in PyTorch, TensorFlow, JAX, Rust, CoreML, and ONNX formats, and remains widely adopted with 93,831,528 downloads and 2,740 likes on Hugging Face.
-
GitHub Trending
freellmapi: unified OpenAI-compatible gateway for free LLM providers
tashfeenahmed/freellmapi
- ★ 20.1k
- ⮂ 2,902
freellmapi is an MIT-licensed TypeScript project that aggregates free tiers from 34 LLM providers covering 635 free model endpoints, exposing them all behind a single OpenAI-compatible /v1 API. It adds smart routing and automatic failover between providers, encrypts stored keys, and also supports custom OpenAI-compatible endpoints. The repo notes a pooled capacity of 7.4 billion tokens per month and is intended for personal experimentation only. It has 20,099 stars and 2,902…
-
Dev.to
I built a full image editor that never uploads your photo — here's how the on-device AI parts actually work
- ♥ 8
- 💬 5
Most background-removal and object-removal tools online work the same way: you upload an image, a… Context: Dev.to – Webdev.
-
GitHub Trending
claude-obsidian: AI second brain plugin for Obsidian and Claude Code
AgriciDaniel/claude-obsidian
- ★ 12.3k
- ⮂ 1,363
claude-obsidian is an open-source, local-first knowledge system that connects Obsidian with Claude Code and other Agent Skills hosts. You drop in any source and Claude reads, links, and files it into a connected knowledge graph of plain Markdown files that remain yours. Written in Python and MIT-licensed, it has 12,319 stars and 1,363 forks, and is pitched as a Notion alternative based on Karpathy's LLM Wiki pattern.
-
Hacker News
Training AI to Paint with Code
- ▲ 125
- 💬 16
A blog post by Brooklyn-based designer and creative technologist Surya Narreddi about training an AI to produce images by writing code rather than only responding to prompts. The piece frames the core limitation that with current image models the prompt is the only way to participate, and documents the research, design, and development behind an alternative approach. It drew 125 points and 16 comments on Hacker News.
-
Dev.to
I Built an AI That Decides Which WhatsApp Messages Deserve Your Attention
- ♥ 5
My phone vibrates. Is it an urgent message from work? A delivery arriving today? A family member who… Context: Dev.to – Ai.
-
Product Hunt
Jotform AI Data Assistant
Jotform is a full-featured online form builder that allows you to create powerful forms and securely gather data from any device. With our intuitive drag-and-drop builder, you can create and share custom online forms to generate leads, distribute surveys, collect online payments, and much more — all without any coding. Worth checking for automation claims, data-access patterns, and human-in-the-loop requirements.
-
Product Hunt
Buddy Visual Tests
Host apps and websites, spin up Sandboxes, manage domains, run tests, deploy to any cloud, and automate delivery with pipelines, all in one platform. Configure everything through the UI, YAML, or code, or let Claude Code, Cursor, Copilot, and other AI agents operate Buddy directly through MCP or CLI, including deploym… Worth checking for pricing vs value, integrations, data ownership, and workflow fit.
-
Product Hunt
Purchase API by Agentcard
Agentcard is a debit card for ai agents. Give your OpenClaw or Claude an safe way to pay for things online,. Worth checking for automation claims, data-access patterns, and human-in-the-loop requirements.
-
Product Hunt
Flare
Most agentic coding tools hand you a chat log. Flare hands you the map. Every file is a node, every import an edge, with a real terminal underneath where you run claude, codex or opencode. The graph updates live as the agent edits, attributes every write to whoever made it, and pulls you in when it rewrites something… Worth checking for pricing vs value, integrations, data ownership, and workflow fit.
-
Product Hunt
Diet Claude
Hitting Claude's limit mid-work is annoying af. Diet Claude gives a live usage meter shows how much of your session you’ve used, how much time is left, and when your limits reset. It helps optimise token usage by context trimming, tightening prompts, suggesting apt models. And when you do run dry, it carries your conv… Worth checking for pricing vs value, integrations, data ownership, and workflow fit.
-
Product Hunt
Splitsense
Splitsense is the AI-powered analytics platform that helps you understand user behaviour, uncover conversion bottlenecks, and automatically suggest improvements. Get web analytics, session replays, funnels, experiments, and AI agents working together to grow your product, all without the complexity of enterprise tools. Worth checking for pricing vs value, integrations, data ownership, and workflow fit.
-
Product Hunt
session-indexer
Per-project semantic search over your Claude Code session history — not a shared or centralized memory store. Indexes JSONL transcripts into a local SQLite file, retrieves via bge-m3 embeddings (Ollama) with automatic FTS5 BM25 fallback, and auto-injects relevant past context at session start. Companion to session-end… Worth checking for pricing vs value, integrations, data ownership, and workflow fit.
-
Community Pulse
Andrew Yang Warns That AI Is Set to Displace Millions of Workers, America Is ‘Terrible at Retraining’ Workers… ‘The Coal Miners Did Not Become Coders’
This is a community discussion on Reddit's r/artificial about comments by Andrew Yang, who argues that AI is positioned to displace millions of workers while the United States handles worker retraining poorly. He cites the decline of coal mining as evidence, noting that 'the coal miners did not become coders', implying that expecting displaced workers to simply reskill into tech roles is unrealistic. The thread reflects broader debate over AI-driven labor disruption.
-
Community Pulse
I built an AI where everyone talks to the same mind, and every interaction changes it
A hobbyist project, Wild Static, is an AI with persistent memory that is public rather than private: every user talks to the same instance, and each conversation becomes an experience stored in its shared underlying memory. The experiment explores what happens when an LLM's accumulated context is shaped communally instead of per-user. Posted to r/artificial as a community signal.
-
Community Pulse
Yesterday I put ChatGPT, Claude and Gemini in a group chat. Now I want Reddit to break it
A Reddit post on r/artificial describes an experiment where three chatbots — ChatGPT, Claude, and Gemini — are placed in a shared conversation and asked to review each other's answers. The stated goal is to use the models' differing weaknesses to catch hallucinations: if one model makes a logical leap or fabricates a claim, another may flag it. The author now wants Reddit to stress-test the approach.
-
Community Pulse
If you work in tech and you believe technologies like AI should be in service of workers, society, and life, and not tech oligarchs, you should consider joining Tech Workers Coali…
A Reddit post in r/artificial urging tech workers who believe AI should serve workers, society, and life rather than tech oligarchs to consider joining the Tech Workers Coalition. It is a community discussion signal about tech labor organizing and the political direction of AI development, framed around concerns over concentrated corporate power. No detailed claims or outcome data accompany the post in the available context.
-
Community Pulse
A note for people expecting the Singularity any day now
A Reddit discussion post on r/artificial arguing that near-term expectations of the Singularity overlook a prerequisite: AI systems would need reliable introspection. The author notes that current frontier models can be highly capable yet still lack dependable awareness of what is happening to themselves while working, framing introspection as an under-discussed intermediate step before recursive self-improvement.
-
Community Pulse
For a €6k portable AI/development setup, prioritize 64–128GB unified memory or CUDA compatibility?
A Reddit thread in r/artificial asks how to spend roughly €6,000 on a portable machine for both everyday development and AI/data-science work. The poster weighs a MacBook Pro with M5 Pro/Max, 64 GB (or possibly 128 GB) of unified memory and a 2 TB SSD against a CUDA-capable alternative, since NVIDIA GPUs dominate the local-AI tooling ecosystem. The discussion is a community signal only, so no verified conclusion is available.
-
Community Pulse
ONNX for Speech To Text
A Reddit thread where a developer describes building a speech-to-text app in .NET and C#. Unlike Python, where models such as Whisper or Wav2Vec2 can be downloaded and called directly, the poster reports that the .NET path appears to require writing all the audio pre-processing code manually and integrating it via ONNX. The thread is a practical question about that workflow gap for C# practitioners.
Security
Incidents, advisories, and defensive discussion – verify before acting.
-
Security Radar
CVE-2026-21962: Oracle HTTP Server and Oracle Weblogic Server Proxy Plug-in Improper Access Control Vulnerability
CVE-2026-21962 is an improper access control vulnerability affecting Oracle HTTP Server and the Oracle WebLogic Server proxy plug-in. It is listed in the CISA Known Exploited Vulnerabilities catalog, indicating it is being exploited in the wild and requires prompt patching. Verification is listed as CISA KEV confirmed, but the NVD page snippet provides no CVSS score, affected versions, or mitigation details, so the primary Oracle advisory should be consulted.
-
Security Radar
CVE-2026-73570: Zimbra Collaboration Suite (ZCS) OS Command Injection Vulnerability
This is a CVE for an OS command injection vulnerability in Zimbra Collaboration Suite (ZCS), an email and collaboration server platform. The issue is listed in CISA's Known Exploited Vulnerabilities catalog per the item's metadata, indicating it is being actively exploited and warrants prompt patching. No affected versions, technical root cause, or mitigation details were available in the fetched page content, so the primary advisory should be consulted for specifics.
Verification: cisa kev confirmed.
-
Security Radar
CVE-2026-72530: TrueConf Server Code Injection Vulnerability
This is a CVE entry for a code injection vulnerability in TrueConf Server, a video conferencing product. It has been confirmed as listed in CISA's Known Exploited Vulnerabilities catalog, which signals active exploitation and urgent patching priority. The fetched NVD page contained only boilerplate government-site text, so affected versions, attack specifics, and mitigation steps could not be verified from the supplied context.
Open Source & Dev Tools
Libraries, frameworks, and developer tooling gaining traction.
-
Dev.to
JavaScript Closures: The Complete Guide (with Cheat Sheet)
- ♥ 6
Learn how JavaScript closures really work — lexical scope, private state, memoization, and the classic loop bug — with worked examples and a cheat sheet. Context: Dev.to – Javascript.
-
Lobste.rs
Porffor goes alpha August 11th
An announcement that Porffor, a from-scratch JavaScript engine written in C++, reaches its alpha release on August 11th. The post says this milestone includes self-hosting and a rewritten implementation, with a launch event planned in San Francisco next month. It is aimed at practitioners following alternative JS engine development, though implementation details beyond the milestone itself are thin in the available context.
-
Lobste.rs
Hunting Down a Go Runtime Bug on 32-bit Embedded Systems
An engineering write-up tracing a customer's Go application that kept crashing on a 32-bit embedded Linux system. The authors investigated the fatal netpoll error and traced it to a pointer aliasing bug in the Go runtime itself, not the application. It documents the debugging path on an uncommon architecture and is useful reading for anyone deploying Go to embedded targets.
Cloud & Infrastructure
Platforms, deployment, and the systems that run everything else.
-
Dev.to
.NET 10 NU1015: Fix PackageReference Without Version Restore Failures
- ♥ 6
.NET 10 NU1015 turns a PackageReference without a version into a restore error. I like the stricter… Context: Dev.to – DevOps.
-
Hacker News
Bookshelf – Self-hosted eBook library that runs on object storage
- ▲ 121
- 💬 45
Bookshelf is an open-source, self-hosted eBook library written in TypeScript that stores books directly on object storage instead of a database. It can run as a Cloudflare Worker over R2 or as a Node server over a plain directory, focusing on EPUB files and ebooks you already own. The MIT-licensed project has 181 GitHub stars and drew 121 points with 45 comments on Hacker News.
-
Dev.to
I Audited 50,669 n8n Runs. 85% of Failures Alerted Nobody.
- ♥ 3
- 💬 2
Three days of a broken WhatsApp bot, an error handler that was itself failing silently, and the SQL query that found both. What a real n8n error-handling audit looks like. Context: Dev.to – DevOps.
-
Lobste.rs
Solving the 1+N query problem
An engineering blog post from Acadia Engineering that tackles the 1+N query problem, the pattern where loading a list of records and then querying each item individually causes a flood of database round-trips. The article is aimed at practitioners dealing with ORM-driven applications, though the fetched context contains only the title, so specific techniques such as batching, joins, or eager loading cannot be confirmed.
-
Lobste.rs
Galaxium, a WebGPU universe explorer
Galaxium is a web application that renders an explorable 3D universe using WebGPU, letting users fly from Earth to planets, stars, nebulae and distant galaxies directly in the browser. It loads assets such as KTX2 texture files at runtime, and fetched snippets show it handles asset path resolution issues (e.g. rewriting /data/foo.ktx2 paths under /obj/) as part of its deployment.
Product & Launches
New products and launches worth a look.
-
Product Hunt
Particle Studio
Particle Studio turns your images into interactive, customizable particle compositions. Upload an image, choose from circles, squares, triangles, or cubes, and fine-tune particle size, motion trails, and cursor interaction to create your own visual experience. When you're happy with the result, share it instantly with… Worth checking for pricing vs value, integrations, data ownership, and workflow fit.
-
Product Hunt
DockDuck
DockDuck is the native macOS file manager Finder should be — fast, beautiful, and 100% Swift. Tabs, dual-pane, a pinned Start dashboard, tags, instant search, batch rename, and connect to servers(SFTP/SMB) — all in one window that opens the moment you click. Pay once, no subscription. Your files never leave your Mac. Worth checking for pricing vs value, integrations, data ownership, and workflow fit.
-
Product Hunt
akta.pro
Private company data with 4x the depth and 2x the coverage of PitchBook, plus 100+ event signals and news across companies, industries, and topics. Source and diligence deals or make outreach lists and trigger outbound. Built for financial services and GTM teams, pay-as-you-go. Worth checking for pricing vs value, integrations, data ownership, and workflow fit.
Community & Discussion
What engineers are debating and reading right now.
-
Hacker News
iCloud+ Hide My Email addresses will remain on icloud.com
- ▲ 511
- 💬 155
An Apple Developer news update announces that starting later this year, new Sign in with Apple email addresses, previously issued on privaterelay.appleid.com, will be issued on private.icloud.com. This matters to developers because apps and backend email validation, sender checks, and domain allowlists that hardcode the old relay domain may need updating to keep accepting user emails. The Hacker News thread drew 511 points and 155 comments.
-
Hacker News
Moon (2024)
- ▲ 216
- 💬 38
An interactive article by Bartosz Ciechanowski explaining the Moon, Earth's closest celestial neighbor, published December 17, 2024. It uses interactive visuals to walk through the Moon's appearance and behavior, including its phases of light and darkness that cycle dependably in our skies. The piece drew 216 points and 38 comments on Hacker News, reflecting strong reader engagement.
-
Hacker News
What's new in Emacs 31.1
- ▲ 186
- 💬 41
An article on the Mastering Emacs blog summarizing the changes in Emacs 31.1, a quality-of-life release of the long-lived editor. It retires the quirky unexec dumper mechanism and improves tree-sitter integration, including a much-requested auto-installer for grammars. The Hacker News discussion drew a score of 186 with 41 comments, reflecting community interest in the practical implications for Emacs users.
-
Hacker News
Peppermint oil reduces blood pressure by 8.48 mmHg in small study
- ▲ 181
- 💬 86
A PLOS ONE journal article reports that peppermint oil reduced blood pressure by 8.48 mmHg in a small study. The paper has drawn an active Hacker News discussion (181 points, 86 comments) about the practical implications of the finding. As a small trial, its results warrant caution before drawing firm clinical conclusions about peppermint oil as an intervention.
-
Hacker News
How Universities Should Prepare Founders
- ▲ 163
- 💬 193
An essay by Paul Graham addressing how universities should prepare students to start startups. The piece asks directly how university education should change to better equip prospective founders, reflecting Graham's long-running focus on startup formation through Y Combinator. It drew notable attention on Hacker News, with a score of 163 and 193 comments discussing its practical implications for education and entrepreneurship.
-
Hacker News
Vintage Artificial Intelligence: Before It Got Awkward
- ▲ 120
- 💬 23
This is an Internet Archive blog article tracing how artificial intelligence was depicted in earlier eras of popular culture, before modern anxieties set in. It surveys appearances ranging from Karel Capek's Rossum's Universal Robots and Tik-Tok of Oz, through science fiction properties and optimistic futurist home-making advertisements, to darker portrayals. The piece drew 120 points and 23 comments on Hacker News.
-
Dev.to
Why I Couldn't Access My Own Site (But My Phone Could): A Cloudways Auto-Ban Story
- ♥ 4
- 💬 4
I sat down to work on Rev6 and couldn't load the site. Not a slow load, not an SSL warning — nothing…. Context: Dev.to – Web Dev.
-
Dev.to
comiCSS #255: Yellow
- ♥ 4
comiCSS #255: Yellow is a developer community article; review the code, assumptions, and comments before treating the technique as production guidance. Context: Dev.to – Web Dev.
-
Community Pulse
Uber hit with a near-$1B GDPR fine after algorithms suspended drivers without human review
This is a community discussion on r/artificial about a reported GDPR penalty against Uber, reportedly close to $1 billion, tied to algorithmic driver suspensions made without human review. The case matters to practitioners because it signals regulators treating fully automated decision-making without meaningful human oversight as a data-protection violation, with direct financial consequences for platform operators.
-
Lobste.rs
MNT Station – A modular, open hardware desktop computer and server
MNT Station is an open hardware desktop computer and server from MNT Research, currently featured on Crowd Supply. It is designed to be modular, meaning components can be repaired, replaced, or reconfigured rather than locked to a single vendor's integrated board. The crowdfunding campaign has raised $6,349 and is marked as funded, though the page snippet provides no technical specifications about the CPU, memory, or expansion interfaces.
-
Lobste.rs
Migrating from Codeberg Pages to an OpenBSD VPS
A hands-on write-up in which the author migrates a personal site from Codeberg Pages to a self-hosted OpenBSD server on a Netcup VPS. It walks through practical setup steps: SSH configuration, MIME-type pitfalls, upgrading OpenBSD to 8.0-beta, firewall rules, TLS certificates, and web server configuration, plus remarks on German bureaucracy and bot traffic. Useful as a checklist for anyone self-hosting static content on OpenBSD.
-
Lobste.rs
An interactive introduction to the spanning tree protocol
A technical blog post by Vincent Bernat explaining the spanning tree protocol through interactive browser-based simulations. It walks through RSTP concepts including root election, port roles, proposals and agreements, and topology changes, with the simulations powered by MSTPD compiled to WebAssembly. The post requires leaving an RSS reader to use the embedded interactive examples, making it a hands-on resource for network engineers studying L2 loop prevention.