20 random bookmarks
Тут будут ссылки на всё-всё, что я найду интересным
Тут будут ссылки на всё-всё, что я найду интересным
We used to use software; now software started to use us
Custom keyboard configuration builder
an Internet of Things (IoT Cloud) Project for collecting, processing, storing and displaying (on a map and in applications) sensor readings and webcams of its participants with public or private access on various platforms.
Приложения для сбора хайлайтов из статей и книг не помогают запоминать прочитанное
Для того, чтобы запоминать прочитанное не нужна хорошая память
Лучший способ запомнить прочитанное — понять то, что ты прочитал
Чтобы на самом деле понять прочитанное, нужно приложить усилия
Объясняй другим идеи, чтобы лучше понимать и запоминать их
Заведи блог
Участвуй в сетевых дискуссиях
Откажись от автоматизации
Вывели с клиентом универсальную «инструкцию к терапии». На случай, если кому-то это нужно. Как часто и бывает, у него была популярная мечта сначала что-то поменять в голове, а потом зажить по-новому.
Максим Ильяхов разговаривает с гинекологом
Uiua (wee-wuh) is a general purpose, stack-based, array-oriented programming language with a focus on simplicity, beauty, and tacit code
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)
}
Task is a task runner / build tool that aims to be simpler and easier to use
version: '3'
tasks:
hello:
cmds:
- echo 'Hello World from Task!'
silent: true
This idea is pretty simple, in principle: sometimes we miss a good-enough solution because a not-quite-good-enough solution is already out there and in use.
Бывает, вы с приятелем пришли в кафе, и он у вас спрашивает, какой тут пароль от вайфая. У вас подключен компьютер, потому что вы тут были год назад, но пароль вы не помните.
Compared to their humble wired counterparts, wireless headphones are expensive, easy to lose, unreliable, and environmentally destructive
С одной стороны, провода жутко бесят. С другой стороны, нельзя доверять беспроводным технологиям:
мучаешься с подключением по синезубу
наушники могут просто заглохнуть в центре города из-за скопления современных машин, которые ОЧЕНЬ засоряют эфир
ну и да, потерять наушники очень просто. Однажды чуть в раковину не уронил, пока делал уборку, наушник просто выпал из уха :/
— О чем вы подумали, впервые открыв секретный архив ГУЛАГа и узнав, что число репрессированных значительно меньше, чем считалось и говорилось?
Земсков о репрессиях
The most important consideration when defining a concatenated index is how to choose the column order so it can be used as often as possible.
Например, поиск по имени без фамилии бесполезен. Значит, составной индекс должен начинаться с фамилии, а потом уже будет имя.
PRQL is a modern language for transforming data
Интересная замена SQL. Запросы для аналитики данных станет писать намного проще. Не думаю, что для чего-то другого этот проект подойдёт. Условный CRUD проще написать, используя именно SQL запросы, здесь PRQL излишен.
Себастьен Хиндерер, слепой человек, протестировал бета-версию SonarVision, навигатора для людей с ограниченными возможностями, использующего данные ОСМ
Пакет из английской и русской раскладок, спроектированных для удобного совместного использования