Skip to main content

2024-07-15

How to Know When It's Time to Go

  • The author retired in 2021 after nearly 40 years as a programmer, not due to a lack of ability but a lack of desire to continue.
  • They emphasize the importance of being honest about one's abilities and interests, noting that sustaining a long career in a rapidly changing industry is challenging.
  • The author continues to write code for generative art, finding it more complex and enjoyable than their previous work, highlighting the personal fulfillment in pursuing new interests.

Reactions

  • A retired Apple engineer reflects on the shift from engineering-driven to marketing-driven decision-making within the company, prompting their departure.
  • Despite leaving the corporate world, the engineer continues to code for generative art, finding it more complex and inventive than previous work.
  • The post highlights a broader sentiment among programmers who struggle with modern work environments and rapid technological changes, with some finding solace in personal projects or open-source contributions.

Fusion – A hobby OS implemented in Nim

  • Fusion OS is a hobby operating system for x86-64 architecture, developed using the Nim programming language.
  • Current features include UEFI Bootloader, Physical and Virtual Memory Managers, User Mode, Preemptive Multitasking, System Calls, ELF Loader, and Timer Interrupts.
  • Planned features aim to add Demand Paging, Inter-Process Communication, Disk I/O, File System, Keyboard/Mouse Input, Shell GUI, and Networking.

Reactions

  • Fusion is a hobby operating system (OS) implemented in the Nim programming language, discussed on GitHub by the author khaledh.
  • Nim was chosen for its Python-like syntax, absence of a default garbage collector, excellent C interoperability, and other beneficial features.
  • The discussion highlights Nim's comprehensive standard library, the need for better Integrated Development Environment (IDE) support, and true sum types, along with insights on OS development challenges such as task switching.

Google's Gemini AI caught scanning Google Drive PDF files without permission

  • Google's Gemini AI has been found scanning Google Drive PDF files without user consent, raising significant privacy concerns.
  • Kevin Bankston, a Senior Advisor on AI Governance, reported that Gemini summarized his tax return without permission, even though the feature was supposedly disabled.
  • This incident highlights ongoing privacy issues in the tech industry, particularly for users of Google Workspace Labs, and underscores the scrutiny over AI's impact on user privacy.

Reactions

  • Google's Gemini AI was discovered scanning Google Drive PDF files without user consent, igniting discussions on AI opt-in policies.
  • The debate centers around whether AI features should require explicit user activation, with concerns about data misuse and privacy violations.
  • This incident underscores the necessity for transparent AI usage policies and enhanced user control over personal data.

Firefox 128 enables "privacy-preserving" ad measurements by default

Reactions

  • Firefox 128 introduces "privacy-preserving" ad measurements by default, allowing ad tracking without disclosing specific user actions.
  • Critics argue this feature compromises user privacy and benefits advertisers, raising concerns about Mozilla's financial ties to advertising.
  • Users can disable the feature in settings, and alternatives like LibreWolf or adjustments via about:config are recommended for enhanced privacy.

Rust for Filesystems

  • At the 2024 Linux Storage, Filesystem, Memory Management, and BPF Summit, Wedson Almeida Filho and Kent Overstreet discussed using Rust for Linux filesystems, highlighting its potential benefits.
  • Almeida's RFC patch set from December 2023 introduced Rust abstractions for filesystems, aiming to leverage Rust's type system to catch errors at compile time and automate resource cleanup, enhancing productivity and reducing memory-related vulnerabilities.
  • Concerns were raised about the disconnect between C and Rust APIs, with suggestions to align function names for familiarity, and the challenges of maintaining synchronization between evolving C code and Rust bindings were acknowledged.

Reactions

  • The discussion on integrating Rust into the Linux kernel highlights both challenges and benefits, particularly in filesystem development.
  • Tools like bindgen and cbindgen are essential for bridging the gap between Rust and C, though some developers find interoperability complex.
  • The debate emphasizes Rust's potential to enhance safety and correctness but also notes concerns about maintaining parallel APIs and the learning curve for developers new to Rust.

Just Be Rich (2021)

  • Silicon Valley investors and CEOs, once seen as innovators, are now being criticized as monopolists and are defending themselves against these claims.
  • Paul Graham's essay, "How People Get Rich Now," argues that modern wealth is more merit-based compared to the past but overlooks the growing wealth gap and its implications.
  • Despite the ease of starting a business today, the benefits are limited to a minority, and wealth inequality remains a significant issue, not just a radical left concept.

Reactions

  • The wealth tax debate in Norway examines its benefits, such as ensuring the wealthy pay taxes, and its drawbacks, like burdening entrepreneurs and startups.
  • Critics argue that wealth taxes discourage investment and innovation, potentially leading to wealthy individuals leaving the country.
  • The discussion also covers broader issues like wealth inequality, the role of luck in wealth accumulation, and the effectiveness of government spending, highlighting the complexity of balancing fair taxation, investment encouragement, and social stability.

Tabloid: A clickbait headline programming language (2021)

  • Tabloid is a Turing-complete programming language designed to write programs in the style of clickbait news headlines.
  • It features unique syntax such as "YOU WON'T WANT TO MISS" for print output and "EXPERTS CLAIM...TO BE" for variable assignment, with no built-in looping constructs, relying on recursion instead.
  • The language has an interpreter written in JavaScript and a mostly compatible implementation in Racket, supporting numbers, strings, and booleans.

Reactions

  • Tabloid is a clickbait headline programming language, ideal for benchmarking large language model (LLM) code generation, such as GPT-4.
  • GPT-4 struggled with basic tasks in Tabloid, often hallucinating keywords like "BREAKING NEWS" due to syntax errors and lack of specific training.
  • Claude, another language model, successfully wrote code in Tabloid, suggesting that more syntax training could improve performance in such niche languages.

The fascinating and complicated sex lives of white-throated sparrows

Reactions

  • Scientists use color bands to identify white-throated sparrows, aiding in behavior studies without the need for recapturing.
  • The sparrows exhibit behaviors similar to human pairings, with white-striped birds being more aggressive and tan-striped birds more nurturing.
  • The term "gender" in this study refers to traits from genetic sex and behavior, though this usage is uncommon in biology.

I'm not a fan of strlcpy(3)

  • strlcpy(3), an OpenBSD function, is often considered safer than strcpy(3) and strncpy(3), but it is inefficient and not safe if the source string isn't null-terminated.
  • Ulrich Drepper rejected strlcpy for glibc due to its inefficiency, as it processes the entire source string even when only a portion is needed.
  • Alternatives like memccpy(3), strdup(3), and a combination of strlen(3) and memcpy(3) are recommended for better efficiency and portability.

Reactions

  • The author criticizes strlcpy(3) for its potential to cause buffer-overflow bugs due to variable-size formats without length specification.
  • They advocate for counted strings over null-terminated ones, citing examples like Rust's compact string crates and historical evidence from the Cedar group at PARC.
  • The author suggests that while strlcpy(3) aims to prevent crashes and memory issues, it is not the most efficient method, and C's string handling is outdated compared to alternatives like Pascal strings.

California Grid Breezes Through Heatwave with Batteries

  • California's grid managed a heat wave without blackouts or emergencies, attributed to renewables and battery storage.
  • Key strategies included grid upgrades and increased clean energy, particularly solar and battery storage, now equivalent to five large nuclear plants.
  • In 2024, California had 50 more days of 100% renewable energy compared to 2023, showcasing significant improvement in grid performance.

Reactions

  • California's grid effectively handled a heatwave using battery storage, showcasing the potential of large-scale battery systems to store excess solar energy for evening use.
  • This advancement could decrease dependence on peaking plants, which are less reliable and more costly, positioning battery storage as a game-changer for renewable energy.
  • The discussion also covered the challenges and benefits of various energy storage methods, regulatory impacts, and the potential use of second-hand electric vehicle (EV) batteries in grid storage.

The rise of the camera launched a fight to protect Gilded Age privacy

  • The rise of the Kodak camera in the late 19th and early 20th centuries made photography accessible to the public, leading to widespread privacy invasions.
  • Incidents like Elizabeth Peck's unauthorized use in an ad and Abigail Roberson's lawsuit against Franklin Mills Flour highlighted the misuse of personal images for profit.
  • Public outcry over such privacy violations led New York to pass a "right to privacy" law in 1903, setting a precedent for other states to follow.

Reactions

  • The introduction of cameras during the Gilded Age raised significant privacy concerns, as they allowed for high-fidelity capture and preservation of moments.
  • Technological advancements, from early photography to modern smartphones, have consistently challenged privacy norms, prompting discussions on the need for better privacy laws and mindful tech use.
  • The ongoing debate centers on balancing the benefits of technology with the protection of privacy rights in an increasingly connected world.

Leaked payroll data show how much Valve pays staff and how few people it employs

  • Valve employs a surprisingly small workforce of just 336 staffers as of 2021, according to leaked payroll data from Wolfire’s antitrust lawsuit.
  • The data reveals Valve's employee distribution across "Admin," "Games," "Steam," and "Hardware" categories, with the "Games" payroll peaking at $221 million in 2017.
  • Valve's small staff size and high profitability per employee, surpassing Google, Amazon, and Microsoft, explain its limited product list and reliance on external help for hardware and software.

Reactions

  • Leaked payroll data shows Valve employs just 79 people to manage Steam, a major gaming storefront.
  • Valve's small team is seen as efficient, focusing on stability over constant feature changes, unlike larger companies that often expand unnecessarily.
  • This lean approach highlights Valve's emphasis on agility and efficiency, contributing to its success.

Creature that washed up on New Zealand beach may be rarest whale

  • A rare spade-toothed whale, the world's rarest whale species, washed up on a New Zealand beach, offering scientists a unique research opportunity.
  • This five-meter-long beaked whale is only the seventh specimen ever found, with no live sightings recorded, making it a significant discovery for marine biology.
  • The whale has been transported to cold storage for examination, involving local Māori iwi, and genetic testing to confirm its identification could take months.

Reactions

  • A rare spade-toothed whale was found on a New Zealand beach, offering a unique chance for DNA analysis.
  • This species is among the least studied large mammals, sparking increased scientific interest.

ZeroMQ: High-Performance Concurrency Framework

  • ZeroMQ is an open-source, universal messaging library that functions as a concurrency framework, providing sockets for atomic messages across various transports like in-process, inter-process, TCP, and multicast.
  • It supports multiple language APIs and operating systems, offering patterns such as pub-sub, push-pull, and client-server, making it fast and scalable.
  • ZeroMQ is backed by a large and active open-source community and is used by major companies like Microsoft, Samsung, and Facebook.

Reactions

  • ZeroMQ is a high-performance concurrency framework, but its active development status is currently unclear.
  • Users have noted various issues and differences with ZeroMQ and its successors, nanomsg and nng, including threading models, error propagation, and specific bugs.
  • ZeroMQ's licensing has changed to MPL 2.0, making it easier to use legally, and there are discussions about alternatives like NATS and zenoh.io.

A.I. Needs Copper. It Just Helped to Find Millions of Tons of It in Zambia.

  • KoBold Metals has discovered a massive copper deposit in Chililabombwe, Zambia, potentially the largest in over a decade, with an annual production estimate of 300,000 tons.
  • The discovery, driven by KoBold's A.I. technology, has significant geopolitical implications, aiding the U.S. in its rivalry with China over essential minerals for clean-energy technologies.
  • Backed by investors like Bill Gates and Sam Altman, KoBold plans to invest $2.3 billion in the mine, with production expected to start in the early 2030s, while the U.S. government supports a $2.3 billion railway for copper exports.

Reactions

  • AI technology has been used to discover millions of tons of copper in Zambia, highlighting its potential in resource exploration.
  • The increased demand for copper is driven by vehicle electrification and grid demand, not directly by AI.
  • The discovery is significant due to the rarity of large new copper deposits, providing a substantial economic boost for Zambia.