|
|
|
July 19th, 2024
12:04 am - Скорость сети на виртуалках
На очень разных виртуалках у разных хостинг провайдеров очень по-разному сделана сеть. И - иногда это очень неочевидный момент.
Например, если запустить бенчмаркинг какого-нибудь днс сервера, то может оказаться, что на одной виртуалке можно сделтаь 150 тысяч запросов в секунду, а на другой - примерно 4.
Защита это от ддос атак изнутри?
А если надо запускать какое-то приложение из кучи микросервисов с кучей горизонтального трафика, то как это работать будет?
|
July 4th, 2024
05:02 am - MySQL и репликация Беру назад всё хорошее, что я говорил про репликацию в мускле.
Теперь её можно сломать простым create user, получив ошибку "The password hash doesn't have the expected format".
|
July 8th, 2022
08:36 am - VSCode vs Sublime Раз в год я пытаюсь перейти с Sublime на VSCode. И я не понимаю, что с VSCode не так, но я каждый раз не могу к нему привыкнуть и не получается заставить себя провести в нём достаточно времени, чтобы разобраться с тем, как в нём всё устроено.
Нюанс так же и в мотивации - у меня есть лицензия на Sublime, он достаточно хорошо работает, большинство плагинов есть для них обоих и мне их в целом хватало, а VSCode заметно тормозит и избыточен интерфейсом.
Но теперь я начал использовать больше современных технологий, делаю сайты на Hugo, и для VSCode есть куча расширений для добавления подсветки синтаксиса в шаблонах Hugo (upd: она ломает всё, пришлось отключить), а для сублайма нет.
Но вот что, внезапно, оказалось невероятно удобно - это гораздо более качественный автокомплит, отличнейшая интеграция с WSL и суперудобная работа с git.
Пока непонятно, получится ли перейти на это для разработки на перле, но с сайтами на Hugo - перешел за два дня и в этот раз обратно уже совсем не хочется.
Так же любопытно, что впервые получилось пересесть на тёмную тему - выбрал One Dark Pro. Логика тут такая - читаемость светлого текста на тёмном фоне лучше (хотя контрастность меньше, но это отдельная интересная тема кучи исследований), я очень много пишу/правлю кода, глаза должны меньше уставать. Пока, вроде, работает.
Раньше у меня были какие-то проблемы с постоянным переключением окон с тёмных для кодинга и светлых в браузере с сайтом, но, кажется, это перестало быть проблемой. Кстати, для нормальной читаемости пришлось поставить шрифт Menlo и размер 16. С рендерингом шрифтов, правда, непонятно - этот 16 выглядит примерно как 11 в сублайме.
И отдельная мегаболь - у сублайма есть общая Command Palette, в которую вынесено всё, и даже Goto Anything, через который можно ещё более совсем всё, и это один хоткей, после которого можно что-то набрать и всё сразу будет. У VSCode это отдельно открытие файла, отдельно команды, отдельно настройки. Например, переключить тему или шрифт можно только в настройках и это всегда куча кликов. Когда в каких-то новых условиях выбираешь новую тему - очень неудобно.
|
July 5th, 2022
09:00 pm - Авито Ну что, мне правильно кажется, это это такой враждебный захват авито через принятие удобных законов?
|
05:59 am - Hugo Уже почти год делаем все свои сайты на Hugo. И он прекрасен. Но...
- Документация пока всё еще так себе
- Даже за последние пол года там что-то периодически ломали и чинили между версиями, и это не просто отслеживать
- Шаблоны и их логика... Это просто надо прочитать несколько раз документацию, понять, принять и простить.
Но вот что реально бесит - это глупая идеалогия в разных местах во имя правильности, когда страдает удобство.
Вот зачем, например, не разрешать в файлах контента использовать шаблоны? На практике, когда надо сделать сайт на 2-3 страницы это приводит к тому, что надо отдельно делать пустой контентный файл c YAML front matter исключительно ради прописанных Title и description, и отдельный шаблон к этой странице.
И тут страдает всё - здравый смысл (зачем редактировать два штучных файла ради каждой одной страницы?), ресурсы (в современных дисках и файловых системах один файл на 300 байт - минус 8 килобайт диска), удобство работы (опять - по два файла на каждую страницу, куча табов в редакторе, помнить/смотреть какой шаблон редактировать для какого контентного файла). И всё... не решает никакой задачи, даже идеологической правильности (которая нарушена много раз в разных других местах).
Казалось бы, можно решить кучу проблем, просто разрешив встраивать шаблоны в контентные страницы... Но нет (
|
June 20th, 2022
03:42 pm - ClickHouse Тем временем, за время коронавируса в кликхаус завезли конфиги в yaml и json в полях.
Чудо то какое, 21ый век.
|
07:27 am - Openvz 9 Кто-то уже пробовал Openvz 9? Стабильной восьмой версии так и не случилось, обратную совместимость со старыми контейнерами, видимо, потеряли...
https://www.virtuozzo.com/company/blog/product-updates/virtuozzo-hybrid-server-9-alpha/ выглядит спорно, особенно
- XFS is now the default filesystem used in Containers
- QCOW2 disk images can be used as virtual disks for Containers
но, допустим, для мира энтерпрайза это может как-то адекватно.
Заодним, что всё-таки с read и write amplification у ext4 vs xfs vs zfs?
В одном исследовании получалось, что у xfs write amplification сильно больше, чем у ext4 (не смог его нагуглить), в другом (раз, два) получается наоборот. При этом, во всех случаях, которые я наблюдал на практике, все большие сетапы с xfs под хостинговые задачи (миллионы мелких файлов) имели большие проблемы с тормозами файловой системы и это всегда отлично решалось переходом на ext4.
|
December 30th, 2020
04:34 pm - Языки на букву P Чем дальше в сторону от веба, тем более комьюнити в перле какие-то чудаки на плохую букву.
На столько часто сталкиваюсь с этим в последнее время, что всерьез начинаю думать о смене религии на питон.
Такие дела.
Опять же, к чему угодно современному на питоне биндинги сейчас отличные есть, а под перл если и напишут вообще - исключительно странное и с своеобразной документацией.
|
November 14th, 2020
07:47 am - Отвлекание разработчика Есть известная проблема - контекст свитчинг программиста стоит 15 минут и, поэтому с точки зрения бизнеса его очень плохо отвлекать лишний раз. Однако в командной работе программиста регулярно отвлекают коллеги или начальники и этот процесс, казалось бы, единственно возможный и тут ничего нельзя изменить.
Последнее время я видел частое упоминание двух практик, которые, в целом, как-то решают эту проблему - публикование статуса в скайпе (или другом im) или выделение определенных часов в день, когда человека ни в коем случае нельзя отвлекать и часов когда отвлекать можно (обычно, с публикацией указанных часов в общедоступном календаре).
Это все, очевидно, методы совершенно отвратительные, ибо нормальному человеку сложно и, обычно, вообще невозможно помнить, что надо менять статус в скайпе (теоретически, можно заставить и приучить себя это делать, но в целом очевидно что статус ставится просто один раз и потом про него забывается навсегда), а выделение специальных часов должно работать для крайне небольшого числа людей - многие разработчики иррационалы, и в какие часы им захочется и получится эффективно поработать в конкретный день они узнают исключительно тогда, когда это время наступит.
И вдруг мне придумалось простое изящное решение - приучить разработчика постоянно отчитываться в определенный чат о том, что он делает. Это, в сочетании с хорошо организованной последовательной работой позволяет, с одной стороны, его начальнику понимать прогресс и сроки, а с другой стороны позволяет понимать, когда его можно отвлекать. Особенно хорошо, если разработчику разрешить честно писать что у него прямо сейчас прокрастинация и он ничего не делает по работе.
Этот процесс, вероятно, можно прилично автоматизировать - если последние окна - это приложения какой-то среды разработки/отладки и недавно нажимались кнопки/двигалась мышь - человек работает, если человек переключился на вконтактик-телеграм больше, чем на пару минут - у человека прокрастинация и его можно, и даже нужно, отвлекать рабочими вопросами, а если нет никакого движения - человек, возможно отсутствует (например, пьет чай), что легко проверяется, например, вебкамерой или каким-то датчиком на месте.
Что думаете? А как эту проблему решаете вы?
upd: оказывается, я не изобрел ничего нового. По сути - это андон.
Андон (в переводе с японского «лампа», англ. andon) – средство информационного управления, которое дает преставление о текущем состоянии хода производства, а также при необходимости создает визуальное и звуковое предупреждение о возникновении дефекта. Это один из главных инструментов в реализации принципа организации производства дзидока - остановка процесса ради улучшения качества -- http://www.up-pro.ru/encyclopedia/andon.html
|
07:05 am - Perl is Dead. Python is the New Java Недавно я увидел весьма интересную статью - Perl is Dead. Python is the New Java. В тексте много спорного, включая вставку про отладку, в которой слишком много фанатизма, но идея в заголовке, вполне возможно, и даже вероятно, сейчас правильная.
Мне последнее время приходится немножко читать/писать на питоне и я нахожу весьма удивительным, что при общей похожести очень многие вещи в нем принято делать значительно иначе и совсем не так, как в перле, и какая-либо совместимость для, например, миграции отсутствует напрочь. Это весьма неудобно - мне как раз приходится какие-то вещи переписывать с питона на перл, и другие вещи, наоборот, с перла на питон.
Например, для традиционных pack/unpack и printf/sprintf используются совершенно разные шаблоны (т.е. при одном и том же значении буквы в шаблонах отличаются полностью и означают совсем другое), причем перловый вариант, кажется, примерно полностью совпадает с классическим Си.
При этом printf/sprintf в чистом виде в питоне как бы отсутсвует, а для паддинга строк, например, видимо принято делать str(...).zfill(...).
Надо признать, что это и многое другое в питоне начинает казаться значительно более юзерфрендли, чем в перле. Серьезно, невозможно помнить наизусть шаблоны для pack/unpack и printf/sprintf, если не пишешь что-то с ними каждый день, в то время как, наример, str(...).zfill(...), наоборот - невозможно забыть.
Любопытно и то, что в Raku, судя по всему, подобные неинтуитивности исправлены.
|
|
|