• 5 причин грустить из-за смерти Adobe Flash
    0

    Gemcraft!

  • Скользкие термины
    +1

    Для себя энтропию или «меру неупорядоченности системы» объясняю как «количество бардака вокруг». Есть такой шуточный взгляд, что любая полезная деятельность человека это по сути попытки уменьшить энтропию вокруг. Стереть пыль, помыть посуду, вынести мусор — уменьшение энтропии. Скачивать файлы в папку Downloads, кидать одежду где попало, коробочка с шурупами и винтиками вперемешку — увеличение энтропии.
    Точно такие же объяснения и в физике — растёт температура, атомы двигаются быстрее, энтропия повышается. Температура уменьшается, атомы «застывают», энтропия понижается, вплоть до нулевой энтропии: остановки атомов при 0 Кельвинов.

  • Только добровольцы — шаг вперед
    0

    А почему в тэгах Brainfuck?


    image

  • Обновился наш плагин для Grafana — Statusmap panel 0.3.0
    +1

    Да. С самого начала у нас была именно такая задумка и мы её придерживаемся :)

  • Валидация Kubernetes YAML на соответствие лучшим практикам и политикам
    +1

    Возможности проверок через Jsonschema в Polaris и правда урезаны. Даже не столько набором валидаторов jsonschema, а тем что проверять можно Pod или Container.


    target: Container # target can be "Container" or "Pod"

    Похоже, что в недостатки Polaris можно добавить «Не умеет работать с CRD».

  • Grafana, InfluxDB, два тега и одна сумма. Или как посчитать сумму подгрупп?
    +1

    Спасибо за развёрнутый ответ! У меня опыт с Prometheus и я как-то предположил, что тамошние операции с указанием интервала это примерно тоже самое что и GROUP BY ($__interval) в Influx. Там есть семейство операций *_over_time и вот они как раз умеют работать с $__interval с учётом данных во всех промежуточных точках, которые есть в базе.


    Чтобы не пропустить редкие случаи проблем и при этом не запрашивать много точек, помогают min_over_time/max_over_time/count_over_time, но можно пойти дальше и сократить количество запрашиваемых точек, т.к. важен только факт присутствия какого-то статуса в промежутке времени. Собственно так и появился плагин grafana-statusmap, с ним количество запрашиваемых точек выходит меньше, чем для $__interval, но при этом всё равно можно видеть редкие проблемы. Т.е. в вашем случае на доске с тестами я бы сделал отдельный график «Запуск тестов» или «Статус тестов» с этим плагином и показывал бы на нём наличие метрик по тестам или метрику успешности тестов. При этом на графиках с DERIVATIVE() может быть пусто, но в «Статус тестов» будут квадратики — значит в то время был неуспешный тест, значит можно уточнить time range, $__interval уменьшиться и на графиках что-то появится.
    Если есть желание попробовать, можно в личке обсудить, я бы потом утащил в README как пример использования для influx.

  • Kubernetes 1.18: обзор основных новшеств
    +2

    Гречка в контейнерах затарена. Нет, не в эфемерных.

  • Grafana, InfluxDB, два тега и одна сумма. Или как посчитать сумму подгрупп?
    +1

    Про $granularity не очень понятно. Это переменная dashboard-ы со списком, чтобы вручную выбирать интервал группировки? А чем не подходит GROUP BY ($__interval)?

  • Локальный прокси-сервер для фильтрации браузерного трафика
    +1

    Вспомнил Proxomitron, свело олдскулы ;)

  • Выпущен «шрифт для разработчиков» JetBrains Mono
    +1
  • Разработчики — никакая не элита, а голые короли индустрии
    +13
    непобежденная склонность к громким фразам, легким передергиваниям и веселому слалому вокруг удобных мне примеров

    В общем-то от водителя автобуса требуется знание только одного фреймворка — ПДД. А если глянуть на усреднённую вакансию фулл-стек программиста, так там ты дизайнер салона автобуса, водитель и механик с навыками управляющего автобусным парком в одном лице, почему бы и не заявить райдер с мятным чаем в туалете.

  • Как я научился работать с микроконтроллерами — опыт новичка
    0
    И да, про Arduino тогда никто понятия не имел.

    В 2009ом никто не имел понятия? Как это? Заказал diecimila в Линуксцентре ещё в 2008ом как раз чтобы попробовать программирование МК.

  • «Kubernetes увеличил задержку в 10 раз»: кто же в этом виноват?
    +1

    Естественная реакция разработчика, когда приходят типы со стороны и начинают внедрять что-то неведомое. И понятно, что виновато именно это нечто: "пришли со своим %NEW_TECH_NAME% и всё сломали, раньше всё отлично работало".

  • История одного хака или не злите программиста
    +1

    В случае чего можно будет сказать, что «эту штуку мне дали на кассе» и сделать невинный взгляд ;]

  • Свистать всех на Linux, гром и молния
    0

    Респект за прохождение этого квеста до конца! Сам был в схожих условиях, но полностью отказаться от винды не смог. Пробовал exquilla плагин, словил странных ошибок, пробовал пробить imap для exchange, админы наотрез отказались, календарь, доменные контакты даже не стал уже смотреть. Снёс с винды всё, что имело замену на линуксе, уменьшил раздел, dd-хнул на внешний винт, поставил на ноут kubuntu и запускал винду в VirtualBox, благо железо позволяло.

  • Экономим время при работе с командной строкой
    0

    Сразу же приходит на ум jq/yq, но они неинтерактивные. Однако оказалось, что есть fx в нём как раз и подсветка и фолдинг

  • Обмен секретными сообщениями через серверные логи
    0
    Можно вспомнить, как раньше некоторые продвинутые компании размещали вакансии для разработчиков в заголовках HTTP или в коде HTML-страниц.

    Теперь это в js-консоли делают и не только для разработчиков. Яркий пример на сайте qiwi.

  • Собирать Docker-образы в werf теперь можно и по обычному Dockerfile
    0

    Это https://asciinema.org/ скорее всего, делали ролики когда-то для статей про dapp. Жалко, что хабр не умеет делать для них embed, можно только ссылку с картинкой.

  • Если вы не отзовётесь, мы напишем… в «Спортлото»
    0
  • Еще один способ оптимизации docker-образов для Java приложений
    0
    Целью оптимизации является сокращение разницы между получаемыми образами от сборки к сборке

    Дело как раз в дополнительных модулях: они являются источниками постоянных изменений для слоя, даже если вы не вносите в код модуля никаких правок

    На правах рекламы: попробуйте сборку werf-ом (https://github.com/flant/werf), в ней можно указать зависимость сборки от изменений в файлах в git. Поменялись исходники модуля — будет собираться, не поменялись, возьмётся из кэша. Была статья про сборку именно Java приложений https://habr.com/ru/company/flant/blog/348436/. Это ещё старая версия программы (dapp), но идеи почерпнуть можно.

  • Что такое GitOps [по версии Weaveworks]?
    +1

    Такого репозитория я не видел. Пока есть getting started документация от flux: https://github.com/weaveworks/flux/blob/master/site/get-started.md. Но там нет конфигов для развёртывания самого куба.


    А было бы круто прям с нуля сделать git clone, start.sh и уже готовый куб поднялся где-то в AWS, остаётся только коммиты пушить для изменений.

  • Пришло время заменить GIF на AV1 видео
    0
    Там, куда мы направляемся, нам не понадобятся GIFы!

    Github давно зовут, но к сожалению пока не идёт что-то. :(

  • Успех социального эксперимента с поддельным эксплойтом для nginx
    0

    Это вирусная реклама статей про восстановление файлов.

  • Большой механический дисплей с кулачковым механизмом в качестве дешифратора
    0

    На Архстоянии было такое: https://youtu.be/GEtBua9hl50?t=179

  • DevOps LEGO: как мы пайплайн на кубики раскладывали
    0
    если что, схему вы получаете сразу после ввода исходных данных

    Как-то не очевидно работает кнопка Показать/Скрыть, но по полосе прокрутки видно, что ниже что-то появляется. А после Отправить надо прокрутить вверх за результатом.

  • Успех социального эксперимента с поддельным эксплойтом для nginx
    +12
    чтобы обмануть массу компетентных людей доверившихся его репутации?

    поправил

  • Kubernetes захватит мир. Когда и как?
    0

    Тем не менее, в issue и pr exporter-ов приходит Brian Brazil и рассказывает как нужно делать exporter-ы, чтобы было prometheus-way© ;)

  • Человек без смартфона
    +1

    Все 3 нокии, которыми пользовался, тоже имели лимит на количество смс. Это вам похоже повезло с конкретными моделями, если больше чем 5 лет назад не встречались с ограничием.

  • Kubernetes захватит мир. Когда и как?
    +1

    Если интересует именно вклад в Prometheus, то были PR в exporter-ы. Вот, например, https://github.com/prometheus/statsd_exporter/pull/164.

  • SpaceX успешно запустила первые 60 спутников системы глобального интернета Starlink
    +12

    РПН разошлёт ультиматумы додо, пападжонс, яндекс.еде, деливери клаб и прочим. Регистрироваться в реестре юридических лиц — ответственных производителей и организаторов оперативной доставки пицц никто не станет, все перейдут на выпечку и доставку «открытой кулебяки».


    P.S. По опросам левады и вциома внесение пиццы с ананасом в реестр запрещённых пицц поддержит 91,42%.

  • Nixie clock на индикаторах ИН-18
    0

    Всё просто — размер цифр. ИН-18 — 40мм, ИН-14 — 18мм.


    Так-то более-менее доступны Z568 с цифрами 50мм. Есть оригинальные на ebay, есть от Далибора. Дальше вопрос либо соглашаться на 600-800 евро за 4 лампы, либо искать подешевле. ИН-18 для подарка — отличный выбор.

  • Мониторинг мёртв? — Да здравствует мониторинг
    0

    Так по-моему это и есть один из посылов доклада: современный мониторинг это не изолированный компонент, а неотъемлимая часть самого приложения и у разработчиков в плане должно быть заложено время на реализацию источников метрик.

  • Kubernetes tips & tricks: о локальной разработке и Telepresence
    +1
    После запуска Telepresence без опции --docker-run

    С опцией --docker-run всё ясно-понятно: из образа будет запущен контейнер, который заместит контейнер в кластере.
    А вот про «без опции» что-то не до конца въеду. Локальная машина будет якобы контейнером в кластере, так? Что будет, если таких команд несколько запустить, начнут мешать друг другу?

  • Представляем shell-operator: создавать операторы для Kubernetes стало ещё проще
    0
    metacontroller создаёт deployment с nginx и initContainer, который выкачивает с s3 и распаковывает.

    Я правильно понимаю, что логику создания и логику выкачивания надо в js/py скрипте сделать? Сам metacontroller только за событиями следит и запросы к скрипту делает?


    CR… не rocket science

    Имел в виду, что rocket science это всё, что стоит за CR — для организации этой машинерии надо обладать каким-то опытом. Пока инженер поймёт, чем CompositeController отличается от DecoratorController, а ему надо всего лишь за лейблами на подах следить и kubectl apply сделать, да он всё бросит и крончик напишет.


    Но вообще согласен, если умно выделить типы часто встречающихся задач и оформить в виде sync скриптов и CRD с документацией аргументов, то конечно проще будет CR написать нужный.

  • Представляем shell-operator: создавать операторы для Kubernetes стало ещё проще
    0

    MyDevEnvironment, который создаст namespace и secret наверное было бы круто и красиво… Но это дополнительная сущность в кластере, для которой придётся описать CRD, где-то её задокументировать, донести до всех участников процесса, что мы теперь почему-то не создаём обычный Namespace, а делаем только MyDevEnvironment.
    Дальше нужно будет описать контроллер в yaml и sync скрипт, чтобы следить за референсным секретом и за новыми MyDevEnvironment.
    В целом это конечно проще, чем ребят в командах обучить писать на Go и OperatorSDK, но всё равно это будет непонятный rocket science для задач, которые решаются запуском пары kubectl команд и выражением для jq.


    Но за ссылку спасибо, надо будет изучить подробнее. И кстати есть план добавить поддержку CRD, чтобы хуки могли по onStartup определить свой CRD и в дальнейшем следить за событиями от создаваемых CR.

  • С таблицей Менделеева по жизни
  • GeekBrains совместно с Ростелекомом проведут IoT Хакатон
    +1

    Вот да, хакатон по IoT без обещания предоставить осциллограф и логический анализатор каждой команде это что-то странное.

  • Новые языки программирования незаметно убивают нашу связь с реальностью
    +3

    Фам Нювен несколько лет провел, обучаясь программировать и исследовать.
    Программирование восходило к началу времен. Как та навозная куча за замком
    отца. Когда ее промыло ручьем на десять метров вглубь, обнаружились
    искореженные корпуса машин — летающих машин, как говорили крестьяне, еще от
    тех великих дней колонизации Канберры. Но та навозная куча была чистой и
    свежей по сравнению с тем, что лежало в локальной сети "Репризы". Были
    программы, написанные пять тысяч лет назад, когда человечество еще не
    покинуло Землю. И самое чудесное (самое ужасное, как говорила Сура) было то,
    что, в отличие от бесполезных обломков прошлого Канберры, эти программы все
    еще работали! И через миллион миллионов запутанных нитей наследования многие
    из старейших программ все еще выполнялись во внутренностях системы Кенг Хо.
    Например, методы слежения за временем у торговцев. Поправки вносились
    неимоверно сложно — но на самом дне лежала крошечная программа, которая
    гоняла счетчик. Секунду за секундой отсчитывала система Кенг Хо с того
    момента, как нога человека ступила на Луну Старой Земли. Но если
    приглядеться еще пристальнее… начальный момент был миллионов на сотню
    секунд позже; момент "ноль" одной из первых компьютерных операционных систем
    Человечества.
    Значит, под всеми интерфейсами верхнего уровня лежат уровни поддержки,
    слой на слое. Какая-то часть этих программ была создана для совершенно иных
    ситуаций. То и дело несоответствие рождало фатальные инциденты. Вопреки всей
    романтике космических полетов, чаще всего катастрофы вызывались древними
    забытыми программами, которым удавалось взять реванш.


    Вернор Виндж. «Глубина в небе»

  • KubeSail и его бесплатный Kubernetes-кластер для разработчиков
    +1

    Спасибо, ещё один проект в копилку. Пока для разработки внутренних утилит используем https://github.com/kubernetes-sigs/kubeadm-dind-cluster (упомянут среди альтернатив kind). Удобен тем, что можно одновременно поднять разные версии куба.

  • A small notebook for a system administrator
    0

    There is one cool feature that exists on some IoT boards but lacks on PCs: USB client mode and software defined USB hardware. Adminbook can be used as a CD drive, a keyboard, a mouse or even as a videocard and these devices can be combined into hybrid usb device.