20 random bookmarks

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

2025-02-04

832.

A selfish personal argument for releasing code as Open Source

simonwillison.net/2025/Jan/24/selfish-open-source

2024-09-28

775.

Нуланд против Путинизма

www.youtube.com/watch?v=dVxQTfZ-IiU

2024-07-19

719.

Паттерны

grishaev.me/patterns

2024-06-26

694.

Фундаментальная ошибка психологии

spectator.ru/entry/6702

Вот еще одна иллюстрация на тему «психология гавно». Увидел в 2024 году в инстаграме психолога, борющегося с «когнитивными искажениями» и утверждающего, что фундаментальная ошибка атрибуции — это «Самая Тупая Ошибка Мышления».

2024-05-19

662.

Садитесь, к вам подойдет официант

ilyabirman.ru/meanwhile/all/sadites-k-vam-podoydet-oficiant

Бывает, придёшь в кафе, там всякие круассаны и пирожные лежат красиво. Поразглядывал, выбрал, обращаешься к девушке. А она такая: «Вам с собой?» Нет, здесь. «Садитесь, к вам подойдет официант».

2024-05-17

649.

How to Cut Corners and Stay Cool

www.yegor256.com/2015/01/15/how-to-cut-corners.html

When a task you're working on is too big or you simply don't want to do it, you cut corners; here is how you can do it professionally.

2024-03-07

549.

SQL Polyglot

codapi.org/sql

SQL Polyglot is a quick way to see if a particular SQL feature is supported in different database systems. Write a query and see it run anywhere from PostgreSQL to DuckDB without leaving your browser.

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)
}

2024-02-28

536.

How to Feel 20 Percent Better

www.raptitude.com/2024/02/how-to-feel-20-percent-better

2023-12-12

454.

Finding unreachable functions with deadcode

go.dev/blog/deadcode

Functions that are part of your project’s source code but can never be
reached in any execution are called “dead code”, and they exert a drag
on codebase maintenance efforts.
Today we’re pleased to share a tool named deadcode to help you identify them.

2023-11-18

424.

Miniflux

miniflux.app

a minimalist and opinionated feed reader.

2023-11-15

417.

Sort-Merge Join in SQL databases: Oracle, SQL Server, PostgreSQL

use-the-index-luke.com/sql/join/sort-merge-join

Sort-merge joins do not need indexes on the join predicates.
MySQL does not support sort-merge joins at all.

2023-08-02

274.

Brian Tomasik

briantomasik.com

2023-07-26

252.

Introduction to Compilers and Language Design

www3.nd.edu/~dthain/compilerbook/compilerbook.pdf

2023-06-22

213.

Юлия → Iuliia

iuliia.ru

Можно выбрать подходящую схему транслитерации.
Поля с текстом интерактивны.

2023-03-14

118.

Как быстро и дёшево снимать и монтировать видео для Ютюба - YouTube

www.youtube.com/watch?v=wbaSQsEMdTA

2023-03-11

112.

Shift Happens: Typewriter simulator

shifthappens.site/typewriter

Симулятор печатной машинки. Советую потыкаться и осознать, как было больно раньше стирать буквы, но как просто ставить диакритические знаки любым символам.

2023-02-25

39.

Лекция Евгения Норина. Война в Приднестровье 1992г.

www.youtube.com/watch?v=m4I5ca9MN_A

2023-02-19

7.

Grimgrains Cooking Blog

grimgrains.com

2023-02-18

3.

Nihgtwave Plaza

plaza.one

Online Vaporwave Radio