Size: a a a

2020 March 30
oleg_log
Прикольная вещь. Не более чем сахар с отбрасыванием " != nil " в ифе.

Вроде как не хочется давать кому-то полномочия типа bool, с другой стороны, отпадут целые 6 символов из иф-а.

Брэд еще подкинул мысль, что это потом можно преобразовать в if err { return ..., err } для более краткого кода.

Вспоминаются еще другое предложение: давайтре разрешим писать if в одну строку, тогда все проблемы boilerplate сожмутся в однострочники. Чаще это + чем -.
источник
oleg_log
И пропоузал от Фицпатрика про еррор хендлингу. Прировнять err к boolean в if блоке.

if err {

https://github.com/golang/go/issues/38151
источник
2020 March 31
oleg_log
Узнал о прикольном проекте RediSQL https://redisql.com/

Как можно догадаться: RediSQL is the Fast, in-memory, SQL engine with batteries included.

Не уверен, зачем бы я его брал в прод, но прикольно.

Написан на Rust с любовью https://github.com/RedBeardLab/rediSQL
источник
oleg_log
Узнал одну историю про "паблик шейминг" в большой фирме. Так вышло, что человек сделал хорошую тулзу, в свободное время (или как мы все, чутьчуть в рабочее :) и запостил для обозрения.

Но вот эту поделку неоч заценили. Сказали ай-ай, а почему не пофиксил внутреннюю наработку. Стоит заметить, что поделка была сделана на немейнстримном языке (тем более в фирме).

С одной стороны можно понять начальство и сокамерников, которые наехали на автора: "мы тебя понимаем, оно работает, стало удобнее, но поддерживать никто не сможет (кроме тебя), ты гребёшь против течения".

Разработчика точно не стоит, смысла мало. Проект сделан, в свободное время. Понять простить. Мне кажется, что тут надо винить тимлида.  Казалось бы, причем тут тимлид?

1. если что-то кому-то в команде не ок, это тимлид должен следить и пытаться помочь команде, ведь достаточно выделить время. Наверное самый дорогой ресурс, но время ж будет потрачено на полезное?

2. если человек что-то делает для работы в свободное время от работы, то...что он делает на работе? Овертаймы это прикольно, но выжимать сотрудников - странная мысль (давайте рассматривать случай, когда фирма заботится о людях, хоть чуть).

Наверное стоит еще заметить, что это тулза/клиент к чему-то. То есть мало кому интересны внутренности, главное что работает и есть новые-полезные фичи. Стоит ли ругаться, что это может поддерживать 1 человек? Спорный момент, обе стороны правдивы.

Так что это грустненькая история. Чем больше я слушаю разных специалистов и что они думают о вещах вне работы, то больше убеждаюсь: при правильном менеджменте можно сделать больше полезного, чем во время квартала с отчетом по OKR (вчера 2ч готовился, чтобы сегодня в 3 минуты в спешке рассказать, не успевали все, класс)
источник
oleg_log
А вас "паблик шеймили" ?

Паблик читайте как на всю фирму, в бложике, форме, на собрании и тд
Анонимный опрос
4%
Да, из-за похожей проблемы (решение на другом языке/технологиии в свободное время)
2%
Причиной было моё поведение вне работы
5%
То, как я общался(лась) с другими сотрудниками или клиентами
1%
Из-за политических взглядов
2%
Мое отношение к меньшинствам, религиям, другим полам и прочим группам людей
5%
Сомнение в целях команды и фирмы, за это по шапке надавали
5%
Мемы и мой черный как консоль юмор (поделитесь шуткой-то!)
9%
Недостаточное командное поведение (никакого пива/пиццы по пятницам и отказ от прочих мероприятий)
65%
Результаты / ничего такого не было (пока)
2%
Другое? + можете в лс рассказать
Проголосовало: 504
источник
oleg_log
(s/форме/форуме + email рассылке или как там у вас)
источник
oleg_log
источник
oleg_log
В следующей версии cats не надо будет импортировать инстансы тайпклассов для типов из стандартной библиотеки!

Это изменение — огромный шаг для cats в направлении от библиотеки для ФП к «батарейкам» для стандартный библиотеки.

Сейчас, чтобы написать

@ List(Some(1), None, Some(3)).combineAll
res4: Option[Int] = Some(4)

надо либо импортировать вообще всю библиотеку в своё пространство имён через import cats.implicits._, либо написать 4 (!) совершенно неудобных импорта

import cats.syntax.foldable._
import cats.instances.list._
import cats.instances.option._
import cats.instances.int._

что напрочь убивает выгоду от использования котов в этом месте. В следующей версии будет достаточно подтянуть только import cats.syntax.foldable._ или просто import cats.syntax.all._, и это прекрасно.

А ещё нововведения Scala 3 в целом располагают к такому дизайну библиотек.

Лайкнуть PR Трэвиса Брауна можно здесь: https://github.com/typelevel/cats/pull/3043
источник
2020 April 01
oleg_log
Open Access to ACM Digital Library During Coronavirus Pandemic

For the next three months, there will be no fees assessed for accessing or downloading work published by ACM. We hope this will help researchers, practitioners and students maintain access to our publications as well as increasing visibility and awareness of ACM’s journals, proceedings and magazines. Please be sure to inform your colleagues that the ACM DL is now open, and will continue that way through June 30, 2020.

https://www.acm.org/articles/bulletins/2020/march/dl-access-during-covid-19
источник
oleg_log
источник
oleg_log
Папками в Телеге пользуетесь?
Анонимный опрос
21%
Оч активно, все по папочкам
30%
Совсем чуть добавил(а)
8%
Неа, потыкал(а) и удалил(а)
18%
Ого, папки уже есть?
8%
Они не нужны были
9%
Фича плохо сделана
6%
Другое
Проголосовало: 1045
источник
oleg_log
Fibtbit поделился аналитикой как уменьшилось количество шагов у пользователей их браслетов. В среднем по миру это цифра от 10% до 15%, я думал будет раза в два больше.

https://blog.fitbit.com/covid-19-global-activity/
источник
2020 April 02
oleg_log
По совету @bortlog посмотрел AlphaGo - The Movie | Full Documentary. Можно сказать художественная история о AlphaGo. Круто, хотя смотрелось на 2х.

Если у вас что-то есть про внутренности AlphaGo (а я знаю, есть) - подкиньте. Скорее интересно не черствый paper, а объяснение для еще живых людей не в теме. Заранее спасибо.

А может и не по альфаго поделитесь, если будут годные предложения, можно будет и сборник сделать.

https://www.youtube.com/watch?v=WXuK6gekU1Y&feature=youtu.be
источник
oleg_log
Интересная эта вещь - распределенные БД. Они часто крутые, с точки зрения инженерного решения. Вот эти крутые вещи как масштабирование и доступность.

Но вот возникает вопрос - почему при падении одной ноды (к примеру Кассандры) начинает сыпаться весь сервис?

Мы уходим от этого страшного и медленного "реляционного мира" в так называемый web-scale, но при падении части БД, мы так же недоступны, как если бы это был 1 инстанс плохого Постгреса. Где профит спрятан?

Хранить десятки Тб в C* это круто и стильно, но какой смысл, если это антиквариат (в силу неправильного использования) ? Сдувать пылинки и надеяться, что ничего не рассыпится. Странный способ построения сервисов.

PS. наезд был не на БД, а на неправильное использование.
источник
oleg_log
Слайды с гоферконру 2020 привезли (https://t.me/teamerlin/6060)

Но я больше всего залип по TLA+ отличный доклад.

https://speakerdeck.com/gopherconrussia/tla-plus-tools-praktichnyi-instrumient-formal-noi-vierifikatsii-alghoritmov-alieksiei-naidionov
источник
oleg_log
Последние 2 мема Профанктора чесно украдены мною из этой статьи: почему же никто не фиксит баги.

Backlogs should be growing indefinitely. What a good team will do is to accept that, and establish a good relationship between product and tech, and make sure you constantly keep reprioritizing. Maybe today it's shipping a bunch of features the business needs. Maybe tomorrow it's paying down some tech debt.

Я не совсем согласен с "should be growing indefinitely" ведь а) многое что становится неактуальным б) надо знать границы.

https://erikbern.com/2020/03/10/never-attribute-to-stupidity-that-which-is-adequately-explained-by-opportunity-cost.html
источник
oleg_log
источник
2020 April 03
oleg_log
Наверное многое слышали про robots.txt для помощи кравлерам и поисковым движкам. Сегодня я узнал, что есть еще и security.txt

Содержит контакты для проблем с безопаснотью, подписи, благодарности и ссылку на хайринг. Однако прикольно. (интересно, гугл учитывает наличие этого файла при ранжировании?)

https://securitytxt.org/
источник
oleg_log
Created 2013
Resolved 2019
Remaining 67.5h

🤔

(мне нужно проверить, как там Zookeeper может в безопасность, вот прыгаю по ишью, ведь release notes это наказание хуже карантина, https://issues.apache.org/jira/browse/ZOOKEEPER-1634)
источник
oleg_log
Type in Morse code by repeatedly slamming your laptop shut

https://github.com/veggiedefender/open-and-shut
источник