Крутилась у меня одна мысль о "code must be greppable", в подкасте будет сложно объяснить, поэтому тут.
Рассмотрим вот такое, где $ это подстановка переменной/интерполяция строки:
И вот представьте, вы нашли метрику в храгилище метрик, в логах, документации. И решили узнать, а где она используется в коде (или прост где еще упоминания её). И вот вы сделали ктрлц-ктрлв и великое Find All.....
Но не находится ничего в коде с
А было бы чуть больше копипасты в _нужном_ месте - жизнь стала бы проще. Конечно, если вы знаете все мели в своем проекте, то круто, но проекты могут быть разные по размеру и вы что-то да оставляете для будущего читателя.
Рассмотрим вот такое, где $ это подстановка переменной/интерполяция строки:
private val rootMetric = "remoteservice.endpoint"
private val successMetric = "$rootMetric.success"
private val retryMetric = "$rootMetric.retries"
private val failureMetric = "$rootMetric.failure"
И вот представьте, вы нашли метрику в храгилище метрик, в логах, документации. И решили узнать, а где она используется в коде (или прост где еще упоминания её). И вот вы сделали ктрлц-ктрлв и великое Find All.....
Но не находится ничего в коде с
remoteservice.endpoint.retries Разве что слова поотдельности, либо в какой-то момент вам везет и вы ищите remoteservice.endpoint.А было бы чуть больше копипасты в _нужном_ месте - жизнь стала бы проще. Конечно, если вы знаете все мели в своем проекте, то круто, но проекты могут быть разные по размеру и вы что-то да оставляете для будущего читателя.
oleg_log
Крутилась у меня одна мысль о "code must be greppable", в подкасте будет сложно объяснить, поэтому тут. Рассмотрим вот такое, где $ это подстановка переменной/интерполяция строки: private val rootMetric = "remoteservice.endpoint" private val successMetric…
Как подсказал Пётр, Линус подобное дежрит в стайлинге Линукса (лол), последнее предложение 2го пункта:
However, never break user-visible strings such as printk messages, because that breaks the ability to grep for them.
Значит стоит прислушаться (ко мне, бгг)
https://github.com/torvalds/linux/blob/master/Documentation/process/coding-style.rst#2-breaking-long-lines-and-strings
However, never break user-visible strings such as printk messages, because that breaks the ability to grep for them.
Значит стоит прислушаться (ко мне, бгг)
https://github.com/torvalds/linux/blob/master/Documentation/process/coding-style.rst#2-breaking-long-lines-and-strings
В одном большом проекте CI занимает 6 минут в среднем. Но иногда случается ШТОТО и проект падает в какой-то ретрай луп на 5000 ретраев (1 ретрай = 1 сек)
Как можете догадаться(или посчитать, фу) это 83 минуты. Общее время билда составило 89 минут (почти уверен, что таймаут на билд 90 мин).
Вообще не понимаю, почему что-то должно ретраиться больше 10 раз, просто увеличить таймаут между попытками и все.
5k get.
Как можете догадаться(или посчитать, фу) это 83 минуты. Общее время билда составило 89 минут (почти уверен, что таймаут на билд 90 мин).
Вообще не понимаю, почему что-то должно ретраиться больше 10 раз, просто увеличить таймаут между попытками и все.
5k get.
А вы читаете книги? (выберете самое частое)
Anonymous Poll
27%
Да, читае всё и везде
23%
Ток техническое
6%
Только художку
3%
Читаю о менеджменте, психологии, стартапах
3%
Аудиокниги
6%
Заменяю книги видосами и подкастами
18%
Читаю редко и по хорошему совету
1%
Другое (конечно в лс тыкните)
12%
<Посмотреть результаты>
Интересная ситуация, срабатывает алёрт на то, что кол-во рпс в БД выросло (естественный рост трафика к праздникам).
Но вот чтобы увеличит значение, нужно подождать билд 4 минуты (правда странно, зачем конфиг алёртов держать вместе с кодом?)
А теперь самое любимое - смёржить никак, потому что в воскресенье вечером нормальные люди отдыхают. Останется только замютить уведомления в pagerduty ¯\_(ツ)_/¯
Но вот чтобы увеличит значение, нужно подождать билд 4 минуты (правда странно, зачем конфиг алёртов держать вместе с кодом?)
А теперь самое любимое - смёржить никак, потому что в воскресенье вечером нормальные люди отдыхают. Останется только замютить уведомления в pagerduty ¯\_(ツ)_/¯
Forwarded from Grumpy Website
@nikitonsky: Today we announced LKJALSDFER. The next revolutuinary thing by JALJSLDMVA after AJLFERMN and JLMVNW!
Гугл все ищет новые способы удержать людей на странице поиска. В будущем можно будет смотреть статус пересылки прям в поиске по номеру самой посылки.
https://webmasters.googleblog.com/2019/12/package-tracking-early-access-program.html
https://webmasters.googleblog.com/2019/12/package-tracking-early-access-program.html
Official Google Webmaster Central Blog
Package Tracking Early Access Program
Official news on crawling and indexing sites for the Google index
Good reviewer - Bad reviewer
Добро пожаловать к Good reviewer - Bad reviewer. Онлайн программу с обзором кода. И сегодня 1й выпуск. Мы, а именно Богдан и Олег, делаем обзор Ristretto, супербыстрого кеша написанного на #go Лайк-подписка-колокольчик ускоряют выход следующего эпизода.…
Ах да, тут же 2й выпуск вышел, а я забыл сообщить. Рассматривали evio, event loop на Go. Совсем не успели глянуть редис-сервер от того же автора. (в описании видоса есть временные метки, проще ориентироваться теперь)
https://t.me/good_bad_reviewer/6
https://t.me/good_bad_reviewer/6
Telegram
Good reviewer - Bad reviewer
(да, стрим не удался, оказалось это сложнее настроить, чем хотелось бы :) к след разу попробуем, пардон)
А в этом выпуске мы рассматривали evio - event-loop на #go.
Внезапно проект оказался сделан чуть сложнее, чем мы планировали (и часть вещей могла быть…
А в этом выпуске мы рассматривали evio - event-loop на #go.
Внезапно проект оказался сделан чуть сложнее, чем мы планировали (и часть вещей могла быть…
Одна тима, которая использует наш сервис для перевода текста, накатала нам очень душный excel файл с примерами, когда markdown был поломан после перевода (user -> md -> gootrans -> md -> user).
И вот, мы такие хмурые собрались смотреть, что же там такое происходит. Через полчаса проверки разных вариантов пришли к единому мнению: пока душная тима не начнет отправлять нам правильный markdown, ничего фиксить и не надо.
Я не знаю каким образов они его наполучали и как его рендерили (рендери ли?). Но урок отличный, перед фиксом багов надо проверить, что данные имеют хоть какой-то смысл.
QUICKUPD: сервис внутренний, пользуются ток разрабы, валидировать = тратить жизненную энергию и производить CO2
И вот, мы такие хмурые собрались смотреть, что же там такое происходит. Через полчаса проверки разных вариантов пришли к единому мнению: пока душная тима не начнет отправлять нам правильный markdown, ничего фиксить и не надо.
Я не знаю каким образов они его наполучали и как его рендерили (рендери ли?). Но урок отличный, перед фиксом багов надо проверить, что данные имеют хоть какой-то смысл.
QUICKUPD: сервис внутренний, пользуются ток разрабы, валидировать = тратить жизненную энергию и производить CO2
oleg_log
Я на этой неделе ныл, что делал тестовое задание на дом, и вот одной из вещей был docker-compose. И так уже вышло, что для каждого нового имеджа надо было все гуглить в разных местах. #нехорошешненько Поэтому я решил собирать их здесь. Скопипастил к себе…
Вау, через полгода вернулся контрибутор и сделал несколько фиксов в конфиги бд. Блин, надо будет еще что-то добавить на неделе.
https://github.com/cristaloleg/docker-compose-collection/pull/3
https://github.com/cristaloleg/docker-compose-collection/pull/3
GitHub
Update by andreiavrammsd · Pull Request #3 · cristaloleg/docker-compose-collection
DB volumes, ports, management.
Очевидное поведение ведь (я про картинку выше).
Is new always better? UDP vs DoH
https://blog.apnic.net/2019/12/06/is-new-always-better-udp-vs-doh/
Is new always better? UDP vs DoH
https://blog.apnic.net/2019/12/06/is-new-always-better-udp-vs-doh/