Category: Development

dk coder: Empowering Non-Programmers to Build Secure Apps

2025-06-16
dk coder: Empowering Non-Programmers to Build Secure Apps

The dk coder is a script runner and cross-compiler designed for users with limited programming experience to build substantial, safety-focused applications. Its ease of use, portability, and IDE support tackles the 'README-itis' problem: lengthy READMEs deter users from installing, resulting in lost users. A Quick Walkthrough Guide introduces dk scripts with simple examples. Developers should consult the dk Runtime for supported Windows, macOS, and Linux versions. For scripting, refer to dk Parties for project organization and keep the dk Libraries and dk Macros manuals handy. Experienced OCaml users should check out the Coming From OCaml guide.

From Prison Cell to Turso Software Engineer: A Hacker News Story

2025-06-16
From Prison Cell to Turso Software Engineer: A Hacker News Story

An incarcerated programmer, serving time for drug-related offenses, landed a software engineering job at Turso. Using limited prison internet access, he dedicated himself to coding, contributing to open-source projects, and ultimately impressed Turso with his work on Project Limbo, a rewrite of SQLite. His story highlights perseverance, second chances, and the power of open source.

Development

Chat with AI over SSH: A Dockerized AI Chat Server

2025-06-16
Chat with AI over SSH: A Dockerized AI Chat Server

This project provides a Dockerized AI chat server accessible via SSH. It supports multiple AI models and offers detailed deployment instructions, including environment configuration, Docker Compose file, and dependency installation. Users can customize parameters like models, rate limiting, blacklist, and whitelist. The project also includes deployment suggestions for various operating systems (macOS, Linux, and Windows) and acknowledges server sponsorship from V.PS.

Development

Async Function Calls on Socket.io: Introducing socket-call

2025-06-16
Async Function Calls on Socket.io: Introducing socket-call

socket-call is a small library built on top of Socket.io that lets you call events like any regular async TypeScript function. It simplifies Socket.io usage, offering a cleaner and more intuitive programming experience. Code examples demonstrate server-side and client-side implementation, showcasing login functionality and server-to-client message sending.

Development

Kubernetes Slack Migration to New Platform Imminent

2025-06-16

The Kubernetes Slack workspace will be downgraded to a free plan on June 20th, resulting in a 90-day message history limit and the disabling of several apps and workflows. This is due to the workspace's size exceeding Slack's free plan capabilities. The Kubernetes community is exploring a migration to Discord, offering improved features and integrations, such as GitHub group membership synchronization. The Steering Committee will ultimately decide on the future platform.

Development

Zeekstd: A Seekable Zstandard Implementation in Rust

2025-06-16
Zeekstd: A Seekable Zstandard Implementation in Rust

Zeekstd is a Rust library implementing a seekable Zstandard format. It splits compressed data into independent frames for efficient random access. Fully compatible with the original specification, Zeekstd offers improvements and includes both encoder and decoder functionalities, allowing for decompression of entire files or specific frames. A command-line tool is also provided.

Development Seekable Compression

Linux Kernel Word Frequency Analyzer

2025-06-16

A website uses a powerful search engine to analyze the frequency of words, names, and functions in the Linux kernel source code. Users can input keywords (supporting wildcards and regular expressions) to view the results. The website also provides interactive charts (requires enabling JavaScript) for a visual representation of the analysis results. This is very helpful for researching the Linux kernel or understanding its code structure.

Solving LinkedIn's Queens Game with APL: 11 Lines of Code

2025-06-16

Peter Vernigorov tackles LinkedIn's simple 'Queens' game using APL, a powerful and concise programming language. The post details a breadth-first search solution, explaining the data structure, algorithm, and implementation of core functions like `solve`, `place`, `avl`, `fill`, and `fills`. The entire solution elegantly fits within 11 lines of code, showcasing APL's expressive power and efficiency. The author encourages readers to explore APL's potential.

Development

arXivLabs: Experimenting with Community Collaboration

2025-06-16
arXivLabs: Experimenting with Community Collaboration

arXivLabs is a framework enabling collaborators to develop and share new arXiv features directly on the website. Individuals and organizations involved share arXiv's values of openness, community, excellence, and user data privacy. arXiv only partners with those upholding these principles. Got an idea to enhance the arXiv community? Learn more about arXivLabs.

Development

Hidden Gems and Humor in the Android API

2025-06-16
Hidden Gems and Humor in the Android API

This article unveils hidden easter eggs and humorous elements within the public Android API. Examples include `isUserAMonkey()`, detecting if the UI is being tested by a tool; `isUserAGoat()`, once used to detect the Goat Simulator game; and `DISALLOW_FUN`, a device policy to restrict user fun. Other quirky additions include `Chronometer.isTheFinalCountdown()`, launching Europe's 'The Final Countdown' on YouTube; and constants like `SENSOR_TRICORDER` and `GRAVITY_DEATH_STAR_I`. There's even an undocumented `` tag for making views blink. These fun additions lighten the developer experience and showcase the Android team's sense of humor.

Development Easter Eggs

Lisp-Stat: A Common Lisp-based Statistical Computing System

2025-06-16
Lisp-Stat: A Common Lisp-based Statistical Computing System

Lisp-Stat, conceptually similar to R, excels in both exploratory data analysis and production deployments. The authors highlight Common Lisp's use in Google's high-availability, high-throughput transactional systems. Common Lisp was chosen for its suitability for exploratory environments, robustness in enterprise production, and open-source licensing. Referencing a paper by Ross Ihaka (co-creator of R), the authors argue that Common Lisp overcomes limitations in R and Python, particularly regarding machine code compilation, making it a superior foundation for statistical computing.

Development Statistical Computing

AI Coding Agents: From Helpful Assistants to Essential Partners

2025-06-16

The author recounts a transformative shift in their workflow due to autonomous AI coding agents. Initially viewed as a neat curiosity, these agents have become indispensable, dramatically changing how software is shipped. The author details using tools like Claude and Codex to complete tasks ranging from bug fixes to code generation, resulting in significant productivity gains. While acknowledging limitations, such as the potential for getting stuck in local optima, the author believes AI coding agents represent a new era in software development, augmenting rather than replacing developers.

Development

Twin: A Textmode Windowing Environment

2025-06-15
Twin: A Textmode Windowing Environment

Twin is a text-based windowing environment supporting mouse, a window manager, terminal emulation, networked clients, and the ability to attach/detach mode displays on-the-fly. It supports various display types including plain text terminals, X11, and itself. Currently tested on Linux, macOS, and FreeBSD across multiple architectures. This open-source project, licensed under GPL and LGPL, offers comprehensive tutorials and developer documentation and is available on GitHub.

How Fast is RPython GC Allocation?

2025-06-15

This article benchmarks the allocation speed of the RPython garbage collector (GC) using a small RPython program. Results show surprisingly fast allocation speeds exceeding 34 GB/s, significantly outperforming Boehm GC. Analysis of generated machine code and performance counters reveals that RPython GC's speed stems from its efficient bump pointer mechanism and minimal GC overhead. Even in regular Python code with PyPy's JIT, allocation speeds reach 17 GB/s.

Development

Seastar: A Fast, Extensible Build System for Multiple Languages

2025-06-15
Seastar: A Fast, Extensible Build System for Multiple Languages

Seastar is a fast and extensible build system currently supporting C and C++, with plans to add Rust and Zig. Designed for ease of creation, prototyping, and iteration, it aims to mimic the user-friendliness of Rust's Cargo while offering seamless compilation across multiple languages. Seastar is simple to build and run; just install Cargo and Rust, clone the repository, and run the provided commands. Currently in early stages, it's not recommended for production use.

Development

18 Toy Projects to Rekindle Your Programming Joy

2025-06-15

The author advocates for a hands-on approach to learning, believing that creating is the best way to understand. The article lists 18 toy programming projects of varying difficulty and time commitment, ranging from OS kernels and game emulators to physics engines, compilers, and GUI toolkits. These projects aim to reignite the joy of programming and enhance technical skills. Difficulty levels are provided, making them accessible to programmers of all levels, along with links to helpful resources.

Development toy projects

SumatraPDF Dev Ditches std::function After 16 Years, Rolls His Own

2025-06-15
SumatraPDF Dev Ditches std::function After 16 Years, Rolls His Own

After 16 years of C++ development on SumatraPDF, the author abandoned `std::function` and lambdas due to debugging difficulties. Crash reports were hard to decipher because of the auto-generated names of compiler-generated lambda functions. He created simpler, custom callback functions `Func0` and `Func1`. While less feature-rich than `std::function`, they offer significant advantages in memory footprint and compilation speed, and are easier to debug. This post details the design and implementation of `Func0` and `Func1`, and explains why this approach better suits SumatraPDF's needs.

Development callbacks

SQLite Date and Time Functions Enhanced: More Powerful Date/Time Manipulation

2025-06-15

SQLite's date and time functions have been enhanced to provide richer functionality. This document details the five core functions: `date`, `time`, `datetime`, `julianday`, and `strftime`, along with various time string formats and modifiers like `unixepoch` and `localtime`, enabling more flexible date/time calculations and formatting. A user-contributed patch is also highlighted, adding numerous features such as `start of week`, `end of day` modifiers, and `group * by` functionality for convenient aggregation.

Development Date/Time Functions

LLMs Took the Joy Out of Programming: A Programmer's Confession

2025-06-15

The author reflects on a shift in their programming habits. Once a 'journey programmer,' passionate about learning and problem-solving, they've become increasingly reliant on Large Language Models (LLMs) for code generation, transforming into a more 'destination-oriented' programmer. While LLMs boost efficiency, they've reduced the time spent learning and thinking, diminishing the author's enjoyment of programming. This shift is attributed to several factors, including a preference for building useful projects and over-reliance on LLMs. The author hopes to lessen their dependence on LLMs and rediscover the joy of the programming process.

Development

Manage Apple Containers like docker-compose

2025-06-15
Manage Apple Containers like docker-compose

A CLI tool, `container-compose`, lets you use Apple Containers with a docker-compose-like config file. Currently in alpha, it may contain bugs or missing features. Install via Homebrew (`brew tap noghartt/container-compose https://github.com/noghartt/container-compose.git; brew install noghartt/container-compose/container-compose`) or download a pre-built binary from the release page.

Development

Datalog Engine in miniKanren and WebAssembly

2025-06-15

This article details a Datalog engine built using Scheme and the miniKanren library, running in the browser via WebAssembly. The engine implements core Datalog features: fact assertion, rule definition, and fixpoint iteration. The author thoroughly explains the implementation details of data structures, indexing mechanisms, and rule application, providing a graph traversal example. This project demonstrates the potential of functional and logical programming techniques for building efficient database systems, leveraging WebAssembly for cross-platform execution.

Development

Sandboxing in 2025: A Developer's Guide to Easy Security

2025-06-15

This article investigates the ease of sandboxing programs in 2025 across operating systems like Linux, OpenBSD, and FreeBSD. By analyzing documentation length and example code length of various sandbox tools, the author assesses their usability and maintenance overhead. OpenBSD's pledge emerges as a favorite due to its concise documentation and ease of use, while Linux's seccomp proves significantly more complex. The article uses OpenSSH as a case study, analyzing the practical application and maintenance difficulty of sandbox technology. It concludes with a call for developers to contribute data for a more comprehensive understanding of sandbox technology adoption.

Development program sandboxing

GNOME in 1998: A Blast from the Past

2025-06-15

This article recounts the author's experience with the early GNOME desktop environment included in Red Hat Linux 5.1 from 1998. It was a beta release, significantly simpler than today's GNOME, but boasted remarkably faster boot times. The author details the applications available, such as a basic file manager, the Electric Eyes image viewer, gEdit 0.4.0, and simple games, drawing comparisons to modern versions. This nostalgic look showcases the efforts and ingenuity of the early open-source community.

Development Open Source History

Foundations of Computer Vision: A Decade in the Making

2025-06-15

After a decade-long journey, Torralba, Isola, and Freeman have published "Foundations of Computer Vision." Instead of aiming for complete coverage, the book focuses on fundamental concepts, approaching the subject from image processing and machine learning perspectives. It features numerous visualizations and progresses through image formation, learning foundations, signal processing, neural networks, and explores advanced topics like generative models and representation learning. The book's rigorous structure and clear explanations make it suitable for undergraduates, graduate students, and professionals alike.

Development

Chrome's New `<permission>` Element: A Declarative Approach to Web Permissions

2025-06-15
Chrome's New `<permission>` Element: A Declarative Approach to Web Permissions

The Chrome permissions team is experimenting with a new declarative HTML `` element to simplify how web apps request powerful features like location access. Traditional imperative methods suffer from permission spam, poor contextualization, and difficulty in revoking permissions. The `` element offers a more secure and user-friendly approach, allowing developers to declaratively request permissions while the browser dynamically updates the element's text based on user interaction and provides clear permission management. Currently in origin trial in Chrome 126, it aims for standardization.

Development Permission Management

Minimal PyTorch Probabilistic Diffusion Model: 2D Dataset Experiments

2025-06-15
Minimal PyTorch Probabilistic Diffusion Model: 2D Dataset Experiments

This post details a minimal PyTorch implementation of a probabilistic diffusion model for 2D datasets. The author explores hyperparameters like learning rate, model size, diffusion process length, and timestep encoding through various experiments. Results show that a suitable learning rate is crucial, longer diffusion processes generate more complete samples, and model capacity isn't the primary bottleneck. Using sinusoidal embeddings for input encoding aids in learning high-frequency functions in low-dimensional domains.

Rails Security Audit Reveals Improvements, Highlights Future Work

2025-06-15

The Open Source Technology Improvement Fund (OSTIF) released a security audit of Ruby on Rails, conducted by X41 D-Sec with support from GitLab and the Sovereign Tech Agency. The four-month audit uncovered 7 security findings and provided 6 recommendations for improvement. The report highlights the maturation of Rails' security over recent years while also outlining areas for future enhancement. OSTIF also celebrated its 10th anniversary and invited participation in upcoming meetups.

Development

Comparing Three Notions of Software Complexity

2025-06-15

This article compares three distinct definitions of software complexity from Rich Hickey, John Ousterhout, and Zach Tellman. Hickey defines simplicity as oneness, emphasizing objectivity; Ousterhout defines complexity as anything making a system hard to understand and modify, highlighting dependencies and obscurity; Tellman defines complexity as the sum of every explanation, emphasizing audience-dependent surprisal. The article weighs the strengths and weaknesses of each, exploring their application to real-world problems. Ultimately, it argues that Tellman's explanation-based approach is superior for capturing subjective developer experience and guiding practical decisions.

Development software complexity

Observability for GitHub Actions with OpenTelemetry

2025-06-15
Observability for GitHub Actions with OpenTelemetry

This guide demonstrates how to achieve end-to-end observability of your CI/CD pipelines by using OpenTelemetry to monitor GitHub Actions. By configuring the OpenTelemetry Collector's GitHub receiver, you can collect traces and metrics from your workflows, enabling you to identify bottlenecks, debug errors, and analyze dependencies. The guide provides a step-by-step setup, including configuring a GitHub webhook, installing the OpenTelemetry Collector, configuring receivers and processors, and handling authentication. YAML configuration snippets are included. Finally, this data is sent to an observability platform like SigNoz for visualization and analysis.

Development

Lisp: A Creative Medium for Programmers

2025-06-15

This essay argues that Lisp is not just a programming language, but a creative medium for programmers, akin to writing or art. The author contends that good programming, like writing, involves exploration and discovery, followed by refinement of the presentation. Lisp's dynamic nature makes it ideal for experimentation and iteration, allowing programmers to adjust and improve their code much like a writer revises a manuscript. Using examples like mapmaking and writing, the author illustrates the interplay between discovery and refinement, criticizing the performance-first approach to programming language design as hindering creativity and flexibility. The author advocates for a more flexible and exploratory approach to software development, echoing the spirit of Agile methodologies.

Development Programming Paradigm
1 2 59 60 61 63 65 66 67 214 215