News Nug
8M users' AI conversations sold for profit by "privacy" extensions

Published: 2025-12-16 | Origin: Hacker News

Idan Dardikman reflects on a significant personal decision-making moment where he realized the depth of his conversations with his AI assistant, Claude, including private details he hadn't shared with anyone else. This led to a troubling thought about the security of these conversations. As a security researcher, he utilized his tools to investigate potential risks and discovered that the popular Chrome extension, Urban VPN Proxy—rated highly with millions of users—was capable of intercepting and collecting conversations from various AI platforms. Notably,

Quill OS: An open-source OS for Kobo's eReaders

Published: 2025-12-16 | Origin: Hacker News

Quill OS offers a variety of features including: - An integrated KoBox X11 subsystem - Support for ePUB, PDF, picture, and plain text display - Flexible reading configuration options - muPDF rendering engine for ePUBs and PDFs - Wi-Fi support and a web browser - Encrypted storage using EncFS - Quick dictionary and local storage search - Dark mode functionality - Option for full factory reset - Seamless update process - VNC viewer application

Native vs. emulation: World of Warcraft game performance on Snapdragon X Elite

Published: 2025-12-15 | Origin: Hacker News

At the start of the year, the author tested an unreleased Snapdragon X Elite development kit but struggled to compare the gaming performance between x86 and native gaming versions, limited to running World of Warcraft Classic in x86 format. They noted a significant FPS drop of 40-60% compared to the native version. However, recent updates in Windows, particularly the introduction of the Prism emulation layer and Windows 11 24H2, have improved compatibility and performance. Using the latest Insider Preview version

Reforging the ReScript Build System

Published: 2025-12-15 | Origin: /r/programming

ReScript 12 introduces a new build system called Rewatch, which replaces the previous system, bsb. This new build system offers intelligent dependency tracking, faster incremental builds, and enhanced support for monorepo workflows. While bsb was effective for single-package projects, it struggled with limitations in monorepo setups, particularly in watch mode, where it only tracked changes within a single package, failing to trigger rebuilds for dependent packages. Additionally, bsb built packages sequentially rather than in parallel

Economics of Orbital vs. Terrestrial Data Centers

Published: 2025-12-15 | Origin: Hacker News

The author expresses concern about the current discourse surrounding the value of computing in low Earth orbit (LEO), emphasizing the need to address the fundamental question: why is computing 250 miles up potentially more valuable than on the surface? They argue that the conversation often jumps to hardware details without properly considering the economic justification, suggesting motivations are driven more by fear of missing out and aesthetic futurism than by well-grounded value propositions. The author, who has a passion for space and technology, critiques the lack of

Full Unicode Search at 50× ICU Speed with AVX‑512

Published: 2025-12-15 | Origin: /r/programming

The article discusses a piece of open-source software called StringZilla, which focuses on efficiently handling UTF-8 encoding, a complex and widely used text encoding introduced in 1989. UTF-8 encompasses over a million characters, including various confusing characters like the German Eszett and different forms of 'k'. The existing library, ICU, is comprehensive but slow. StringZilla aims to improve performance by utilizing AVX-512 technology for faster processing, while also prioritizing correctness with extensive testing against

Ruby app that can create Posts on a Facebook Page that a user has permission for

Published: 2025-12-15 | Origin: /r/ruby

The content discusses a Ruby application that uses the Roda framework to create posts on a Facebook Page, provided the user has the necessary permissions. It emphasizes the importance of user feedback and directs users to documentation for available qualifiers. The app serves as a simple example for beginners and was originally developed using Rails, but Roda was chosen for its simplicity. The document highlights that there are two apps mentioned, and encourages users to reach out for clarification. The code has been verified for use as of December 11

Don MacKinnon: Why Simplicity Beats Cleverness in Software Design [audio]

Published: 2025-12-15 | Origin: Hacker News

The content from EP-215 discusses various aspects of software maintainability and the challenges faced in development. Key points include: 1. **Complexity Barrier**: Don emphasizes that unnecessary complexity significantly hinders software maintainability, referencing themes from "A Philosophy of Software Design." 2. **Clever Abstractions**: A case study from a Node.js API illustrates how an unnecessary abstraction layer around MongoDB complicated the project without adding value. 3. **Team Structure**: Don explains how the Search

Create A Module of Utility Functions in Ruby

Published: 2025-12-15 | Origin: /r/ruby

The content discusses the `module_function` feature in Ruby's Module class, which creates class methods (singleton methods) on a module while also making the original methods private instance methods for any class that includes the module. This allows utility functions within the module to be used as if they were private methods in the class itself when mixed in, without exposing them in the class's public interface. The text illustrates how these markdown utility functions can help in a class such as `Post`, where they can be utilized

Beautiful Rails confirmation dialogs (with zero JavaScript)

Published: 2025-12-15 | Origin: /r/ruby

This content is a collaboration with Stephen Margheim, who created a course on building quality Rails applications. It discusses the limitations of the traditional `confirm()` prompt for confirmation dialogs in web applications, suggesting that it appears outdated. Instead of relying on extensive JavaScript for creating styled confirmation dialogs, recent browser updates, specifically Invoker Commands in Chrome and Safari, enable developers to create elegant, animated dialogs with minimal coding. For instance, a confirmation dialog for deleting an item can be built using these modern features without

IPC Mechanisms: Shared Memory vs. Message Queues Performance Benchmarking

Published: 2025-12-15 | Origin: /r/programming

The content describes a performance issue faced when using message queues for inter-process communication (IPC) at high message rates (500K messages per second). The system's CPU usage is significantly impacted due to the overhead from syscall operations related to `mq_send()` and `mq_receive()`, which dominate profiling data, historically leading to 40% CPU utilization. This situation reflects an actual challenge encountered by LinkedIn's Kafka producers, where extensive use of message queues resulted in reduced throughput due to syscall overhead.

Excel: The World’s Most Successful Functional Programming Platform By Houston Haynes

Published: 2025-12-15 | Origin: /r/programming

Of course! Please provide the content you would like me to summarize.

Hash tables in Go and advantage of self-hosted compilers

Published: 2025-12-15 | Origin: /r/programming

The author discusses their experience with the Go programming language, specifically regarding tracking unique values using maps. Initially, they used `map[int]bool` but later considered switching to `map[int]struct{}` due to its zero-sized type, which theoretically saves memory. Despite this change, they observed no decrease in memory consumption in production. They researched the implications of this change and found that since Go 1.24, a new map implementation called Swiss Tables has been introduced, which reportedly uses less memory

Rejecting rebase and stacked diffs, my way of doing atomic commits

Published: 2025-12-15 | Origin: /r/programming

The author recently learned about atomic commits after reviewing a pull request, admitting it took them too long to discover the concept. They explain that atomic commits involve making single, cohesive changes in code that can independently pass continuous integration (CI) tests, ensuring that each commit leaves the codebase in a working state. This approach helps others easily understand commit histories without needing to analyze multiple commits together. The author compares the process to saving progress in a video game at logical checkpoints. They mention that their current development

gRPC in Spring Boot - Piotr's TechBlog

Published: 2025-12-15 | Origin: /r/programming

The article discusses the integration of gRPC services into Spring Boot applications using the newly released Spring gRPC project (1.0 GA). gRPC is an open-source Remote Procedure Call framework that relies on Google’s Protocol Buffers for data serialization. Prior to this release, Spring projects lacked native gRPC support, often requiring third-party solutions that are now outdated. The article also draws comparisons with Quarkus, offers access to the author's sample GitHub repository containing related applications, and outlines steps for generating

GitHub - kettle-rb/tree_haver: 🌴 TreeHaver is a cross-Ruby adapter for the tree-sitter parsing library that works seamlessly across MRI Ruby, JRuby, and TruffleRuby.

Published: 2025-12-15 | Origin: /r/ruby

TreeHaver is a cross-Ruby adapter for the Tree-sitter parsing library, compatible with MRI Ruby, JRuby, and TruffleRuby. It offers a unified API for parsing source code with Tree-sitter grammars, allowing developers to write their code once and run it across different Ruby implementations, similar to how Faraday operates for HTTP. TreeHaver simplifies the integration of Tree-sitter into Ruby applications by automatically selecting the relevant backend, making it easier to manage parsing across various environments.

Jubilant: Python subprocess and Go codegen

Published: 2025-12-15 | Origin: /r/programming

Jubilant is a Python API developed for Juju, a deployment and operations tool by Canonical. The article discusses key design decisions in Jubilant, such as employing Python’s subprocess.run for invoking Juju commands, generating Python dataclasses from Go structs, and using Make and uv for build automation. The author usually refrains from discussing work-related topics but chose to share insights since Jubilant is open source, and the name was inspired by colleague Dave Wilding. The article contrasts Jubilant

Part 2 of backend driven badge system

Published: 2025-12-15 | Origin: /r/programming

In Part 1, a badge system was created to track progress and award achievements, but it had a significant design flaw: each feature required manual updates to badges, leading to scattered badge logic and reliance on human memory. This resulted in several problems, as the current approach required features to notify the badge system about events like quiz completions or user logins. The proposal is to shift to an event-driven system. In this new approach, the feature code only emits events without needing to manage badge logic

Working quickly is more important than it seems (2015)

Published: 2025-12-15 | Origin: Hacker News

Working quickly has multiple benefits beyond just completing tasks more efficiently. When you work faster, the perceived cost of starting new tasks decreases, making you more likely to take on additional projects. Conversely, slow work can lead to a lack of motivation, as tasks seem too daunting and contribute to a cycle of procrastination. This is true for any to-do list—when items accumulate without being crossed off, it can discourage further additions. This principle also applies to communication, such as email responses; quick replies lead

Read Something Wonderful

Published: 2025-12-15 | Origin: Hacker News

Of course! Please provide the content you'd like me to summarize.