Pull to refresh
0
0

User

Send message

С чего начать изучение Flutter в 2021 году

Reading time4 min
Views19K

Как и многие мобильные разработчики, мы с нетерпением ждали презентации Flutter и теперь хотим поделиться с читателями Хабра переводом статьи Tadas Petra о том, как можно выстроить свое обучение, если вы хотите познакомиться с Flutter и кроссплатформенными приложениями в 2021 году. Кстати, мы подключились к созданию курса Flutter, и об этом тоже расскажем в конце статьи. Приглашаем прочитать или посмотреть видеоверсию!

2021 год обещает быть очень важным для Flutter. Комьюнити разработчиков продолжает стремительно расти, а 3 марта 2021 года состоялась презентация Flutter Engage. Это делает потенциал Flutter поистине огромным.

Однако, чем более популярным становится фреймворк, тем больше людей хотят его “пощупать” и иногда не знают, с чего же, собственно, начать? В данной статье автор постарался создать roadmap и описать несколько ресурсов, которые могут быть полезны для вас. 

Читать далее
Total votes 16: ↑11 and ↓5+6
Comments2

Миграция API с REST на gRPC в WePay

Reading time10 min
Views6.6K

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

В этом посте мы переключим внимание на то, как наши микросервисы используют service mesh для взаимодействия друг с другом. В частности, какая полезная нагрузка используется для запросов и как мы мигрировали с одной на другую. Мы сравним наши текущие полезные нагрузки на основе Representational State Transfer (REST) с высокопроизводительным Remote Procedure Call (gRPC) и рассмотрим проблемы, с которыми мы столкнулись при внедрении, использовании и миграции на gRPC.

Читать далее
Total votes 6: ↑6 and ↓0+6
Comments3

Публикация Go приложения в GitHub

Reading time7 min
Views8.7K

Пост представляет собой небольшой контрольный список (checklist) при публикации Go приложения на Github'е.

TLDR:

- Makefile как входная точка для выполнения основных действий

- Линтеры и тесты как инструменты повышающие качество кода

- Dockerfile как способ распространения приложения

- Github Actions как возможность автоматической сборки и выкладки приложения при новых изменениях

- Goreleaser как инструмент для публикации релизов и пакетов

Результатом должно быть опубликованное приложение с настроенными инструментами которые позволяют легко сопровождать приложение в процессе его существования. В качестве реализации я буду рассматривать примеры на основе утилиты pgcenter.

Вперед!
Total votes 14: ↑13 and ↓1+12
Comments9

(Не)очередной MQTT-телеграм-бот для IoT

Reading time6 min
Views15K
Всем привет! Сегодня хочу поделиться опытом разработки универсального телеграм бота для получения информации и управления IoT устройствами посредством протокола MQTT.

Почему (не)очередной? Потому что это не просто бот с двумя захардкоженными кнопками для управление лампочкой, примеров которых в интернете много, а это бот, который поддерживает гибкую настройку подписок и компанд для управления прямо из своего меню, без изменения исходного кода. NoCode solution, так сказать.

Бот разрабатывался на языке Go, исходный код выложен в свободный доступ на гитхаб под лицензией MIT. В статье хочу рассказать о некоторых технических моментах реализации и получившемся функционале с примерами использования.
Читать дальше →
Total votes 19: ↑18 and ↓1+17
Comments6

Алгоритм ранжирования сегментов речной сети с использованием графов для геоинформационного анализа

Reading time18 min
Views2.9K

Привет, Хабр.


В данной статье хотелось бы затронуть тему применения информационных технологий в Науках о Земле, а именно, в Гидрологии и Картографии. Под катом представлено описание алгоритма ранжирования водотоков и реализованного нами плагина для открытой геоинформационной системы QGIS.

Читать дальше →
Total votes 5: ↑5 and ↓0+5
Comments7

Go-swagger как основа взаимодействия микросервисов

Reading time9 min
Views23K


Здравствуй, NickName! Если ты программист и работаешь с микросервисной архитектурой, то представь, что тебе нужно настроить взаимодействие твоего сервиса А с каким-то новым и ещё неизвестным тебе сервисом Б. Что ты будешь делать в первую очередь?

Если задать такой вопрос 100 программистам из разных компаний, скорее всего, мы получим 100 разных ответов. Кто-то описывает контракты в swagger, кто-то в gRPC просто делает клиенты к своим сервисам без описания контракта. А кто-то и вовсе хранит JSON в гуглодоке :D. В большинстве компаний складывается свой подход к межсервисному взаимодействию на основании каких-либо исторических факторов, компетенций, стека технологий и прочего. Я хочу рассказать, как сервисы в Delivery Club общаются друг с другом и почему мы сделали именно такой выбор. И главное — как мы обеспечиваем актуальность документации с течением времени. Будет много кода!
Читать дальше →
Total votes 35: ↑33 and ↓2+31
Comments24

Симуляция гидравлической эрозии

Reading time7 min
Views3.8K

Гидравлическая эрозия — это процесс постепенного преображения водой рельеф. В основном она вызывается осадками, но на неё также влияют разбивающиеся о побережье волны океана, а также течения рек. На рисунке 1 показаны масштабные эффекты, которые может оказать небольшой поток на окружающие его скалы. При создании реалистичных окружений необходимо учитывать влияние эрозии. Я уже экспериментировал с процедурной генерацией при создании сцен для послойного рендеринга вокселей и для демонстрации кубического шума. Такие рельефы очень просты и в них не учитывается влияние эрозии. Следовательно, им не хватает деталей, из-за чего они при близком рассмотрении кажутся нереалистичными.


Рисунок 1: небольшой водопад.

В этой статье я подробно расскажу о простом и быстром способе аппроксимации эффектов гидравлической эрозии.
Читать дальше →
Total votes 12: ↑12 and ↓0+12
Comments0

Введение в теорию автоматического управления. Основные понятия теории управления техническим системами

Reading time15 min
Views153K

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


Лекции по курсу «Управление Техническими Системами», читает Козлов Олег Степанович на кафедре «Ядерные реакторы и энергетические установки», факультета «Энергомашиностроения» МГТУ им. Н.Э. Баумана. За что ему огромная благодарность.


Данные лекции только готовятся к публикации в виде книги, а поскольку здесь есть специалисты по ТАУ, студенты и просто интересующиеся предметом, то любая критика привествуется.


Читать дальше →
Total votes 37: ↑35 and ↓2+33
Comments116

Жесткий цигун с условными знаками или зачем нужен geometry generator

Reading time15 min
Views4.8K


Требования заказчика к условным обозначениям на картах кажутся вам нереальными? Дальше вы узнаете, как с помощью geometry generator, QGIS и Python сделать так, чтобы ваши условники были лучше всех.

Читать дальше →
Total votes 10: ↑10 and ↓0+10
Comments0

Инфраструктура Открытых Ключей. Выпуск сертификатов в условиях самоизоляции

Reading time4 min
Views6.2K

Как все начиналось


В самом начале периода самоизоляции мне на почту пришло письмо:



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


Читать дальше →
Total votes 13: ↑8 and ↓5+3
Comments42

Итоги конкурса рабочих мест или Игра престолов в битве за PS4

Reading time5 min
Views7.4K
Don't panic, всего 160Кб


Те, кто на Хабре не первый день, наверняка знают, как мы в RUVDS любим устраивать всякие активности. Что мы уже только не делали. Запускали сервер в облака, делали коллаб с создателем Дюк Нюкема, даже варили свое админское пиво и готовили хабрабургеры, всего и не упомнить. Все эти проекты рождаются из малого — простой идеи. Так и здесь, все началось с того, что захотелось посмотреть как наши читатели мигрировали на удаленку, и как они там удобно устроились. От простой идеи «а давайте сделаем пост, где будем в комменты постить фотки», затея выросла в полноценный конкурс, со специально написанным для него телеграм ботом, лендингом и даже призовым фондом. В этом посте мы подведем итоги конкурса, объявим победителя и расскажем, с какой войной накруток нам пришлось столкнуться и как мы из этого выбирались.
Читать дальше →
Total votes 44: ↑43 and ↓1+42
Comments15

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

Reading time6 min
Views12K
«Это потрясающее чувство. Я вновь могу согнуть колени, самостоятельно поднять ноги и даже пошевелить пальцами», — рассказывает один из участников экспериментального лечения, которому удалось вернуть свои двигательные способности за счет технологии спинномозговой стимуляции. После травмы позвоночника, полученной 2010 году, его ноги были парализованы.



Фактически сразу несколько исследовательских групп как в России, так и за рубежом трудятся над различными способами лечения паралича, вызванного инсультом или травмой спинного мозга. Благодаря инновационным протоколам лечения пациенты с хронической параплегией заново учатся ходить.

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

Какие механизмы реабилитации уже существуют и могут быть использованы для лечения?
Total votes 18: ↑18 and ↓0+18
Comments5

Продаем Architecture Refactoring клиенту или в чем проблема девелоперов

Reading time4 min
Views5.3K
Архитектурный или проектный рефакторинг это всегда болезненная проблема на проекте. Польза от рефакторинга, для нас технических специалистов очевидна, но продать и обосновать эту идею клиенту зачастую бывает тяжело. Главная причина в том, что мы технические специалисты не знаем как говорить с бизнесом.

image

Главная проблема в коммуникации между техническими специалистами и людьми, которые делают деньги. Они говорят на разных языках, хотя и пытаются решить одни и те же проблемы.

Данная статья является переводом оригинала с английского: Architecture Refactoring and Design Refactoring How to Sell it Client. Если у вас есть коллеги, не владеющие русским языком, они могут прочитать оригинал на моем болге.

Польза от рефакторинга очевидна для всех технических специалистов, но зачастую мы не можем донести эту идею до бизнеса. Почему так случается? Мы пропускаем несколько незначительных для нас, но очень важных шагов для бизнеса.

Разделим весь процесс на 6 простых, но обязательных шагов:

  1. Определить причину проблемы
  2. Решить какие изменения должны быть сделаны
  3. Обоснование решения
  4. Составить план рефакторинга
  5. Создать roadmap
  6. Презентовать свое решение
Читать дальше →
Total votes 13: ↑10 and ↓3+7
Comments25

Популярно об артиклях в английском языке

Reading time8 min
Views53K
Артикли — это самые распространенные слова в английском языке. Эти невзрачные a, an и the занимают около 8,5% объема любого текста. Если немного утрировать, то из каждого часа работы с текстом вы пять минут тратите только на прочтение артиклей.

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

В общем, сегодня мы решили рассказать вам именно об артиклях. Откуда появились, как развивались исторически и как их использовать правильно сегодня. Поехали!


Читать дальше →
Total votes 59: ↑59 and ↓0+59
Comments94

Frontend разработки порталов на СПО: делимся опытом

Reading time4 min
Views1.9K
В первой части статьи о том, как мы создаем портальные решения для крупнейших работодателей России, была описана архитектура со стороны backend-а. В данной статье мы перейдём к frontend-у.


Читать дальше →
Total votes 8: ↑7 and ↓1+6
Comments0

Функциональные опции на стероидах

Reading time9 min
Views3.8K
Привет, Хабр! Представляю вашему вниманию перевод статьи Functional options on steroids от автора Márk Sági-Kazár.

image

Функциональные опции — это парадигма в Go для чистых и расширяемых API. Она популяризирована Дейвом Чейни и Робом Пайком. Этот пост о практиках, которые появились вокруг шаблона с тех пор как он был впервые представлен.

Функциональные опции появились как способ создания хороших и чистых API с конфигурацией, включающей необязательные параметры. Есть много очевидных способов сделать это (конструктор, структура конфигурации, сеттеры и т. д.), но когда нужно передавать десятки опций они плохо читаются и не дают на выходе таких хороших API, как функциональные опции.
Читать дальше →
Total votes 11: ↑10 and ↓1+9
Comments7

10 строк кода, которые уменьшат боль от вашего проекта на Vue

Reading time10 min
Views15K

… или знакомство с плагинами Vue JS на примере интегрированной шины событий


Пара слов о…


Всем привет! Сразу оговорюсь. Я очень люблю VueJS, активно пишу на нем уже больше 2-х лет и не считаю, что разработка на нем может причинить боль хоть в какой-то значимой степени :)
С другой стороны, мы всегда пытаемся найти универсальные решения, которые помогут тратить меньше времени на механическую работу и больше – на то, что действительно интересно. Иногда решение оказывается особенно удачным. Одним из таких я хочу поделиться с вами. 10 строк, о которых пойдет речь (спойлер: в конце их окажется немного больше), родились в процессе работы над проектом Cloud Blue – Connect, который представляет собой достаточно крупное приложение на 400+ компонентов. Найденное нами решение уже интегрировано в самые разные точки системы и вот уже более полугода ни разу не требовало правок, поэтому его смело можно считать успешно проверенным на устойчивость.
Читать дальше →
Total votes 25: ↑19 and ↓6+13
Comments17

Весь мир в кармане или как сделать мобильную карту за пару дней

Reading time8 min
Views22K


В прошлой статье я рассказывал о том, как можно быстро сделать Web-звонилку. А что если поставить более амбициозную задачу — собрать своё собственное приложение с картой, без рекламы и с блэк-джеком? А если всего за пару дней?


Давайте сделаем это! Прошу под кат.

Читать дальше
Total votes 31: ↑30 and ↓1+29
Comments11

Как не врать с помощью статистики: основы визуализации данных

Reading time6 min
Views22K


Не раз слышал мнение, что задача аналитиков — показать откровенно «грустные» цифры таким образом, будто всё идет по плану. Возможно, где-то так и происходит, но в геймдеве всё наоборот. Нам надо представить максимально объективные данные, чтобы в проекте принимались правильные решения. И сделать так, чтобы эти данные были поняты.

Часто это сложнее, чем привирать с помощью красивых графиков.

Поэтому я собрал несколько базовых принципов визуализации, которые применяю в работе (список источников в конце). Пригодится, если вы пишете отчеты, готовитесь к презентации или просто хотите донести смысл каких-то цифр. Главное: чтобы сделать хороший график, не нужно быть талантливым художником или виртуозно владеть matplotlib/ggplot2. Поехали.
Читать дальше →
Total votes 48: ↑45 and ↓3+42
Comments18

Information

Rating
Does not participate
Date of birth
Registered
Activity