Arkadma

На Пикабу
в топе авторов на 242 месте
134 рейтинг 1 подписчик 3 подписки 6 постов 0 в горячем

Как не возненавидеть свои пет-проекты: планы на выходные

Знаете этот сценарий: суббота, вы открываете ноут, чтобы наконец-то допилить свой проект… и зависаете на полчаса, пытаясь вспомнить, что там писали две недели назад. Потом лезете на StackOverflow, потом отвлекаетесь на телеграм, а в итоге к вечеру глаз горит, код не работает, а воскресенье уходит на отлёживание дивана и чувство вины.

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

Схема простая:

  • Пятница, вечер. Не пишем код. Смотрим пометки с прошлой недели. Просто открываем проект и оставляем в коде комментарий "TODO: тут остановился, дальше делать то-то". Это снижает барьер входа с 40 минут до пяти.

  • Суббота, утро. Три часа чистого кодинга. Никаких соцсетей, никаких новостей. Только одна задача из списка. В 13:00 ноут закрывается до завтра.

  • Воскресенье, утро. Два часа на полировку: тесты, баги, планы на следующую неделю.

  • Воскресенье вечер. Тратим10 минут, чтобы написать себе пометку на следующую неделю.

Не нужно пытаться сидеть по 8 часов. Мозг в выходные работает иначе. Четыре часа с перерывами самое то, магическая цифра, после которой вы не ненавидите свой проект, а чувствуете удовлетворение.

Вобщем, все ключевые идеи я уже изложил, а полный разбор с таймингами и лайфхаками выложил на mobilab.ru в разделе «Карьера». Заходите, там много букв дял тех кто любит читать.

Интересно узнать, какие рабочие методики есть у вас?

Показать полностью
3

Захотел написать приложение для машины

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

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

Закатал рукава, пошёл разбираться с Android Auto. Оказалось, что для тестирования не обязательно бежать в магазин за новой магнитолой, поскольку есть эмулятор под названием DHU (Desktop Head Unit). Звучит как что-то простое: скачал, запустил, протестировал.

Ага, щас.

Первый вечер: «desktop-head-unit: command not found» Ладно, путь неправильный, поправлю. «Permission denied» - ок, chmod +x, дальше. «Could not bind to port 5277» что за порт? Кто его занял? Перезагрузил комп. Оказалось, предыдущий экземпляр эмулятора висит в фоне как зомби. Убил его через lsof, пошёл дальше.

Второй вечер: Эмулятор запустился! Окно появилось! Но приложение в меню не отображается. В манифесте ACCESS_SURFACE забыл прописать. Добавил. Перезапускаю, всё равно не видит. Оказывается, разрешение должно быть на уровне <manifest>, а не внутри <application>. Кто так проектирует?!

Третий вечер: еще раз перечитал документацию и гайды. Сделал всё по как на лабораторной работе по инструкции, и о чудо: приложение появилось в меню эмулятора. Нажал - открылось. Заработало.

И тут наступило просветление. Я потратил три вечера на борьбу с портами, правами и манифестами. Моя первоначальная идея с чтением статей вдруг перестала казаться гениальной. В машине и так есть подкасты, и голосовой ассистент, и радио. Зачем городить свой велосипед, который будет хуже работать?

Теперь сижу и думаю: а что вообще полезного можно запрограммировать для автомобильного интерфейса, чтобы это не дублировало функции штатной магнитолы, не отвлекало от дороги (иначе это преступление), и при этом было реально востребовано.

Может, трекер привычек за рулём (сколько раз пристегнулся, проверил зеркала)? Или интеграция с умным домом («приеду через 10 минут, включи духовку»)? Или что-то совсем безумное?

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


П.С. Тем, кто тоже решит побаловаться с DHU, не пытайтесь найти в эмуляторе кнопку микрофона для голосовых команд. Её там нет. И шестерёнки настроек тоже нет. Это не баг, это фича. Спасибо, Гугл.

Показать полностью
7

Чеклист «Готов к собеседованию на 100%» для Android разработчика

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

✅ За час до звонка переписать ключевой модуль. Новый гениальный баг — лучшая тема для разговора.

✅ Выпить три чашки кофе, чтобы дрожащими руками показать «энергичность».

✅ Потренироваться говорить фразу «Это зависит от контекста» на 7 языках программирования.

✅ Убедиться, что на заднем фоне нет носков. Только книжные полки с непрочитанными «Совершенным кодом».

✅ Подготовить историю про «сложный баг», который на самом деле был опечаткой в названии переменной.

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

✅ Выучить наизусть цитату Мартина Фаулера и вставить её в любой ответ, даже про погоду.

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

Вот на такие мысли меня натолкнула аналитическая статья "Собеседование Android Junior-Middle 2026 (10 реальных кейсов)" на сайте mobilab.

Показать полностью
1

Как sealed class в Kotlin заставили меня признаться: "Дружище, да ты всю жизнь неправильно код писал"

Всем привет, пикабушники! Наверно этот поток сознание уместнее смотрелся бы на хабре, но эта площадка мне нравится решительно больше. Хочу поделиться историей своего просветления. Я адепт старой школы, лет семь назад я писал на Java под Android и свято верил в святость enum'ов и священные ритуалы проверок if (state != null && state == STATE_LOADING && !error). Я не работаю программистом и разработка для меня - хобби. Некоторые крестиком шьют, а я вот буквы в код складываю. Так вот, писал я когда-то на Java и казалось, что я владею миром, пока не сел изучать Kotlin. Ну а что, синтаксис похож, лямбды есть — за неделю освоусь, думал я.

Сегодня я натыкаюсь на одну статью на mobilab про sealed class. Начинаю читать и чувствую, как мое самолюбие джависта начинает медленно и верно трещать по швам. Оказывается, я не просто писал код. Я строил хрупкие карточные домики из boolean-флагов и надеялся, что их не сдует ветром нового требования от продукт-менеджера. Раньше я жил в аду ловли состояний. Мой типичный код управления состоянием экрана аутентификации выглядел как памятник человеческой глупости:

var isLoading: Boolean = false

var errorMessage: String? = null

var isTwoFactorRequired: Boolean = false

var authToken: String? = null

И где-то в глубине onCreateView сидел монстр на 100 строк с вложенными if/else, который пытался угадать, что же сейчас нужно показать пользователю. Добавляем двухфакторку? Легко. Просто добавляем еще один флаг и на 20% увеличиваем энтропию этого блока. Уверен, вы знаете, чем это заканчивается: «Ой, а почему у нас при ошибке показывается индикатор загрузки?».

И теперь, когда я узнал про sealed class, мир перевернулся.

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

sealed class AuthState {

object Idle : AuthState()

object Loading : AuthState()

data class Success(val token: String) : AuthState()

data class Error(val message: String) : AuthState()

data class TwoFactorRequired(val sessionId: String) : AuthState()

}

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

Самое волшебное это when.

Когда в коде UI у тебя появляется when (state), компилятор Kotlin превращается в строгого, но заботливого наставника. Он тебя заставляет обработать все возможные варианты. Добавил TwoFactorRequired в sealed class? Поздравляю, проект не соберётся, пока ты не добавишь ветку для его отображения в этом самом when. Это не «ой, надо бы не забыть». Это «забудь и умри (в смысле, не запустишь приложение)». После лет надежд на свою память и на тестировщиков это ощущение будто тебе выдали бронежилет.

Теперь, когда я возвращаюсь к своему старому Java-коду, то смотрю на него с тихой грустью и мысленно прошу у него прощения. Kotlin с его sealed class — это не просто «более приятная Java». Это другой уровень мышления. Это переход от тактики «надеюсь, я ничего не упустил» к стратегии «я не могу это упустить по определению».

P.S. А самый большой кайф это писать unit-тест для такой логики. Подсовываешь Idle и действие Login, получаешь Loading. Подтверждаешь двухфакторку - получаешь Success. Красота, которая даже мне, закоренелому цинику, приносит эстетическое удовольствие.

Показать полностью
23

Честный самарский метал. Играем в Подвале

Привет, пикабушники! Я Алекс, играю на басу в самарской группе "Там, где свет". Мы тут из своего подвала в Самаре делаем heavy metal без особых претензий — просто честно и громко. Как-то так получилось, что за свою долгую историю мы не разжились альбомами, хотя материала накопилось не мало. Наверно причина в том, что мы рассматривал группу как фан-проект и нас всегда перло от живых выступлений. Завтра (24.01.2026) у нас важный для нас концерт, первый после долгого перерыва в рок-баре «Подвал» (Самара). Последний раз мы играли там аж в 2019 году. В этот раз мы подсобрали материала и собираемся сыграть 15 песен. Начало в 20, вход 600₽. Вместе с нами в этот день выступят еще две крутые команды.

Там, где свет

Там, где свет

Если вам интересен живой некоммерческий метал, приходите оценить и поддержать локальную сцену. Обещаем отдать всю энергию. Для ознакомления можно глянуть на наше сообщество VK vk.com/heavysamara или сайт tamgdesvet — там есть пара аудио и видеозаписей. Критика и советы от знающих людей тоже приветствуются! А на последок вот вам мотивационный стих:

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

Ни синтипоп, ни шансон, прости, Господи,
Рифы гитар - что пилы колючие.
Песни будут как вьюга на площади,
Как метал раскаленный жгучие.

Что ухмыляешься: "знаем - плавали".
В шкафчике моль косуху сгрызла?
А на покой уходить не рано ли?
Или уж удаль вся в уксус скисла?

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

Показать полностью 1 1
7

Выбор движка для для небольшой инди-стратегии. Godot vs Defold?

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

В сети куча обзоров, и мнения разнятся. Лет десять назад я бы отталкивался от языка или платформы, но сейчас думаю, что это вообще не проблема. У меня есть опыт программирования на Java, но думаю, что освоить C# или Lua — не должно быть сложно. Поэтому больше ориентируюсь на скорость разработки и потребности самой игры.

О проекте: Это будет небольшой экономический симулятор с 2.5D графикой. В потенциале хотелось бы добавить простой мультиплеер. Целевая платформа — в первую очередь мобильные устройства (Android/iOS).

Пытаясь систематизировать выбор, я нашёл неплохой обзор с интерактивным гидом на сайте Mobilab. Под мои параметры хорошо подошёл Godot, но также меня очень заинтересовал Defold, и теперь я в сомнениях. Что выбрать для моего проекта Godot или Defold? Ребята, если у вас есть тут какие-то мысли или опыт, просьба поделиться информацией.

Отличная работа, все прочитано!

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества