Category: Development

Otus Lisp 2.6 Released: A Lightweight, Cross-Platform Lisp Dialect

2025-06-23

Otus Lisp (Ol) version 2.6 is out! This lightweight (~64KB), purely functional Lisp dialect implements an extended subset of R7RS Scheme, boasting cross-platform compatibility (Linux, Windows, macOS, Android, and more) and architecture support. Ol is embeddable and provides a high-level interface for calling code written in other languages. It also supports WebAssembly, enabling execution in various browsers. This release introduces infix notation for more convenient mathematical expression.

Development

The Decline of Stack Overflow and its Impact on Programming Language Rankings

2025-06-23
The Decline of Stack Overflow and its Impact on Programming Language Rankings

RedMonk uses GitHub and Stack Overflow data to track programming language trends. However, the number of questions on Stack Overflow has been declining since 2016, accelerating after the rise of AI coding assistants like ChatGPT. This significantly impacts the reliability of RedMonk's programming language rankings. The team is currently exploring alternative data sources to maintain this crucial analysis.

Development

Solving the AWS Backup Cross-Account, Cross-Region Copy Conundrum with Lambda

2025-06-23

This article details how the author overcame the limitation of AWS Backup not supporting cross-account and cross-region backups simultaneously. Driven by security and disaster recovery policies, a solution was needed to store backups in separate accounts and regions. The author meticulously outlines a solution using AWS Backup, EventBridge, and a Lambda function to achieve cross-account, cross-region backup replication. This includes configuring source and destination account Vaults, policies, EventBridge rules, and a Lambda function, addressing encryption and permissions. The author successfully implements this, offering further optimization suggestions such as automated restore testing and cost monitoring.

Development

Kastle: Founding Engineer for AI-Powered Mortgage Servicing

2025-06-22
Kastle: Founding Engineer for AI-Powered Mortgage Servicing

Kastle is seeking a Founding Engineer to build and optimize its AI infrastructure. They use AI voice agents to help major US mortgage lenders scale their contact centers and compliance operations, backed by $2.3M in funding. This role requires backend development, distributed systems, and AI integration expertise. Responsibilities include developing scalable backend services, APIs integrating with loan servicing platforms, and ensuring compliance with financial regulations (SOC 2, FDCPA, RESPA, TILA).

Development Mortgage

Void IDE: An Open-Source, Privacy-Focused AI Code Editor

2025-06-22
Void IDE: An Open-Source, Privacy-Focused AI Code Editor

Void IDE, a new open-source AI-powered code editor in beta, offers a privacy-focused and free alternative to proprietary options like Cursor and GitHub Copilot. Backed by Y Combinator and forking Visual Studio Code, Void IDE lets users choose local processing or direct API calls to LLMs such as Claude, GPT, and Gemini, mitigating privacy concerns and subscription costs. It boasts features like inline code editing, AI chat, and code generation, mirroring similar tools while prioritizing user data control. The project has generated significant interest on Hacker News and Reddit, sparking discussions about its open-source nature and the increasing number of VS Code forks.

Development

FreeBSD 14.3 Officially Adds Dedicated Kernel Module Package Repositories

2025-06-22
FreeBSD 14.3 Officially Adds Dedicated Kernel Module Package Repositories

For a long time, FreeBSD point releases have caused kernel module packages to be incompatible with the kernel version, leading to system crashes. To solve this problem, FreeBSD 14.3 officially introduces separate kernel module package repositories containing modules compatible with the latest kernel version. This addresses a long-standing user issue, improving system stability, particularly fixing system crashes caused by incompatible graphics drivers on desktop/laptop systems. The upgrade involves modifying the `/etc/pkg/FreeBSD.conf` file to include the new kernel module repositories.

Development kernel modules

PhD Thesis Written in Typst: A Triumph and Tribulations

2025-06-22

A PhD student recounts their experience writing their dissertation using the innovative typesetting language Typst. Typst blends the ease of Markdown with the power of Rust scripting, resulting in blazing-fast compilation speeds that allowed for rapid iteration on layout and style. However, Typst's bibliography management proved less than ideal, requiring extra tools and manual adjustments to meet stringent citation formatting demands. The author concludes that Typst is a great choice for those who enjoy programming and customizing tools but that LaTeX remains a safer bet for those who prefer an out-of-the-box solution.

Development PhD Thesis

Taming the Internet Beast: A Smart Home Approach to Moderation

2025-06-22
Taming the Internet Beast: A Smart Home Approach to Moderation

Tired of internet distractions, the author built a smart home system to control social media access. Using AdGuard Home, Home Assistant, and a Zigbee smart plug, they created an automation: a button press temporarily disables AdGuard's filtering for 15 minutes, followed by a one-hour cooldown. The article details the setup, including AdGuard Home API configuration and Home Assistant automation, offering a practical solution for managing internet usage and combating addiction.

Development internet control

Bad Tech Docs: A Developer's Biggest Obstacle?

2025-06-22
Bad Tech Docs: A Developer's Biggest Obstacle?

The 2024 Stack Overflow survey highlights technical documentation and tutorials as crucial learning resources for coders. Yet, many developers experience frustration, feeling more confused after reading them. This stems from the fact that coding expertise doesn't automatically translate to clear writing. Solutions involve developers improving their writing skills, and organizations gathering user feedback, hiring technical writers, and addressing documentation issues on GitHub more proactively.

Development developer learning

C++26 to Feature Compile-Time Reflection: Goodbye Boilerplate, Hello High Performance

2025-06-22

Herb Sutter has announced that C++26 will include compile-time reflection, a game-changer for C++ development. Compile-time reflection provides access to a program's own structure, enabling tasks like enumerating a class's methods. This is particularly impactful for libraries like simdjson, allowing high-speed conversion between custom data structures and JSON strings without boilerplate code. The article demonstrates generating efficient SQL insert statements using compile-time reflection, reducing boilerplate and improving code reusability and safety. While the code might look complex, the performance gains and code simplification are significant.

The Complete Guide to Salary Negotiation: Conquer Your Inner Moral Quandary

2025-06-22
The Complete Guide to Salary Negotiation:  Conquer Your Inner Moral Quandary

Patrick McKenzie's popular essay on salary negotiation for engineers has helped millions secure higher salaries. This audio adaptation tackles the psychological barriers preventing professionals from negotiating, emphasizing that it's not immoral, but a crucial skill. Practical tips include never disclosing your desired salary first, actively listening and mirroring the hiring manager's language, thorough research, leveraging multiple preferences, and understanding the negotiation's timing and dynamics. The essay empowers readers to confidently negotiate and achieve optimal compensation.

Development salary negotiation

Pushing the Limits of Linux Pipes: From 3.5GiB/s to 62.5GiB/s

2025-06-22
Pushing the Limits of Linux Pipes: From 3.5GiB/s to 62.5GiB/s

This post explores the implementation of Unix pipes in Linux by iteratively optimizing a test program that writes and reads data through a pipe. Starting with a simple program achieving around 3.5GiB/s throughput, the author improves its performance twentyfold through several optimization stages. Key improvements include utilizing `vmsplice` and `splice` system calls to eliminate data copying, leveraging huge pages to reduce paging overhead, and employing busy-looping to minimize synchronization costs. The journey is detailed with code examples and performance analysis using Linux's `perf` tool.

Development Pipes

A 163-LOC Memory Allocator Implementation

2025-06-22

While exploring the mimalloc memory allocator, the author discovered a lack of pre-allocation support. This prompted the creation of a simple, 163-line-of-code allocator based on the Buddy system. The article details the allocation and deallocation processes within the Buddy system and touches upon memory fragmentation. The author highlights the surprising simplicity of the implementation, emphasizing the importance of understanding memory allocation principles for programmers.

Development Buddy system

GlassFlow ClickHouse Load Test: Real-Time Deduplication at Scale

2025-06-22
GlassFlow ClickHouse Load Test: Real-Time Deduplication at Scale

GlassFlow conducted a large-scale load test for real-time deduplication, achieving impressive results. On a MacBook Pro, GlassFlow processed over 9,000 records per second from Kafka with sub-0.12ms latency, peaking at 55,000 records per second. Even with 20 million records and 12 concurrent publishers, the system remained robust, with no crashes, message loss, or disordering. The test used synthetic data simulating a real-world use case, evaluating deduplication, throughput, and latency. The full test setup is open-source.

Development

Git Notes: The Underrated Git Power Tool

2025-06-22

Git notes are a powerful tool for attaching metadata to Git objects (commits, blobs, trees) without modifying the objects themselves. They can be used for tracking time, adding review information, and even building full distributed code review systems like `git-appraise`. However, Git Notes suffers from poor usability, and GitHub stopped displaying commit notes in 2014, limiting its adoption. Despite this, it still offers a path towards a complete project history independent of code forges.

Development Metadata

LibRedirect: Privacy-Focused Website Redirector

2025-06-22

LibRedirect is a web extension that redirects popular websites like YouTube, Instagram, Reddit, and TikTok to alternative, privacy-friendly frontends. It offers a plethora of alternatives, such as Invidious and Piped for YouTube, Libreddit and Teddit for Reddit, and many more, giving users a more private and secure browsing experience. Say goodbye to data tracking and hello to privacy!

Development alternative websites

Creative Coding: Reshaping CS Education in the Age of AI

2025-06-22
Creative Coding: Reshaping CS Education in the Age of AI

As AI transforms software development, traditional computer science education needs an overhaul. This article argues that coding alone is insufficient; students need systemic thinking, creative design skills, and intentional building capabilities. Creative coding emerges as a solution, using programming as a medium for self-expression and innovation, fostering intrinsic motivation and computational thinking. A Minecraft-based curriculum example demonstrates how game design and storytelling can effectively teach coding concepts, boosting student engagement and learning outcomes. The article concludes by emphasizing the importance of teacher professional development and advocating for increased support to integrate creative coding into classrooms.

Clippy Enters 12-Week Feature Freeze for Quality Improvement

2025-06-22
Clippy Enters 12-Week Feature Freeze for Quality Improvement

The Rust linter Clippy will undergo a 12-week feature freeze starting June 26th, 2025, focusing on improving the accuracy and reducing false positives of its over 750 existing lints. No new lints will be accepted during this period, but bug reports and PRs improving existing lints are welcome. The goal is to enhance code quality and provide a more reliable linting experience for Rust users.

Development

mbake: A Makefile Formatter and Linter After 50 Years!

2025-06-22
mbake: A Makefile Formatter and Linter After 50 Years!

After a 50-year wait (referencing the long history of Makefiles), mbake is finally here! This Makefile formatter and linter not only automatically fixes formatting issues such as indentation, spacing, and line breaks but also intelligently detects `.PHONY` targets and supports custom rules and plugin extensions. It offers a rich command-line interface for formatting, validation, and version management, seamlessly integrating into CI/CD workflows. Whether you're a beginner or an expert, mbake significantly improves Makefile writing efficiency and readability.

Development linter

Claude Code Now Supports Remote MCP Servers for Enhanced Developer Workflow

2025-06-22
Claude Code Now Supports Remote MCP Servers for Enhanced Developer Workflow

Claude Code now supports remote MCP servers, allowing developers to connect their favorite tools and data sources to personalize their coding experience without managing local servers. By accessing tools and resources exposed by MCP servers, Claude Code can pull context from third-party services like dev tools, project management systems, and knowledge bases, and take actions within those services. Integrations like Sentry for debugging and Linear for project management streamline workflows. Remote MCP servers offer low maintenance; simply add the vendor's URL. Claude Code's native OAuth support ensures secure connections without managing API keys or storing credentials.

Development MCP servers

Massive Cross-Compilation Toolchain Repository for Linux

2025-06-22

This website offers a vast collection of ready-to-use cross-compilation toolchains targeting Linux on numerous architectures. Built with GCC and Binutils, these toolchains come in variants using glibc, uClibc-ng, and musl C libraries, leveraging the Buildroot build system. Most toolchains are tested by building and booting a Linux kernel and userspace in Qemu. Two versions—stable (using older, proven components) and bleeding-edge (using the latest)—are provided for each architecture and C library combination.

Development toolchain

Sound as Pure Form: A Stack-Based Postfix Notation Language for Sound

2025-06-22
Sound as Pure Form: A Stack-Based Postfix Notation Language for Sound

SAPF is an interpreter for exploring sound as pure form. Its language is primarily functional, stack-based, and uses postfix notation similar to FORTH. It represents audio and control events using lazy, potentially infinite sequences, aiming to do for lazy sequences what APL does for arrays: provide very high-level functions with pervasive automatic mapping, scanning, and reduction operators. This allows short programs to achieve disproportionately large results. Because nearly all programmer-accessible data types are immutable, the language can easily run multiple threads without deadlock or corruption. Inspired by APL, Joy, Haskell, Piccola, Nyquist, and SuperCollider, it prioritizes concise expressiveness.

Publishing a Docker Container for Microsoft Edit to the GitHub Container Registry

2025-06-22
Publishing a Docker Container for Microsoft Edit to the GitHub Container Registry

The author details the process of creating and publishing a Docker image for Microsoft's new terminal text editor, Edit, to the GitHub Container Registry. Faced with a lack of official Apple Silicon builds, the author created a Docker container to run the aarch64-linux-gnu version on their Mac. The post walks through building a multi-stage Docker image to minimize size, using a GitHub Personal Access Token to push the image, and provides a simple command for anyone with an Apple Silicon Mac and Docker to run Edit.

Development

P-Hacking in Startups: Avoiding Statistical Traps

2025-06-21
P-Hacking in Startups: Avoiding Statistical Traps

The pressure to ship fast in startups often leads teams to report any result that looks like an improvement, resulting in p-hacking. This article dissects three common scenarios: multiple comparisons without correction, reframing metrics post-hoc, and running experiments until a hit is achieved. It emphasizes the importance of pre-registering hypotheses and metrics, avoiding post-hoc data dredging, using corrections for multiple comparisons, and applying appropriate thresholds for early peeking. The article advocates for celebrating definitive negative results, arguing that rigorous statistical practices accelerate learning by preventing the release of noise and building a true understanding of user behavior.

Development A/B testing

B Compiler in Crust: A Work in Progress

2025-06-21
B Compiler in Crust: A Work in Progress

A B programming language compiler, written in Rust with fasm as the backend, is now available! The project includes a testing utility, btest, which builds and runs tests from the ./tests/ directory, generating a matrix report across supported targets. btest allows specifying targets (-t) and individual test cases (-c), facilitating targeted testing. While still under development, the compiler successfully compiles and runs basic examples like hello_world.b.

Development B Language

to-userscript: Powerful CLI for Converting Browser Extensions to Standalone Userscripts

2025-06-21
to-userscript: Powerful CLI for Converting Browser Extensions to Standalone Userscripts

to-userscript is a command-line tool that transforms Chrome or Firefox extensions into standalone .user.js files runnable in any userscript manager. It handles various sources: Chrome Web Store, Firefox Add-ons, local directories, and archive files. It cleverly replaces common WebExtension APIs, embeds CSS, images, and other resources, and emulates background scripts and internationalization. Installation is straightforward via npm, pnpm, or bun.

Development userscript

The Death of the IDE? Rise of the AI Coding Agent

2025-06-21
The Death of the IDE? Rise of the AI Coding Agent

This article explores the rise of AI coding agents like Claude Code, Codex, and Amp, and how they're reshaping software development. The author argues that terminal-based "vibe coding" is replacing traditional IDEs, with engineers producing high-quality code at an astonishing rate. This shift brings increased productivity but also raises concerns about job displacement and performance evaluations. The article also looks ahead at AI's impact on broader knowledge work and society, predicting massive changes in the coming years.

Development

Serverless QUIC Proxy via NAT Hole Punching with AWS Lambda

2025-06-21
Serverless QUIC Proxy via NAT Hole Punching with AWS Lambda

This project implements a serverless QUIC proxy using AWS Lambda functions and NAT hole punching. Leveraging S3 for coordination and UDP traversal techniques, it creates encrypted proxy connections without needing dedicated servers – only on-demand Lambda functions. The system uses a three-phase approach: coordination (client discovers public IP via STUN, writes session info to S3), NAT hole punching (client and Lambda exchange UDP packets to create bidirectional holes), and QUIC tunnel establishment (client starts QUIC server, Lambda connects). The result is a browser connecting to the internet via a SOCKS5 proxy, with the Lambda function acting as an exit node forwarding traffic.

Development NAT hole punching

Interactive Video Textbook on Bijective Combinatorics: ABjC

2025-06-21

ABjC is a four-part video textbook on bijective combinatorics, each part corresponding to a course taught at IMSc. Presented as videos with an interactive website for easy navigation, ABjC allows users to pinpoint specific sections and timestamps. It covers enumerative, algebraic, and bijective combinatorics, featuring new results and novel presentations of classic theory. Suitable for undergraduates, graduates, and researchers, the textbook includes sections catering to different skill levels.

Development video textbook

Cosmoe: A BeOS UI Library Needs Stability and Compatibility Improvements

2025-06-21

Cosmoe, a BeOS UI library built on Wayland, needs further improvement in stability and compatibility despite significant progress in integrating BeOS class libraries with Wayland. Crashes and incorrect behavior remain, hampered by Wayland's complexities. Cosmoe currently implements about 95% of the BeOS API, but crucial features like "offscreen" BBitmaps for accelerated drawing and BFilePanel (Open/Save dialogs) are still missing. Some file-related classes are only partially implemented. Additionally, Wayland's security restrictions prevent certain window actions, like positioning and centering. Refer to the Cosmoe repository's TODO file for more details.

Development
1 2 54 55 56 58 60 61 62 214 215