Pull to refresh
19
0.2
Роман @Firsto

Инженер-программист

Send message

Backend Driven UI с точки зрения бэкенда: к чему готовиться, если вы решили на него перейти

Reading time10 min
Views6.2K

Многим знаком подход Backend Driven UI. С его помощью можно создавать новые страницы, запускать А/B-тесты, легко менять флоу в любое время и сразу на всех платформах. И при этом не надо долго и мучительно перевыкатывать приложение.

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

Читать далее
Total votes 15: ↑14 and ↓1+13
Comments1

Введение в нейросети: что, зачем и как?

Level of difficultyMedium
Reading time25 min
Views32K

Это модное слово всё чаще используется в разговорной речи: обывателей плотнее окутывают угрозами бунта искусственного интеллекта и войны с роботами — с одной стороны, и рекламой нейросетевых продуктов — с другой. Отдельный котёл в аду — для тех, кто впаривает «курсы дата‑саентистов». А когда бедный юзернейм в поисках истины обращается к Гуглу своему любимому поисковику — то вместо простого ответа на простой вопрос, получает ещё больше вопросов — таких как тензорфлоу, сигмоида и, не дай Бог, линейная алгебра.

Как же нейросети рисуют картинки?
Total votes 58: ↑56 and ↓2+54
Comments25

К чему с годами приводит работа с Dependency Injection и Service Locator

Level of difficultyMedium
Reading time6 min
Views11K

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

Так произошло и со мной. Я решил написать полноценный функционал для работы с зависимостями и, так как я Android-разработчик, адаптировать для работы в привычной среде для моих привычных задач. 

Делюсь написанным — вдруг вам это поможет прокачать технические скиллы и создать собственную библиотеку. 

Читать далее
Total votes 22: ↑20 and ↓2+18
Comments10

Рисуем эффект «Таноса» на Android (и не только)

Level of difficultyMedium
Reading time32 min
Views7.6K

Привет! Вопрос мобильным разработчикам: часто ли вам приходится работать с необычным UI? Если вы ответили утвердительно, то я по-доброму вам завидую. В своей повседневной практике мне в основном приходится работать со стандартным набором компонентов и их базовой настройкой. Абсолютно ничего не имею против, но хочется чего-то «эдакого»: кастомных компонентов, написанных с нуля, необычных анимаций и эффектов. Часто подобные вещи вызывают много споров (как среди разработчиков, так и конечных пользователей) а-ля «А на кой оно вообще надо», но лично для меня это ни что иное, как творчество. Кто-то красиво рисует, кто-то красиво поёт, а кто-то пишет красивые уникальные приложения, которыми интересно и приятно пользоваться. И мы, пожалуй, не можем обвинять авторов за бессмысленность «украшательств», как по-хорошему не можем судить художника за его работу.

К чему я – спросите вы. Я отвечу: настраиваю на нужный лад :) В рамках этой статьи мы коснёмся полезной темы и создадим что-то бесполезное в практическом смысле, но несомненно интересное и достаточно уникальное.

Уже интересно
Total votes 23: ↑23 and ↓0+23
Comments9

Чек-лист для бизнеса: что нужно сделать перед началом разработки сайта

Reading time13 min
Views3.3K

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

Сделали простой и понятный чек‑лист, который поможет вам подготовиться к интервью с подрядчиком и объяснить, чего вы ждете от будущего сайта.

Эти советы универсальны, они никак не касаются типа разработки. Чек‑лист скорее направлен на сбор информации и материалов, которые позволят создать конверсионный ресурс и отразить в нем необходимые ценности и миссии бренда. Теперь обо всем по порядку.

Читать далее
Total votes 12: ↑5 and ↓7-2
Comments9

Вопросы по DevOps. Часть 1

Level of difficultyMedium
Reading time75 min
Views22K


Hello world!


В первой части шпаргалки (вопросника, если угодно) на высоком уровне рассматриваются такие вещи, как сеть, HTTP, операционная система, виртуализация, хранилище etc., а также несколько технологий, используемых в сфере DevOps, таких как Prometheus, OpenStack, Puppet, Elastic etc. (вопросы с ответами из основного репозитория оригинала). Полагаю, шпаргалка будет интересна всем, кто связан с разработкой программного обеспечения, прежде всего, с разработкой веб-приложений. Буду признателен за помощь в уточнении/исправлении понятий/терминов, а также в обнаружении очепяток.


Возможно, немного другой формат шпаргалки покажется вам более удобным.

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

Помощь на старте: 10 полезных ссылок для начинающих iOS-разработчиков

Level of difficultyEasy
Reading time3 min
Views1.2K

Всем привет! Меня зовут Денис Сурков, я iOS-разработчик в компании «Мой спорт» и наставник на курсе «iOS-разработчик» в Яндекс Практикуме.

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

К подборке
Total votes 10: ↑9 and ↓1+8
Comments0

Бесплатные курсы для изучения искусственного интеллекта в 2024 году

Level of difficultyEasy
Reading time5 min
Views37K


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

Множество ресурсов предлагают высококачественное обучение, а также множество открытых материалов и учебных пособий.

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

Таким образом, обучение через бесплатные ресурсы вполне реально и эффективно, особенно при наличии мотивации и самостоятельности в учебном процессе.

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

Начнем!

Читать далее
Total votes 18: ↑11 and ↓7+4
Comments5

Выбираем подходящий PHP-фреймворк для проекта

Level of difficultyMedium
Reading time8 min
Views15K

Привет, Хабр. Меня зовут Денис, я backend-разработчик в Пиробайте. Поговорим о самых распространенных PHP-фреймворках и о том, для каких проектов целесообразнее выбрать тот или иной вариант. 

Статистику распространения бэкенд-фреймворков на PHP я брал с портала JetBrains, она 2021-2022 года, но ситуация к концу 2023 практически не изменилась — вот статистика лучших PHP-фреймворков от Cloudways.

Самыми популярными были и остаются Laravel и Symfony. После них идет WordPress, но в статье его рассматривать не будем (потому что CMS).

Следующий за ним CodeIgniter пропущу намеренно. Я удивился, но разработчики в интернете до сих пор спорят о том, что лучше — Laravel или CodeIgniter. По сути, это full-stack MVC фреймворк, коих много. Он делает то же, что Laravel или Symfony, только отличается архитектурой и рассчитан на маленькие проекты. Он стар (существует с 2006 года) и тот же Laravel был создан как его альтератива.

Вместо этих 2-х ребят я предлагаю рассмотреть следующие — Laminas (Mezzio) и Slim. Эти фреймворки/микрофреймворки, на мой взгляд, более технологичны на фоне предыдущих и хорошо подходят для решения нетипичных задач.

Читать далее
Total votes 23: ↑16 and ↓7+9
Comments40

Альтернатива Nova: почему решили перейти с самописного решения на Orchid

Level of difficultyMedium
Reading time8 min
Views4.5K

Привет. Меня зовут Артем, я backend-разработчик в Пиробайте. Когда я только пришел в компанию, то узнал, что команда разрабатывает административные панели на основе самописного решения, созданного внутри студии. Когда-то за основу был взят шаблон Inspinia, и для него написана переиспользуемая логика на PHP, чтобы оперативно решать задачи.

На прошлом же месте я работал с Orchid, и, как мне кажется, он показывал себя с наилучшей стороны, а главное — был прост и удобен как при разработке, так и при масштабировании. 

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

Читать далее
Total votes 14: ↑13 and ↓1+12
Comments24

Книги, о которых редко говорят

Reading time4 min
Views46K

Дал ему подборку книг, он приходит месяца через два, и с порога такой сразу:
— Я с друзьями не могу разговаривать.
— Ну да есть такой, недостаточек.
интервью Жака Фреско

Читать далее
Total votes 91: ↑89 and ↓2+87
Comments26

Нечёткий мир шума Перлина

Reading time5 min
Views18K
image

Что такое шум Перлина?


Шум Перлина придуман в 1983 году Кеном Перлином (получившим за это достижение премию Американской Академии кинематографических искусств и наук). Видите ли, в те времена все стремились к фотореализму, но его всегда не хватало. Кен Перлин придуман этот алгоритм шума, чтобы избавиться от жалкого «компьютерного» внешнего вида 3D-моделей. Шум — это генератор случайных чисел в компьютерной графике. Это случайный неструктурированный паттерн, он полезен в тех случаях, когда требуется источник подробных деталей, недостающих в очевидной структуре1. Шум Перлина — это многомерный алгоритм, используемый в процедурной генерации, текстурах, генерации рельефа, генерации карт, генерации поверхностей, генерации вершин, и так далее, и тому подобное.
Total votes 29: ↑27 and ↓2+25
Comments5

Дайте крудошлепа

Level of difficultyMedium
Reading time7 min
Views112K

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

У нас был 3(три) Т‑Р-И статуса юзера. Anonym → Logined → Phone_Confirmed. Молодой талант до меня увидел в этом граф, и написал класс на 200+ строк, реализующий алгоритм Флойда‑Уоршелла, прикрутил стейт‑машину и не найдя интересных задач, c блеском прошел собес в Яндекс и свалил.

Меня наняли сеньором, и я каюсь ничерта не понял, алгоритм прекрасно работал на первой ступени, на второй давал сбои, тоскливо погуглил этот алгоритм, стер все к черту и написал: if(status==Logined & phone!=null){status=Phone_Confirmed}.

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

Это было вступление.

Уважаемый Яндекс, Сбер и прочая! Я умею быстро решать задачи и кратно увеличивать выхлоп простыми решениями. Я самый умный программист, среди всех ваших работников! Я — НадНадсеньор! Сейчас докажу.

Потому что, только я могу решить задачку, которую вы уже 10 лет решить не можете, когда прилетает пуш‑уведомление или смс и в твоем всплывающем окне написано:

«Ваш шестизначный пароль доступа в наше приложение: 123...»

Не согласен! ...
Total votes 465: ↑402 and ↓63+339
Comments727

Как генерировать стихи с помощью силлабо-тонической трансформенной языковой модели (часть первая)

Reading time8 min
Views9.1K

Всем привет! Меня зовут Илья Козиев, я работаю в Управлении экспериментальных систем машинного обучения SberDevices над вопросами генерации текстового контента. В этой статье я хочу представить эффективный способ решения такой интересной задачи, как генерация стихов, с помощью одной из самых современных нейросетевых архитектур — GPT-3. Я подробно распишу все необходимые шаги на пути к получению стихов примерно вот такого уровня:

Я оставляю брошенные фразы
Иного смеха, слабости и слёз
Я превращаюсь в голубые стразы
Кружась ветвями молодых берёз

Читать далее
Total votes 29: ↑28 and ↓1+27
Comments17

Garbage Collection и JVM

Level of difficultyEasy
Reading time17 min
Views19K

Привет, Хабровчане!

JVM работает как хорошо отлаженный механизм, автоматически распределяя и освобождая память. Это и есть суть Garbage Collection. Это процесс, который автоматически находит и удаляет объекты, которые больше не используются вашим приложением. Благодаря этому, разработчики могут сосредоточиться на логике приложения, не беспокоясь о ручном управлении памятью.

Знание того, как работает GC и JVM, необходимо каждому Java-разработчику. Правильное управление ресурсами напрямую влияет на производительность и стабильность приложений.

Читать далее
Total votes 27: ↑24 and ↓3+21
Comments7

Kotlin под капотом: inline функции

Level of difficultyMedium
Reading time8 min
Views12K

Многие разработчики не понимают в чем профит от использования inline функций и в каких случаях их нужно использовать. Для чего нужен crossinline и как работает reified. Разбираемся как это работает на уровне байткода, в котором хорошо видно всю суть inline функций kotlin.

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

Простая архитектура с использованием MVVM и делегатов в Android. Оптимальное решение для малых проектов

Level of difficultyEasy
Reading time17 min
Views5.4K

В этой статье мы рассмотрим, как создать простую архитектуру Android, используя паттерн MVVM (Model-View-ViewModel) и делегаты для эффективного управления состоянием.

Читать далее
Total votes 8: ↑6 and ↓2+4
Comments0

Сказ о том, как для андроидного приложения бумажное руководство писали

Level of difficultyMedium
Reading time15 min
Views2.4K

Руководство пользователя для андроидного приложения само по себе невероятная редкость — я сходу не смог вспомнить ни одного примера, тем более на бумаге. Затея сделать печатное руководство пользователя приложения на смартфоне нетривиальна, однако здравое зерно в этом есть. Бумажная документация не требует энергии и интернета, может быть продана как материальный предмет или предъявлена окологосударственным пользователям. Наконец, при должном подходе к печати бумажная документация солидно выглядит. Как бы ни была изготовлена документация, главная её задача — уменьшить нагрузку на хелпдеск. С этим соображением я и подошёл к делу.

Читать полностью
Total votes 16: ↑16 and ↓0+16
Comments70

Как изучать китайский язык / 怎样学习汉语? Пошаговая инструкция

Level of difficultyEasy
Reading time2 min
Views39K

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

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

И как же?
Total votes 26: ↑17 and ↓9+8
Comments39

Кроссплатформенный клиент для ChatGPT

Level of difficultyEasy
Reading time1 min
Views17K

Занимался обёрткой для OpenAI для Делфи и вдобавок сделал клиент.

Прошу заранее прощения, я хотел сделать пост нового типа, но с телефона не увидел, как это можно сделать.

Читать далее
Total votes 35: ↑33 and ↓2+31
Comments25
1
23 ...

Information

Rating
2,125-th
Location
Новокузнецк, Кемеровская обл., Россия
Registered
Activity