News Nug |
---|
Gokapi: Lightweight selfhosted Firefox Send alternative with AWS S3 support Published: 2024-10-06 | Origin: Hacker News Gokapi is a lightweight, self-hosted file sharing server that serves as an alternative to the discontinued Firefox Send. It allows files to be shared privately, with uploads restricted to the admin, ensuring control over who can access the shared files. Files expire after a set number of downloads or days, freeing up disk space. It supports AWS S3 and Backblaze B2 for storage and can be easily customized with basic HTML/CSS knowledge. End-to-end encryption is available, and an API |
Bill Atkinson, developer of MacPaint, on the art of developing software Published: 2024-10-06 | Origin: /r/programming In a 2004 interview at the Computer History Museum, Grady Booch spoke with early Apple developers Bill Atkinson and Andy Hertzfeld about software development, focusing on the creation of the original Apple Mac and MacPaint. Atkinson emphasized that software development is an art form that requires attention to beauty and clarity. He believes that making code readable and straightforward helps prevent bugs, contrasting his approach with others who valued complexity. He dedicated time to organizing and simplifying code, using intermediate variables to clarify its purpose |
We need a real GNU/Linux (not Android) smartphone ecosystem Published: 2024-10-06 | Origin: Hacker News Failed to fetch content - HTTP Status - 403 |
So thieves broke into your storage unit again Published: 2024-10-06 | Origin: Hacker News The content discusses the challenges faced by classic computer collectors, particularly regarding storage solutions for their hardware. Collectors often accumulate more items than they can store at home, leading many to rent storage units, sometimes in "cold" climate-controlled facilities for sensitive electronics, alongside conventional "hot" units for other items. The article highlights concerns about security in these units, sharing a personal anecdote about a prior theft at a facility with inadequate security measures. The author emphasizes the importance of better locks and security systems, |
Arthur Whitney's one liner sudoku solver (2011) Published: 2024-10-06 | Origin: Hacker News Sure! Please provide the content you'd like me to summarize. |
WordPress Plugin Mirror Downloader (Proof of Concept) Published: 2024-10-05 | Origin: Hacker News The author is developing a WordPress Plugin Mirror System as a proof of concept (POC) that began on October 2, 2024. This system aims to efficiently download, cache, and manage WordPress plugins, particularly as a fallback during WordPress.org downtime. It utilizes Cloudflare's edge computing and R2 S3 object storage for high-performance management. The project can be set up at low costs (starting around US$5.35/month) and is free for open-source projects |
JinjaStatic: Static Website Generator using Jinja2 and ~100 lines of Python Published: 2024-10-05 | Origin: /r/programming Jinja Static is a lightweight static website generator that uses the Jinja2 templating engine, designed to simplify the creation of static websites. It addresses the complexities and cumbersome processes associated with traditional Flask-based website deployment, such as setting up a backend and managing Docker containers. The tool allows for minimal repository footprint and simpler workflows, generating production-ready files before committing. It consists of only 50 lines of Python code and can be modified and extended quickly. Users can install Jinja Static and initialize projects easily |
CoRncrete: A corn starch based building material (2017) Published: 2024-10-05 | Origin: Hacker News The article discusses the development of a novel construction material called CoRncrete, made from corn starch, sand, and water. This material takes advantage of starch's renewability and biodegradability, making it an appealing alternative for industrial applications, including bioplastics. CoRncrete is created by mixing the ingredients, which forms a self-compacting mixture when wet. After being poured into a mold, it is heated in a microwave or oven, triggering a gelatinization process that solidifies the mixture, |
Local Variables as Accidental Breadcrumbs for Faster Debugging Published: 2024-10-05 | Origin: /r/programming The author reflects on debugging practices while working on Bugsink, particularly emphasizing the importance of local variables in understanding exceptions and troubleshooting code. They argue that seeing local variable values in stack traces significantly aids debugging, which is a key feature of Bugsink. The narrative suggests that errors often occur not where they seem, but a few lines later, typically involving functions passing data that leads to exceptions. They illustrate this with an example involving the math.sqrt function, which raises exceptions for negative inputs. The overall message advocates |
Low-Level Development on Retail Android Hardware - Reconnaissance and Prototyping a Bootloader Published: 2024-10-05 | Origin: /r/programming In October 2024, Tim recounts his journey of porting mainline Linux to his old Samsung Galaxy Core Plus phone, an obscure device from 2013. He initially pursued this project for experimental purposes, facing challenges such as a lack of direct feedback from the device and lengthy flash-and-test cycles due to the absence of fastboot on Samsung devices. Despite the Linux kernel having basic support for the Broadcom BCM21664 SoC used in the phone, getting it to run proved to be |
Speeding up the Rust compiler without changing its code Published: 2024-10-05 | Origin: /r/programming The author discusses their contributions to the Rust compiler (rustc) as part of the #wg-compiler-performance group, aimed at enhancing the compiler's speed. They focus not only on improving the rustc source code but also on optimizing the compilation process itself. The post outlines various changes made over several months, with detailed tracking issues and performance results linked throughout. The author expresses gratitude to fellow developers for their support. They introduce profile-guided optimization (PGO) as a key method for improving program |
Rust needs an extended standard library Published: 2024-10-05 | Origin: /r/programming Failed to fetch content - HTTP Status - 403 |
Ziggy Data Language Published: 2024-10-05 | Origin: /r/programming Ziggy introduces a unique notation for key-value pairs, differentiating between application-controlled keys that require a schema and user-defined keys. It simplifies representing tagged unions through Ziggy structs, allowing easier identification of union cases. Tagged literals enable expressions like @date("2024-01-01") and @keys("crtl+c"). Its features include optional outer curly braces, multi-line strings, trailing commas, comments, and underscores in numeric literals. Ziggy schemas facilitate the definition of clear, valid |
A Compiler Bug Published: 2024-10-05 | Origin: /r/programming Approximately ten years ago, the author identified a bug in a vendor's compiler related to reading an asynchronous hardware timer. The timer, connected internally to a chip, presented a challenge because it wasn't synchronized with the MCU clock. This situation introduced a race condition, where reading the timer at the moment it increments could lead to a mix of old and new bits. The hardware vendor suggested reading the timer repeatedly until it returned the same value twice, indicating a stable reading. However, this method had a downside: |
What P vs. NP is actually about Published: 2024-10-05 | Origin: /r/programming Vasek Rozhon discusses a recent Polylog video about the P vs NP problem that aimed to simplify the topic while omitting complex technical details. The video's unique framing asks, “If you can efficiently compute a function, can you efficiently compute its inverse?” This perspective is mathematically equivalent to the traditional question concerning verification and problem-solving efficiency. Rozhon believes this framing is clearer and highlights the foundational aspects of the P vs NP problem. He promises to provide a deeper explanation of the concepts in his |
The Data Visualisation Catalogue: find the right method for your data Published: 2024-10-05 | Origin: Hacker News The content presents a list of charts categorized by their data visualization functions to help users select the appropriate chart based on their analysis or communication needs. The categories include Comparisons, Proportions, Relationships, Hierarchy, Concepts, Location, Part-to-a-whole, Distribution, How things work, Processes & methods, Movement or flow, Patterns, Range, Data over time, Analysing text, as well as tools for reference. It serves as a guide for effectively visualizing data. |
The Remarkable Life of Ibelin Published: 2024-10-05 | Origin: Hacker News In the summer of 1989, Norwegian couple Robert and Trude Steen welcome their first child, a son named Mats. Initially, they are filled with joy as Robert captures Mats' early moments on camera, documenting his growth with pride. However, as Mats reaches two years old, Robert and Trude notice worrying signs in his physical development. Despite their attempts to discuss their concerns with doctors, it takes two years of struggle before they receive a definitive diagnosis: Mats has Duchenne muscular dystrophy, |
Jazz – Apps with Distributed State Published: 2024-10-05 | Origin: Hacker News Jazz is an open-source toolkit that simplifies app development by introducing a new abstraction called "Collaborative Values," which combines distributed state management with built-in secure permissions, replacing traditional APIs, databases, and message queues. This allows developers to create complex applications much faster, exemplified by the ability to build a chat app in just 174 lines of code. Utilizing CRDTs and public-key cryptography, Jazz provides various features such as data-syncing driven by the user interface, spatial presence, and flexible |
Deployment strategies that are worth to know Published: 2024-10-05 | Origin: /r/programming The term "deployment strategies" refers to methods of launching applications, focusing on the preferred approach for deploying a specific application. Four main deployment strategies are highlighted: basic, blue-green, canary, and rolling, all of which have been personally tested by the author. The basic deployment, also known as "big bang" deployment, is the simplest method, involving taking the application offline, updating it, and then bringing it back online with the new version. This approach often occurs during off-hours to reduce |
Fuzzing 101 Published: 2024-10-05 | Origin: Hacker News The content is about a step-by-step fuzzing tutorial initiated by GitHub Security Lab, aimed at teaching users how to perform fuzz testing effectively. Fuzz testing is an automated technique that inputs random or altered values into software to identify exceptions or crashes. The course offers 10 real targets with accompanying exercises for users to solve. It focuses on three primary fuzzers: AFL, libFuzzer, and HonggFuzz, which utilize a coverage-guided evolutionary approach to enhance crash detection. The tutorial |