# 78 - Do Not Market Driver-Assistance as Autonomous Driving

Published on

Article Image

Photo by Randy Tarampi on Unsplash

Recently, a fatal accident involving a new electric vehicle brand, resulting in three deaths, has once again sparked concerns about so-called “autonomous driving” capabilities. According to currently available information, the vehicle’s “autonomous driving” system failed to recognize a construction zone despite clear warning signs posted along the route, providing an alert only 2–3 seconds before impact. This left the driver with an extremely short window to react.

From a regulatory standpoint, the driver still bears primary responsibility for accidents unless mechanical issues unrelated to driver input are proven, regardless of whether the “autonomous driving” system was activated. Yet, as more accidents become associated with these “autonomous” systems, one must question whether the exaggerated marketing of “autonomous driving” by automotive manufacturers plays a role in these incidents.

Over the past couple of years, a notable phenomenon has emerged: many consumers outside the technology sector have largely acquired their understanding of AI concepts and technical terminology through the promotional events and sales materials of automakers touting “autonomous driving.” Terms like “end-to-end” and “TOPS” suddenly turned vehicles—originally transportation tools—into the prime showcase of high technology, making “autonomous driving” capabilities a key factor in consumers’ purchasing decisions.

However, given the current state of technology and legal preparedness worldwide, even achieving Level 5 autonomy (with most current models remaining between Levels 2 and 3), the so-called “autonomous driving” systems should strictly be described as “driver-assistance.” This is not merely a matter of technological limitation but involves critical legal implications regarding liability. Automakers are well aware of this distinction, often providing disclaimers and fine-print warnings buried deep within their manuals and marketing materials. Despite this, “driver-assistance” has already been widely replaced by the term “autonomous driving” in broader advertising.

Due to continual exaggerated marketing, consumers are unconsciously losing their sense of driving responsibility, mistakenly believing that “autonomous driving” is inherently better and safer. Although certain “autonomous systems” indeed offer helpful assistance, they are far from capable of fully replacing human judgment, particularly in complex or unconventional traffic situations.

It is particularly troubling that automakers typically showcase their highest-end configurations when demonstrating “autonomous” capabilities, neglecting the reduced computing power, fewer sensors, and lower-quality cameras installed in mid- to lower-tier models. Even worse, some manufacturers fail to adequately adapt their algorithms to these reduced hardware configurations, inevitably leading to computation errors and delayed decisions, significantly increasing accident risks.

Terms such as “intelligent” or “autonomous” inherently carry ambiguity, easily misleading consumer perception regarding safety. Given the proven potential for such terms to distort consumer judgment, clear legal guidelines should urgently be introduced to restrict their marketing usage and impose strict penalties on exaggerated claims. Until the law explicitly shifts ultimate responsibility away from drivers, all driving assistance systems, no matter their marketing, must be categorized strictly as “driver-assistance.” Consumers should also clearly understand that no automaker today will assume legal responsibility for faults in these “smart systems,” and moreover, proving system defects remains beyond the practical ability of ordinary consumers.

Do not market driver-assistance as autonomous driving!

Original

Say Goodbye to dismiss: A State-Driven Path to More Maintainable SwiftUI

In SwiftUI development, the environment value dismiss is widely favored for its flexibility and adaptive behavior. It smartly handles dismissing views according to their context, making it the go-to tool for many developers. However, convenience can come at a cost. Overusing dismiss may introduce subtle bugs, testing difficulties, and hidden stability issues. This article explores why we should be cautious with dismiss and introduces a more robust and reliable state-driven management approach.

Recent Recommendations

Swift 6.1 Released

Swift 6.1 is here! In this article, Holly Borla walks through the most anticipated updates. The release includes broader support for nonisolated, smarter type inference for withTaskGroup, and a more convenient way to interoperate with Objective-C using @objc @implementation. Trailing commas are now supported in more syntax contexts like function parameters, generic definitions, and closure capture lists, making code generation and maintenance simpler.

SwiftPM introduces Package Traits, allowing packages to adapt APIs and dependencies based on runtime environments like Embedded or WebAssembly, further enhancing cross-platform capabilities. Meanwhile, SourceKit-LSP now enables background indexing by default, improving responsiveness and code intelligence during development.

In testing, Swift Testing introduces Test Scoping Traits, making pre- and post-test context control more flexible. Swift-DocC also improves ambiguous overload link handling, enhancing documentation readability and maintainability.

Swift 6.1 is available via Xcode 16.3 or can be installed independently on macOS and Linux using swiftly.

Cross Compiling Swift

Better cross-compilation capabilities are essential for Swift’s future in multi-platform ecosystems. In this article, Khan Winter shares his deep dive into compiling Swift apps on macOS for deployment on Gentoo Linux. He outlines two primary approaches: local cross-compilation with Static Linux SDK and Swiftly, and traditional Docker-based builds. The post also points out the current confusion and inconsistency around toolchain and SDK configuration.

Modern URL Construction in Swift

Avoiding optionals when constructing URLs in Swift is a common goal for many developers. In this long-awaited return article, John Sundell presents modern practices for both static and dynamic URL creation. For static URLs, extending URL.init(staticString:) simplifies forced unwrapping, and the new Swift 5.9 macro #staticURL(...) provides compile-time validation. For dynamic URLs, APIs introduced in iOS 16 like appending(component:) and appending(queryItems:) offer safer alternatives to string interpolation. These practices improve readability and safety in common use cases like networking and file paths.

Presenting an Inspector with SwiftUI

Introduced in iOS 17, iPadOS 17, and macOS 14, Inspector is a SwiftUI component for displaying detailed information about selected content. While it adapts its presentation based on platform and context, this flexibility also adds learning complexity. In this article, Antonella Giugliano walks through a variety of scenarios, demonstrating Inspector in action and explaining how to control its visibility via InspectorCommands and keyboard shortcuts.

Creating an Image from an MKMapView

SwiftUI’s ImageRenderer API is great for rendering images from views, but it doesn’t always meet all needs. Patrick McConnell encountered this limitation while exporting a MapView. His article details how he embedded an MKMapView using NSViewRepresentable in a macOS app and used view hierarchy inspection to capture a complete map image, including paths, overlays, and annotations. The post explains why annotations are typically excluded and offers a stable workaround using extensions to both NSView and MKMapView.

The Top 7 MCP-Supported AI Frameworks

Model Context Protocol (MCP) is becoming the de facto standard for connecting LLMs to external tools through a unified and efficient context injection method. In this article, Amos Gyamfi introduces seven leading MCP-compatible AI frameworks, including OpenAI Agents SDK, LangChain, Chainlit, Agno, Upsonic, and Mastra. Each is accompanied by example code showing how to embed MCP tools into agentic workflows, greatly enhancing extensibility and maintainability. While the code is Python- and TypeScript-based, the concepts offer valuable insights even for Apple developers.

SwiftUI Craftsmanship: State Management

In SwiftUI, everything is driven by state. In this article, Danny Bolella takes the guiding principle of “minimal state” and explores how to simplify and modularize complex state management. By analyzing dependencies and relocating state to subviews, the article shows how to keep UI both responsive and readable. The article avoids prescribing a specific architecture, instead focusing on foundational SwiftUI state handling techniques applicable across patterns.

Weekly Swift & SwiftUI highlights!