oleg_log
1.76K subscribers
1.86K photos
130 videos
9 files
2.78K links
Shelter for antisocial programmers "Oleg"

halp: @olegkovalov
web: https://olegk.dev
fov: @oleg_fov
chat: @oleg_log_blabla
podcast: @generictalks
Download Telegram
Последние дни много кто обсуждал MeiliSearch, альтернативу ElasticSearch на Rust. Есть сомнения, что альтернатива, скорее просто движок для поиска, которых оч много.

Забрёл я в тред на ХН и увидел интересный комментарий от Andrew Gallant (BurntSushi), автора крутых либ на расте (советуб глянуть, там много чего крутого).

Так вот его комент, ответ на наезд, что там раст, который с Си и который не такой safe как хотелось бы (LMDB используется):

> and if you expect the certainty that Rust provides w.r.t to security, race conditions and leaks
Rust's safety story covers neither race conditions nor leaks.

Data races and race conditions are orthogonal, according to some: https://blog.regehr.org/archives/490

Как раз эту статью и советую прочитать, где рассказывается, что такое data race и что такое race condition.

ХН https://news.ycombinator.com/item?id=22685831
Сидишь такой, подчищаешь вещи, и узнаешь, что уже 8 месяцев в системе мониторинга и алёрта проверяются те метрики, которые не существуют. Да, оно просто каждую минуту, в течении 8 месяцев пишет, что такой метрики нет.

Кроме как быть внимательнее, наверное и нечего добавить (ах да, эт я их делал 8 мес назад). Но есть одна вещь, которая всегда мне неприятно резала глаза.

Это я о разъезде в наименовании. Не раз в разных проектах и фирмах встречал подобное:

stats.<domain>.<project>.4xx
stats.<domain>.<project>-stag.4xx
stats.<domain>.<project>-dev.4xx

Собственно вопрос - какое вероисповидание и воспитание, заставило запретить в 1м варианте написать -prod ? Если уж быть консистентным, то на все 100%

Самое приятное, что такие вещи в скриптах (в зависимости от окружения prod/stag/test/dev/etc) становятся простыми как палка. У вас корее какой-то dict, и в зависимости от окружения выбирается вариант.

А парсится как приятно! Люди, не мудрите 🙌
Там другие шуточки в треде оригинального твита есть.

https://twitter.com/QuinnyPig/status/1243319088853553152
Давно пора было
нашёл в треде про самую дорогую апишку AWS (https://xn--r1a.website/oleg_log/2970) дикую вещь под названием AWS Ground Station. Это реальная наземная спутниковая станция, которую можно использовать как uplink/downlink для спутников и рулить ими через авс

Спутниковая
Станция
Как
Сервис
https://aws.amazon.com/ground-station/
Forwarded from Generic Talks (Oleg Kovalov)
Generic Talks опять Live, подключайтесь :)

https://www.youtube.com/watch?v=WLo3SDFiEZQ
Красота
Media is too big
VIEW IN TELEGRAM
Одно из самых доступных объяснений процедурной анимации, которое можно найти в интернете.

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

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

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

Вспоминаются еще другое предложение: давайтре разрешим писать if в одну строку, тогда все проблемы boilerplate сожмутся в однострочники. Чаще это + чем -.
Узнал о прикольном проекте RediSQL https://redisql.com/

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

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

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

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

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

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

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

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

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

Так что это грустненькая история. Чем больше я слушаю разных специалистов и что они думают о вещах вне работы, то больше убеждаюсь: при правильном менеджменте можно сделать больше полезного, чем во время квартала с отчетом по OKR (вчера 2ч готовился, чтобы сегодня в 3 минуты в спешке рассказать, не успевали все, класс)
Forwarded from Lil Functor
В следующей версии 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
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
Fibtbit поделился аналитикой как уменьшилось количество шагов у пользователей их браслетов. В среднем по миру это цифра от 10% до 15%, я думал будет раза в два больше.

https://blog.fitbit.com/covid-19-global-activity/