К основному контенту

Сообщения

Сообщения за 2022

Заметки по версионированию API

Я недавно посмотрел курс Designing & Versioning HTTP/REST APIs от Jeffrey Richter , известнейшего автора таких основополагающих книг как CLR via C# и Windows API via C++ . Надеюсь, вы сталкивались с ними или даже читали их. Я рекомендую этот курс к просмотру, особенно тем, кто считает что дизайн API это легко (что-то вроде "перекладывания JSON'ов"). Однако, как и с многими другими курсами, просмотр такого материала не даёт нужного глубокого понимания вопросов. Даже с таким автором. Комбинирование практики с теорией обязательно в основоении любого материала, а тем более в применении его в условиях релиза Эта рекомендация относится к разработчикам любого уровня. Легко просмотреть курс и поставить новую галочку в резюме, однако "Дьявол кроется в деталях". Во время реальной разработки возникает множество вопросов, о которых не так просто вспомнить в момент обучения. Ну, довольно слов. Давайте рассмотрим конкретный пример, часть курса по теме Versioning

Проблемы GraphQL

  Довольно просто полюбить новую технологию по проспектам профессиональных маркетологов. Но важно не попасть в ловушку, потому что в программировании не существует серебряной пули, решающей все проблемы разом. GraphQL находится в центре внимания уже пару лет. Прежде чем вы добавите эту красивую аббревиатуру в своё резюме, я хотел бы поделиться краткими выводами и мыслями, основанными на опыте использования GraphQL в продакшене. Недавно вышло обзорное видео от знаменитого Алекса Сюй (автора книг по системному дизайну), которое полезно посмотреть перед чтением дальше, так как я не хочу повторять все те вещи, о которых другие авторы сказали лучше.   Я подтверждаю всё, о чём сказано в видео, однако хотел бы добавить кое что, так как часто слышу от разработчиков ошибочные заявления. GraphQL не является заменой REST или SOAP Это просто еще один способ создать API немного по-другому, но определенно его нельзя считать «лучшим, потому что новый». Я бы даже сказал, что GraphQL больше схож с S

В помощь программисту: инструкции по работе с Ubuntu сервером

Программистам чаще приходится писать код и заботиться о его чистоте, правильных абстракциях в коде, корректных зависимостях и прочих сложностях профессии. При этом, настройка и обслуживание серверов, хоть и связанная область - это отдельный навык, необходимый не каждому, и помнить о котором в деталях сложно. Поэтому, я делаю ряд микро-инструкций, которыми буду пользоваться и сам, когда необходимо. Это не статьи, а пошаговые помощники, которые я буду дополнять и наполнять по мере надобности. Делаем бесплатный VPN на Amazon EC2 Создание ключей SSH Подключение к серверу через SSH Передача файла с Linux сервера наWindows машину Делаем VPN сервер на Ubuntu 20.04 используя OpenVPN и EasyRSA  Отображение GUI с Linux сервера на Windows машине

Делаем VPN сервер на Ubuntu 20.04 с помощью программ OpenVPN и EasyRSA

 В своей предыдущей статье я писал как создать бесплатный облачный сервер в AWS и использовать его в качестве VPN сервера . Инструкции по настройке VPN стали неактуальны из-за обновлений в операционной системе Ubuntu. Однако, шаги создания сервера в AWS всё те же. Если вам нужен VPN сервер в 2022 году, то вы всё ещё можете создать его на базе AWS, а затеим использовать нижеследующие инструкции для настройки VPN. Создание удостоверяющего центра и сертфикатов Тут я сделаю небольшое "лирическое" отступление. Доступ к вашему VPN может контролироваться двумя способами - логином и паролем, либо сертификатом безопасности. Второй способ является "стандартом индустрии" по причине его большей безопасности, хотя и придётся приложить немного усилий для получения результата, потому что сертификаты нужно сгенерировать, настроить, и т.д. Я буду рассказывать именно об этом способе, так как получение любого опыта является стоящим делом, а для вас я приложу все необхоимые ин