Category: Development

Zig 0.14.0 Release Incoming: Improved x86 Backend and Incremental Compilation

2025-01-17

After a period of quiet development, the Zig Software Foundation is gearing up for the release of Zig 0.14.0. This release focuses on improvements to the x86 backend (potentially becoming the default for debug builds) and incremental compilation (disabled by default, but enabled via a compiler flag). Other improvements include labeled switch continue and upgraded support for nearly all target platforms. The team encourages users to upgrade to the latest master branch and will focus on ensuring a smooth upgrade during the release month. While a 1.0 release is still some time away, the team is committed to delivering stable, incremental releases.

Development

Fern, a YC Startup, is Hiring an AI Engineer – Up to $192k!

2025-01-17
Fern, a YC Startup, is Hiring an AI Engineer – Up to $192k!

Fern, a Y Combinator-backed startup, is hiring an AI Engineer with a salary of up to $192,000 plus an $18,000 living proximity bonus. Fern simplifies API usage by providing high-quality SDKs and documentation for businesses. The role requires 4+ years of backend or full-stack development experience, proficiency in TypeScript and at least one other language, and experience developing and deploying AI products. This is a fast-growing SaaS company offering end-to-end project ownership and the chance to build zero-to-one AI features.

Development

Programming in Lua (First Edition) Online

2025-01-17

The online version of the first edition of "Programming in Lua," a comprehensive guide to Lua programming by its chief architect, Roberto Ierusalimschy, is now available. This detailed resource covers all aspects of Lua, from language fundamentals to data structures, standard libraries, and the C API. While written for Lua 5.0, it remains largely relevant for later versions. All errata have been incorporated into this online edition, which is freely available for personal use.

Development Tutorial

PostgreSQL Anonymizer: Declarative Data Masking for Postgres

2025-01-17

PostgreSQL Anonymizer is a powerful database extension enabling declarative definition of data masking rules directly within the database schema. It supports multiple masking methods including static, dynamic masking, and anonymous dumps, offering various masking functions like randomization, faking, partial scrambling, and custom functions. Designed for anonymization-by-design, it protects sensitive data like PII and commercially sensitive information during development. The extension includes detection functions to suggest columns needing anonymization. Quick start via Docker, complete tutorials, and success stories from organizations like the French Public Finances Directorate General (DGFiP) and bioMérieux are provided.

McDonald's App Security Flaw: The Perils of Trusting Clients

2025-01-17
McDonald's App Security Flaw: The Perils of Trusting Clients

A blog post exposes a critical security vulnerability in the McDonald's app. The vulnerability stems from the app's excessive trust in clients, allowing hackers to bypass security checks and obtain free Big Macs and other deals. The post details how attackers utilize root access, custom recovery systems, and other methods to circumvent the app's security mechanisms, highlighting that simply checking client trustworthiness is ineffective. The author urges developers to abandon blind trust in clients and implement stronger security measures to prevent similar incidents.

CIELab Color Space and Perceptual Brightness Issues: The Red Brightness Discrepancy

2025-01-17
CIELab Color Space and Perceptual Brightness Issues: The Red Brightness Discrepancy

This article explores the limitations of the CIELab color space and its modern variants (CIECAM02 and Oklab) in predicting perceived brightness. While designed for perceptual uniformity, they don't perfectly predict human color perception, especially with highly saturated colors like red. This deviation, known as the Helmholtz-Kohlrausch effect, makes reds appear darker in CIELab than they actually are. The author proposes a new method based on 'Predicted Equivalent Achromatic Lightness' (L_EAL) to address this, highlighting its superior accuracy in applications like image desaturation.

Devin: The Autonomous AI Engineer That Wasn't

2025-01-17
Devin: The Autonomous AI Engineer That Wasn't

Answer.AI conducted a month-long evaluation of Devin, a hyped AI tool promising fully autonomous software engineering capabilities. Initial tests showed promise, with Devin successfully handling simple tasks like migrating data from Notion to Google Sheets. However, as task complexity increased, Devin's shortcomings became apparent. It struggled with creating new projects, conducting research, and modifying existing code, often getting stuck in technical dead-ends or producing overly complex solutions. Out of 20 tasks, only 3 were successful, 14 failed, and 3 were inconclusive. The team concluded that Devin's autonomous nature proved to be a liability, ultimately hindering its effectiveness. Currently, developer-driven workflows supplemented by AI assistance offer a more reliable approach.

Cascading OKRs: A Better Approach

2025-01-17
Cascading OKRs: A Better Approach

Traditional cascading OKRs, breaking down company objectives into departmental and team goals, often fails due to its additive nature. This ignores interdependencies between departments. The author proposes an 'enabling' approach, focusing on how teams support the company's strategic objectives rather than simply decomposing them. Even if a team's OKRs don't directly relate to the company's, their supporting role is crucial. The article stresses that OKRs should serve the overall company strategy, not just quarterly goals. Teams should consider their contribution to the long-term strategic vision.

Streaming SSR with React Relay and Vite: A Deep Dive

2025-01-17
Streaming SSR with React Relay and Vite: A Deep Dive

Aqora's engineering team shares their journey implementing streaming server-side rendering (SSR) with React Relay and Vite. The article details challenges encountered integrating React Router and Relay, including handling Suspense with SSR, managing the Relay store's data flow, and generating meta tags. Solutions involved `createStaticHandler`, `renderToPipeableStream`, `preloadQuery`, and `react-helmet-async`, resulting in efficient SSR that improves SEO and performance. Key code snippets and architectural decisions are provided, offering valuable insights for developers.

Development

2025 Predictions: Linux Kernel, Open Source, and the Uncertain Future

2025-01-17

LWN.net's 2025 predictions paint a picture of exciting advancements and looming challenges in the Linux kernel and open-source landscape. The article foresees transformative changes with the extensible scheduling class (sched-ext), increased adoption of Rust in the kernel, the discovery of new backdoor attempts, risks associated with single-maintainer projects, the potential fallout from AI-generated code, growing support for free generative AI and maintainers, persistent cloud product failures and data breaches, a surge in open hardware, a resurgence of mobile device distributions, and the impact of geopolitical factors. The year ahead promises both significant opportunities and considerable hurdles for the open-source community.

Development

Nue: A Standards-First Web Framework Reimagining Frontend Development

2025-01-16
Nue: A Standards-First Web Framework Reimagining Frontend Development

Nue is a novel web framework prioritizing web standards to tackle two major frontend development challenges: engineering complexity and the design-engineering disconnect. It eschews heavy build processes and abstraction layers, advocating for semantic HTML, modern CSS, and clean JavaScript for faster development and elegant design. Nue supports multiple design systems, mimicking the styles of masters like Mies van der Rohe and Dieter Rams. A single command generates websites in various styles, dramatically increasing efficiency. Future plans include single-page application functionality, further enhancing the frontend experience.

Development Design Systems

Interactive Yjs Tutorial Launched by Jamsocket

2025-01-16
Interactive Yjs Tutorial Launched by Jamsocket

Jamsocket has released Learn Yjs, an interactive tutorial series teaching developers how to build real-time collaborative applications using the Yjs CRDT library. Starting with Yjs basics, it covers techniques for handling state in distributed applications, explaining CRDTs and their benefits. The tutorial features explorable demos and code exercises, powered by Y-Sweet, their open-source Yjs server, for a real-time collaborative experience.

MuJoCo Playground: Streamlining Robot Learning with an Open-Source Framework

2025-01-16
MuJoCo Playground: Streamlining Robot Learning with an Open-Source Framework

MuJoCo Playground is a fully open-source framework for robot learning built with MJX, designed to streamline simulation, training, and sim-to-real transfer. With a simple installation (pip install playground), researchers can train policies in minutes on a single GPU. It supports diverse robotic platforms, including quadrupeds, humanoids, dexterous hands, and robotic arms, and enables zero-shot sim-to-real transfer from both state and pixel inputs. This is achieved through an integrated stack comprising a physics engine, batch renderer, and training environments. Developed through a community effort, MuJoCo Playground aims to be a valuable tool for researchers and developers.

Development robot learning

Conquering 100 Project Euler Problems in 100 Languages

2025-01-16
Conquering 100 Project Euler Problems in 100 Languages

A programmer spent over a year solving the first 100 Project Euler problems using 100 different programming languages! From common languages like Python and Java to obscure esoteric languages, the sheer dedication and programming prowess is impressive. This project showcases deep understanding of various programming paradigms and offers a valuable learning experience for programmers of all levels.

Development challenge

Porting the GNAT Ada Compiler to macOS/aarch64: A Triumphant Journey

2025-01-16

Following a successful GDC compiler port to his new MacBook Pro, the author tackled the remaining Ada and Go compilers in the GCC suite. With Gccgo not yet mature on macOS, the focus shifted to GNAT Ada. Lacking pre-built packages, a virtual machine and the Alire tool were used to obtain an x86_64 GNAT compiler. A two-stage compilation process yielded a native macOS/aarch64 GNAT compiler, ultimately integrated with GDC into a single GCC suite. The resulting tarball is now available for others to use, eliminating the need for future manual ports.

Development Ada compiler

Google Cuts Code Migration Time in Half with AI

2025-01-16
Google Cuts Code Migration Time in Half with AI

Google reports using its AI tools to halve the time required for code migrations. This involved projects like migrating 32-bit IDs to 64-bit IDs in the Google Ads codebase, upgrading JUnit testing libraries, and replacing the Joda time library. While human review is still necessary, the AI significantly sped up the process, reducing what would have taken hundreds of engineering years to just months. Google emphasizes the AI should be used in conjunction with traditional methods for optimal efficiency and cost management.

Development Code Migration

Oh Shit, Git!?! A Survival Guide

2025-01-16

This blog post humorously recounts the author's struggles with Git and offers practical solutions to common problems. It covers scenarios like undoing commits, amending commit messages, accidentally committing to the wrong branch, and recovering files, providing clear commands and steps. The author invites readers to share their own Git horror stories for collective learning.

Development Code Management

GitHub Now Offers Free arm64 Hosted Runners!

2025-01-16
GitHub Now Offers Free arm64 Hosted Runners!

GitHub has announced the free availability of Linux arm64 hosted runners in public repositories (currently in public preview). These runners, powered by Cobalt 100 processors, offer 4 vCPUs and up to a 40% performance boost compared to the previous generation of Arm-based VMs. Arm-native developers can now build, test, and deploy entirely within the arm64 architecture without virtualization. Simply add the `ubuntu-24.04-arm` or `ubuntu-22.04-arm` labels to your public repository workflow to get started.

Development hosted runners

Shopify's 5-Year React Native Journey: Successes, Lessons, and the Future

2025-01-16
Shopify's 5-Year React Native Journey: Successes, Lessons, and the Future

Shopify shares its five-year experience with React Native. Initially driven by efficiency, talent portability, and faster value delivery, Shopify migrated all its mobile apps to React Native. The transition was successful, resulting in high-performing apps (<500ms screen loads, >99.9% crash-free sessions). They learned about React Native's speed, hot reloading, and how TypeScript improves talent portability. Challenges included debugging complexities, updates requiring effort, and reliance on third-party libraries. Shopify stresses the importance of native development and improved team skills via shared infrastructure and training. They will continue collaborating with Meta to improve React Native.

Development Mobile Development

DBOS Transact: Ultra-Lightweight Durable Execution in TypeScript

2025-01-16
DBOS Transact: Ultra-Lightweight Durable Execution in TypeScript

DBOS Transact is a lightweight TypeScript library for durable execution, leveraging Postgres for persistence. This means your program can automatically resume from where it left off, even if interrupted or crashed. It solves common problems like orchestrating long-running workflows, running reliable background jobs, processing events exactly once, and building fault-tolerant distributed task queues. DBOS Transact is easy to use: install it and annotate your program with decorators. It requires no other dependencies and integrates seamlessly into any TypeScript application, like Next.js, without external dependencies beyond Postgres.

Development durable execution

Physically Based Rendering: A Milestone in Ray Tracing

2025-01-16

Physically Based Rendering: From Theory to Implementation is a seminal work in computer graphics, meticulously detailing the construction of modern photorealistic rendering systems through rigorous mathematical theory and executable code. Its impact extends beyond film and game production, influencing product design and architecture. The authors were even awarded an Academy Award for its contribution to filmmaking. The third and fourth editions are now freely available online, offering invaluable learning resources for developers.

Development ray tracing rendering

Artie (YC) is Hiring a Founding Engineer for Distributed Systems

2025-01-16
Artie (YC) is Hiring a Founding Engineer for Distributed Systems

Artie, a Y Combinator-backed startup, is seeking a Founding Engineer focused on distributed systems. Artie offers a real-time database replication solution leveraging Kafka and CDC, processing over 10 billion rows monthly. The ideal candidate possesses strong computer science fundamentals, thrives in a multi-faceted role, and has experience with asynchronous systems and technologies like gRPC, Kafka, and Kubernetes (though not strictly required). Go proficiency is preferred but not mandatory. This challenging role offers the opportunity to shape the next generation data platform, aiming for zero data latency while maintaining ease of use and scalability.

Development data engineering

Test-Driven Development with LLMs: Fun and Profit

2025-01-16

This blog post explores a novel approach to Test-Driven Development (TDD) leveraging Large Language Models (LLMs). The author demonstrates how LLMs significantly enhance TDD efficiency by generating unit tests and code implementations based on specifications, iteratively refining the code and reducing debugging overhead. An automated workflow integrating IDE, terminal, and chat interface is also presented to further boost productivity. While acknowledging the inherent unreliability of LLMs, the author emphasizes the importance of human review and supplementary test cases to mitigate risks. The approach is best suited for well-structured projects, prioritizing low cognitive load to promote maintainable code.

Replit CEO: We Don't Need Pro Coders Anymore, Thanks to AI

2025-01-16
Replit CEO: We Don't Need Pro Coders Anymore, Thanks to AI

Replit CEO Amjad Masad revealed that their new AI-powered tool, 'Agent,' built using Anthropic's Claude 3.5 Sonnet, generates functional software applications from simple natural language prompts. This has led to a fivefold revenue increase in the last six months. Masad claims this advancement makes professional coders obsolete, empowering non-coders to build software with AI. He even coined 'Amjad's Law,' stating the return on learning basic coding doubles every six months. While this lowers the barrier to software development, it also raises questions about the long-term competitive advantage of AI models.

Development

Open Source: awesome-launch – Boost Your Side Project Visibility

2025-01-16
Open Source: awesome-launch – Boost Your Side Project Visibility

Struggling to get eyes on your side project? KingMenes' awesome-launch is an open-source directory of free and friendly communities designed to help you promote it. It features a curated list of platforms including Reddit, Twitter, LinkedIn, Hacker News, and Product Hunt, categorized for easy navigation. From Indie Hackers and Dev.to to beta testing platforms and crowdfunding sites, awesome-launch provides a comprehensive resource for side project promotion.

Nepenthes: A Web Crawler Tarpit

2025-01-16

Nepenthes is a tool designed to trap web crawlers, particularly those scraping data for LLMs. It generates an endless sequence of pages, each with dozens of links leading back into the tarpit. Pages are randomly generated deterministically, appearing as unchanging static files. Intentional delays prevent crawlers from bogging down your server and waste their time. Optional Markov babble can be added, giving crawlers data to hopefully accelerate model collapse. Warning: This consumes significant CPU, especially with the Markov module enabled. Use with caution.

Development anti-crawler

Controversy Erupts at FOSDEM: Billionaire Jack Dorsey's Keynote Sparks Outrage

2025-01-16

Jack Dorsey, former Twitter CEO, is slated to give a keynote at FOSDEM, a leading free software conference. This has sparked significant backlash within the FOSS community. Critics point to Dorsey's role in Twitter's decline and his involvement with Block, arguing he doesn't deserve such a prominent platform. The author calls for a boycott and is organizing a sit-in to protest Dorsey's presence and advocate for redirecting funds towards supporting the FOSS community.

Development

F#'s Untapped Goldmine: Typed Stack Traces (TST)

2025-01-16

This article explores the little-known Typed Stack Traces (TST) technique in F#, which uses the type system to track errors, solving the problems of error parsing and code maintenance in large monolithic applications. The author argues that TST, combined with Domain-Driven Design (DDD) and a new methodology called "Constraint-Driven Development (CDD)", can revolutionize software architecture and development processes, allowing developers to return to monolithic architectures and waterfall project management, simplifying the work of DevOps and SRE. TST leverages F#'s union types and pattern matching capabilities to create clear error type trees, improving code readability and maintainability. The article uses an interview exercise as an example to detail how to use TST, DDD, and CDD to build a simple REST API.

Development
1 2 183 184 185 187 189 190 191 214 215