Minifeed is a curated blog reader and blog search engine. We collect humans-written blogs to make them discoverable and searchable. Sign up to subscribe to blogs, follow people, save favorites, or start your own blog.
Custom Markers with Leaflet
Raymond Camden | 9 Oct 2024 | original ↗

As I continue to dig into Leaflet, I was recently asked about custom markers based on data, so for example, some locations for a store may use one icon while others use another. I did some digging, and while it turns out Leaflet has deep support for customizing markers, it does take a little bit of work. Here's what I found.First off, this is the...

Dookie Demastered
Waxy.org | 9 Oct 2024 | original ↗

Green Day collaborated with BRAIN to demake their 1994 album in 15 obscure formats, including Game Boy, Teddy Ruxpin, wax cylinder, and player piano roll #

otterwiki

otterwiki It's been a while since I've seen a new-ish Wiki implementation, and this one by Ralph Thesen is really nice. It's written in Python (Flask + SQLAlchemy + mistune for Markdown + GitPython) and keeps all of the actual wiki content as Markdown files in a local Git repository. The installation instructions are a little in-depth as they...

Use data that looks like data
Register Spill | 9 Oct 2024 | original ↗

Maybe the #1 best programming tip of all time?

Average number of divisors
John D. Cook | 9 Oct 2024 | original ↗

Let d(n) be the number of divisors of an integer n. For example, d(12) = 6 because 12 is divisible by 1, 2, 3, 4, 6, and 12. The function d varies erratically as the following plot shows. But if you take the running average of d f(n) = (d(1) + d(2) + d(3) + […] The post Average number of divisors first appeared on John D. Cook.

iPhone Mirroring Creates Local App Stubs on your Mac
Tao of Mac | 9 Oct 2024 | original ↗

My initial thought when reading this was “this is just stupid”. Then I thought about the added complexity involved over just mirroring the display, and I thought it was probably a great idea UX-wise (on the lines of Continuity), but, in the end, I still think it’s a profoundly stupid implementation, for the following reasons: Screen mirroring...

DDIA: Chp 7. Transactions (Part 2): Serializability
Metadata | 9 Oct 2024 | original ↗

We are continuing from the first part of our Chapter 7 review. Serializable isolation ensures that the final result of concurrent transactions is equivalent to if they had been run one at a time, without any concurrency. This eliminates any concurrency anomalies, since it ensures the transactions would behave as they would in a sequential...

Accumulated Test Vectors

Accumulated test vectors make it possible to run large sets of random known-answer tests without checking in large assets.

Conquering the Digital FOMO

Back in ancient Greece, a well-known philosopher named Heraclitus said something that still rings true today:"The only constant in life is change."Numerous software engineers find this statement deeply relatable.Imagine you're a software engineer. You've just gotten comfortable with a particular set

Practices of Reliable Software Design
Two-Wrongs | 9 Oct 2024 | original ↗

Table of Contents I was nerd-sniped. Out of the blue, a friend asked me, If you would build an in-memory cache, how would you do it? It should have good performance and be able to hold many entries....

openai/openai-realtime-console

openai/openai-realtime-console I got this OpenAI demo repository working today - it's an extremely easy way to get started playing around with the new Realtime voice API they announced at DevDay last week: cd /tmp git clone https://github.com/openai/openai-realtime-console cd openai-realtime-console npm i npm start That starts a localhost:3000...

Common PHP errors: solutions to frequently encountered issues
Prahlad Yeri | 9 Oct 2024 | original ↗

PHP is a powerful scripting language widely used for web development, but like any language, it’s easy to run into errors that can be frustrating to debug. While some errors are simple and easy to fix, others may be a little more complex. This article covers some of the most common PHP errors and offers solutions to help you resolve them quickly....

Security testing your APIs - Unrestricted Resource Consumption

In this blog post series, I am going to explore the vulnerabilities in the OWASP API Security Top 10. For each entry, I’ll show you how to perform experiments on APIs to test for the vulnerability, and I’ll discuss my observations.

OOP is not that bad, actually

OOP is certainly not my favorite paradigm, but I think mainstream statically-typed OOP does a few things right that are very important for programming with many people, over long periods of time. In this post I want to explain what I think is the most important one of these things that the mainstream statically-typed OOP languages do well. I will...

When Having a Computer Was Weird
Posts on ./jm | 9 Oct 2024 | original ↗

I just finished up the first weekend of my vintage computer exhibit for Portland Design Month entitled When Having a Computer Was Weird: A showcase of early personal computers. I had two fun groups of visitors and I plan to run another date on October 18, plus others as time permits and interest demands.

The writing equivalent of a duet

At Homebrew Writing Club yesterday, someone asked “What is the writing equivalent of a duet?” I explore this concept with reference to collaborative writing, then extend the idea further of applying musical metaphors to writing. This led to thinking about the literary equivalent of playlists, remixing, and more. My thoughts are in the voice note...

A Georgist's Guerilla Gardening Guide
taylor.town | 9 Oct 2024 | original ↗

Every vacant plot could be a home, park, market, garden, farm...

from links, adventure

html from links, adventure James' Coffee Blog mascot from links, adventure: № 1 october 9th, 2024 by James' Coffee Blog. 1. Designing for Users with Anxiety by the United Kingdom Government 2. Garfield: September 18th, 2024 by Jim Davis 3. A quote on words by Ursula K. Le Guin 4. Contronym on Wikipedia 5. Color Hunt A colour palette directory

Notes on performance

When I am designing technology, I like to think about how fast I can make the experience. This involves making conscious engineering decisions at the beginning of a project to lay the foundation for building a fast application (i.e. choosing the right data structures). Then, as I develop, I ask questions like “is this as fast as it should be,...

Keep the main thing the `main()` thing
Tyler Mandry | 9 Oct 2024 | original ↗

Framing Rust’s design goals Rust has been kicking around the idea of design goals, under various names, for some time. Design goals are useful because they give everyone making product decisions a common language and set of priorities to appeal to. If done well, they would accumulate the design wisdom of Rust into a concise package and assist RFC...

If we had $1,000,000…

If we had $1,000,000… Jacob Kaplan-Moss gave my favorite talk at DjangoCon this year, imagining what the Django Software Foundation could do if it quadrupled its annual income to $1 million and laying out a realistic path for getting there. Jacob suggests leaning more into large donors than increasing our small donor base: It’s far easier for me...

Setting Up Mastodon Author Tags

Mastodon 4.3 released today with a bunch of features but the one most people, including me, are excited about is author tags - this isn't the name of them but they also don't seem to have a proper name as far as I can tell. Anyway, you need to do two things to get the "More from X" section you can see in the screenshot above. The first is to add...

The Philosophy of the Open Source Pledge
Vlad's Website | 8 Oct 2024 | original ↗

Today, we launched the Open Source Pledge. Virtually all companies use Open Source software, making the Open Source ecosystem crucial to virtually all of the technology we use. That Open Source software is created and supported by maintainers. But the companies that use Open Source software almost never pay the maintainers anything. This means...

The Philosophy of the Open Source Pledge
Vlad's Website | 8 Oct 2024 | original ↗

Today, we launched the Open Source Pledge. Virtually all companies use Open Source software, making the Open Source ecosystem crucial to virtually all of the technology we use. That Open Source software is created and supported by maintainers. But the companies that use Open Source software almost never pay the maintainers anything. This means...

Anthropic: Message Batches (beta)

Anthropic: Message Batches (beta) Anthropic now have a batch mode, allowing you to send prompts to Claude in batches which will be processed within 24 hours (though probably much faster than that) and come at a 50% price discount. This matches the batch models offered by OpenAI and by Google Gemini, both of which also provide a 50% discount. ...

Finding Related Images in Hugo
Brain Baking | 8 Oct 2024 | original ↗

The Good Old Days relaunched last month with version 8 and I spent last week dissecting the changes from the new theme made by Mr. Creosote as it’s always fun to get inspired. They also have a museum page where you can go back in time to see what the site looked like back in the day. One of the things I really like is the way The Good Old Days...

Use an External GPU on Raspberry Pi 5 for 4K Gaming

Use an External GPU on Raspberry Pi 5 for 4K Gaming After I saw Pineboards 4K Pi 5 external GPU gaming demo at Maker Faire Hanover, I decided it was time to set up my GPU test rig and see how the Pi OS amdgpu Linux kernel patch is going. I tested it out on a livestream over the weekend, but I thought I'd document the current state of...

Bender 2: Bend Harder for Playdate
Get Info | 8 Oct 2024 | original ↗

Back in 2012 I wanted to make a quick game for the AGBIC game jam (A Game By Its Cover; make a game inspired by the imaginary cover art from the Famicase exhibition). There’s only one rule for this game jam, which is taken very seriously: respect the wishes of the original artists, and don’t appropriate their designs without consent. Otherwise...

How to convince engineers that formal methods is cool
Computer Things | 8 Oct 2024 | original ↗

Sorry there was no newsletter last week! I got COVID. Still got it, which is why this one's also short. Logic for Programmers v0.4 Now available! This version adds a chapter on TLA+, significantly expands the constraint solver chapter, and adds a "planner programming" section to the Logic Programming chapter. You can see the full release notes on...

How Saboteurs Threaten Innovation–and What to Do About It
Steve Blank | 8 Oct 2024 | original ↗

This article first appeared in First Round Review. “Only the Paranoid Survive” Andy Grove – Intel CEO 1987-1998 I just had an urgent “can we meet today?” coffee with Rohan, an ex-student. His three-year-old startup had been slapped with a notice of patent infringement from a Fortune 500 company. “My lawyers said defending this suit could […]

Fall in Bethel Maine
Dillon Shook | 8 Oct 2024 | original ↗

That cozy time of year again

Fischer, Part 4: Configuring Django Authentication
Brain Dump | 8 Oct 2024 | original ↗

Today I'd like to experiment with some nice interfaces for tagging and showing tagged bookmarks. But it feels too clunky to log into the django admin then navigate back, so first I want to get Django authentication set up. I suspect that if this turns into something I want to share with others, I'll eventually wind up with allauth, but that feels...

Lucas numbers
John D. Cook | 8 Oct 2024 | original ↗

Lucas numbers [1] are sometimes called the companions to the Fibonacci numbers. This sequence of numbers satisfies the same recurrence relation as the Fibonacci numbers, Ln+2 = Ln + Ln+1 but with different initial conditions: L0 = 2 and L1 = 1. Lucas numbers are analogous to Fibonacci numbers in many ways, but are also […] The post Lucas numbers...

Like a helium balloon
Papa Notes | 8 Oct 2024 | original ↗

Young children have no problem letting things go. It's a flaw built up over time, and it takes us years to unlearn it as adults.To correct a behavior, parents intuitively reprimand them when something wrong happens. We correct in the now what was done in the past.It creates a strong bond between how we feel now and what happened then—a strong connection between the outcome, our feelings about the outcome, and the past performance.While this is not entirely...

Liskov's Gun: The parallel evolution of React and Web Components

Because this essay is over 11 000 words long(!) I’ve made a convenience EPUB file for offline reading. (EPUB only! No PDF this time.) You can download it over on the fulfilment service I use, Lemon Squeezy, with the option to pay what you want if you feel the urge to support my writing. Paying is absolutely optional. Web dev keeps arguing about...

Markdown File Linker for Nova editor
Get Info | 8 Oct 2024 | original ↗

YAML Tag Picker allows you to easily select tags for the YAML front matter in your blog posts. It scans your existing posts for tags and presents them in a Choice Palette, making it easy to maintain consistent tagging across your blog. You can select multiple tags one after another; when you’re done choose “Finish Selection” or press Esc. Each...

Markdown File Linker for Nova editor
Get Info | 8 Oct 2024 | original ↗

Markdown File Linker is an extension for the Nova editor that allows you to insert links to local files as Markdown links, perfect for linking between articles in your Jekyll blog! Usage To run Markdown File Linker: Select the Editor → Insert File Link menu item; or Open the command palette and type Insert File Link You might also choose to...

Photos (8 October 2024)

A few starlings stopped by the bird feeder on my balcony earlier this week. (Shot through the window pane so as to not startle them. Hence the reflections.) A few of very autumnal photos from yesterday’s walk Took these two pictures of the same scene and with a similar angle, but converted one to B&W and the kept the other in colour. A couple of...

Links (8 October 2024)

“To define custom elements or not when distributing them – Nathan Knowler”. This uses import.meta and url queries to make the custom element name configurable. Coincidentally, this is something I’ve been experimenting as well, but I then use an import map to give it a nice import specifier. “Fighting for our web”. “What used to be expensive and...

Linearizability in distributed systems

Linearizability is a strong consistency model in concurrent and distributed systems. From the paper introducing it [1]: Linearizability provides the illusion that each operation applied by concurrent processes takes effect instantaneously at some point between its invocation and its response. On first reading (and probably on the second and third …

Writing Home Assistant automations using Genservers in Elixir
Jonas Hietala | 8 Oct 2024 | original ↗

I’ve been a fan of Home Assistant a while now; it’s a great platform for home automation with its beginner friendly and feature rich UI, support for a ton of different devices and integrations, and there’s a bunch of ways to create automations. But there’s no engine for writing automations in Elixir that I could find; this post addresses this...

Django Commons

Django Commons Django Commons is a really promising initiative started by Tim Schilling, aimed at the problem of keeping key Django community projects responsibly maintained on a long-term basis. Django Commons is an organization dedicated to supporting the community's efforts to maintain packages. It seeks to improve the maintenance experience...

Stop Calling It ‘Race Science’
Bix Dot Blog | 8 Oct 2024 | original ↗

So, I wasn’t going to get into this despite getting irritated about it on social, but now there’s a story by Ali Breland writing for The Atlantic with the title,...

Stop Calling It ‘Race Science’
Bix Dot Blog | 8 Oct 2024 | original ↗

So, I wasn’t going to get into this despite getting irritated about it on social, but now there’s a story by Ali Breland writing for The Atlantic with the title, “Donald Trump Flirts With Race Science”, and you know I can’t shut up because there are two things wrong here. It’s not flirting. It’s not science. Yes, I understand that it’s a commonly...

DDIA: Chp 7. Transactions (Part 1)
Metadata | 8 Oct 2024 | original ↗

Chapter 7 of the Designing Data Intensive Applications (DDIA) book discusses transactions, yay! Transactions in database systems group multiple operations into a logical unit, a box of operations if you will. They simplify error handling and help manage concurrency issues. See Gray-Reuters book introduction and fault-tolerance sections for the...

Domain ownership of ccTLDs and sovereignty

Tianyu Fang researched a long and detailed essay called Whose Domain Is It?, detailing the politics of the Internet’s domain names, especially the country-code top-level domains (ccTLDs) that you might not realize are actually associated with countries. The unexpectedly popular ccTLDs can operate like a tourism effort, at least in terms of...

Unlocking speed: the power of indexing in database performance
Prahlad Yeri | 8 Oct 2024 | original ↗

In today’s data-driven world, the performance of databases is crucial for applications, businesses, and users alike. As databases grow in size and complexity, the need for efficient data retrieval becomes paramount. One of the most effective strategies for enhancing database performance is indexing. This article explores the role of indexing in...

Modern PATH environment variable
Hugues Blog | 8 Oct 2024 | original ↗

The PATH environment variable is read by the shell or libc to find and execute programs, this is how the shell can find /bin/ls when ls is typed in a terminal. Shrink it On Debian based desktop systems the default PATH variable look like this: PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games Much of...

Is Age Really a Factor in Tech?

Silicon Valley has a reputation for youth worship. The 'move fast and break things' mentality often translates to a preference for younger, supposedly more adaptable workers.

5 Years Later: The First Win
The Pasture | 8 Oct 2024 | original ↗

N3366 - Restartable Functions for Efficient Character Conversions has made it into the C2Y Standard (A.K.A., “the next C standard after C23”). And one of my longest struggles — the sole reason I actually came down to the C Standards Committee in the first place —

What Building Self-Hosted LLM Systems Taught Me About Software

Recently I have been working on what I guess is called an LLM agent, but it’s more just building more ergonomic tools for myself to use LLMs in my life. The code base keeps growing, and I use it to help write itself. What I have noticed is that the patterns I have made for making code more intelligible to LLMs also apply to making code more...

0049: hytradboi 2025, consulting, zest progress, labeled continue, bet against sql, zero-cost costs in debug, packed memory arrays, papers, books

hytradboi 2025 HYTRADBOI is coming back in 2025, this time with a programming languages track. I have 14 speakers confirmed so far, but there is still plenty of room. Let me know who you want to see!

Brainstorming a design for audio note transcription

This evening, I started to think about what the experience should be on audio notes. Could I offer transcriptions? What would that look like? What design elements should I have on the page? What features could I add to afford greater utility to the transcript, like search? I explore these questions in the below audio note, with additional...

The longevity of technical documents

I have recently been reflecting on how technical writing goes out of date, and what that means as a technical writer. In the voice note below, I explore how technical documents have relevance far beyond their immediate utility as a reference material. Your browser does not support the audio tag.

A Monologue on Modality

At Homebrew Writing Club this evening, we spoke about modalities of content: of writing, audio, video, and more. We also spoke about the best way to make something is to get started, and to make it as easy as possible to get started. For example, instead of worrying about how to classify content, you can write or make it, then classify it later....

The Static Site Paradox

In front of you are two personal websites, each used as a blog and to display basic contact info of the owner:One is a complex CMS written in PHP that requires a web server, multiple workers, a Redis cache, and a SQL database. The site also has a big frontend component that loads as a Single Page Application and then performs navigation by requesting the content in JSON form, which then gets "rehydrated" client-side.The other is a collection of static HTML files...

TCP Server in Zig - Part 3 - Minimizing Writes & Reads
openmymind.net | 8 Oct 2024 | original ↗

Before we look at making our server multi-threaded, and then move to polling, there are two optimization techniques worth exploring. You might think that we should finalize our code before applying optimizations, but I think optimizations in general can teach us things to look out for / consider, and it's particularly true in both these cases. In...

Two Workflow Tips
matklad | 8 Oct 2024 | original ↗

An article about a couple of relatively recent additions to my workflow which I wish I knew about years ago.

WHOIS vulnerabilities and TLDs

Most of the Internet is held together by best practices and good intentions, and WHOIS servers are one of those. One security company was investigating vulnerabilities in WHOIS and got a whole lot more than they bargained for: Each TLD (the bit at the end of the domain), you see, has a separate WHOIS server, and there’s no real standard to...

Scripting News turns 30
Waxy.org | 7 Oct 2024 | original ↗

there's a nice companion piece for Dave Winer's milestone in The Guardian #

More...