Category: Development

Five Persuasion Tactics for Engineering Managers

2025-05-13
Five Persuasion Tactics for Engineering Managers

This article explores five persuasion techniques commonly used by engineering managers, illustrated with real-life examples. First is the 'Nemawashi' method, involving preemptive communication with stakeholders to build support and minimize conflict. Next is 'Decoy Pricing,' strategically presenting options to guide the desired choice. Then, 'Reverse Psychology' uses counterintuitive suggestions to trigger a desired response. Following is 'Let Me Decide That For You (LMDTFY),' where a decision is made with the option of veto, fostering autonomy. Finally, 'Engineered Serendipity' involves creating coincidences to facilitate communication. These tactics can significantly improve an engineering manager's effectiveness in project approvals, resource acquisition, and team collaboration.

Development Persuasion Techniques

Contributing to Firefox: Source Code, Builds, and Support

2025-05-13
Contributing to Firefox: Source Code, Builds, and Support

Want to contribute to Firefox development? Mozilla provides comprehensive documentation on the source code directory structure (https://firefox-source-docs.mozilla.org/contributing/directory_structure.html) and a quick reference for contributions (https://firefox-source-docs.mozilla.org/contributing/contribution_quickref.html), guiding you through building Firefox and creating patches. Need help? Join the Matrix `Introduction` channel (https://chat.mozilla.org/#/room/#introduction:mozilla.org) for support. You can also download nightly builds for testing (https://archive.mozilla.org/pub/firefox/nightly/latest-mozilla-central/ or https://www.mozilla.org/firefox/channel/desktop/#nightly), but be aware that these may contain bugs.

Development Contribution

arXivLabs: Community Collaboration on New arXiv Features

2025-05-13
arXivLabs: Community Collaboration on New arXiv Features

arXivLabs is a framework enabling collaborators to develop and share new arXiv features directly on the website. Participants must adhere to arXiv's values of openness, community, excellence, and user data privacy. Got an idea to enhance the arXiv community? Learn more about arXivLabs.

Development

Shader Minifier: The Secret Weapon Behind Tiny, Stunning Demoscene Animations

2025-05-13
Shader Minifier: The Secret Weapon Behind Tiny, Stunning Demoscene Animations

Shader Minifier is a tool that minifies GLSL code, enabling demoscene artists to create complex computer animations in incredibly small file sizes. This blog post details its evolution, from simple space and comment removal to advanced optimizations like static analysis and function inlining. The author recounts how Shader Minifier shrunk a 47KB shader to 5.2KB after compression, dramatically improving development efficiency. The core principle involves leveraging compression algorithms by cleverly reusing variable names and optimizing functions to reduce code size and boost compression rates. While already successful, the author explores further improvements to tackle the challenges of even larger 64KB animations.

Development code compression

A Policy of Transience: A Programmer's Philosophy of Computer Use

2025-05-13

This article details the unique computer usage habits of a programmer, centered around a "policy of transience." This philosophy dictates that all data should be either deliberately permanent and organized, or strictly temporary, avoiding accidental permanence. Examples include disabling persistent shell history, regularly clearing the GUI desktop, and frequently closing the web browser. The author explains the benefits, such as increased efficiency, better organization, and reduced data clutter. Related practices like corporate records management and automated OS setup are discussed, along with exceptions to the policy, such as email and browser history, which are kept permanently due to their unpredictable usefulness.

Development programming habits

Diving Deep into the BEAM: Elixir's Foundation

2025-05-12
Diving Deep into the BEAM: Elixir's Foundation

This is the first chapter in the "Elixir, 7 Steps to Start Your Journey" series, delving into the foundation of Elixir's power and reliability: the Erlang Virtual Machine (BEAM). The post explores Erlang's history, design goals, and its crucial role in Elixir. Created in the mid-1980s, Erlang, initially for telecommunications, is now a general-purpose language known for distributed, fault-tolerant, massively concurrent, and soft real-time systems. The BEAM manages Erlang code execution, concurrent processes, and achieves fault tolerance through asynchronous message passing. Elixir, running on the BEAM, inherits these strengths while adding cleaner syntax and a robust library. A simple code example showcases Erlang and Elixir interaction. The next chapter promises a deep dive into Erlang processes and concurrency.

Development

Build Your Own Local Voice Assistant: The Edge is Back

2025-05-12
Build Your Own Local Voice Assistant: The Edge is Back

Tired of relying on giant cloud LLMs? This 5-part tutorial teaches you to build your own local voice assistant that understands natural language, executes your app functions, and respects your privacy. Learn to fine-tune LLaMA 3.1 with LoRA, create a function-calling dataset, run inference locally, and integrate voice I/O. The author stresses the importance of MLOps principles for local AI, providing a practical guide to building a robust, maintainable local voice assistant.

Development local AI

arXivLabs: Experimental Projects with Community Collaborators

2025-05-12
arXivLabs: Experimental Projects with Community Collaborators

arXivLabs is a framework that enables collaborators to develop and share new arXiv features directly on the arXiv website. Individuals and organizations working with arXivLabs embrace our values of openness, community, excellence, and user data privacy. arXiv is committed to these values and only partners with those who share them. Have an idea for a project that will benefit the arXiv community? Learn more about arXivLabs.

Development

Build a Rock-Solid SOC 2 Foundation: One-Stop Shop

2025-05-12
Build a Rock-Solid SOC 2 Foundation: One-Stop Shop

Tired of struggling with SOC 2 compliance? This tool provides clear, actionable SOC 2 checklists to understand requirements and easily track progress. Instantly generate foundational, SOC 2-compliant policies to kickstart your documentation. Centralize evidence uploads and link files directly to controls, simplifying audit preparation. Collaborate effectively with team task assignment, status tracking, and evidence request management—all within one platform. Future updates include automated evidence collection, continuous control monitoring, and vendor integrations.

Development

Mergeable: A Superior Inbox for GitHub Pull Requests

2025-05-12
Mergeable: A Superior Inbox for GitHub Pull Requests

Mergeable is a browser application designed to improve the management of GitHub Pull Requests. It lets users organize PRs into sections using flexible search queries, stores all data locally in the browser, supports keyboard shortcuts for quick navigation, and connects to multiple GitHub instances (including GitHub Enterprise). Crucially, it highlights PRs awaiting your action, all without needing any GitHub app installations. Try the public instance at https://app.usemergeable.dev or self-host using the documentation at https://www.usemergeable.dev.

Development

5 Steps to N-body Simulation: A Python Tutorial

2025-05-12

This tutorial series teaches beginners how to write fast and clean N-body gravity simulation code in Python, inspired by "CFD Python: 12 steps to Navier-Stokes". Each step provides detailed explanations and complete code, encouraging readers to rewrite the code for better understanding. Even with basic Python and Calculus knowledge, beginners can follow along. Upon completion, you'll be able to create your own N-body simulation and explore related projects.

Development N-body simulation

arXivLabs: Community Collaboration on New Features

2025-05-12
arXivLabs: Community Collaboration on New Features

arXivLabs is a framework enabling collaborators to develop and share new arXiv features directly on the website. Participants, individuals and organizations alike, embrace arXiv's values of openness, community, excellence, and user data privacy. arXiv is committed to these values and only partners with those who share them. Got an idea for a project that will benefit the arXiv community? Learn more about arXivLabs.

Development

Efficient Memory Representation with GADTs in OCaml

2025-05-12
Efficient Memory Representation with GADTs in OCaml

This article explores using Generalized Algebraic Data Types (GADTs) in OCaml to optimize memory representation. The author first explains the limitations of OCaml's polymorphism, particularly the space inefficiency of List.iter when handling different data types due to uniform memory representation. Attempts to create a `Compact_array` type using ordinary variants and objects fail due to type inference and memory allocation issues. Finally, using GADTs, the author successfully creates a flexible and efficient memory representation for arrays of different data types, showcasing GADTs' usefulness beyond compiler writing—particularly in high-performance applications demanding fine-grained memory control.

Development

Nix: Demonstrably Secure Software Supply Chains

2025-05-12
Nix:  Demonstrably Secure Software Supply Chains

Meeting stringent software supply chain security regulations often involves costly air-gapped environments and extensive vetting. This article introduces Nix, a powerful package manager, as a solution. Nix enables verifiable supply chain integrity without sacrificing development speed. It tracks the exact origin and integrity of software, producing auditable offline source packages. A bootable NixOS image example demonstrates how Nix extracts verifiable Fixed-Output Derivations (FODs) from the dependency tree, allowing for offline rebuilds to ensure complete traceability and integrity. This transforms compliance from a roadblock into a manageable post-development verification step, significantly reducing costs and enhancing developer efficiency.

Development Verifiability

Conquering HN Overload: AI-Powered Personalized Tech News

2025-05-12
Conquering HN Overload: AI-Powered Personalized Tech News

The author, a long-time Hacker News user, struggled with information overload. To combat this, he built two tools: Tobie, a Telegram bot that delivers personalized HN posts based on keywords and vote thresholds; and HaNe, a Chrome extension that provides archived links for paywalled articles, quick access to HN threads, and AI-summarized comments. These tools significantly improved his reading efficiency, reduced screen time, and alleviated information anxiety.

Development

Embeddings: The Future of Technical Writing?

2025-05-12

This article explores how embedding technology could revolutionize technical writing. Unlike text generation models, embedding technology compares the semantic similarity of texts by converting them into high-dimensional vectors (embeddings). The article explains how embeddings are generated, their cost, and the differences between different models, using the Voyage-3 model as an example to illustrate its advantages in handling large texts. The author uses the analogy of map coordinates to explain how embeddings are represented in high-dimensional space and, using Word2vec as an example, demonstrates the ability of embedding technology to capture semantic relationships. Finally, the article introduces the application of embedding technology in recommending related pages on documentation websites and looks ahead to its enormous potential in technical writing.

Development embedding technology

StarGuard: Trust Scores for GitHub Repositories

2025-05-12
StarGuard: Trust Scores for GitHub Repositories

StarGuard is a CLI tool designed to detect fake star campaigns, dependency hijacking, license red flags, and other indicators of open-source risk on GitHub. By analyzing stars, dependencies, licenses, maintainers, and code, it generates a trust score, enabling CTOs, security teams, and VCs to quickly assess open-source risks. StarGuard outputs JSON, Markdown, and plain text reports, along with star history plots and shields.io badges.

Development

Ruby Namespaces: A Critical Look at a Proposed Implementation

2025-05-12

This blog post questions a proposed implementation of namespaces in Ruby. The author argues that the proposal aims to solve problems like library name clashes, globally shared modules, and multiple gem versions, but these issues are not frequently encountered in practice. The complexity introduced by the proposal, such as deduplication, might outweigh its benefits. The author prefers a lighter-weight approach, such as restricting constant access and providing a BasicObject-like mechanism to improve code maintainability and modularity.

Development Namespaces Modularity

LLVM's Code of Conduct Committee Fails: A Story of Open Source Contribution

2025-05-12

An open-source contributor submitted a bug report to the LLVM project and faced unfair treatment. Despite providing extensive evidence, the Code of Conduct Committee ruled against the contributor while overlooking clear violations by other contributors. This raises questions about the enforcement of Codes of Conduct in open-source communities and concerns about fairness and accountability. The incident even spilled over into the Mesa project, further highlighting the need for improved conflict resolution mechanisms in open-source communities.

Development code of conduct

CoMaps: A Community Fork of Organic Maps Takes Off

2025-05-12
CoMaps: A Community Fork of Organic Maps Takes Off

The community-driven fork of Organic Maps, CoMaps, is progressing rapidly. Built on principles of transparency, community decision-making, non-profit status, open-source, and privacy, the project is focusing on establishing its foundation and technology. The first release is underway. A community vote for the project's final name will conclude May 20th on Codeberg. CoMaps welcomes contributions in development, governance, outreach, and donations. Negotiations with Organic Maps shareholders have stalled; Viktor seeks to retain full control, leaving the future of Organic Maps uncertain.

kdlfmt: A Robust KDL Code Formatter

2025-05-12
kdlfmt: A Robust KDL Code Formatter

kdlfmt is a command-line tool built on Rust for formatting KDL (Key-Data-List) documents. Installation is flexible, supporting Cargo, Homebrew, npm, and pre-compiled binaries. It offers `format` for formatting, `check` for validation, and `completions` for shell autocompletion. `.kdlfmtignore` files allow for exclusion, and options let you specify KDL version and log level. Whether piping input or processing files, kdlfmt efficiently formats KDL code for improved readability and consistency.

Development

Mastering Dart Compilation: A Deep Dive into `dart compile`

2025-05-12
Mastering Dart Compilation: A Deep Dive into `dart compile`

This guide provides a comprehensive overview of the Dart `dart compile` command, enabling compilation of Dart programs to various target platforms. It details the use of subcommands like `exe` (self-contained executables), `aot-snapshot` (AOT modules), `jit-snapshot` (JIT modules), `kernel` (portable modules), `js` (JavaScript), and `wasm` (WebAssembly), explaining their functionalities and characteristics. The guide covers cross-compilation, code signing, and optimization techniques for production web compilation, offering a complete understanding of Dart compilation.

Development

Armbian's Major Update: OpenMediaVault Integration and More

2025-05-12
Armbian's Major Update: OpenMediaVault Integration and More

This week's Armbian update brings significant improvements across the board. The highlight is the integration of OpenMediaVault, allowing users to easily turn supported single-board computers into network-attached storage (NAS) devices. Other enhancements include removing a redundant wireless hotspot prompt, upgrading bootloaders on Orange Pi 5 Max and PocketBeagle2, and optimizing performance and stability on the Rockchip64 platform. Armbian also continues infrastructure refinement, cleaning up unused code, and preparing for future testing initiatives.

PyPI's Warehouse: 81% Faster Test Suite with Simple Optimizations

2025-05-12
PyPI's Warehouse: 81% Faster Test Suite with Simple Optimizations

Trail of Bits dramatically improved the performance of PyPI's Warehouse test suite, reducing execution time from 163 seconds to 30 seconds while increasing the test count from 3,900 to over 4,700. This 81% improvement was achieved through several key optimizations: parallelizing test execution with pytest-xdist, leveraging Python 3.12's sys.monitoring for efficient coverage instrumentation, optimizing test discovery, and eliminating unnecessary imports. These techniques are readily applicable to many Python projects struggling with slow test suites, offering significant performance gains at minimal cost.

Development Testing Optimization

Reverse Engineering Windows Security Center from a Seoul Airbnb

2025-05-12

A developer, vacationing in a Seoul Airbnb with only a MacBook, overcame numerous hurdles to reverse engineer the Windows Security Center and create defendnot, a tool to disable Windows Defender without relying on other antivirus software. The post details the challenges faced, including cross-platform debugging, high latency, and a deep dive into Windows tokens and security mechanisms. The developer successfully completed the project but lamented the incredibly frustrating experience.

Programming Language Rankings: Python, Rust, and JavaScript Lead the Pack

2025-05-12

The May programming language rankings are in! Python maintains its top spot thanks to its ease of use and widespread adoption, while Rust continues its rise due to its performance and security features. JavaScript remains a dominant force in web development. This month's notable news includes a C++ workshop on safe and efficient embedded development, the stable release of Kotlin Compose Multiplatform, and the release of Python 3.14.0 beta 1. Rankings vary slightly across different indices (PyPL, TIOBE, GitHub Pushes), but Python, JavaScript, and C-family languages consistently rank highly, reflecting their influence across various domains.

Development rankings

Hacking Your Clock for Focus: A Simple Bash Script for Improved Concentration

2025-05-12
Hacking Your Clock for Focus: A Simple Bash Script for Improved Concentration

Frustrated with constant distractions, the author created a clever hack using the GNOME Panel Date Format extension and a simple bash script on Ubuntu. This transforms the computer's clock into a persistent focus reminder. The script allows setting a current focus task, which is displayed alongside the time. This method requires zero willpower, leveraging the natural tendency to glance at the clock frequently for subtle, yet effective, focus enhancement without interrupting workflow.

Building a Garbage Collector from Scratch: A 20-Year Journey

2025-05-12

A programmer with 20 years of experience, after studying the Immix garbage collection algorithm, decided to implement a new garbage collector for Guile Scheme. His initial goal was to create a generic memory management interface, but he ended up developing a novel garbage collector called Nofl, which leverages a side table from a mark-sweep collector for bump-pointer allocation. The author also shares his experience submitting his research to an academic conference and his reflections on academic research and industry.

Development

toyDB: A Distributed SQL Database in Rust for Educational Purposes

2025-05-11
toyDB: A Distributed SQL Database in Rust for Educational Purposes

toyDB is a distributed SQL database built from scratch in Rust as an educational project. It aims to illustrate the architecture and concepts behind distributed SQL databases in a simple and understandable way, supporting most common SQL features including joins, aggregates, and transactions. While performance and scalability aren't primary goals, a benchmark tool is included to evaluate performance under various workloads. toyDB uses Raft for consensus to manage a transactional key/value store, with a SQL query engine built on top.

Development Distributed Database

Solving the Eikonal Equation with Fast Sweeping in JAX

2025-05-11

This blog post explores solving the Eikonal equation, crucial in interface evolution and image processing, using the fast sweeping method implemented in JAX. It begins by explaining level set methods and the Eikonal equation itself. The core of the post details the fast sweeping algorithm, covering grid setup, iterative updates, and the Godunov upwind scheme. NumPy and JAX code implementations are provided, with benchmarks demonstrating JAX's significant speed advantage. The author also discusses attempts at parallelizing the algorithm and the challenges encountered.

← Previous 1 3 4 5 6 7 8 9 120 121