Всем привет! В сообществе C++ Александр Александрович Степанов особо не нуждается в представлениях: это создатель обобщённого программирования и Standard Template Library. Менее известно, что он построил карьеру в США, но получил образование в СССР. И сейчас, когда многие разработчики уезжают из России, особенно интересно узнать, как переезд IT-специалиста выглядел почти полвека назад, до интернета и удалёнки. Изменились ли с тех пор вызовы и трудности?
Разработка
Новости
Управлять инструментом, который управляет всем: наш путь к GitOps
Вадим Гедзь, ведущий DevOps инженер, Dynatech
Всем привет! Сегодня я хотел бы рассказать о том, как в компании, где я работаю, происходит переход к GitOps. В команде разработки больше 300 человек, поэтому остро стоит вопрос управления конфигурациями и непрерывной интеграции кода. В этом кейсе я расскажу о том, как при переходе на GitOps мы исключили дрифт конфигурации между git репозиториями и инфраструктурой, отмечу преимущества и недостатки ArgoCD, как решили задачу secret management при использовании ArgoCD. Также затрону вопрос обратной связи после того, как Docker Image залит в Docker Register и до того, как ArgoCD начинает deployment, рассказав, как мы с коллегами в свое свободное время написали сервис Argo Watcher.
Эта статья может быть интересна тем, кто задумывается о внедрении GitOps в свою инфраструктуру.
Производная с вещественным показателем
Этой идеей со мной поделился однокурсник по физфаку Харьковского университета Витька Середницкий на одной из общажных посиделок (читай – попоек). Были мы молоды, усердно грызли гранит науки, всерьез думали, что будем всю жизнь заниматься теоретической физикой, да и время для мечтаний на дворе было подходящее – год примерно 1989. Идея оказалась не нова, но поисследовать ее я загорелся, и вот что получилось.
Функция с достаточно хорошим поведением (я опускаю здесь математические тонкости) может быть представлена в виде ряда Фурье, разложения по синусам и косинусам:
Как убрать пустые оборотные страницы из PDF после двухстороннего сканирования
Около двух месяцев назад я написал статью как сканировать многостраничные двухсторонние документы, если под рукой только обычный сканер с автоподачей, в которой затронул проблему того, что МФУ часто имеют дуплексную двустороннюю печать, но односторонний сканер.
Однако после решения проблемы быстрого сканирования больших двухсторонних документов, была обнаружена ещё одна проблема - некоторое количество страниц могут оказаться односторонними. И это означает, что PDF будет иметь белые страницы, например, со сканами перфораций или отверстий под кольца.
Конечно, можно удалить несколько страниц из PDF вручную, но что если таких файлов сотни, а сами документы имеют несколько десятков или даже сотен страниц как на фотографии?
Истории
VSСode. Как настроить окружение для разработки в Docker на удаленном сервере через SSH
Этот туториал рассчитан на людей, которые недавно вошли в коммерческую разработку и только начинают свою трудовую деятельность. Не исключаю, что ветеранам он также может быть полезен.
Язык PL/I: десять тонн синтаксического сахара
Данный обзор посвящён чрезвычайно популярному в прошлом, но практически полностью забытому в настоящее время языку программирования PL/I. Между тем, многие свойства этого языка, на наш взгляд, заслуживают изучения и наше время, так как часть их периодически переизобретается различными авторами, причём часто в ухудшенном виде.
Изменение ландшафта угроз информационной безопасности в России
В настоящее время киберугрозы становятся все более распространенными в России и во всем мире. С каждым годом уровень угроз увеличивается, и этот тренд, очевидно, продолжится и в ближайшем будущем. Это связано с увеличением числа людей, которые используют Интернет и цифровые технологии, а также с увеличением числа устройств, подключенных к сети Интернет.
Среди главных киберугроз, которые могут быть важными для России, можно выделить шпионаж, кибертерроризм, мошенничество, кибератаки на государственные и коммерческие организации, а также на объекты КИИ, такие, как энергетические системы, транспортные сети и т. д. Ниже, на рисунке 1 наглядно показано распределение угроз в ряде Российских компаний, из статистики за 3-4 квартал 2022 года.
Fortigate SSL VPN рекомендации по ужесточению конфигурации
Это руководство результат изучения уязвимостей Fortigate VPN SSL на протяжении последних лет, реальных случаев взлома брандмауэров, операционных руководств и отчетов нескольких группировок (например, руководств Conti), а также моего более чем 15-летнего опыта работы с Fortigate. Применяя все/некоторые из приведенных ниже мер, вы значительно усложните взлом SSL VPN вашего Fortigate и, следовательно, сделаете его менее привлекательным для злоумышленников.
Измените порт SSL VPN, по умолчанию 10443/443, на любой другой
Эта безопасность через неясность действительно работает. Чаще всего, злоумышленники не нацелены на конкретные компании, а ищут легкодоступные цели. И простейший способ сделать это — просканировать известные порты/сервисы. И оба порта, 443 и 10443, являются хорошо известными портами Fortigate. Или еще проще - выполните поиск в Shodan/Censys по запросу "Fortigate", и в настоящее время Shodan имеет 185 тысяч результатов для порта 10443 а Censys 317 тысяч. Именно это произошло с крупной утечкой учетных данных VPN 3 года назад — все затронутые Fortigate имели SSL VPN на портах 443 или 10443.
Возможным недостатком может быть то, что у пользователей VPN, подключающихся через Wi-Fi в отелях/кафе, могут быть заблокированы исходящие порты, кроме 443, но, поскольку пакеты сотовой связи сегодня дешевы, то целесообразно использовать свой телефон в качестве точки доступа для VPN-подключения и избегать использования общедоступных WiFi вообще.
Kerberos аутентификация при подключении из Java к MSSQL
Представляю уважаемому сообществу руководство по настройке доменной аутентификации при работе из Java с MSSQL.
Данное руководство создано для администраторов БД, с помощью него можно продемонстрировать возможность использования доменной аутентификации для разработчиков Java и DevOps.
Token-Based Authetification в автономных системах посредством Qt6 с использованием Qr-кодов. Qr-коды
Третья часть цикла. Тут мы рассмотрим приложение, позволяющее генерировать и отображать Qr-коды, а также сделаем ui для управления токенами сервиса из прошлой статьи и дадим ему qss.
Ниже действительно некуда: индустрии NAND грозит банкротство крупных поставщиков. Что происходит?
В конце прошлого года мы опубликовали статью «Ниже некуда: падает спрос на жесткие диски, падают цены на SSD, сокращаются объемы продаж техники». С тех пор многое изменилось, но, во многом, в худшую сторону для производителей электронных устройств и компонентов. В частности, все сложнее приходится поставщикам флеш-памяти NAND. Они постоянно снижают цены в надежде удержать объемы продаж, но бесконечно это продолжаться не может. Подробности — под катом.
200 миллиардов коробок в год. Рынок, который убивает планету
В России за 2022ой год было отправлено более 2 млрд. коробок с товаром покупателям (по всему миру 200 млрд. коробок). За первые три квартала рост составил 43% по сравнению с предыдущим годом. Если прибавить рекордный 4ый квартал, то цифра вообще улетает в космос.
Алгоритмы поиска подстроки на JavaScript
Недавно я столкнулся с одной не очень сложной задачей на leetcode. В рамках задачи нужно было реализовать алгоритм поиска подстроки в строке. Пока я пытался сделать задачу, я понял, что я очень мало знаю про то как можно искать подстроку и решил изучить эту тему подробнее, и рассказать результат вам.
Как говорит Википедия «Поиск подстроки в строке — одна из простейших задач поиска информации», но это не совсем так, ниже я расскажу про разные алгоритмы решения и покажу примеры их реализации. Начнем!
Как создать собственный кэшбэк-сервис
В последние годы услуги cashback становятся все более популярными, поскольку они предлагают потребителям способ сэкономить деньги при совершении покупок в интернете и офлайне. Подобные офферы от банков уже привычны всем.
Предоставляя покупателям процент от покупки товара, эти услуги создают беспроигрышную ситуацию как для потребителей, так и для розничных торговцев. Однако создание cashback-сервиса — сложная задача, особенно для тех, кто впервые в мире электронной коммерции.
В этой статье мы предоставим пошаговое руководство по созданию собственного бизнеса. Мы расскажем обо всем, что необходимо знать для начала работы, включая технические аспекты.
Как я делал лучшие арифметические ядра и сделал лучший селектор (демультиплексор)
Небольшой рассказ о том, как я делал арифметические ядра и сделал лучший селектор (декодер адресов).
Понимание и тестирование адаптивного веб-дизайна
Адаптивный веб-дизайна стал ключевым фактором, определяющим удобство нашего доступа к информации с помощью различных цифровых устройств. Вещи, которые несколько лет назад казались неосуществимыми, стали обыденностью. Я до сих пор помню, что представляла собой моя работа над школьными проектами в 2005 году, когда доступными стали не только компьютеры, но и телефонное подключение к Интернет.
Однако Интернет уже никогда не будет прежним. Взрывной рост количества информации изменил и способы ее отображения. Адаптивный веб-дизайн позволил нам просматривать различные веб-сайты одним движением пальца. Прошли те времена, когда нам приходилось увеличивать и уменьшать масштаб экрана телефона, чтобы просмотреть определенные сайты. Теперь, благодаря адаптивному веб-дизайну, мы можем беспрепятственно просматривать различные страницы на телефонах без каких-либо проблем. Это стало возможным благодаря тестированию адаптивного веб-дизайна, которому постоянно уделяется приоритетное внимание. Давайте же разберемся, что такое адаптивный веб-дизайн?
Создание чек-листов из чит-листов
Неважно кто я, как меня зовут, где работаю и сколько опыта. Цель статьи больше похожа на крик души, а не на желание похвастаться и показать очередное "а вот у нас так работает", вывалив список, который до завтра не прочитать, назвав его кратеньким и пририсовав майнд-карту, больше самого списка. Будет здорово, если описанное ниже кому-то да поможет. Делалось все для веб-приложения. Насколько оно универсально - решать каждому, но подойдет и на десктоп, и на мобилки. Просто нужно подогнать под себя, поняв суть описанного.
Про чек-листы однозначно слышал каждый тестировщик. Про чит - маловероятно. Я хочу отбросить общую терминологию в сторону, ибо сколько людей столько и мнений, и порой диву даешься, сколько можно услышать разных определений на термин.
Процессор ЭВМ ЕС-1020. Микропрограммное управление
Продолжение серии статей, посвящённых устройству процессора ЭВМ ЕС-1020. На сей раз речь пойдёт о блоке микропрограммного управления — в первую очередь, о формате и назначении отдельных полей микрокоманды.
Разбираемся с подключением блока индикации от системы автоведения поезда
Думаю, каждого из нас хоть раз в жизни интересовали всякие устройства, по назначению отличные от пользовательских. А кто-то наверняка хотел заполучить что-то из этой области, пусть даже единственным предназначением в домашних условиях будет просто поставить на полочку и любоваться.
Одной из таких категорий являются различные девайсы, применяющиеся на транспорте. Именно о таком устройстве, а именно о частях унифицированной системы автоведения поезда, сегодня и пойдёт речь.
Итак, в данной статье поговорим о том, как устроен данный прибор и как его запустить. Традиционно будет много интересного.
[Паттерны API] Списки и организация доступа к ним
Это глава 20 моей книги «API». v2 будет содержать три новых раздела: «Паттерны API», «HTTP API и REST», «SDK и UI‑библиотеки». Если эта работа была для вас полезна, пожалуйста, оцените книгу на GitHub, Amazon или GoodReads. English version on Substack.
В предыдущей главе мы пришли вот к такому интерфейсу, позволяющему минимизировать коллизии при создании заказов: