ermolnik — GDE, Digital Nomad, mobile team lead – Telegram
ermolnik — GDE, Digital Nomad, mobile team lead
752 subscribers
201 photos
34 videos
2 files
190 links
Канал о мобильной разработке, управлении командами и путешествиях by @ermolnik
Download Telegram
В нашем клубе есть джентельмен, который замутил стартап на генерации картинок с помощью AI
Зацените, что у него получается
🔥3
Чет там такие люди со радист. И возникла идея публичить то о чем говорят топы в мобильной разработке кружочками в телеге. Интересно?
Anonymous Poll
81%
Буду смотреть
19%
Не буду смотреть
Пока не понял что за фича, но если считаешь что я красив, могуч и волосат голосуй за меня тут
😁8🤨1
Продолжаем серию статей про работу руководителя в IT
Сегодня поговорим про онбординг
Процесс, на самом деле, довольно очевидный и понятный поэтому мясного контента не будет, но будет ряд полезных фишечек как сделать онбординг приятным и более эффективным

Онбординг в IT
👍8
Кстати у всех же есть LinkedIn, почему мы до сих пор незаконнектились?

https://www.linkedin.com/in/ermolnik/

Добавлятесь, скидывайте в комменты свои аккаунты
6🤮5🤔2😐1
Все вы знаете, что я не очень в решении алгоритмов и самому мне ни разу не удавалось заставить себя их решать. Мои друзья из авито решили создать канал, где они разбирают этот тип задач и это отличная возможность прокачаться и уже наконец пройти собес в компанию твоей мечты :)
👍6
Валидация скобочной последовательности (3 вида скобок)

Нельзя обойти стороной одну из самых мейнстримных задач на собеседованияхвалидация скобочной последовательности. Тот читатель, кто время от времени ходит по собесдованиям и имеет десяток-два продйенных алгоритмических секции, почти со стопроцентной вероятностью сталкивался с ней. Она настолько популярна, что давно перешла из разряда средне-сложных в разряд легких и, скорее всего, в известных компаниях, практикующих эту секцию, если и попадется вам, то в самом начале собеседования, как «разминочная».

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

Сложность: 🟢 Легкая

ℹ️ Описание

Дана строка, состоящий только из скобок «(», «)», «{», «}», «[» и «]». Напишите функцию, определяющую, является ли строка правильной скобочной последовательностью.

⚠️ Ограничения

🔹Длина строки от 1 до 10000 символов
🔹Строка состоит только из символов «(», «)», «{», «}», «[» и «]».


1️⃣ Пример

Входящие данные: "()"
Ответ: true
Объяснение: все открывающие скобки имеют соотвествующую закрывающую скобку, открывающие и закрывающие скобки расположены в правильном порядке, в строке нет закрывающих скобок без предварительно открывающей пары.

2️⃣ Пример

Входящие данные: "()[]{}"
Ответ: true
Объяснение: все открывающие скобки имеют соотвествующую закрывающую скобку, открывающие и закрывающие скобки расположены в правильном порядке, в строке нет закрывающих скобок без предварительно открывающей пары.

3️⃣ Пример

Входящие данные: "(]"
Ответ: false
Объяснение: открывающая и закрывающая скобки относятся к разным типам скобок


Решение

Для решения задачи мы воспользуемся структурой данных стек (можно реализовать через обычный массив). Будем идти по строчке посимвольно.

🔘 Если символ — одна из открывающих скобок, кладем ее в стек.

🔘 Если символ — одна из закрывающих скобок, пытаемся извлечь верхний элемент из стека:
если в стеке нет эементов, значит последовательность невалидна и мы столкнулись с закрывающей скобкой для которой нет открывающей;
если верхний элемент — это открывающая скобка другого типа, значит последовательность невалидна и мы столкнулись с кейсом неверной пары (например "(]");
если верхний элемент — это открывающая скобка нужного типа, то просто идем дальше.

🔘 Если после итерации по всем симолам строки в стеке остались какие-либо элементы, значит последовательность невалидна (есть открывающие скобки, для которых нет открывающей пары). В противном случае — последовательность валидна.

Решение на GO
Решение на TypeScript

🅾️ Оценка сложности

По времени
Чтобы провалидировать строку, нам достаточно один раз проитерироваться по всем символам, то есть сложность равна O(n),
где n — длина строки.

По памяти
Нам понадобится промежуточный стек, в который в худшем случае мы поместим все символы строки (например, для строки "((((("). То есть сложность по памяти также равна O(n), где n — длина строки.

#strings #stack #easy
👍7
Короче мне было скучно и за вечер я накидал русско-армянский разговорник на Flutter 😂️
11👍3😁1
Лично мое мнение — кроссплатформа все еще хорошее решение только для проверки гипотез
На средних и больших проектах (500к+ строк исходного кода) издержки на поддержание всего этого в рабочем состоянии больше чем издержки на написание кода на 2 платформы
👍9
Forwarded from iOS Makes Me Hate (Lev Bondarenko)
ну я тоже выскажусь по кроссплатформам:

1. У них если и будет успех, то в очень узких кейсах. Максимум 10% кода в проекте.

2. Как не странно до сих пор сложно доказать продуктовую ценность. Ну вот вы потыкали КММ, РН, флаттер и что? А как доказать, что фичу быстрее сделали или поддержали? Сам не раз слышал требования от бизнеса про четкие метрики, но так и не нашел даже в интернетах.

3. Кроссплатформа очень хрупкая на совместимости с версиями операционных систем, языков, сред разработки. До сих пор никто не подсчитал сколько уходит времени на очередные адаптации к версиям.

Мой вердикт, кроссплатформа это и хорошо, но только в очень узких кейсах с жииииирной бизнес-логикой
👍4😁1
Всем привет, мне снова было скучно и я написал бота в телеге с игрой по типу Contexto
Цель игры -- программа загадывает слово, пользователь пытается угадать, программа говорит на сколько это слово близко к загадонному

Ссылка на чат, где можно попробовать поиграть -- @ermolnikWords
Ссылка на бота, которого можно добавить в свою группу и играть с друзьями -- @ermolnikWordsBot

Как играть?
Для запуска бота нужно ввести команду /start
Для того чтобы ввести слово, нужно через / его написать. Например /привет
Для того чтобы посмотреть список лидеров /leaderboard

Присоединяйтесь к группе бетта-тестеров 🌚
👍6
Чувак из клуба 700 в телевизоре
Случайный пользователь :D
😁24🤣6
Последний раз когда тестил compose multi platform он уже довольно хорошо работал на обеих платформах
Кажется пора запилить очередной проектик за вечер :)

https://youtu.be/5_W5YKPShZ4?si=h508xqYY_S10E12x
👍8
8🤣3😁1