Репозиторий доверенного ПО: инхаус или аутсорс?
На SOC Forum одним из самых горячих дискуссий стала тема, которая ещё пять лет назад казалась нишевой, а сегодня напрямую влияет на устойчивость критической инфраструктуры: создание доверенных репозиториев ПО.
В дискуссии приняли участие: Федор Герасимов, лидер сообщества FinDevSecOps, эксперты финансового сектора − Максим Кожокарь (Банк России), Всеслав Соленик (Сбертех), а также Антон Прокофьев (ГК «Солар»), Юлия Липатникова (Cloud.ru) и Николай Костригин (Базальт СПО).
Полную запись дискуссии можно посмотреть здесь (Программа 18 ноября, Зал 3, 16.00).
В этом материале приводим самые интересные цитаты экспертов сессии и их рекомендации.
Читать далее
Читать: https://habr.com/ru/companies/solarsecurity/articles/973812/
@mobi_dev | Другие наши каналы
На SOC Forum одним из самых горячих дискуссий стала тема, которая ещё пять лет назад казалась нишевой, а сегодня напрямую влияет на устойчивость критической инфраструктуры: создание доверенных репозиториев ПО.
В дискуссии приняли участие: Федор Герасимов, лидер сообщества FinDevSecOps, эксперты финансового сектора − Максим Кожокарь (Банк России), Всеслав Соленик (Сбертех), а также Антон Прокофьев (ГК «Солар»), Юлия Липатникова (Cloud.ru) и Николай Костригин (Базальт СПО).
Полную запись дискуссии можно посмотреть здесь (Программа 18 ноября, Зал 3, 16.00).
В этом материале приводим самые интересные цитаты экспертов сессии и их рекомендации.
Читать далее
Читать: https://habr.com/ru/companies/solarsecurity/articles/973812/
@mobi_dev | Другие наши каналы
👍1
Превращаем сайт в мобильное приложение за пару шагов. Часть 2
Привет, Хабр! Меня все так же зовут Матвей. В прошлой статье я собрал простое Android‑приложение из сайта с помощью конструктора. Мы убедились, что для лендинга или каталога зачастую достаточно одной WebView‑обертки. Во второй части возьмем тот же небольшой веб‑сервис, создадим под него URL и соберем полноценное приложение с пушами и доступом к системным функциям.
Разбираться в Swift, Kotlin или Flutter по‑прежнему не придется: вместо этого используем конструктор. На примере посмотрим, как сайт превращается в приложение, какие настройки важны, чтобы оно адекватно работало и выглядело хорошо на Android и iOS. И как довести этот результат до состояния, когда не стыдно использовать. Детали внутри.
Читать далее
Читать: https://habr.com/ru/companies/selectel/articles/973874/
@mobi_dev | Другие наши каналы
Привет, Хабр! Меня все так же зовут Матвей. В прошлой статье я собрал простое Android‑приложение из сайта с помощью конструктора. Мы убедились, что для лендинга или каталога зачастую достаточно одной WebView‑обертки. Во второй части возьмем тот же небольшой веб‑сервис, создадим под него URL и соберем полноценное приложение с пушами и доступом к системным функциям.
Разбираться в Swift, Kotlin или Flutter по‑прежнему не придется: вместо этого используем конструктор. На примере посмотрим, как сайт превращается в приложение, какие настройки важны, чтобы оно адекватно работало и выглядело хорошо на Android и iOS. И как довести этот результат до состояния, когда не стыдно использовать. Детали внутри.
Читать далее
Читать: https://habr.com/ru/companies/selectel/articles/973874/
@mobi_dev | Другие наши каналы
❤🔥1
OTXform — операциональное преобразование от теории к практике
В данной статье рассмотрим технологию операционального преобразования, изучим теорию, проанализируем и применим на практике.
Теория без практики пуста, а практика без теории слепа.
Читать далее
Читать: https://habr.com/ru/articles/972638/
@mobi_dev | Другие наши каналы
В данной статье рассмотрим технологию операционального преобразования, изучим теорию, проанализируем и применим на практике.
Теория без практики пуста, а практика без теории слепа.
Читать далее
Читать: https://habr.com/ru/articles/972638/
@mobi_dev | Другие наши каналы
Всё, что нужно знать о публикации в Google Play
Недавно я решил опубликовать приложение в Google Play, думая, что это не так сложно. Под эту задачу написал небольшое приложение-счетчик и стал погружаться во все тонкости процесса публикации. Почти сразу стало понятно, почему многие называют это кругами ада.
Этой статьей хочу внести больше ясности в процесс и уберечь других разработчиков от лишней траты времени, которая часто возникает из-за ошибок на разных этапах. Расскажу о подводных камнях, частых ошибках и о том, как бесплатно и быстро набрать тестировщиков.
Читать далее
Читать: https://habr.com/ru/articles/974016/
@mobi_dev | Другие наши каналы
Недавно я решил опубликовать приложение в Google Play, думая, что это не так сложно. Под эту задачу написал небольшое приложение-счетчик и стал погружаться во все тонкости процесса публикации. Почти сразу стало понятно, почему многие называют это кругами ада.
Этой статьей хочу внести больше ясности в процесс и уберечь других разработчиков от лишней траты времени, которая часто возникает из-за ошибок на разных этапах. Расскажу о подводных камнях, частых ошибках и о том, как бесплатно и быстро набрать тестировщиков.
Читать далее
Читать: https://habr.com/ru/articles/974016/
@mobi_dev | Другие наши каналы
👍1🔥1
Мобильная разработка
Photo
Сообщество за считанные часы собрало $5 млн на новый Linux-смартфон от Jolla
Jolla запускает новый Linux-смартфон, профинансированный сообществом: открытость, приватность и альтернатива Android в 2026 году
— Читать дальше «Сообщество за считанные часы собрало $5 млн на новый Linux-смартфон от Jolla»
Jolla запускает новый Linux-смартфон, профинансированный сообществом: открытость, приватность и альтернатива Android в 2026 году
— Читать дальше «Сообщество за считанные часы собрало $5 млн на новый Linux-смартфон от Jolla»
❤🔥3
Мобильная разработка
Photo
MAX лег — тысячи жалоб по всей стране, не работают Android- и iOS-приложения
Мессенджер MAX переживает крупный сбой: приложения на Android, iOS и вебе не открываются, пользователи по всей России жалуются на недоступность
— Читать дальше «MAX лег — тысячи жалоб по всей стране, не работают Android- и iOS-приложения»
Мессенджер MAX переживает крупный сбой: приложения на Android, iOS и вебе не открываются, пользователи по всей России жалуются на недоступность
— Читать дальше «MAX лег — тысячи жалоб по всей стране, не работают Android- и iOS-приложения»
😁5
Мобильная разработка
Photo
MAX лег — тысячи жалоб по всей стране. Что известно на данный момент
Мессенджер MAX переживает крупный сбой: приложения на Android, iOS и вебе не открываются, пользователи по всей России жалуются на недоступность
— Читать дальше «MAX лег — тысячи жалоб по всей стране. Что известно на данный момент»
Мессенджер MAX переживает крупный сбой: приложения на Android, iOS и вебе не открываются, пользователи по всей России жалуются на недоступность
— Читать дальше «MAX лег — тысячи жалоб по всей стране. Что известно на данный момент»
😁15🤣5🔥4😱3👍2❤1😢1
Мобильная разработка
Photo
Man or Boy test в CSS: три способа сверстать бургер-меню
Статья посвящена анализу трёх способов создания бургерного меню: от самого простого к самому сложному с применением Atomic CSS фреймворка mlut! Прочитав её, вы поймёте, какого уровня навыками вы обладаете в Frontend-разработке.
— Читать дальше «Man or Boy test в CSS: три способа сверстать бургер-меню»
Статья посвящена анализу трёх способов создания бургерного меню: от самого простого к самому сложному с применением Atomic CSS фреймворка mlut! Прочитав её, вы поймёте, какого уровня навыками вы обладаете в Frontend-разработке.
— Читать дальше «Man or Boy test в CSS: три способа сверстать бургер-меню»
Мобильная разработка
Photo
Создание кастомного Toolbar с Jetpack Compose. Подробный разбор всех попыток и решений
Привет, Хабр! Меня зовут Максим Сазонов, я android-разработчик в ПСБ.
Сегодня предлагаю разобрать путь создания кастомного тулбара от первой кривой реализации до оптимизированного решения.
И главная проблема, которую надо решить при создании этого компонента это центрирование title и subtitle. Эта проблема возникает потому что у нас может быть тулбар с разным количеством иконок по обе стороны от заголовка, текстом и иконками или только с title. И если ширина иконок у нас стандартна (44 dp), и достаточно просто умножить эту ширину на количество иконок справа, чтобы понять свободное пространство для title и subtitle, то с текстом с одной или с двух сторон всё намного сложнее, так как мы не можем заранее вычислить ширину этого текста, а значит не можем правильно центрировать и задать ширину title и subtitle.
В статье я расскажу, как я решил этот вопрос.
Читать далее
Читать: https://habr.com/ru/companies/psb/articles/974368/
@mobi_dev | Другие наши каналы
Привет, Хабр! Меня зовут Максим Сазонов, я android-разработчик в ПСБ.
Сегодня предлагаю разобрать путь создания кастомного тулбара от первой кривой реализации до оптимизированного решения.
И главная проблема, которую надо решить при создании этого компонента это центрирование title и subtitle. Эта проблема возникает потому что у нас может быть тулбар с разным количеством иконок по обе стороны от заголовка, текстом и иконками или только с title. И если ширина иконок у нас стандартна (44 dp), и достаточно просто умножить эту ширину на количество иконок справа, чтобы понять свободное пространство для title и subtitle, то с текстом с одной или с двух сторон всё намного сложнее, так как мы не можем заранее вычислить ширину этого текста, а значит не можем правильно центрировать и задать ширину title и subtitle.
В статье я расскажу, как я решил этот вопрос.
Читать далее
Читать: https://habr.com/ru/companies/psb/articles/974368/
@mobi_dev | Другие наши каналы
Гид по Git — глазами бывшего джуна
Привет, на связи Ксюша, миддл-разработчик Surf. Миддлом я стала недавно. Когда я пришла в компанию, я, конечно, знала, что такое Git. Ну, по крайне мере, я так говорила.
Как-то я, по чистейшей случайности, разумеется, перезаписала чужую ветку. А потом потратила часов 6, чтобы вернуть всё «как было». Благо, помог наш лид, который показал, что делать.
Так я и поняла, что Git — совсем не плохое слово из трёх букв. И теперь несу для всех, кто точно так же начинает свой путь в Git, подробную и понятную инструкцию работы с ним. Го разбираться.
Читать дальше
Читать: https://habr.com/ru/companies/surfstudio/articles/973304/
@mobi_dev | Другие наши каналы
Привет, на связи Ксюша, миддл-разработчик Surf. Миддлом я стала недавно. Когда я пришла в компанию, я, конечно, знала, что такое Git. Ну, по крайне мере, я так говорила.
Как-то я, по чистейшей случайности, разумеется, перезаписала чужую ветку. А потом потратила часов 6, чтобы вернуть всё «как было». Благо, помог наш лид, который показал, что делать.
Так я и поняла, что Git — совсем не плохое слово из трёх букв. И теперь несу для всех, кто точно так же начинает свой путь в Git, подробную и понятную инструкцию работы с ним. Го разбираться.
Читать дальше
Читать: https://habr.com/ru/companies/surfstudio/articles/973304/
@mobi_dev | Другие наши каналы
👍1
Асинхронность и многопоточность в Dart/Flutter: Future, Stream и Isolates
При разработке Flutter-приложений быстро возникает необходимость выполнять долгие операции: загрузку данных из сети, обращение к базе, работу с файлами, вычисления и т.п. Если делать это синхронно, основной поток блокируется, интерфейс «зависает», а пользователь видит «замороженный» экран. Асинхронное программирование в Dart позволяет вынести такие операции из UI-потока, не блокируя интерфейс и сохраняя приложение плавным и отзывчивым.
В данной статье мы расскажем, как во Flutter использовать ключевые инструменты асинхронности Dart — Future, async/await, Stream, а также многопоточность через Isolate — и покажем, как применять их на практике в реальных приложениях.
Читать далее
Читать: https://habr.com/ru/articles/974846/
@mobi_dev | Другие наши каналы
При разработке Flutter-приложений быстро возникает необходимость выполнять долгие операции: загрузку данных из сети, обращение к базе, работу с файлами, вычисления и т.п. Если делать это синхронно, основной поток блокируется, интерфейс «зависает», а пользователь видит «замороженный» экран. Асинхронное программирование в Dart позволяет вынести такие операции из UI-потока, не блокируя интерфейс и сохраняя приложение плавным и отзывчивым.
В данной статье мы расскажем, как во Flutter использовать ключевые инструменты асинхронности Dart — Future, async/await, Stream, а также многопоточность через Isolate — и покажем, как применять их на практике в реальных приложениях.
Читать далее
Читать: https://habr.com/ru/articles/974846/
@mobi_dev | Другие наши каналы
👍3❤1
Flutter MethodChannel: как подружить Dart с нативным Android (и iOS)
Привет, Хабр! Сегодня поговорим о том, как Flutter-приложению выйти за пределы чисто Dart-мирка и воспользоваться возможностями родной платформы, например, вызвать API Android или iOS напрямую. Например, есть какая-нибудь классная фича в Android SDK, а в Flutter её нет. Как быть? Ответ — писать собственный плагин и использовать MethodChannel.
Читать далее
Читать: https://habr.com/ru/companies/otus/articles/970094/
@mobi_dev | Другие наши каналы
Привет, Хабр! Сегодня поговорим о том, как Flutter-приложению выйти за пределы чисто Dart-мирка и воспользоваться возможностями родной платформы, например, вызвать API Android или iOS напрямую. Например, есть какая-нибудь классная фича в Android SDK, а в Flutter её нет. Как быть? Ответ — писать собственный плагин и использовать MethodChannel.
Читать далее
Читать: https://habr.com/ru/companies/otus/articles/970094/
@mobi_dev | Другие наши каналы
👍1
Как прикрутить AI к табуретке
Последние несколько месяцев я занимаюсь продуктом, который работает почти полностью за счет ИИ — около 90% функционала. Еще пару лет назад для создания похожего по возможностям продукта понадобилась бы целая команда бэкенд-разработчиков. Сейчас же мой бэкенд — это просто набор промптов к LLM.
Не спешите закидывать помидорами. Это новый тип AI-based продуктов, которых будет становиться все больше. И для некоторых задач такой подход действительно отлично подходит.
В этой статье попробуем разобрать архитектуру такого продукта на минималках и посмотреть, как прикрутить AI к существующему приложению.
Читать далее
Читать: https://habr.com/ru/articles/975512/
@mobi_dev | Другие наши каналы
Последние несколько месяцев я занимаюсь продуктом, который работает почти полностью за счет ИИ — около 90% функционала. Еще пару лет назад для создания похожего по возможностям продукта понадобилась бы целая команда бэкенд-разработчиков. Сейчас же мой бэкенд — это просто набор промптов к LLM.
Не спешите закидывать помидорами. Это новый тип AI-based продуктов, которых будет становиться все больше. И для некоторых задач такой подход действительно отлично подходит.
В этой статье попробуем разобрать архитектуру такого продукта на минималках и посмотреть, как прикрутить AI к существующему приложению.
Читать далее
Читать: https://habr.com/ru/articles/975512/
@mobi_dev | Другие наши каналы
Не просто WebView: Строим движок на Flutter для конвертации сайтов в приложения с Server-Driven UI
Привет, Хабр.
WebView-приложения — это боль. Тормоза, убогий UX, мгновенный реджект от Apple по пункту 4.2 («Minimum Functionality»). Обычно это просто браузер без адресной строки, за который стыдно брать деньги.
Я решил не делать очередную "обертку", а подойти к задаче инженерно. Моя цель: платформа, где WebView — лишь контентный слот, обернутый в полноценный нативный UI на Flutter.
В этой статье:
Читать далее
Читать: https://habr.com/ru/articles/975950/
@mobi_dev | Другие наши каналы
Привет, Хабр.
WebView-приложения — это боль. Тормоза, убогий UX, мгновенный реджект от Apple по пункту 4.2 («Minimum Functionality»). Обычно это просто браузер без адресной строки, за который стыдно брать деньги.
Я решил не делать очередную "обертку", а подойти к задаче инженерно. Моя цель: платформа, где WebView — лишь контентный слот, обернутый в полноценный нативный UI на Flutter.
В этой статье:
Читать далее
Читать: https://habr.com/ru/articles/975950/
@mobi_dev | Другие наши каналы
🙈1
[Перевод] Создание приложения с меню на Flutter, которое не занимает много памяти
Расскажу вам в этой статье, как я снизил потребление памяти моего macOS-приложения на Flutter более чем на 90%. Это потребовало неожиданно много усилий и включало создание собственного хоста для Flutter, разработку пользовательского плагина для перетаскивания и отладку кучи кода на Rust.
Некоторое время назад я создал приложение со строкой меню для macOS под названием Quickgif. Оно удовлетворило мою давнюю потребность — иметь инструмент для выборки GIF-картинок, который можно использовать в любом приложении, не загружая GIF-ки вручную и не имея дела с разными реализациями, используемыми в других программах.
Читать далее
Читать: https://habr.com/ru/companies/piter/articles/976000/
@mobi_dev | Другие наши каналы
Расскажу вам в этой статье, как я снизил потребление памяти моего macOS-приложения на Flutter более чем на 90%. Это потребовало неожиданно много усилий и включало создание собственного хоста для Flutter, разработку пользовательского плагина для перетаскивания и отладку кучи кода на Rust.
Некоторое время назад я создал приложение со строкой меню для macOS под названием Quickgif. Оно удовлетворило мою давнюю потребность — иметь инструмент для выборки GIF-картинок, который можно использовать в любом приложении, не загружая GIF-ки вручную и не имея дела с разными реализациями, используемыми в других программах.
Читать далее
Читать: https://habr.com/ru/companies/piter/articles/976000/
@mobi_dev | Другие наши каналы
❤1