20 random bookmarks

Тут будут ссылки на всё-всё, что я найду интересным

2026-06-15

Reposted 986.

BlueMap-Minecraft/BlueMap: A Minecraft mapping tool that creates 3D models of your Minecraft worlds and displays them in a web viewer.

github.com/BlueMap-Minecraft/BlueMap

BlueMap is a program that reads your Minecraft world files and generates not only a map, but also 3D-models of the whole surface.
With the web-app you then can look at those in your browser and basically view the world as if you were ingame!
Or just look at it from far away to get an overview.

2026-06-07

980.

How I learn Clojure → Gosha Tcherednitchenko

gosha.net/2026/learning-clojure

In the debrief, BG shared some advice for actually getting good at Clojure: work through the problems on 4clojure using only the official documentation (not ClojureDocs, which include examples!) and the Clojure source code.

4Clojure is a collection of programming problems that teach you the standard library, each problem building on the one before it, kind of in the spirit of The Little Schemer. The reason to go through it looking at source code rather than examples is to force you to reason from first principles (the implementation) rather than from someone’s ideas of how code is written.

2026-06-01

974.

Clojure Coding Guide

grishaev.me/en/clojure-guide

2025-10-18

903.

Issuing multiple requests with `curl`

code.mendhak.com/curl-multiple-requests-sequences

2025-04-22

851.

Make a list of things you might need for a hospital stay

practicalbetterments.com/make-a-list-of-things-you-might-need-for-a-hospital-stay

2024-12-29

816.

Терапевтический альянс и chatGPT

spectator.ru/entry/6715

Это напоминает мне историю одной клиентки, которая как и многие другие пыталась контролировать терапевта. Она попросила ее не фрустрировать до тех пор, пока она не будет готова. Я и не фрустрировал (и не собирался). Спустя, скажем, год она сказала«ну всё, я теперь готова, давайте пожестче». А я продолжал не фрустрировать. Спустя какое-то время она возмутилась: как же так, я же просила меня фрустрировать, а вы этого не делаете.

И я такой:«фрустрирует, правда?».

2024-07-20

720.

SDK, работа над ошибками

grishaev.me/aws-sdk-fix

используйте неизменяемые объекты, не допускайте частичной инициализации, требуйте обязательные поля сразу – не надейтесь, что кто-то заполнит их позже

2024-04-13

606.

SourceCodeSyntaxHighlight

github.com/sbarex/SourceCodeSyntaxHighlight

Quick Look extension for highlight source code files on macOS 10.15 and later.

2024-04-02

598.

Toil

garrit.xyz/posts/2024-04-01-toil?utm_source=rss

Sisyphus eventually found peace with his fate. Instead of seeing his punishment as an eternal burden, he saw it as his life's purpose. Maybe those comparatively small annoyances in our life are worth enjoying. They're part of what makes us human.

2024-03-30

Reposted 595.

Первое правило пропаганды

maximilyahov.ru/blog/all/propaganda-2

Главное правило пропаганды — посыл должен быть простым. Если хочешь, чтобы твоя вера распространялась, нужно упаковать ее в короткое и броское сообщение — мем. Чем он проще и тупее, тем ему легче распространяться. Если мем в рифму — еще лучше.

Мем дожен быть безапелляционным, без деталей, однозначным и не вызывающим сомнений. В идеале — чтобы он касался каких-то человеческих грехов — например, гордыни, алчности или гнева. Это сейчас самые социально одобряемые грехи.

2024-03-11

Reposted 572.

Правда

grishaev.me/truth

Есть фееричное по своей глупости выражение: на правду не обижаются. Это верно: обижаются не на правду, а на бестактность, грубость, фамильярность, непрошенное мнение и все то, что сопутствует правде.

Если собеседник обижается на правду, стоит подумать, как лучше ее донести и вообще — стоит ли ее доносить.

2024-03-06

547.

Dysfunctional options pattern in Go

rednafi.com/go/dysfunctional_options_pattern
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)
}

2023-11-10

402.

git rebase: what can go wrong?

jvns.ca/blog/2023/11/06/rebasing-what-can-go-wrong-

2023-11-04

395.

Visual Phenomena & Optical Illusions

michaelbach.de/ot

This huge collection of non-scary optical illusions and fascinating visual phenomena emphasizes interactive exploration, beauty, and scientific explanation.

2023-10-31

383.

Excalidraw — Collaborative whiteboarding made easy

excalidraw.com

2023-09-05

314.

Я вижу как ты мусоришь со своего балкона / Хабр

habr.com/ru/articles/758894

Как технически обнаружить мусорщика и почему камеры, смотрящие не на фасад, бесполезны

2023-08-07

281.

Парковочный диск

ru.wikipedia.org/wiki/Парковочный_диск

при оставлении автомобиля на стоянке необходимо установить время начала парковки на циферблате диска и положить диск на видном месте за лобовым стеклом автомобиля.

2023-08-06

276.

Продвинутый StreetComplete

telegra.ph/Prodvinutyj-StreetComplete-08-05

Рома рассказывает о неочевидных функциях StreetComplete.

2023-02-19

11.

The modern web on a slow connection

danluu.com/web-bloat
9.

Write Plain Text Files

sive.rs/plaintext

I write almost everything important in my life: thoughts, plans, notes, diaries, correspondence, code, articles, and entire books.

They are my extended memory — my noted self — my organized thoughts. I refer to them often. I search them, update them, and learn from them. I convert them into HTML to make websites, or LaTeX to make books.

My written words are my most precious asset. They are also a history of my life. That’s why I only use plain text files. They are the most reliable, flexible, and long-lasting option. Here’s why.