Как стать автором
Обновить

Все потоки

Сначала показывать
  • Новые
  • Лучшие
Порог рейтинга
  • Все
  • ≥0
  • ≥10
  • ≥25
  • ≥50
  • ≥100

Как управлять Kubernetes кластерами с помощью Flux, Helm Operator и Git submodules

Системное администрирование*Git*DevOps*Kubernetes*
Из песочницы

Kubernetes используют так или иначе сейчас примерно все, но и задачи решаются совсем разные. Я расскажу про наши требования и разработанные под них решения для управления множеством кластеров. По теме GitOps не так много статей и обсуждений на Хабре, в отличие от англоязычных источников, поэтому будет интересно и услышать мнение тех, кто применял подход на своей практике.

Читать далее
Рейтинг0
Просмотры97
Комментарии 0

Новости

Показать еще

Новые API в .NET 6

Блог компании MicrosoftПрограммирование*.NET*API*C#*

.NET 6 в процессе разработки, и я хотел поделиться некоторыми из моих любимых новых API в .NET и ASP.NET Core, которые вам обязательно понравятся. Почему они понравятся? Потому что они разработаны при прямом участии нашего фантастического сообщества разработчиков .NET. Подробнее в статье.

Читать далее
Всего голосов 1: ↑0 и ↓1-1
Просмотры232
Комментарии 1

Как работая из дома оставаться здоровым и не сойти с ума

ФрилансКарьера в IT-индустрииУдалённая работа
Из песочницы

Привет всем удаленщикам, кто остается после рабочего дня доделать задачи, у кого были ощущения бесконечной работы, у кого выходные пролетают, будто их и не было. Давай в этой статье обратим немного внимания на то как мы работаем из дома.

Проверить свои привычки
Всего голосов 5: ↑4 и ↓1+3
Просмотры517
Комментарии 0

PostgreSQL Antipatterns: «где-то я тебя уже видел...»

Блог компании ТензорВысокая производительность*PostgreSQL*SQL*Администрирование баз данных*

Иногда при анализе производительности запроса на предмет "куда ушло все время" возникает стойкое ощущение deja vu, что вот ровно этот же кусок плана ты уже где-то раньше видел...

Пролистываешь выше - и таки-да, вот он рядом - но почему он там оказался, и как выйти из Матрицы самому и помочь коллегам?

Читать далее
Всего голосов 4: ↑4 и ↓0+4
Просмотры213
Комментарии 0

React Router Hooks: Изучение принципов их работы

Блог компании OTUSReactJS*
Перевод

React Router — это не то же самое, что маршрутизатор, направляющий сетевые данные — к счастью! Однако между сетевым маршрутизатором и React Router есть много общего. React Router помогает нам направлять пользователей к нужному компоненту. Например, мы можем использовать маршрутизацию на стороне клиента для создания одностраничного приложения (SPA), которое позволяет перемещаться между различными страницами без обновления браузера.

Другими словами, React Router поддерживает синхронизацию пользовательского интерфейса с URL. Он имеет простой API с такими мощными функциями, как ленивая загрузка кода, динамическое сопоставление маршрутов и обработка перехода между локациями.

Но есть еще много интересного. В этой статье мы рассмотрим хуки React Router. Они позволяют разработчикам писать гораздо более чистый код, так как не нужно писать всю его шаблонную часть, как в компонентах класса. Из коробки мы можем получить доступ к нескольким хукам, таким как useHistory, useLocation, useParams и useRouteMatch. Например, хук useHistory дает нам доступ к объекту history для обработки изменений маршрута.

Читать далее
Рейтинг0
Просмотры90
Комментарии 0

Уравнения математической физики в действии

Веб-дизайн*Математика*WebGL*Физика
Из песочницы

Доброе утро!

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

По шкале сложности для чистой математики эта дисциплина на мой субъективный взгляд получает 7/10. Но это не значит что эти формулы легки для зазубривания и запоминания. Тем более говорить о том, что я могу сделать открытие в данной области которое попадет в учебники, например объясняя физику какого - либо нового процесса или уточняя уже существующий. Если подумать, то например выбирая какой-либо параграф учебника по данному предмету, то он исписан формулами которые если провести аналогию похож на модуль по программированию. Скажу сразу мне преподавали данный предмет очень плохо, не объясняя что данные формулы значат, точнее заглавие было например: "Уравнение волны" или "Колебание мембраны", а дальше переписывали все формулы в параграфе с короткими комментариями что откуда, весьма скудными в полной тишине. Препод перелистывал страницы презентации и ходил туда-обратно пока мы переписывали. Видно что не ему, ни мне это было не нужно, как бы для общего развития. Скорее всего надо было читать дополнительную литературу чтобы понять, но там уровень для подкованного студента, предметов было много и где-то были пробелы и особо не было времени на все распылиться. Ну это так к слову. К слову чем больше людей надо учить в промежутке времени, тем меньше времени уделяется каждому студенту и тем хуже уровень знаний у каждого студента, ну это в пределе.

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

Читать далее
Рейтинг0
Просмотры529
Комментарии 3

Верхняя Пышма летом

ЭкологияУрбанизм

Продолжаем путешествовать по стране, изучая жизнь в промышленных городах. Следующий на очереди город – Верхняя Пышма. Один из немногих городов, население которых растет, а не сокращается за счет отъезда жителей. Город активно застраивают, развивают инфраструктуру. Находится он недалеко от Екатеринбурга.

Читать далее
Всего голосов 9: ↑7 и ↓2+5
Просмотры414
Комментарии 5

Установка коммерческих и самоподписанных SSL-сертификатов в Zimbra OSE

Блог компании Zextras TechnologyСистемное администрирование*Сетевые технологии*

SSL-сертификат является обязательным элементом информационной защиты почтового сервера Zimbra OSE. Он позволяет устанавливать защищенное соединение с сервером и обеспечить шифрование данных, чтобы исключить возможность перехвата электронных писем и аутентификационных данных злоумышленниками. По умолчанию к Zimbra отключена возможность установки незащищенного соединения. К примеру, если сразу после установки ввести в строку браузера в качестве адреса почтового сервера http://example.ru, то у вас либо отобразится сообщение об ошибке, так как сервер просто не примет ваше подключение, либо браузер автоматически перенаправит вас на адрес https://example.ru, где вместо ошибки вы получите от браузера предупреждение о подозрительном SSL-сертификате. Если проигнорируете его, попадете в веб-клиент Zimbra OSE. Подобное предупреждение связано с тем, что по умолчанию в Zimbra используется так называемый "самоподписанный" SSL-сертификат, то есть выпущенный самим почтовым сервером и не содержащий упоминаний о доверенных центрах выдачи SSL-сертификатов. Для того, чтобы пользователи не сталкивались с таким предупреждением при заходе на сервер, необходимо установить коммерческий сертификат с не истекшим сроком действия. В данной статье мы расскажем о том, как выпустить, установить и обновить коммерческий SSL-сертификат, а также о том, как использовать во внутренней сети сервер Zimbra OSE с самоподписанным сертификатом.

Читать далее
Рейтинг0
Просмотры123
Комментарии 0

Диверсия на полмиллиарда

Научно-популярноеЭкологияБиология

Автор: Роман Воронов

Сегодня поговорим о самых эффективных подводных диверсантах. Кто-то предположит, что речь идёт о российских ПДСС и будет не прав. Другие решат, что это американские SEAL или DEVGRU и снова ошибутся. Ну а кто-то вспомнит прославленную 10-ю флотилию МАС князя Валерио Боргезе. Князь - это, конечно, сильный довод, но пальма первенства опять-таки принадлежит не ему. Конкуренты за звание лидера сегодняшнего соревнования начали тренироваться ещё в те бородатые времена, когда на Земле плескались воды океана Тетис. Когда в результате движения континентов от Тетиса остались только реликтовые моря, то одно из них и стало прибежищем наших героев. Там они столкнулись с множеством врагов, и это закалило их в многовековой борьбе. Когда в 1789 году с ними на реке Урал столкнулся знаменитый натуралист Карл Симон Паллас, то они уже завоевали своё место под Солнцем. Но Паллас об это не знал, он просто описал открытого им двустворчатого моллюска, который получил имя "дрейссена речная". Небольшой, всего-то порядка пяти сантиметров, но малый размер ему никак не мешал, скорее наоборот.

Читать далее
Всего голосов 10: ↑9 и ↓1+8
Просмотры2.1K
Комментарии 8

Жизнь до Unicode

Open source*HTML*IT-стандарты*БраузерыИстория IT
Перевод

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

Для справки, я начал работать с компьютерами в начале 2000-х годов в России. Русский язык использует алфавит на основе кириллицы. И что касается языков, отличных от ASCII, все относительно просто: 33 буквы, у каждой есть варианты в верхнем и нижнем регистре, и преобразование верхнего/нижнего регистра обратимо. Так как букв всего 33, вы можете уместить их в 8-битной кодировке. Кроме того, есть еще место для псевдографики.

Загвоздка в том, что какое-то время в русском языке использовались три почти одинаково распространенных кодировки.

Одна из причин - сложная история Советского Союза и вычислительной техники - он был ​​изолирован от остального мира, и все организации, производящие компьютерное оборудование и программное обеспечение, принадлежали государству, поэтому оно могло навязать им стандарты. После распада СССР рынок был быстро захвачен западным оборудованием и программным обеспечением потому что советскую технику уже никто не производил. Частные софтверные компании тоже сразу начали выпускать ПО для импортных ОС - сначала это был DOS.

Старые советские системы в основном использовали кодировку KOI8-R. KOI расшифровывается как «Код Обмена Информацией», 8 означает 8-битный, а R означает русский (есть еще украинская версия под названием KOI8-U, украинский алфавит отличается от русского). Эта кодировка, мягко говоря, безумна: она была спроектирована так, что удаление 8-го бита оставляет вам несколько читабельную ASCII-транслитерацию русского алфавита, поэтому русские буквы не идут в обычном порядке.

Читать далее
Всего голосов 8: ↑8 и ↓0+8
Просмотры1.2K
Комментарии 7

Вечный выбор для людей с ДЦП: ходьба или коляска?

Здоровье

В сообществе родителей детей с ДЦП и взрослых с ДЦП снова обсуждают вечно острую тему: инвалидная коляска или ходьба. Поводом на этот раз стал пост Натальи Белоголовцевой, руководителя проекта «Лига мечты», в котором с детьми и взрослыми с инвалидностью занимаются горными лыжами и роликами. Скрины её поста — в конце статьи.

Читать далее
Всего голосов 9: ↑7 и ↓2+5
Просмотры533
Комментарии 1

Как создать неприступный Arduino IoT девайс?

Разработка для интернета вещей*Интернет вещей
Из песочницы
Перевод

В наше время существует огромное количество проектов, связанных с Интернетом Вещей. Но многие девайсы подвержены атакам из сети, например DDOS. Соответственно, многие эксперты предупреждают о возможных проблемах в безопасности IoT. (Пример такой статьи)

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

Читать далее
Рейтинг0
Просмотры486
Комментарии 1

Защита данных пользователя: как добавить поддержку правил CCPA и GDPR в мобильное приложение

Блог компании FUNCORPИнформационная безопасность*IT-стандарты*Хранение данных*Законодательство в IT

Значительная часть жизни уже давно перетекла в гаджеты, онлайн-сервисы, соцсети и мессенджеры, которые ежедневно собирают тонны персональных данных. А ими часто обмениваются компании, например, в сфере рекламы или финансового бизнеса. 

Поэтому приватность и безопасность данных сейчас сложно переоценить. В большинстве IT-компаний это понимают и работают над собственными инструментами защиты (Apple, например, на каждой презентации делает особый акцент). Страны, в свою очередь, регулируют всё это специальными законами.

Основными из них являются Европейский General Data Protection Regulation (GDPR) и, принятый в Калифорнии, California Consumer Privacy Act (CCPA). Сегодня подробно разберёмся, что это за законы, чего требуют и как внедрить их поддержку в свой сервис, сайт или мобильное приложение.

Это первая статья из цикла про приватность на iOS, где поговорим не только про законы, но и про изменения в политике App Store, AppTracking Transparency и IDFA.

Читать далее
Всего голосов 20: ↑20 и ↓0+20
Просмотры279
Комментарии 0

Настраиваем сильносвязанные шины контроллера на плате Teensy 4.1

Системное программирование*Программирование микроконтроллеров*Компьютерное железо
В прошлой статье мы увидели, как может возрасти скорость работы с портом, если обращаться к нему не через обычную, а через сильносвязанную шину. Причины кроются в латентности шины. В целом, у меня есть целая статья про DMA, где я рассматриваю влияние латентности на скорость работы. Там показано, что латентность – зло! Ну, а сильносвязанные шины работают без неё.



Контроллер MIMXRT1062, установленный на плате Teensy 4.1, имеет целых две сильносвязанные шины: для выборки инструкций и для работы с данными. Это позволяет работать с памятью, подключённой через них на максимальной скорости без использования кэша. Какие это даёт преимущества, я уже описывал ранее . Кроме того, мы уже ощутили эффект от работы с такими шинами в синтезируемом процессоре в этой статье.

В конце последней из указанных статей я сокрушался, что для решения проблем с латентностью нам приходится использовать синтезированную систему. А разработчики от NXP предоставили нам возможность поработать в таком же режиме и на обычном микроконтроллере. Давайте посмотрим, что нам это даст. Возни предстоит много, поэтому сегодня мы только всё настроим. Итак, начинаем…
Читать дальше →
Всего голосов 5: ↑3 и ↓2+1
Просмотры233
Комментарии 0

Управление репутацией хостинга: почему стало так важно рассказывать про процессы открыто

Блог компании RUVDS.comХостингУправление проектами*
Потому что дерьмо случается.

Обычный российский хостинг в такой ситуации продаёт юрлицо в Грозный (это проще, чем банкротство) и скрывается в ночи, чтобы потом открыться под новым названием, но уже без долгов и репутации. Некоторые сразу не кладут яйца в одну корзину и имеют несколько юрлиц (это ещё позволяет продавать новым дешевле то, за что постоянные клиенты платят по обычному прайсу). Мы по ряду причин так делать не можем — главная часть нашей экономики это серверное железо, а серверное железо требует долгих контрактов. Про это я писал вот здесь. И ещё мы строим маркетинг на репутации, как это ни странно.

Перенос дата-центра OVH SBG2 в облако, 55 % complete

Когда вы строите что-то на репутации, самый ценный ресурс — это вес вашего слова. Нужно это для того, чтобы люди понимали, что у вас происходит, и разбирались вообще, что происходит на рынке. А ещё это становится критически важным, если случается что-то плохое: нужен кто-то, кто может выйти и рассказать о неправомерных действиях кого-то, о том, что действительно за авария и в каком ЦОДе, о том, что с блокировками и так далее.

То есть блог на Хабре — это часть нашего антикризисного плана. И, как показала практика переноса ЦОДа в облако примерно 10-летней давности, это бывает очень актуально.

В общем, есть много причин управлять репутацией хостинга, если вы на рынке больше чем на пару лет. Я бы хотел немного рассказать, что именно мы делаем для этого. Потому что на нашем рынке управление репутацией — это работа с негативом.
Читать дальше →
Всего голосов 21: ↑19 и ↓2+17
Просмотры614
Комментарии 2

Задача, которую предлагали разработчикам на собеседованиях в Reddit: разбор и решение от сотрудника компании

Блог компании Productivity InsidePython*Программирование*Алгоритмы*Карьера в IT-индустрии
Перевод
Впервые я столкнулся с техническими собеседованиями еще в 2012 году, когда искал свою первую работу в IT. Я выслушал условия задачи, нацарапал решение на доске, ответил на несколько вопросов и ушел, весь перепачканный черный маркером. В то время я совершенно не представлял, как выглядит весь этот процесс с другой стороны; всё, что мне оставалось – в тревоге ждать результатов и надеяться, что я вписался в неизвестные мне критерии тех, кто проводил собеседование.

Сейчас всё уже немного иначе. Когда я стал разработчиком, то сам задавал вопросы и оценивал ответы. Потом меня перевели на руководящую должность, и теперь моё дело – выслушивать впечатления разработчиков после собеседования и принимать решение о найме. Так что я видел процесс со всех возможных сторон, и в этой статье хотел бы поделиться частью своего опыта.

Для этой цели я разберу реальную задачу, которую мы раньше предлагали желающим присоединиться к Reddit, пока не решили, что ей пора на покой. Объяснив решение, я расскажу о том, что учитывалось при оценке и почему это задание кажется мне подходящим для собеседований. Надеюсь, к концу статьи вы подойдете с чувством, что узнали больше о механизмах отбора и стали лучше подготовлены к процессу найма.
Читать дальше →
Всего голосов 15: ↑15 и ↓0+15
Просмотры3.9K
Комментарии 13

Заметки KPHP: тестирование и бенчмарки

Блог компании ВКонтактеOpen source*PHP*Программирование*

Заметки KPHP: тестирование и бенчмарки


Перед вами первая статья из серии «Как использовать KPHP в open source?».


В этих статьях мы будем разбирать разные аспекты работы с KPHP, расширяя информацию, которую вы можете найти в официальной документации.


В сегодняшнем выпуске обсудим:


  • базовое использование composer с KPHP;
  • как писать и запускать unit-тесты для KPHP;
  • бенчмаркинг KPHP-кода (профилирование затронем в другой раз);
  • как правильно сравнивать результаты бенчмарков.

Читать дальше →
Всего голосов 9: ↑8 и ↓1+7
Просмотры470
Комментарии 2

Как повысить качество кода в тестовом проекте

Блог компании WrikeПрограммирование*Java*Совершенный код*Тестирование веб-сервисов*

Качеством кода в тестах часто пренебрегают. Когда в совместной разработке участвуют десятки QA-инженеров, возникает острая необходимость ввести формализованные правила, чтобы все могли быстро ориентироваться в тестовом проекте. К тому же часто тесты пишутся по аналогии или копируются с небольшими изменениями. Когда счет тестов идет на тысячи, то код, написанный в плохом стиле, быстро распространяется. Для решения этих проблем в тестовом проекте Wrike мы уже больше двух лет используем связку инструментов PMD и Checkstyle. И она отлично работает. В этой статье хотим поделиться опытом по настройке этих инструментов, их использованию и кастомизации.

Читать далее
Всего голосов 8: ↑8 и ↓0+8
Просмотры456
Комментарии 0

Принимаем на работу брокера для Celery: подбор, аджаст и выкатка

Блог компании Конференции Олега Бунина (Онтико)Python*Анализ и проектирование систем*Администрирование баз данных*Облачные сервисы

У Яндекса много самописных сервисов для внутренних задач: Яндекс.Формы, Яндекс.Диск, трекер, календарь. Со временем их решили использовать не только внутри компании, но и за ее пределами. Так появилась платформа Яндекс.Коннект.

Большинство сервисов Коннекта построено на Python V3. В качестве web-фреймворка используется Django, реже Flask и Tornado, а новые чаще пишутся на FastAPI. Сервисы, как и базы PostgreSQL, MySQL и MongoDB, живут в облаке. В качестве очереди сообщений почти везде используется Celery с MongoDB в качестве брокера. Он и стал проблемой.

На Russian Python Week 2020 Владимир Колясинский, разработчик бэкенда сервисов платформы Яндекс.Коннект, рассказал, почему они пользовались связкой Celery MongoDB и почему пришлось отказаться от этого брокера. Он сравнил претендентов: Redis, RabbitMQ и YMQ, с их плюсами и минусами. Подробно разобрал процесс переезда на нового брокера, анализ его состояния и возможные проблемы. И у него получилась пошаговая инструкция, которая пригодится при подборе и настройке брокера. А для любителей разбираться самостоятельно под катом есть расшифровка доклада с конференции.

Читать далее
Всего голосов 4: ↑3 и ↓1+2
Просмотры387
Комментарии 1

Визуальное автотестирование сайтов с помощью Codeception

PHP*Тестирование веб-сервисов*
Из песочницы

Автоматические end-to-end тесты хороши тем, что позволяют сымитировать действия пользователя на сайте. Мы можем запрограммировать в скрипте теста действия типа открыть страницу, нажать на кнопку, ввести данные в поля ввода, нажать галочки и радиокнопки, отправить форму, и ждать на выходе нужный результат. Увидел текст "Ваше сообщение принято. Спасибо" - тест пройден. В ином случае - не пройден. Все прозрачно и понятно. Можно написать автотесты на все критично важные модели поведения пользователя на сайте, перед каждым обновлением кода на боевом сервере прогонять их и таким образом значительно повысить качество разработки. Но мы пойдем еще дальше...

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Просмотры557
Комментарии 1