20 random bookmarks
Тут будут ссылки на всё-всё, что я найду интересным
Тут будут ссылки на всё-всё, что я найду интересным
OpenStreetMap surveyor app
Occasionally, you will see the opportunity to completely remove the worrying part of the system, which for me is one of the most satisfying things you can do as a software engineer. Removing things that cause your team stress has compounding benefits to your team, to the systems you work on, and to your engineering org in general
Arm yourself with knowledge
Документальная фотосъемка работы волонтеров по ликвидации последствий розлива мазута в Черном море. Январь 2025.
Find out how to manage risk and emotional decision-making with the Dollar Cost Averaging method of investing, to build long-term wealth
A story of a Julius who lacks knowledge but has good charisma. There's a lot to learn from such Julii.
When a player starts a session, they are the car driver, and each person that joins is seated in one of the other three passenger seats.
Players are automatically connected via voice chat.
The radios stations are real-life internet radio streams and several of them are available in the game world.
То, что западноевропейским ученым запрещают выступать на конференциях в России безусловно огорчает, но более всего настораживает их на это реакция.
Егор, психолог, общается с людьми на психологические темы.
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)
}
довольно годная web-based рисовалка мышкой помещений, планировок итд . Справился даже такой дебил как я. Набор компонентов не суперобширный, но для примерного понимания где розетки, где выключатели, где батареи - вполне неплохо.
Единственный минус (или я просто не понял) - не нашёл режима просмотра в 2D как всё накладывается друг на друга. Только при ревью в 3D заметил что у меня розетка прямо на воротах, другие две розетки спрятаны за конвектором, а один из светильников смонтирован прямо на стекло окна.
За 500 рублей на месяц - вполне неплохое решение для того чтобы быстренько нарисовать спальную, кабинет или гараж. Дают нарисовать пять проектов. На выходе - PDF-альбом на 10-12 листов с планами, размерами итд, в целом похожие на те, что делают полноценные дизайн-студии.
Время от времени читаю, что люди страдают из-за разных часовых поясов в команде и с клиентами, путаются во встречах и вообще не понимают, как вести календарь.
Учу. Включите поддержку часовых поясов в календаре, если вдруг вы этого почему-то не сделали.
Юлия рассказывает про выгорание
Расширение, которое позволяет открыть текущее место в соответствующем сервисе карт.
О том, почему важно занимать обе стороны на эскалаторе в метро.
Постоянно об этом задумывался, а тут мне скинули статью.
Инструмент, который мониторит страницы и высылает уведомление об изменениях
SVG иконки
Чумной доктор и Леонид Кураков о начале горячей фазы конфликта в 2022 году на Украине. Для тех, кто думает, что войну развязала Россия
Дистрибутив для резервного копирования