20 random bookmarks
Тут будут ссылки на всё-всё, что я найду интересным
Тут будут ссылки на всё-всё, что я найду интересным
For the NLNet Betula grant, I had to redesign the logo. The old one was not very recognisable at small sizes, barely looked like a birch, etc. June 2026, I spent several days working on the new one. Turned out, logo design and vector graphics are so much more complicated than I anticipated! Went through multiple approaches until I settled on the final logo. It's live on https://joinbetula.org or instances running newer versions, such as https://links.bouncepaw.com.
Datasette is a tool for exploring and publishing data. It helps people take data of any shape, analyze and explore it, and publish it as an interactive website and accompanying API.
Most people’s financial decisions are driven by what the people around them decide — which, in this culture, typically ranges from thoughtless to completely backwards — and conscious thought about the getting the best deal on happiness doesn’t enter the picture. Would you rather have five all-expenses-paid years off to spend with your family, learn a language or build a business — or drive a big car instead of a small car? It’s shockingly normal for people to choose the latter, because they have no idea that they’re making that choice at all.
...
I am way happier already. In the three months since I’ve been smarter about my spending, I’ve saved three months’ worth of living expenses, which has an immediate stress-reducing effect. I could get laid off or fired and have plenty of time to figure out what to do, so there’s much less day-to-day stress about my job performance, which has actually led to an effortless improvement in job performance. I have a sense of control over my life that I’ve never felt before. These intangible dividends are immediate, and they don’t cost a cent because the money is still mine.
Clean Code doesn't work—not because the principles are wrong, but because the real world is dirty, chaotic, unpredictable, and asynchronous. The best code I’ve ever seen violated a good half of Clean Code’s commandments.
Plenty of books and blogs will tell you how to develop your functional programming skills or teach you algorithms. But if you’re already pretty good at that stuff, you might be better off trying to become a more virtuous human being: more in control of your emotions, more able to hold your nerve in times of crisis, and humbler about the institutional power your technical knowledge grants you.
HTMX in PostgREST!
create or replace function api.index() returns "text/html" as $$
select $html$
<!DOCTYPE html>
<html>
...
</html>
$html$;
$$ language sql;
Вывели с клиентом универсальную «инструкцию к терапии». На случай, если кому-то это нужно. Как часто и бывает, у него была популярная мечта сначала что-то поменять в голове, а потом зажить по-новому.
Recently, there has been considerable interest in large language models: machine learning systems which produce human-like text and dialogue. Applications of these systems have been plagued by persistent inaccuracies in their output; these are often called “AI hallucinations”. We argue that these falsehoods, and the overall activity of large language models, is better understood as bullshit in the sense explored by Frankfurt (On Bullshit, Princeton, 2005): the models are in an important way indifferent to the truth of their outputs. We distinguish two ways in which the models can be said to be bullshitters, and argue that they clearly meet at least one of these definitions. We further argue that describing AI misrepresentations as bullshit is both a more useful and more accurate way of predicting and discussing the behaviour of these systems.
Uiua (wee-wuh) is a general purpose, stack-based, array-oriented programming language with a focus on simplicity, beauty, and tacit code
Бесит, что всё больше подкастов монтируют и оформляют всякими джинглами, перебивками и эффектами. Такое ощущение, что туда понаприходили люди с радио и телевидения, которые не понимают, как устроен интернет, и притащили с собой весь эфирный мусор. Причём многие слушатели, кто открывают для себя подкасты только в последнее время, думают, что так и надо, и не видят в этом абсурда — другого-то они не слышали!
Я согласен с тем, что логику нужно разносить по сервисам. Но сервисы должны использовать общую шину данных: базу, очередь сообщений, файлы в S3 в конце концов. Гонять друг другу JSON выглядит хорошо в теории, но на практике — фу.
Условный Постгрес выплюнет миллион записей за доли секунды. Забрать этот же миллион из другого сервиса — приключение на неделю. Тут и метрики, лимиты, квоты, сетевые спайки, etc… А когда таких запросов несколько, сервис ложится спать.
package src
type config struct {
// Required
foo, bar string
// Optional
fizz, bazz int
}
// Each optional configuration attribute will have its own public method
func (c *config) WithFizz(fizz int) *config {
c.fizz = fizz
return c
}
func (c *config) WithBazz(bazz int) *config {
c.bazz = bazz
return c
}
// This only accepts the required options as params
func NewConfig(foo, bar string) *config {
// First fill in the options with default values
return &config{foo, bar, 10, 100}
}
func Do(c *config) {}
You’d use the API as follows:
package main
import ".../src"
func main() {
// Initialize the struct with only the required options and then chain
// the option methods to update the optional configuration attributes
c := src.NewConfig("hello", "world").WithFizz(0).WithBazz(42)
src.Do(c)
}
A linter for Go that finds nil panics. It found several potential nil panic in Betula and Mycorrhiza codebases that I didn't bother fixing.
Ещё один сайт для ссылок
О том, почему важно занимать обе стороны на эскалаторе в метро.
Постоянно об этом задумывался, а тут мне скинули статью.
A non-comprehensive and opinionated guide to best monitor for programming
на примере Питера мы сделали свою карту гулябельности.
Век большинства игр недолог. Многие тайтлы гремят только пару месяцев после релиза, а затем уходят в небытие. Некоторые же игры умудряются иногда вновь прорываться в инфополе, и лишь единицы могут в течение десятилетий постоянно напоминать о себе. Doom — один из таких долгожителей, культовый проект, сильно повлиявший на игровую индустрию. И сегодня мы посмотрим, как некоторые мододелы, используя Doom в качестве основы, умудряются создавать иногда по-настоящему впечатляющие игры-хорроры.
Заметки о том, как писать и оформлять код на Си