Category: Development

Dropbox's Engineering Career Framework: A Deep Dive

2025-01-02

Dropbox has unveiled its Engineering Career Framework, a guide designed not as a promotion checklist, but as a tool to help engineers understand the responsibilities and impact at each level (e.g., Software Engineer IC1 to IC7). It defines core responsibilities and craft skills, emphasizing business impact as the primary metric. Each level outlines expected behaviors across Results, Direction, Talent, and Culture pillars. Engineers work with their managers to set quarterly goals, using the framework to guide their development and create lasting impact.

Development engineering framework

mitmproxy2swagger: Automagically Reverse-Engineer REST APIs

2025-01-02
mitmproxy2swagger: Automagically Reverse-Engineer REST APIs

mitmproxy2swagger is a powerful tool that automatically converts mitmproxy captured traffic into OpenAPI 3.0 specifications. This allows you to automatically reverse-engineer REST APIs simply by running your apps and capturing the traffic. It supports both mitmproxy flow files and HAR files exported from browser developer tools. To use it, capture traffic with mitmproxy, save it as a file, and then run mitmproxy2swagger, specifying the input file, output file, and API prefix. The first run generates an initial schema which requires manual editing to remove unwanted paths. A second run generates the complete OpenAPI specification based on the edited schema, optionally including example data.

Development

Zasper: A Supercharged IDE for Data Science

2025-01-02
Zasper: A Supercharged IDE for Data Science

Zasper is a new IDE built from the ground up for data science, boasting massive concurrency, minimal memory footprint, and exceptional speed. It's perfectly suited for REPL-style data applications, with Jupyter notebooks being one example. Currently, Zasper is fully supported on Mac with limited support on Linux. Benchmarks show it uses 75% less RAM and CPU than JupyterLab. Created by Prasun Anand, it aims to be a free, open-source solution that runs locally, maximizing the power of modern computers.

Development high performance

Autodesk Deletes Decade-Old Forum Posts: A Developer Revolt

2025-01-02

Autodesk's announcement to archive (effectively delete) forum content older than 10 years has sparked outrage within its developer community. Valuable code samples, solutions, and years of shared expertise are set to vanish, leaving developers reliant on this resource facing significant losses. While Autodesk cites improved search and user experience as reasons, developers decry the move as 'monumentally stupid,' accusing the company of destroying community knowledge and damaging long-term relationships. Many are migrating to alternative platforms like TheSwamp and GitHub.

Kotaemon: Open-Source RAG Tool for Chatting with Your Documents

2025-01-02
Kotaemon: Open-Source RAG Tool for Chatting with Your Documents

Kotaemon is an open-source Retrieval-Augmented Generation (RAG)-based tool that lets you chat with your own documents. It features a clean and user-friendly interface, supporting various Large Language Models (LLMs) such as OpenAI, Azure OpenAI, and local LLMs. Whether you're an end-user performing document QA or a developer building your own RAG pipeline, Kotaemon provides convenient tools and a customizable UI. It supports multiple file types and offers advanced features like multi-modal QA, complex reasoning, and configurable settings.

Development

Mercure: A Fast and Reliable Real-time Communication Solution

2025-01-02
Mercure: A Fast and Reliable Real-time Communication Solution

Mercure is an open, easy, fast, reliable, and battery-efficient solution for pushing data updates to web browsers and other HTTP clients. It's ideal for publishing asynchronous and real-time updates of resources served through web APIs, powering reactive web and mobile apps. The protocol and a production-ready Go implementation, along with libraries and a Docker image, are available on GitHub. A managed, highly scalable version is also offered at Mercure.rocks.

Blogs Rot, Wikis Wait: A Developer's Migration Journey

2025-01-02

A developer penned on his website that blogs are like outdated commodities, destined to decay; whereas wikis are like an endless abyss, waiting to be explored and written upon. He's migrating his site to a brand new wiki system, sharing his thoughts on blogs vs. wikis and his journey building a new site. He argues wikis better reflect the dynamic and community-driven nature of content, while blogs feel like a static storefront. He invites everyone to join his new wiki, collaboratively creating a vibrant and ever-evolving online space.

(j3s.sh)

AROS OS 2024: A Year of Significant Progress Towards 64-bit

2025-01-02
AROS OS 2024: A Year of Significant Progress Towards 64-bit

2024 was a banner year for the AROS operating system. The core Deadwood system saw major updates to both its 32-bit and 64-bit branches, including a 64-bit emulator for 32-bit compatibility. Major distributions like AROS One and Tiny AROS received updates, boasting improved software and game support. Hardware recommendations expanded, welcoming the A600GS. Software highlights included the updated Odyssey browser with a newer WebKit engine, a new Final Writer release, and ports of classic games such as Wipeout Rewrite and Doom 3. Overall, AROS made significant strides in 2024, setting the stage for a 64-bit future.

Development 64-bit

SvarDOS: DR-DOS Reborn as an Open Source OS

2025-01-02
SvarDOS: DR-DOS Reborn as an Open Source OS

SvarDOS, an open-source operating system based on DR-DOS, recently transitioned from being a FreeDOS distribution to having its own EDRDOS kernel. It can run on 8086 or 8088 PCs and boasts a network-capable package manager. While the default install is incredibly small, its robust repository contains over 400 packages, including network drivers, editors, and games. SvarDOS requires more manual configuration than FreeDOS, but its powerful features and online update mechanism make it a noteworthy retro OS.

Development open source OS

Glue Work Considered Harmful: A Survival Guide for Effective Engineers

2025-01-02

This article explores the concept of "glue work" in software engineering. While crucial for team efficiency (e.g., updating documentation, addressing technical debt), this unglamorous work often goes unrewarded, disadvantaging engineers who prioritize it. The author argues that companies don't reward glue work because they want engineers focused on feature delivery, not overall efficiency improvements. The efficient strategy is to apply glue work tactically to projects you're accountable for, ensuring their success, rather than spreading efforts thinly. This isn't cynical office politics; it's based on the reality of low efficiency in large companies and the prioritization of growth over short-term efficiency gains.

Rails 8: Surprisingly Great for Solo Projects

2025-01-01

After building and deploying a new Rails 8 application, it's clear: Rails is awesome, especially for small, single-developer projects. The new Getting Started guide is excellent, leading you from zero to a production-ready app with authentication, caching, rich text, CI, and a database – all without much hassle. Rails 8 simplifies database setup, making SQLite production-ready. Built-in CI config and free Github Actions minutes make continuous integration a breeze. A new, easy-to-use authentication generator and streamlined deployment further enhance the experience. Rails 8 makes development efficient and accessible, even for solo developers.

Development

ClearSpace: Your Digital Detox for Less Screen Time

2025-01-01
ClearSpace: Your Digital Detox for Less Screen Time

ClearSpace is an app designed to help users reduce their screen time. It combats phone addiction by offering features like app time limits, distraction blockers, focus management tools, and challenge-based habit formation. The app also includes screen time reports, accountability partners, and mindful breathing exercises to encourage healthier digital habits and improve digital wellbeing.

Unintuitive Optimization: Speeding Up Path Unions in Skia

2025-01-01
Unintuitive Optimization: Speeding Up Path Unions in Skia

The author encountered performance bottlenecks when performing path union operations on a large number of vector graphics paths using Skia. The initial naive approach of iteratively uniting paths was slow, and while Skia's path builder offered optimization, it wasn't fast enough. Deep diving into Skia's path operation internals revealed that the number of curves in each path significantly impacted performance. By dividing the path union into smaller intervals and recursively applying a divide-and-conquer strategy, the author achieved a significant speedup, ultimately surpassing Skia's default method. Surprisingly, increasing the number of union operations through this method resulted in faster processing.

Sandboxed Development: A Year in a VM

2025-01-01

To avoid the pitfalls of a cluttered development environment, the author switched to a virtual machine setup. Running Ubuntu 24.04 within VMware Fusion Pro on macOS, all development tools and extensions reside inside the VM, providing a secure and isolated workspace. While some conveniences like seamless clipboard sharing are lost, the overall experience is smooth, with minimal performance impact on the host machine. The author finds this approach offers long-term stability and security benefits, outweighing the minor inconveniences.

Meta's Glean: Open-Source Code Indexing at Scale

2025-01-01
Meta's Glean: Open-Source Code Indexing at Scale

Meta has open-sourced Glean, a powerful code indexing system designed for efficiency and scalability. Glean collects and processes information from source code, providing it to developer tools via a flexible query language called Angle. Its innovative incremental indexing tackles the challenges of massive codebases, enabling features like code navigation, search, and documentation generation. Glean's versatility supports diverse languages and custom data schemas, making it a valuable asset for developers.

Development code indexing

Software Design Is Knowledge Building: A Case Study

2025-01-01
Software Design Is Knowledge Building: A Case Study

A company outsourced its integration service to a SaaS provider, then decided to build an in-house replacement, SVC, due to cost concerns. A highly skilled engineer, X10, independently completed SVC's development. However, subsequent teams struggled to maintain and modify the system, experiencing extremely low efficiency. The article analyzes the reason: the output of software development is not code, but the engineers' understanding of the system and its business logic—a 'theory'. After X10 left, the team lacked this 'theory', leading to difficulties in system maintenance, making it like a 'haunted house'. The author argues that software design should focus on knowledge building to facilitate understanding and maintenance by subsequent teams, avoiding the creation of 'legacy systems'.

From Next.js to Pure React: ComfyDeploy's Speed Boost

2025-01-01

The ComfyDeploy team migrated their dashboard from Next.js to pure React, reducing build time from 3 minutes to 18 seconds and hot reload time to under 200ms. This was driven by issues with Next.js's slow build times, difficult API testing, and high API costs from Vercel as their project grew. Switching to React with TanStack Router and Rspack drastically improved development efficiency and forced them to optimize their API design and code structure. While they lost some Next.js features, they found the trade-offs worthwhile, resulting in faster builds, a more enjoyable developer experience, and a more optimized architecture.

Development

Common Lisp Time Handling: The LOCAL-TIME Solution

2025-01-01

This paper delves into the complexities of time handling in Common Lisp and presents the author's solution: the LOCAL-TIME library. It traces the evolution of human time representation, from imprecise, context-dependent notations to precise scientific ones, highlighting the chaos introduced by political factors like daylight saving time. LOCAL-TIME uses an efficient fixnum-based representation, integrates world timezone data, and handles various time calculations and format conversions, thereby avoiding errors stemming from imprecise time representation—like the infamous Y2K problem.

Development Time Handling

Ruby 3.4: Faster Connections, Cleaner Backtraces, and More Concise Code

2025-01-01

Ruby 3.4 is here! Chris Sinjakli highlights three key improvements: a default block parameter name `it` for cleaner code; implementation of RFC8305 (Happy Eyeballs Version 2) for significantly improved TCP socket connection handling, especially in dual-stack (IPv4 and IPv6) networks; and clearer exception backtraces for easier debugging. These enhancements boost developer productivity and underscore the Ruby team's commitment to developer experience.

Development

API Parrot: Reverse Engineer Any Website's HTTP API with Ease

2025-01-01

API Parrot is a powerful tool designed to reverse engineer the HTTP APIs of any website. It features a built-in HTTP proxy for easy network traffic recording, analyzes data to identify relevant endpoints and understand relationships between them. Users can customize functions, specifying input/output parameters, excluding irrelevant data, and export the customized functions as JavaScript code for seamless integration into their applications. API Parrot streamlines automation of business processes, system integration, and data scraping, even from websites without public APIs.

The Magic of Metalinguistic Programming: Simplifying Code with Interpreters

2025-01-01
The Magic of Metalinguistic Programming: Simplifying Code with Interpreters

This article explores the power of metalinguistic programming, specifically using interpreters to simplify complex code. The author uses Lisp expression simplification as an example, showing how building an 80-line Scheme interpreter and 30 rules can accomplish a task that would otherwise require thousands of lines of code. The key is shifting the programming paradigm to data-driven rule matching, avoiding significant code duplication. While not magic, the author argues this metalinguistic abstraction is a powerful tool worthy of further exploration.

Mastodon Web App Requires JavaScript

2025-01-01

Eric Hellman's tilde.zone post reveals a long-term project update: using the Mastodon web application requires enabling JavaScript, or alternatively, using a native Mastodon app. This suggests work on improving the web client or user experience for Mastodon.

Development Web App

Notion: Your All-in-One Workspace

2025-01-01
Notion: Your All-in-One Workspace

Notion is an all-in-one workspace that combines notes, task management, wikis, and databases into a single platform. It offers flexible and powerful tools to help you organize information, manage projects, collaborate with teams, and build custom workflows. Whether for personal use or team collaboration, Notion adapts to your needs, boosting your productivity.

Keeper (YC) Hiring Senior Fullstack Engineer

2025-01-01
Keeper (YC) Hiring Senior Fullstack Engineer

Keeper, a Y Combinator-backed company building software for bookkeepers, is hiring a Senior Fullstack Engineer. The role requires 3+ years of experience building web applications with React and Node.js, proficiency in TypeScript, REST APIs, and databases. Keeper offers competitive salary and equity, and is on a mission to empower bookkeepers with efficient tools.

Development Fullstack Engineer

ShredOS: Secure Disk Eraser for All Processors

2025-01-01
ShredOS: Secure Disk Eraser for All Processors

ShredOS is a lightweight, bootable Linux distribution built with Buildroot, designed for secure disk erasure. It features nwipe, a powerful tool offering various wiping methods including DoD 5220.22-M compliance, and supports both 32-bit and 64-bit processors. Bootable from USB or CD, ShredOS requires no installation and provides a user-friendly interface. It also includes utilities like smartmontools and hdparm for disk diagnostics and maintenance.

The Clockwise/Spiral Rule: Mastering Complex C Declarations

2025-01-01

This article introduces the 'Clockwise/Spiral Rule,' a clever technique for parsing complex C declarations. By spiraling clockwise through the declaration, replacing elements like arrays, pointers, and functions with their English equivalents, even the most intricate declarations become understandable. The author demonstrates the technique with several examples, from simple pointer arrays to nested function pointers, and shows how to handle `const` and `volatile` keywords. This method offers a practical and intuitive way to decipher confusing C code.

Development code parsing

Twice Promoted to Staff Engineer: Lessons Learned

2025-01-01

The author shares their experience of being promoted to Staff Software Engineer twice in two years. The key to promotion wasn't technical prowess, but delivering value to the company by successfully completing high-priority projects aligned with company goals. The author emphasizes the importance of understanding company priorities, working on impactful projects, and building strong relationships with management and team members. A supportive manager is crucial. Key takeaways include focusing on high-impact projects the company prioritizes, not overemphasizing mentoring, and having a manager willing and able to champion the promotion process.

Lucy: A Concise DSL for Finite State Machines

2025-01-01

Lucy is a concise language for describing Finite State Machines (FSMs). It allows complex events, guards, actions, and destination states to be expressed in a single line. Nesting machines enables hierarchical FSMs. Lucy compiles to XState, a leading JavaScript FSM library, supporting all its core features. Written in C and compiled to WebAssembly, Lucy boasts a significant speed advantage (15x faster than its previous JavaScript-based compiler), making it ideal for JavaScript projects.

Development Finite State Machine

Ghostly CVE: A Terminal Emulator Security Bug in Ghostty

2025-01-01

A new terminal emulator, Ghostty, recently released version 1.0. Security researcher David Leadbeater discovered a vulnerability (CVE-2024-56803) similar to a 2003 CVE, allowing attackers to execute arbitrary code by exploiting the terminal's title querying functionality. The vulnerability leverages the in-band signaling nature of terminals and Zsh's behavior in vi mode. Attackers can use crafted escape sequences to execute malicious commands without the user's knowledge, even over SSH. Ghostty 1.0.1 fixes this, users are advised to upgrade or apply mitigations provided in the advisory.

(dgl.cx)
Development terminal security

Static Search Trees: 40x Faster Than Binary Search

2025-01-01

This blog post details the implementation and optimization of a static search tree (S+ tree) for high-throughput searching of sorted data, achieving a 40x speedup over binary search. Starting with code from Algorithmica, the author meticulously optimizes the search algorithm through vectorization, SIMD instructions, and batching. Deep dives into assembly code reveal opportunities for further performance gains. Various tree layouts and memory strategies are explored, ultimately resulting in a highly efficient solution that reduces query time from 1150ns to 24ns on a 1GB dataset.

1 2 183 184 185 187 189 190 191 201 202