Yes, it's technically still possible to write a plain C iOS app in 2025 (and beyond). While Apple pushes developers towards Swift and SwiftUI, and Objective-C is slowly fading, the underlying iOS APIs are still C-based. This means you can use C, potentially with some Objective-C bridging for UI elements or higher-level functionalities, to create a functional app. However, this approach is significantly harder and less efficient than using Swift or Objective-C, lacking modern tools, libraries, and simplified memory management. Maintaining and updating a C-based iOS app would also be a considerable challenge compared to using more modern, officially supported languages and frameworks. Therefore, while possible, it's not generally recommended for practical development.
This post outlines a vision for first-class WebAssembly support in Swift, enabling developers to compile Swift code directly to Wasm for use in web browsers and other Wasm environments. The proposal emphasizes seamless integration with existing JavaScript ecosystems, allowing bidirectional communication between Swift and JavaScript code. It also aims for near-native performance by leveraging Wasm's capabilities, and proposes tools and workflows to simplify the development process, such as automatic generation of JavaScript bindings for Swift code. The ultimate goal is to empower Swift developers to build high-performance web applications and leverage the growing Wasm ecosystem, while maintaining Swift's core values of safety, performance, and expressiveness.
Hacker News users discussed the potential and challenges of Swift for WebAssembly. Some expressed excitement about the prospect of using Swift for frontend development, highlighting its performance and type safety as advantages over JavaScript. Others were more cautious, pointing to the existing maturity of JavaScript and its ecosystem, and questioning whether Swift could gain significant traction. Concerns were raised about the size of Swift compiled output and the integration with existing JavaScript libraries and frameworks. The potential for full-stack Swift development and server-side applications with WebAssembly was also mentioned as a motivating factor. Several users suggested that prioritizing the developer experience and tooling would be crucial for adoption.
Lovable is a new tool built with Flutter that simplifies mobile app user onboarding and feature adoption. It allows developers to easily create interactive guides, tutorials, and walkthroughs within their apps without coding. These in-app experiences are customizable and designed to improve user engagement and retention by highlighting key features and driving specific actions, ultimately making the app more "lovable" for users.
Hacker News users discussed the cross-platform framework Flutter and its suitability for mobile app development. Some praised Flutter's performance and developer experience, while others expressed concerns about its long-term viability, particularly regarding Apple's potential restrictions on third-party frameworks. Several commenters questioned the "lovability" claim, focusing on aspects like jank and the developer experience around animations. The closed-source nature of the presented tool, Lovable, also drew criticism, with users preferring open-source alternatives or questioning the need for such a tool. Some discussion revolved around Flutter's suitability for specific use-cases like games and the challenges of managing complex state in Flutter apps.
Marco Cantu's blog post celebrates Delphi's 30th anniversary, reflecting on its enduring relevance in the software development world. He highlights Delphi's initial groundbreaking impact with its rapid application development (RAD) approach and visual component library, emphasizing its evolution over three decades to encompass cross-platform development, mobile, and now, even web and Linux. Cantu acknowledges challenges and missteps along the way but underscores Delphi's resilience and continued commitment to providing developers with robust and productive tools. He concludes by looking forward to the future of Delphi, anticipating further innovations and its ongoing contribution to the software landscape.
Hacker News users discuss Delphi's 30th anniversary, acknowledging its past dominance and questioning its current relevance. Some commenters reminisce about their positive experiences with Delphi, praising its ease of use, rapid development capabilities, and stability, particularly in the 90s and early 2000s. Others express skepticism about its future, citing its perceived decline in popularity and the rise of alternative technologies. The conversation also touches on the limitations of its closed-source nature and pricing model compared to newer, open-source options, while some defend Embarcadero's stewardship and highlight Delphi's continued use in specific niche markets. There's a sense of nostalgia mixed with pragmatic assessments of Delphi's place in the modern development landscape.
A0.dev is a newly launched React Native app generator built to streamline mobile development. It allows developers to quickly create fully functional React Native apps with pre-built features like authentication, navigation, and data storage, significantly reducing boilerplate coding. The generated codebase follows best practices, uses TypeScript, and is designed for easy customization and extension. A0.dev aims to simplify the initial setup and development process, allowing developers to focus on building core app features rather than infrastructure.
The Hacker News comments on A0.dev, a React Native app generator, are generally positive and intrigued. Several commenters express interest in the speed and ease of use, praising the low-code/no-code approach. Some question the long-term viability and flexibility compared to building from scratch, raising concerns about vendor lock-in and limitations when needing to customize beyond the provided templates. Others point out the potential benefits for rapid prototyping and MVP development. A few commenters share their experiences with similar tools, drawing comparisons and suggesting alternative solutions. There's a brief discussion around pricing and the target audience, with some feeling the pricing might be high for individual developers.
Tapestry is a new, minimalist menubar app for macOS designed to declutter and streamline your menu bar. It allows users to hide less-frequently used menu bar icons, organizing them into a customizable dropdown menu accessible with a single click. This helps keep the menu bar clean and focused while still providing quick access to all your apps and utilities. Tapestry offers granular control, allowing you to choose exactly which icons to hide and the order they appear in the dropdown. It also boasts smart features like automatic hiding of rarely used icons and the ability to pin favorites for constant visibility.
HN commenters generally expressed positive sentiment towards Tapestry, praising its clean design, speed, and focus on privacy. Several appreciated the lack of algorithmic feeds and the chronological presentation of followed accounts. Some compared it favorably to Twitter, finding it a refreshing alternative. The pricing model, a one-time purchase, also received positive feedback, with some expressing willingness to pay even more. A few commenters raised concerns, including the potential difficulty of attracting a large user base and the lack of a web interface. Others questioned the long-term viability of a small, independent social network. The overall tone, however, leaned towards cautious optimism about Tapestry's potential to offer a calmer, more user-focused social media experience.
Summary of Comments ( 53 )
https://news.ycombinator.com/item?id=43682984
Hacker News users discussed the practicality and challenges of writing a plain C iOS app in 2025. Several commenters pointed out that while technically possible, using only C would be incredibly difficult and time-consuming, requiring significant workarounds to interact with essential iOS frameworks (mostly written in Objective-C and Swift). Some suggested leveraging existing C libraries and frameworks like SDL or raylib for cross-platform compatibility and easier graphics handling. Others questioned the motivation behind such an endeavor, given the availability of more suitable languages and tools for iOS development. The general consensus was that while a pure C app is theoretically achievable, it's a highly impractical approach for modern iOS development. Some pointed out that Apple's increasing restrictions on low-level access make a pure C app even more challenging going forward.
The Hacker News post "Is it possible to write plain C iOS app in 2025?" generated a fair number of comments discussing the feasibility and practicality of using C for iOS development.
Several commenters pointed out that it's technically possible but likely not practical or advisable. One commenter explained that while the entry point of an iOS app might be compiled C, interacting with any iOS frameworks would necessitate using Objective-C or Swift wrappers. They highlighted that even if some parts could be written in pure C, integrating with the iOS ecosystem would be challenging, requiring significant bridging work.
Another commenter explored the potential use of a cross-compiler targeting a suitable runtime like WASM/Wasmer, allowing for more C code. However, this approach was acknowledged as having potential performance limitations. This led to a discussion about whether such an approach would even be allowed on the App Store, given Apple's restrictions on interpreters and JIT compilers.
Some commenters offered alternative perspectives, suggesting that using C for specific performance-critical components within a larger Swift/Objective-C application might be a more realistic scenario. They argued that rewriting an entire app in C wouldn't be worth the effort, given the mature tooling and frameworks available for Swift/Objective-C development.
A few users mentioned existing projects and tools that allow for C development on iOS, such as the SDL library and Beeper (an iMessage client largely written in C++). These examples served to demonstrate that C can indeed be used, but often in conjunction with other languages and primarily for specific use cases.
A recurring theme in the comments was the trade-off between performance and developer productivity. While C might offer potential performance gains in some scenarios, the increased development time and complexity involved in interfacing with the iOS ecosystem were generally seen as outweighing those benefits.
Finally, some commenters discussed Apple's policies and their potential impact on C-based iOS development. The possibility of Apple further restricting or disallowing certain approaches was raised, reinforcing the notion that relying solely on C for iOS development is a risky proposition.