DroDev | Мобильная разработка: мысли вслух
461 subscribers
104 photos
229 links
Обсуждаю и рассказываю как сделать жизнь разработчика в команде интересной, легкой и продуктивной.

По всем вопросам @dilix90
Download Telegram
Немного про обучение Андроид разработке.

На август 2019 года возглавляют рейтинг (http://bit.ly/2lTcZbo) онлайн образования
- Skillbox: http://bit.ly/2kNGbR0
- Нетология: http://bit.ly/2lYc09K

В этой компании мне также симпатизирует GeekBrains как площадка от Mail.ru, нацеленная сугубо на IT.


Про Skillbox.

У них есть комплексная программа, которая обучает на профессию мобильного разработчика: http://bit.ly/2kMrYDT
Цель - подготовить кадры от и до с трудоустройством как цель всего процесса, что круто!

Цена вопроса от 6,900руб в месяц.

Есть и более короткие курсы, например "Курс мобильного разработчика", который длится 12 месяцев, а не 2 года: http://bit.ly/2md68cX
Кстати по ссылке выше - скидос 45%(!) на оплату курса ;)

Цена вопроса без скидки 60,000руб.


Про Нетологию.

За 6 месяцев подготовливают специалистов по Андроид разработке (http://bit.ly/2lYc09K) и помогают с трудоустройством.

Цена вопроса 39,900руб за курс или от 4,159руб в месяц.


Про GeekBrains

Модель похожа на Skillbox, можно пройти отдельно курсы по разработке http://bit.ly/2lQgAXV, по ссылке скидка 15%.

Цена вопроса без скидки от 9,623руб в месяц.

А можно пройти факультет разработки в GeekBrains University с гарантированным трудоустройством: http://bit.ly/2kp6QDC, по ссылке скидка 3%.

Цена вопроса без скидки 12,500руб в месяц.


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


Если бы я выбирал полный цикл обучения от 0 до первой работы в качестве разработчика, пожалуй, я бы выбрал курсы от Skillbox, как обучение от лидера рынка за адекватную цену.
Тем временем как Github добавил возможность создавать приватные репозитории 🙂...

GitKraken запретил открывать их же 🙃
Мини интерактив, чтобы "размять" внимательность ближе к концу рабочего дня. Какие косяки есть в данном фрагменте кода?

P.S. ответы, вида "весь код - кусок косяка" не принимаются 🙃
#Яндекс проводит чемпионат по программированию!

Правила квалификации:
с 12:00 14 октября до 23:59 20 октября вам нужно будет выбрать промежуток времени — 4 часа — на решение как минимум двух из четырёх задач. Попытка только одна!

Финальный раунд:
с 12:00 до 16:00 26 октября. Участники получат четыре задачи.

Двадцать лучших финалистов приглашают в московский офис — на экскурсию и собеседование с командами Яндекс Поиска. Иногородним участникам оплатим поездку.

Денежные призы
I место — 300 тысяч рублей
II место — 150 тысяч рублей
III место — 100 тысяч рублей

Специальные призы
Яндекс.Станция
Футболки
Сертификаты


Отличный способ проверить свои навыки! http://bit.ly/2QmG3H1
Заказчики все чаще спрашивают "а что, может сделать сразу на ReactNative/Flutter/че-угодно"?

Кажется, что кроссплатформенная разработка - прямо то что надо, написали один раз и вот магия, работает!... не всегда работает 🤔

Из вида упускаются моменты, что
- пока что рынок нативных разработчиков больше, будет проще найти человека если что
- UX/UI может различаться между платформами - и чем больше различий - тем меньше плюсов в сторону одного универсального приложения
- заказчик может захотеть использовать последние фичи платформы, которые еще не подвезли в выбранный framework

Т.ч. на мой взгляд нет однозначного ответа на "натив или кроссплатформ?", в каждом отдельном случае надо смотреть и на сложность интерфейсов и на то, зачем вообще приложение создается, как долго оно собирается поддерживаться и т.д.

Для быстрого MVP на обе платформы - да, спору нет, кросплатформ почти всегда победит, а вот дальше - вопросы... http://bit.ly/2khtvBy
Первый и главный вопрос в любой вакансии - как долго вы этим занимаетесь...
Google объявил о запуске PlayPass в US - сервис, работающий по подписке, в котором собираются лучшие приложения и игры, а разработчики получают вознаграждение (денежное ес-но) в зависимости от "вовлеченности" пользователей.

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

Т.е. если раньше нужно было соблюдать баланс между тем, что дать юзеру "полную власть" и монетизировать его, вторую пункт отпал.

Попасть в программу на данный момент можно только по инвайтам, если хотите попасть, стоит оставить заявку в официальной гуглоформе: bit.ly/playPassForm http://bit.ly/2nnVrox
В прошлую пятницу запускал интерактив по поиску "кода в ошибках ;)", прикрепляю все основные "косяки" того самого фрагмента.

В нашем сообществе Вконтакте (https://vk.com/dr_dev) участники накидали еще больше годных замечаний, за что им отдельное спасибо!

* использование input приведет к IndexOutOfBounds точнее, а не IllegalAccess
This media is not supported in your browser
VIEW IN TELEGRAM
Когда работаете в команде, будьте уверены, что ваш коллега готов к правкам, которые вы будете вносить... например не стоит молча переводить весь проект на корутины, если до этого использовали RX без предварительного согласования с причастными.
В проекте наткнулся на код, когда во #Fragment при создании напрямую (а не через #bundle) устанавливаются значения.

Не надо так...

#Android может неожиданно пересоздать ваш Фрагмент, в таком случае состояние программы потеряется. Если же вы использовали arguments самого фрагмента, то при повторном доступе к информации в Bundle - ваши данные будут тут как тут.
This media is not supported in your browser
VIEW IN TELEGRAM
Вот почему поддержка проекта не менее важна чем его запуск.
Есть  несколько причин, почему я не люблю и не использую onClick в xml  разметках #layout. Вот главные:

1) Неявный вызов метод из "верстки" тяжело воспринимать при чтении кода
2) При #CodeReview проследить логику становится очень сложно
3) #AndroidStudio не всегда корректно видит использования методов и кнопок

Используете ли вы определение onClick прямо в верстке?
Надеюсь все знают, что #View в #Android может принимать не 2 (видно\нет), а 3 значения:

View.VISIBLE
View.INVISIBLE
View.GONE

Правильно ли их используешь ты 🙃?
Пиши в комменты в каких случаях используешь View.INVISIBLE 👻, а когда View.GONE 🕶
Время от времени крупные компании проводят митапы, в том числе по  #Android разработке. Такие бывают у Avito (http://bit.ly/2ogUXS9), Касперского, Яндекса и т.д.

Так вот, недавно в Авито один такой прошел, самый сок можно найти на хабре, приятного просмотра! http://bit.ly/2AZk92g