Месяц: Январь 2022

  • Подпись в кармане: как мы разрабатывали приложение для подписания документов через Госуслуги

    от автора

    Госуслуги уже давно не про запись на приём в ведомственные учреждения и не про единое окно (чтобы этот термин не значил) — мы расширяем горизонт и развиваем полноценную цифровую экосистему.  На этот раз перед нами стояла задача разработать решение для подписания документов с помощью мобильного приложения, которое получило название «Госключ».   На связи команда проекта «Госключ»…

  • Платформа 3DEXPERIENCE: решения ENOVIA и CATIA для совместной разработки изделий

    от автора

    Что такое 3DEXPERIENCE? Это бренд, объединяющий в себе платформенные решения Dassault Systemes из разных доменов, например, PLM-решения бренда ENOVIA, CAD-решения бренда CATIA или CAE-решения бренда SIMULIA. Все эти домены могут быть объединены единым платформенным интерфейсом при работе с инженерными данными – именно этой связкой и является 3DEXPERIENCE. В этой статье мы рассмотрим основные преимущества платформы,…

  • Angular vs React глазами новичка. Часть 1: Angular

    от автора

    В 2021 году на рынке фронтенд-технологий лидируют React, Angular и, с некоторым отставанием, Vue. В нашей компании для унификации подбора разработчиков сделан упор на React, но ряд крупных систем разрабатываются с помощью современных версий Angular. В связи с конкуренцией этих технологий возникло желание изучить каждую из них и составить собственное мнение о применимости этих инструментов.…

  • Кодогенерация DTO: зачем она нужна и как её настроить

    от автора

    Data Transfer Object — модель данных, которые мы передаём из одного слоя приложения в другой. В Яндекс Go мы активно используем DTO. Предположим, нужно отобразить в UI приложения для вызова такси экспериментальную кнопку с двумя свойствами — надписью на кнопке и ориентировочным временем ожидания такси. Тогда в сетевом слое надо написать примерно такую DTO-модель: struct…

  • Миграция 500 Гиг из Оракла за 5 часов

    от автора

    На самом деле, еще 9 часов заняла загрузка данных в PostgreSQL, но обо всем по порядку. Ничто не предвещало грозы — у Заказчика упал сервер и всего-то предполагалось поднять Оракл 😉 Что я и сделал. Но ВНЕЗАПНО оказалось, что по договору нужна миграция а дедлайн через 3 дня и все заверте…

  • Как производитель защищенных телефонов обеспечивал преступникам тайну связи

    от автора

    Есть такая традиция, перед Новым Годом рассказывать разные истории. Сегодня я поддержу этот обычай и расскажу историю взлета и падения канадского бизнесмена Винсента Рамоса, который хотел, чтобы его компания Phantom Secure стала лидером в области телефонов класса люкс, ориентированных на конфиденциальность. Его план состоял в том, чтобы заполнить рынок своими устройствами, а потом разобраться с…

  • AGLoRa. Или прототип простого самодельного спутникового LoRa-трекера

    от автора

    Всем привет! Меня зовут Евгений, я уже много лет читаю Хабр, но писать как-то стеснялся. Я не профессиональный программист, это важно для дальнейшего рассказа, но возиться с железками и программировать для собственного удовольствия не переставал с детства. Это интересно и позволяет самому потрогать всякую современную техно-магию.В жизни я основатель и технический директор небольшой команды, которая…

  • Uni Localization. Абсолютная кастомизация, работает на любом сайте (Vue, React, Angular, …)

    от автора

    Disclaimer: Эта статья про веб компоненты и уже реализованное UI решение на них. Если вам нравится все новое и нестандартное, тогда, я уверен вам понравится и наша реализация.Я всегда мечтал о функциональности, которую можно было бы использовать в любом web проекте. Еще я мечтал иметь максимально гибкое решение для абсолютной кастомизации под себя. Два года…

  • Создаем библиотеку на php и публикуем на packagist

    от автора

    Прежде чем приступать к написанию кода, нам нужно решить, что именно такого полезного мы можем создать, какие функции будет выполнять библиотека. Довольно популярным является написание библиотек, упрощающих работу с тем или иным API. Зачастую API представляют из себя большой список различных методов, работающих не только через GET method http-протокола. И это доставляет сложность при работе…

  • Нарезаем массивы правильно в Go

    от автора

    Второй очерк из цикла приключений в мире сусликов.Это вторая статья серии небольших рассказов о необычных подводных камнях, которые можно встретить в начале разработки на Go. Напоминаю, что в статьях есть примеры кода, будьте с ними аккуратнее — не все из них будут компилироваться и работать, читайте внимательно комментарии, везде указано, на какой строке происходит ошибка.…