Telegram Web
💻 Вечер откровений: расскажите про вашу историю перехода в IT

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

Мы в Библиотеке мобильного разработчика верим, что каждое решение стать частью мира технологий связано с личной историей. Делитесь в комментариях своими историями о том, как вы пришли в IT:

• Что стало ключевым моментом, когда вы решили перейти в IT?
• Какие трудности вы испытывали на ранних этапах?
• Какие успехи или достижения вы испытали на своем пути?
• Как вы видите свое будущее в IT?

Библиотека мобильного разработчика #междусобойчик
📉🤦 152 000 уволенных в IT за год: кому это помогло?

Корпоративная бензопила снова в деле: каждый месяц 2 миллиона американцев теряют работу из-за сокращений. Но действительно ли это помогает компаниям?

🔗 Читать статью
⚔️ Работать на удаленке или в офисе?

Понедельник, 9:00. Один разработчик в пижаме уже запустил IDE, держа в одной руке кота, а в другой — кофе. В это же время его коллега едет в офис, стоя в пробке и слушая подкаст с ускорением 1.5x. Две реальности современного разработчика. Но какая эффективнее?

Недавние исследования показывают, что продуктивность на удалёнке выше на 13%, НО... отчуждение и профессиональное выгорание тоже часто выше.

Где лучше писать код: дома с котом или в офисе с коллегами? Голосуйте и пишите свое мнение в комментариях 💬

❤️ — удалёнка навсегда, работаю в пижаме и счастлив
🤝 — только офис, нужны люди и границы
👾 — гибрид, ни нашим, ни вашим

Библиотека мобильного разработчика #междусобойчик
🍏 Что такое tuple?

Tuple (кортеж) — это значение, которое можно использовать для объединения нескольких значений вместе, например, в виде пары.

Значения tuple не обязательно должны быть одного типа.

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

Например:

var coordinates3D = (1.0, 2.0, 5.0)


Чтобы получить доступ к значению внутри tuple, используйте точечную нотацию и индекс:

let xPos = coordinates3D.0


Кортежи также могут быть созданы таким образом, чтобы каждое значение имело имя:

var coordinates3D = (x: 1.0, y: 2.0, z: 5.0)


В этом случае вы можете получить доступ к определённому значению кортежа по его имени:

let xPos = coordinates3D.x


Библиотека мобильного разработчика #буст
👨‍💻 Сравнение Dagger 2, Dagger Hilt и Koin

Многие разработчики знакомы с такими широко известными инструментами внедрения зависимостей (DI), как Koin и Dagger. Оба инструмента решают одну задачу — управление зависимостями, но делают это по-разному.

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

👉 Читать статью

Библиотека мобильного разработчика #буст
📝 Шпаргалка: Kotlin suspend функции

1. Что такое suspend функция

Suspend-функции — это специальные функции в Kotlin, предназначенные для работы с корутинами. Они позволяют приостанавливать выполнение кода без блокировки потока, что делает их идеальными для асинхронных операций (например, сетевых запросов, работы с базой данных или долгих вычислений). Ключевое слово suspend указывает компилятору, что функция может быть «приостановлена» и позже возобновлена, не занимая поток исполнения.

Мы можем вызвать suspend функцию только из корутины или из другой suspend функции и это гарантирует нам, что мы будем иметь доступ к Continuation и соответственно сможем написать правильную suspend функцию, которая сможет передать результат своей работы через объект Continuation.

2. Зачем нужны suspend-функции?

Основные цели:


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

Избежание «callback hell». Suspend-функции позволяют избежать вложенных колбэков, улучшая читаемость.

Эффективное использование ресурсов. Приостановка корутины не блокирует поток, что особенно важно в однопоточных средах (например, Android UI-поток).

Интеграция с корутинами. Suspend-функции могут вызываться только из другой suspend-функции или корутины.

3. Во что компилируются suspend-функции?

При компиляции suspend-функции преобразуются в объект «state machine». Каждая приостановка (например, вызов другой suspend-функции или delay) разбивает код на части, которые выполняются между точками приостановки.

Каждый вызов другой suspend-функции становится точкой приостановки. Компилятор разбивает код на блоки между этими точками и сохраняет:

• Текущий label (номер состояния).

• Локальные переменные.

Структура скомпилированного кода:

• Компилятор добавляет скрытый параметр Continuation (представляет контекст выполнения).

• Функция разбивается на блоки, соответствующие участкам кода между точками приостановки.

• Для каждого состояния генерируется отдельный case в switch-конструкции.

• Сохраняет локальные переменные и текущий label в объекте Continuation.

👉 Читать подробнее

Библиотека мобильного разработчика #буст
🏃‍♀️ 40+ каналов, которые должен читать каждый разработчик

Отобрали для вас полезные и проверенные каналы для программистов — в них вы найдете все самое интересное, от технических новостей до практических гайдов.

IT Job Hub | Работа и вакансии в IT — избранные IT-вакансии

Библиотека программиста — новости из мира IT и технологий

Книги для программистов — самые годные книги по любым языкам и стекам

IT-мемы — мемы про жизу айтишника

Proglib Academy — обучение и курсы, чтобы стать топовым специалистом

Азбука айтишника — азы из мира разработки

Библиотека нейросетей — лайфхаки и промпты для разных задач, баттлы нейронок и новости из мира ИИ

Библиотека фронтендера — все о JS, React, Angular и не только

Библиотека мобильного разработчика — лайфхаки и новости из мира Swift и Kotlin

Библиотека хакера — уязвимости, атаки, бэкдоры и как от них защититься

Библиотека тестировщика — самое интересное о том, как крашить код

🦫 Go
Библиотека Go-разработчика
Библиотека задач по Go
Библиотека Go для собеса
Вакансии по Go

#️⃣ C#
Библиотека шарписта
Библиотека задач по C#
Библиотека собеса по C#
Вакансии по C#

🔧 DevOps
Библиотека devops’а
Библиотека задач по DevOps
Библиотека собеса по DevOps
Вакансии по DevOps & SRE

🐘 PHP
Библиотека пхпшника
Библиотека задач по PHP
Библиотека PHP для собеса
Вакансии по PHP, Symfony, Laravel

🐍 Python
Библиотека питониста
Библиотека Python для собеса
Библиотека задач по Python
Вакансии по питону, Django, Flask

☕️ Java
Библиотека джависта
Библиотека задач по Java
Библиотека Java для собеса
Вакансии по Java

📊 Data Science
Библиотека дата-сайентиста
Библиотека задач по Data Science
Библиотека Data Science для собеса
Вакансии по Data Science

🎮 C++
Библиотека C/C++ разработчика
Библиотека задач по C++
Библиотека C++ для собеса
Вакансии по C++

Подписывайтесь на интересные вам каналы и сохраняйте пост в закладки, чтобы не потерять 🔑
Please open Telegram to view this post
VIEW IN TELEGRAM
🧩💊 Алгоритмическая самоуспокоенность: как мы разучились думать своей головой

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

Это не просто влияет на настроение, но и на способность анализировать информацию, принимать решения и, главное, не становиться частью системы манипуляций.

Если вы хотите вернуться к осознанному подходу в восприятии мира и научиться фильтровать контент, то эта тема точно для вас.

🔗 Подробнее в статье

🐸 Библиотека джависта
Please open Telegram to view this post
VIEW IN TELEGRAM
📝 Промпт для идеального документирования кода

Чтобы писать доку быстрее, используйте этот промпт для ChatGPT:


Include:
1. General description of functionality
2. Description of parameters and return values
3. Usage examples
4. Potential errors and how to fix them
5. Information about algorithm complexity, if applicableCode:[insert your code here]


Бонус: добавьте «Explain the logic in simple terms for a beginner developer», чтобы логику вашего кода понял даже новичок.

Как вы обычно документируете свой код? Делитесь в комментариях!

Библиотека мобильного разработчика #буст
📲 ServerSocket для IPC в Android

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

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

Библиотека мобильного разработчика #свежак
💬 Как оставлять комментарии в чате нашего канала

В нашем чате работает бот Shieldy — он защищает от спама, запрашивая у новых участников решение простой капчи.

⚠️ Проблема, с которой сталкиваются многие: вы нажимаете под постом «Прокомментировать», пишете что-то, а потом получаете бан и не можете писать комментарии.

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

Как присоединиться к чату, чтобы бот вас не забанил

— Зайдите в описание канала с телефона и нажмите кнопку Discuss / Чат
— Нажмите Join / Присоединиться
— Сразу обратите внимание на сообщение от бота Shieldy
— Решите простой пример и отправьте ответ в чат

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

❗️ Если вас все-таки забанили

— Это временная блокировка на несколько минут
— Подождите и попробуйте зайти позже, бот снова отправит вам капчу

Админы канала никак не могут ускорить процесс, бот автоматически снимает с вас блокировку через пару минут. Мы понимаем, что эта система неидеальна, и ищем более удобное решение.

👾 Спасибо, что активно участвуете в обсуждении наших постов!
Please open Telegram to view this post
VIEW IN TELEGRAM
🐛 Расскажите про ваш первый баг

Помните тот момент, когда вы впервые обнаружили баг в своём коде? Тот самый момент истины, когда монитор превратился в поле битвы между вами и компилятором, а Stack Overflow стал вашим лучшим другом?

Делитесь в комментариях своими историями о первом баге:

Что это был за проект?
— Как долго вы искали решение?
— Какие эмоции испытали, когда нашли причину?
— Какой урок вынесли?

Библиотека мобильного разработчика #междусобойчик
👨‍💻 Выжимаем максимум из код-ревью

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

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

👉 Читать статью

Библиотека мобильного разработчика #буст
📊 Собес по Data Science: 10 вопросов, которые разделяют джунов от мидлов

Залетай на тест, который валит даже мидлов! Собрали для тебя 10 каверзных вопросов, которые тимлиды обожают подкидывать на собесах. Здесь нет простых задачек — только те, на которых спотыкаются 80% кандидатов. Пройди этот челлендж, чтобы быть во всеоружии на следующем интервью.

Пройти тест

Библиотека мобильного разработчика #свежак
2025/07/04 11:09:38
Back to Top
HTML Embed Code: