20 random bookmarks
Тут будут ссылки на всё-всё, что я найду интересным
Тут будут ссылки на всё-всё, что я найду интересным
Some degree of ownership over the code you write is inevitable and probably healthy. You should care about the things you build! But that doesn’t mean you have any actual ownership. The codebase you spend time on at work is the company’s codebase, and they can do whatever they want with it. You should communicate the risks and consequences of decisions, but ultimately it’s not your call.
Смотрелка заметок для осма
The safest and most reliable way to deal with feature flags is to hardcode them
We all know that naming things in programming is hard. If you’ve read this entire post it just got a little bit harder.
В своём докладе Илья покажет, как плохие контролы могут доставлять мелкие неудобства, которые достаточно быстро доведут пользователя до белого каления. И объяснит, как делать нормальные кнопки, поля ввода, выпадайки, чекбоксы, радиокнопки, слайдеры и прочие календарики. Все тезисы проиллюстрированы примерами!
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.
A directory of self-hosted software and applications for easy browsing and discovery
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.
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)
}
from bouncepaw:
Alex tells us that, for him, baking and cooking are easier than programming and soldering, because the errors there average out. As for me, this is completely inverse.
In programming, an error never fixes itself. You can observe it and fix it, you can write tests. You can run the program multiple times. It's you who fixes it, and you can understand how it's done. It's measurable!
Meanwhile, cooking is a nightmare. Burning something is routine for me. Is that too much or too little oil? For how long do I fry? What do I do with these spices? Do they really affect the taste? And to observe something, I can't rely on symbolic things like text. No, I have to look (is this color good? No idea!), smell (as if I know the difference) and taste (nothing more inaccurate).
I'm happy when something can be cooked with a timer. 15 min for buckwheat? I'm in. I'm more happy when the time is short. 4 min for this thin kind of spaghetti? Already boiling water!
I mean, even boiling water is not simple. My parents told me to wait until the correct bubbles appear. I'm waiting for the scary ones. Also, salt is supposed to make it boil faster. How much salt do I add?
And I didn't even talk about plants, which Alex also considers easy. They're not 😭
Totally agree!
I therefore officially announce 2024 to be the year when the square checkbox has finally died.
Сегодня публике нужно быть впереди соседа. Увидеть Париж первым — и умереть. Важен не процесс — но атрибутика вокруг.
The fast-loading recipe site with cooking only and no ads.
Представьте, какой гемор был бы построить это в Экселе, Гугле или даже на языке программирования вроде Питона. Там с одним только парсингом дат и времени наешься, а тут все из коробки.
Решение для серверсайд рендеринга
Рич Хикки рассказывает о различиях простоты и лёгкости в контексте проектирования и написания программ.
Говорит, что многие выбирают лёгкость, забывая про простоту. Со временем комплексность превращается во что-то такое, что сложно поддерживать и в чём сложно разобраться новичкам.
Нужно стремиться искать лёгкие способы делать простые программы.
Сайт, работающий на солнечной энергии.
В зависимости от заряда страница окрашивается в жёлтый или голубой цвета.
SVG иконки