Я думаю многие не раз задумывались: как правильно писать комментарии и стоит ли вообще? Есть крутая статья от Antirez, автора Redis.
И вот он предлагает такую категоризацию комментариев:
— Function - to prevent the reader from reading code in the first place
— Design - states how and why a given piece of code uses certain algorithms, techniques, tricks, and implementation. It is an higher level overview of what you'll see implemented
— Why - why the code is doing something, even if what the code is doing is crystal clear
— Teacher - don't try to explain the code, but teach the *domain* in which the code is operating
— Checklist - there are places in the code that tells you to remember to do things in some other place of the code
— Guide - babysit the reader, assist her while processing what is written in the code
— Trivial - is a guide comment where the cognitive load of reading the comment is the same as reading the associated code
— Debt - technical debts statements
— Backup - comments older versions of some code block or even a whole function
Но советую читнуть все, там много, но просто + примеры
http://antirez.com/news/124
И вот он предлагает такую категоризацию комментариев:
— Function - to prevent the reader from reading code in the first place
— Design - states how and why a given piece of code uses certain algorithms, techniques, tricks, and implementation. It is an higher level overview of what you'll see implemented
— Why - why the code is doing something, even if what the code is doing is crystal clear
— Teacher - don't try to explain the code, but teach the *domain* in which the code is operating
— Checklist - there are places in the code that tells you to remember to do things in some other place of the code
— Guide - babysit the reader, assist her while processing what is written in the code
— Trivial - is a guide comment where the cognitive load of reading the comment is the same as reading the associated code
— Debt - technical debts statements
— Backup - comments older versions of some code block or even a whole function
Но советую читнуть все, там много, но просто + примеры
http://antirez.com/news/124
Заметил одну вещь: чем меньше человек участвует в опенсурсе, тем он меньше думает о своем коде.
Наблюдение пошло с того, как люди ломают совместимость во внутренних либах фирмы и...все. Сломали и сломали, едем дальше.
А зависящей стороне прост приходится молча это проглатывать, либо же не обновляться (действительно, как это так?)
Я именно про ломание в патч и минор версиях, все же для этого мажорчики есть.
И вот поэтому люди сидят 2 года на deprecated версии и тормозят всех - себя, потому-что юзают старое апи и извращаются с ним, но и тормозят тиму авторов-виновников, ведь старое приходится держать, все таки бизнес должен работает.
Короч, не опенсурсил - не мужик
Наблюдение пошло с того, как люди ломают совместимость во внутренних либах фирмы и...все. Сломали и сломали, едем дальше.
А зависящей стороне прост приходится молча это проглатывать, либо же не обновляться (действительно, как это так?)
Я именно про ломание в патч и минор версиях, все же для этого мажорчики есть.
И вот поэтому люди сидят 2 года на deprecated версии и тормозят всех - себя, потому-что юзают старое апи и извращаются с ним, но и тормозят тиму авторов-виновников, ведь старое приходится держать, все таки бизнес должен работает.
Короч, не опенсурсил - не мужик
Вот отключение этих двух кнопочек позволит спасти ваш мастер от форс пушей с фиксом, если кто-то случайно смержит 20 рабочих коммитов аля Fix review comments. Но клацнуть их слишком сложно при создании репо....
(в очередной раз обещаю дописать статью про гит, чтобы убрать возможность любых факапов, чесна)
UPD: это сделает жизнь проще, при фиксе. Это не спасет от пушей в мастер, для этого другая ж галочка, ну чего вы..
(в очередной раз обещаю дописать статью про гит, чтобы убрать возможность любых факапов, чесна)
UPD: это сделает жизнь проще, при фиксе. Это не спасет от пушей в мастер, для этого другая ж галочка, ну чего вы..
А у вас "одаренные" тоже на (гиро)скутерах по офису гоняют и в звоночек звенят?
Anonymous Poll
14%
Да
64%
Не
8%
Бывало на праздник
13%
Афигенная история про офисных индивидуумов (скорее всего будет сборник таких историй) @olegkovalov
oleg_log
А у вас "одаренные" тоже на (гиро)скутерах по офису гоняют и в звоночек звенят?
В общем-то у нас было обострение год назад, особенно в июле-августе, человек 5 постоянно мотались и хвастались у кого батарея толще на скутере.
И вот сейчас парочка topgear устроила мимо комнат.
И вот сейчас парочка topgear устроила мимо комнат.
Либо это холодный вечер пятницы, либо меня потянуло на подкасты, подкиньте что-то, что любите слушать. И как вы вообще вкатились в них?
Меня как-то отталкивает то, что я теряю контекст, потому-что хочу заниматься своими делами _и_ при этом слушать.
Кстати необязательно айти, кто меня знает ‾\_(ツ)_/‾
Заранее благодарю @olegkovalov
Меня как-то отталкивает то, что я теряю контекст, потому-что хочу заниматься своими делами _и_ при этом слушать.
Кстати необязательно айти, кто меня знает ‾\_(ツ)_/‾
Заранее благодарю @olegkovalov
oleg_log
Такс, хотел в пятницу, но #задачка будет сегодня. Сколько различных флоат32 помещается в промежутке [0; 1] ? (для подсказки: а сколько в [-1; 1] ? Ответ можно дать наугад с большой шансом угадать :) Для тех кому скучно и хочется поиграться с битиками: посчитайте…
Так получилось, что ответили только 3/3 человека. Штош.
Начнем с подсказки, ответ....половина. Да, в [-1; 1] содержится половина всех флоат32.
Если кратко, то для х и 1/х у нас одинаковое кол-во битов. Поэтому внутри [-1; 1] должно быть столько, сколько в (-inf; -1) U (1; +inf), приблизительно, ведь там еще +- 0 и NaN, а я не помню что и как с ними %)
Соотв в [0; 1] попадет четверть всех флоатов.
Если совсем точно, то 126 * 2**23 + 1 == 1,056,964,609. Позитивные экспоненты * мантисса + само число 1 = миллиард с кусочком, или 2**30 как приближение, то есть 1/4 от 2**32.
А код для [x;y] я сам не написал, поэтому можете не спрашивать, задание было для хардкорщиков, но видно таких не нашлось.
Так устроена природа, как говорил мощный физик из ДонНУ.
Ссылочки:
любимец многих Daniel Lemire (советую его блог, особого хардкора жаль нет, но порой интересно)
https://lemire.me/blog/2017/02/28/how-many-floating-point-numbers-are-in-the-interval-01/
"Дизассемблер флоатов" https://float.exposed/0x42304000
И хорошее описание внутренностей флоатов http://fabiensanglard.net/floating_point_visually_explained/
Начнем с подсказки, ответ....половина. Да, в [-1; 1] содержится половина всех флоат32.
Если кратко, то для х и 1/х у нас одинаковое кол-во битов. Поэтому внутри [-1; 1] должно быть столько, сколько в (-inf; -1) U (1; +inf), приблизительно, ведь там еще +- 0 и NaN, а я не помню что и как с ними %)
Соотв в [0; 1] попадет четверть всех флоатов.
Если совсем точно, то 126 * 2**23 + 1 == 1,056,964,609. Позитивные экспоненты * мантисса + само число 1 = миллиард с кусочком, или 2**30 как приближение, то есть 1/4 от 2**32.
А код для [x;y] я сам не написал, поэтому можете не спрашивать, задание было для хардкорщиков, но видно таких не нашлось.
Так устроена природа, как говорил мощный физик из ДонНУ.
Ссылочки:
любимец многих Daniel Lemire (советую его блог, особого хардкора жаль нет, но порой интересно)
https://lemire.me/blog/2017/02/28/how-many-floating-point-numbers-are-in-the-interval-01/
"Дизассемблер флоатов" https://float.exposed/0x42304000
И хорошее описание внутренностей флоатов http://fabiensanglard.net/floating_point_visually_explained/
Вот очень-очень крутое замечание https://xn--r1a.website/numstation/1550
При смене операций над данными можно решить разные задачи. Мне это еще напомнило BFS/DFS (те что обходу графов в ширину и глубину).
При смене очереди на стек, в простейшей реализации, 1й становится 2м и можно наоборот.
Весь мир состоит из паттернов.
При смене операций над данными можно решить разные задачи. Мне это еще напомнило BFS/DFS (те что обходу графов в ширину и глубину).
При смене очереди на стек, в простейшей реализации, 1й становится 2м и можно наоборот.
Весь мир состоит из паттернов.
Telegram
Numbers Station Omega
t.me/oleg_log/1310
Напомнило целый обобщенный класс задач (и алгоритмов их решения) на взвешенных графах: (+, х)-задачи ("плюс"-"умножить" задачи)
Ядро алгоритма - одна и та же формула для вычисления W[i][j] (W - 2д массив NxN, N-колво вершин) вида
W[i][j]…
Напомнило целый обобщенный класс задач (и алгоритмов их решения) на взвешенных графах: (+, х)-задачи ("плюс"-"умножить" задачи)
Ядро алгоритма - одна и та же формула для вычисления W[i][j] (W - 2д массив NxN, N-колво вершин) вида
W[i][j]…
В го 1.13 очевидно завезут новые таймеры, вот с таким красивым комитом:
И таким (частичным) описанием:
Насколько я знаю от людей из гугла, это вещи давно у них ходят в проде и все ок, вероятность фатальных дыр минимальна.
Справа там куча патчей с изменениями:
https://go-review.googlesource.com/c/go/+/171883/
const oldTimers = falseИ таким (частичным) описанием:
runtime: switch to using new timer code
No big changes in the runtime package benchmarks.
Changes in the time package benchmarks:
name old time/op new time/op delta
AfterFunc-12 1.57ms ± 1% 0.07ms ± 1% -95.42%
After-12 1.63ms ± 3% 0.11ms ± 1% -93.54%
Reset-12 6.78µs ± 1% 4.24µs ± 7% -37.45%
Sleep-12 183µs ± 1% 125µs ± 1% -31.67%
Ticker-12 5.40ms ± 2% 0.03ms ± 1% -99.43%
Насколько я знаю от людей из гугла, это вещи давно у них ходят в проде и все ок, вероятность фатальных дыр минимальна.
Справа там куча патчей с изменениями:
https://go-review.googlesource.com/c/go/+/171883/
В телегу завезли анимированные стикеры, если вы в поисках, то есть канал с ними.
https://xn--r1a.website/AnimatedStickers
и еще https://xn--r1a.website/topanimated
(кстати какие-то клиенты телегу могут падать с ошибкой, обновитесь до последней)
https://xn--r1a.website/AnimatedStickers
и еще https://xn--r1a.website/topanimated
(кстати какие-то клиенты телегу могут падать с ошибкой, обновитесь до последней)
Как много вы овертаймите?
(возьмем 8ч как нормальный рабочий день)
(возьмем 8ч как нормальный рабочий день)
Anonymous Poll
32%
Никогда или ~раз в месяц
21%
Раз в пару недель
21%
Еженедельно
9%
Ежедневно
7%
Иногда на выходных
7%
Каждый день :(
4%
Другое
oleg_log
Как много вы овертаймите?
(возьмем 8ч как нормальный рабочий день)
(возьмем 8ч как нормальный рабочий день)
ежедневно == только рабочие дни, аргх