| News Nug |
|---|
|
Detecting if an expression is constant in C Published: 2025-04-22 | Origin: /r/programming The content discusses various methods to implement a macro in C that takes an expression as an argument while addressing challenges related to determining if an expression is constant. The solutions differ based on the C standard in use and the allowance of compiler extensions. 1. **C23 and Later**: You can use compound literals with `typeof` to store expressions, leveraging the requirement that static storage duration initializers be constant expressions, which helps ensure the expression is constant. 2. **GNU Extensions**: The `__ |
|
Bloom Filters: A Memory-Saving Solution for Set Membership Checks Published: 2025-04-22 | Origin: /r/programming The content discusses bloom filters, a space-efficient, probabilistic data structure used to check for set membership. Unlike traditional hashmaps, which store every user request, bloom filters can quickly determine if a user has likely visited a page before, using significantly less memory and eliminating false negatives. However, they may yield false positives, meaning they can indicate an element might be in the set even if it's not. The document will compare bloom filters to hashmaps, which utilize a hash function to store key-value pairs |
|
Apache Airflow 3.0 released Published: 2025-04-22 | Origin: /r/programming Apache Airflow 3.0.0 has officially been released, marking the most significant update in the project's history. Announced at the Airflow Summit in September 2024, this release comes after four years of incremental updates following version 2.0. The popularity of Airflow has surged, with over 30 million monthly downloads and 80,000 organizations now using it, up from 25,000 in 2020. Airflow 3.0 responds to an expanding range |
|
ClickHouse gets lazier and faster: Introducing lazy materialization Published: 2025-04-22 | Origin: Hacker News ClickHouse, a fast analytical database, has implemented a new optimization called lazy materialization, which enhances its query performance by delaying the reading of column data until it is actually needed. This approach significantly reduces unnecessary work and speeds up query execution, especially for Top N queries with LIMIT clauses, which are common in analytics. For instance, a specific ClickHouse query showcased a dramatic speed improvement from 219 seconds to just 139 milliseconds—achieving a 1,576× speedup—simply by |
|
Algebraic Semantics for Machine Knitting Published: 2025-04-22 | Origin: Hacker News The blog post discusses the mathematical rigor necessary for programming languages, focusing specifically on the less-defined semantics of machine knitting. Machine knitting involves programming to control arrays of needles to manipulate yarn into 3D objects. The author explores the importance of establishing clear semantics for machine knitting, explaining their potential applications in error checking, code optimization, and transformation, much like traditional programming languages. To illustrate the significance of semantics, the author presents a "commuting" problem: determining whether the order of two statements in a |
|
Scaling Rails application Published: 2025-04-22 | Origin: /r/ruby Vishnu M discusses the ease of starting development with Ruby on Rails, noting that it comes with SQLite as a default database, making initial setup simple. However, deploying to production requires changing the database and additional configurations for scaling as traffic increases. Over 13 years of consultancy at BigBinary has revealed various types of Rails applications, each facing unique challenges like memory issues or failed jobs due to misconfigurations. To effectively scale Rails applications, it's essential to understand the underlying mechanisms of Rails, Puma, |
|
We Interviewed 100 Eng Teams. The Problem With Modern Engineering Isn't Speed. It's Chaos. Published: 2025-04-22 | Origin: /r/programming The content discusses insights gathered by Earthly from interviews with over 100 engineers and engineering leaders from various companies, aimed at understanding their daily challenges and how Earthly's product, Earthfiles, could support engineering teams effectively. Initially focused on developer productivity and CI/CD speed, the team discovered that build speed was not a primary concern for most participants, with only one mentioning it as a significant issue due to a recent incident. Instead, the interviews revealed that the platform engineering industry faces more pressing challenges beyond just |
|
XRP Supplychain attack: Official Ripple NPM package infected with crypto-stealing backdoor Published: 2025-04-22 | Origin: /r/programming On April 21 at 20:53 GMT, Aikido Intel alerted to five compromised versions of the xrpl package, the official SDK for the XRP Ledger, which has over 140,000 weekly downloads. These malicious updates included a backdoor designed to steal cryptocurrency private keys, posing a significant threat to the cryptocurrency ecosystem due to the package's widespread usage. The suspicious versions released did not align with the official GitHub version (4.2.0). A specific function, checkValidity |
|
Coding as Craft: Going Back to the Old Gym Published: 2025-04-22 | Origin: /r/programming Shopify CEO Tobi Lütke emphasized the importance of AI in coding, stating that it is now an essential part of work at Shopify. While he encourages everyone to embrace AI, a sentiment shared by some, one Elm engineer expressed a contrasting view in a Slack conversation. This engineer has returned to using vim to reduce AI interference in their coding process, viewing coding as a craft that should be enjoyed rather than automated. They argue that struggling with problems and learning through challenges is crucial for skill development, |
|
Expose local dev server with SSH tunnel and Docker Published: 2025-04-22 | Origin: /r/programming The article provides a practical guide on how to temporarily expose a local service to the internet, particularly useful for those behind CG-NAT who cannot be reached from the internet. It explains that while services like localtunnel or ngrok are available, they often come with limitations on their free plans. Therefore, setting up your own tunnel can be more efficient. This setup allows users to share local projects easily, especially during remote work, and provides a simple way to access services through a public URL. The |
|
Short Ruby Newsletter - Edition 132 Published: 2025-04-22 | Origin: /r/ruby The content highlights several updates and events related to Ruby and AI as of April 21, 2025. Key points include: 1. **AI Announcement**: An emphasis on the importance of mastering AI tools to enhance productivity, encouraging readers to sign up for the Superhuman AI newsletter. 2. **New Releases**: - **JavaScript for Rails Developers**: A new book launched, offering a 10% discount for ShortRuby newsletter subscribers until April 25. - ** |
|
Attacking My Landlord's Boiler Published: 2025-04-22 | Origin: Hacker News The author warns readers to check local laws before attempting any of the discussed actions, particularly concerning the illegal use of radio frequencies in the U.S. They share their experience of moving into a new apartment, where they encountered challenges with the heating system governed by their landlord's radio-controlled thermostat. Seeking a way to automate the heating without requiring landlord approval or electrician assistance, the author decided to explore a method called a Replay Attack. This technique involves cloning the radio signals between the thermostat and boiler, providing a means |
|
Welcome to our website for the 1963 BBC MCR21 OB Van Published: 2025-04-22 | Origin: Hacker News Robin recalls a live broadcast during The RAC Rally that was poorly timed, as the show went off-air just as the cars finally arrived, leading to frustration among the production team. He also mentions that the new series of "Cilla" included budget-friendly outside broadcast (OB) inserts, which were often sourced from nearby sporting events. In the show's format, Cilla would announce live from various locations, encouraging locals to come out and participate in live interviews, supported by floodlights and a PA system. |
|
Forecaster reacts: METR's bombshell paper about AI acceleration Published: 2025-04-22 | Origin: Hacker News Peter Wildeford, a top forecaster, shares insights regarding the rapid acceleration of AI, referencing a recent graph and paper from METR, an AI evaluation organization. The graph suggests a trend where advances in AI capabilities could allow models to perform increasingly complex tasks over time. For instance, AI could tackle tasks traditionally requiring professional software engineering skills, progressing from one-hour tasks in February 2025 to year-long tasks by June 2031. With the recent release of OpenAI's o3 and |
|
Prolog Adventure Game Published: 2025-04-22 | Origin: Hacker News The content discusses a text adventure game developed in SWI Prolog, where players must locate treasure hidden within a castle. Players have three lives and encounter various gameplay mechanics, including locked doors, hidden and incomplete objects, limited resources, and inventory management. Feedback from users is valued, and documentation is available for further information on the game's features. |
|
The Record/Tuple ECMAScript Proposal has been withdrawn Published: 2025-04-22 | Origin: /r/programming The content discusses a withdrawn ECMAScript proposal for introducing two new immutable data structures to JavaScript: Records and Tuples. These structures are designed to contain only primitive values or other Records and Tuples, thereby maintaining deep immutability. Compared to traditional objects and arrays, they aim to provide a more secure and reliable way to handle data, minimizing the risk of bugs related to mixing mutable and immutable types in large projects. While inspired by previous proposals and existing libraries like Immutable.js, this latest draft |
|
Cheating the Reaper in Go Published: 2025-04-22 | Origin: /r/programming The author, a C++ programmer, expresses interest in Go due to its unique design choices, particularly its management of undefined behavior and garbage collection (GC) semantics. Go allows for manual memory management alongside GC, which is not feasible in languages like Rust or C++ due to their complex compilers and undefined behavior. The author plans to demonstrate this by creating an untyped, garbage-collected arena abstraction in Go. Despite not having strict guarantees for compatibility when using the "unsafe" package, the Go |
|
101 BASIC Computer Games Published: 2025-04-21 | Origin: Hacker News The content discusses a collection of BASIC programs from the original "101 BASIC Computer Games," specifically the March 1975 3rd printing by Digital Equipment Corp. It clarifies that this collection differs from the later and more famous "BASIC Computer Games" (BCG) published by David Ahl through Creative Computing, as some games are exclusive to each collection and use various incompatible BASIC dialects. Notable examples include games written in original Dartmouth BASIC and HP 2100 dialects. The collection |
|
Evertop: E-ink IBM XT clone with 100+ hours of battery life Published: 2025-04-21 | Origin: Hacker News Evertop is an ultra-portable PC that emulates an IBM XT, featuring an 80186 processor and 1MB RAM. Capable of running DOS, Minix, and older operating systems up to Windows 3.0, it boasts extremely low power consumption thanks to its efficient microcontroller and e-ink display. Equipped with two 10,000mAh batteries and a solar panel, it can operate for hundreds to thousands of hours on a single charge, making it ideal for |
|
Blog hosted on a Nintendo Wii Published: 2025-04-21 | Origin: Hacker News The content discusses the author's interest in running general-purpose operating systems on non-standard hardware, specifically the Nintendo Wii. It mentions past experiences with other consoles like the PS3 and PS2, and highlights the lack of up-to-date options for running robust operating systems on these devices. However, the author discovered that NetBSD supports the Wii, with the latest version being NetBSD 10.1, which is fully maintained. Inspired by this, the author decided to deploy a production workload, their blog, |