Дневник Flutter-разработчика
3.11K subscribers
323 photos
22 videos
10 files
290 links
Описание моего пути мобильного разработчика с нуля до junior, middle, senior
Download Telegram
День 4:

+4,41 часа программирования( 27, 28, 29 уроки ютуб-канала LazyLoad Dart & Flutter. Разбор скролла ListView, закончил верстку экрана телеграмма, buttons).
Итого: 16 ч. 24 мин.

+44 минуты английского( 2 серии сериала Extra с англ. субтитрами. Заметил, что без субтитров понимаю речь намного хуже).
Итого: 2 ч. 53 мин
День 5:

+3,42 часа программирования( 30 урок ютуб-канала LazyLoad Dart & Flutter. Верстка приложения TheMovieDb. Создание экрана авторизации).
Итого: 20 ч. 06 мин.

+50 минут английского( 7 и 8 серии сериала Extra с англ. субтитрами).
Итого: 3 ч. 43 мин
Каналы/чаты по Flutter:

https://t.me/learnDartFlutter - чат ютуб-канала LazyLoad Dart & Flutter

https://t.me/rudart - чат русскоязычного сообщества, посвященный языку Dart

https://t.me/Flutter_Mobile_Dev - чат о разработке мобильных приложений на Flutter

https://t.me/FlutterDevRu - канал, посвященный актуальным анонсам, статьям, новостям, дизайну и многому другому из мира Flutter

https://t.me/dartlang_jobs - канал, посвящённый вакансиям, относящимся к языку программирования Dart (Flutter, AngularDart, ServerSide Dart)

https://t.me/progjob - работа для программистов, IT специалистов

https://t.me/Remoteit - вакансии и проекты на удаленку для it специалистов

https://t.me/Relocats - канал с вакансиями от IT компаний предлагающих переезд и релокацию из России, Украины и стран СНГ за границу
День 6:

+5,32 часа программирования( 30 урок ютуб-канала LazyLoad Dart & Flutter. Сегодня научился верстать экран авторизации:) Скрин прилагаю).
Итого: 25 ч. 38 мин.

+48 минут английского( 9 и 10 серии сериала Extra с англ. субтитрами).
Итого: 4 ч. 31 мин
День 7:

+4,36 часа программирования( 31, 33, 34 уроки ютуб-канала LazyLoad Dart & Flutter. Верстка TheMovieDb: навигация( Navigator, routes). Разбор TextField: настройка окна ввода).

Удивился, что в каждое поле ввода можно настроить клавиатуру. При вводе номера телефона, например, можно сделать клавиатуру только с цифрами, при вводе почты, чтоб были сразу @ и другие символы для почты. Плюс к юзабилити пользователя:)
Итого: 30 ч. 14 мин.

+50 минут английского( 11 и 12 серии сериала Extra с англ. субтитрами).
Итого: 5 ч. 21 мин
Цели, планы:

Программирование

Мне нравится то, чем я сейчас занимаюсь. Интересно изучать мобильную разработку, решать задачи и проблемы. Сейчас я изучаю Flutter по урокам канала LazyLoad. Пишу TheMovieDb(за преподавателем) - это приложение с описанием фильмов, по API. Дальше планирую сам писать облегченный клон vk, либо сразу приступать к проекту по английскому. Сегодня возникла идея писать параллельно проект по англ., так как некоторые вещи уже знаю и можно сразу применять.

Суть проекта - приложение для курсов английского языка, вроде easy ten. В день будет даваться по 10 слов для запоминания. Слова будут заучиваться по методике закрашивания заготовленных картинок-сцен с англ.словом, речевым сопровождением спикера(это нужно еще обдумать) и обязательного повторения по оповещениям. Будет бесплатная и платная подписка, реклама. Первое приложение будет по запоминанию слов, второе с самим курсом. Писать его я буду один:) Приложение будет выложено в Google play и App store. Возможно не все можно реализовать через Flutter, но я постараюсь:)(если кто-то знает, что из вышеперечисленного нельзя сделать - отпишите в лс). Надеюсь, что этот проект прокачает меня как разработчика) Процессом написания буду делиться здесь:)

Сегодня запушил TheMovieDb на github( да, свёрстан пока только экран авторизации, но сохранение не помешает). На нем у меня уже есть 2 проекта с сайтами на html, sass, gulp, js. Так что теперь на моем github уже 3 проекта😁 Плюс добавится приложение по англ. и клон vk.

Глобальная цель в программировании - работать над большими проектами в международной компании. Писать свои проекты. Вдохновляет мысль о работе в глобальных проектах вроде Amazon, Netflix, Tesla которыми пользуется пол мира и ты причастен к разработке.

Вакансий мобильного разработчика в Республике Коми нет, я планирую переезд в Питер и трудоустройство Flutter-разработчиком. Считаю, что работа в компании + свои проекты даст максимальный буст в профессии.

Английский
Как я говорил ранее, одна из моих целей - иммиграция. Английский язык изучаю для этого. Предполагаю, что сразу попасть в штаты не получится и рассматриваю еще другие страны. Сейчас не сложно иммигрировать в Канаду. Сдача IELTS обязательна. IELTS — наиболее востребованный тест английского языка для учёбы и иммиграции в Великобританию, Канаду, Австралию и Новую Зеландию. Экзамен длится примерно 3 часа. Состоит из четырёх модулей:

Listening (примерно 40 минут)
Reading (60 минут)
Writing (60 минут)
Speaking (11—14 минут)

Техническую документацию читаю и понимаю без проблем. Англ. субтитры сейчас лучше понимаю, чем просто речь на слух. На данный момент не знаю своего точного уровня владения англ. языком, но pre-intermediate уровень точно есть. Сдавал давно на курсах английского. Каждый день уделяю английскому около часа. Сейчас это просмотр сериала Extra. Тренирует понимание англ речи на слух. Все видео с советами по изучению говорят о максимальном погружении в среду англ языка, чтобы мозг начинал перестраиваться. Все гаджеты и пк у меня на англ, фильмы сейчас тоже смотрю на англ. Позже буду добавлять и другое, сейчас достаточно сформировать привычку и погружаться в среду.

Инвестирование
Откладываю 10% дохода по первоочередному принципу. Эти деньги инвестирую в крипту и акции. Вам тоже советую начинать изучать этот вопрос. В блоге планирую писать статьи на эту тему: по сложному проценту, как выбрать брокера, где и как лучше открыть счет, про долгосрочное инвестирование(не трейдинг!) со ссылками на книги и хорошие ютуб-каналы. Не хочу пока писать здесь сумму, к которой хочу прийти, чтоб никого не шокировать)

Иммиграция
Выше я уже писал про цель иммиграции в США. Это долгосрочная цель. Надеюсь осуществить её в течение 5 лет. Возможно не сразу в штаты, но точно иммиграция. Для неё требуется хороший английский, крутой профессиональный опыт, толстый банковский счет. Этими направлениями и занимаюсь.
День 8:

+5,11 часа программирования( 32, 35 уроки ютуб-канала LazyLoad Dart & Flutter. Верстка TheMovieDb: BottomNavigationBar. Разбор TextField: управление).
Итого: 35 ч. 25 мин.

+51 минута английского( 13 и 14 серии сериала Extra с англ. субтитрами).
Итого: 6 ч. 12 мин
День 9:

+4,35 часа программирования( 36, 37 уроки ютуб-канала LazyLoad Dart & Flutter. Разбор TextField: TextInputFormatter. Добавление изображений в проект, библиотека Spider).
Итого: 40 ч.

+55 минут английского( 15 и 16 серии сериала Extra с англ. субтитрами. Пол сериала пройдено, еще половина:) Речевые обороты стали сложнее, смотреть интереснее).
Итого: 7 ч. 17 мин.
bash: spider: command not found

Всем привет!
Столкнулся с проблемой на Windows при установке spider:

$ spider
bash: spider: command not found

Решение - прописать(просто добавить в конец) в Path переменной среды:
C:\Users\Ваш пользователь\AppData\Local\Pub\Cache\bin
День 10:

+6,07 часа программирования( 38, 39, 40 уроки ютуб-канала LazyLoad Dart & Flutter.
Верстка TheMovieDb: создание списка фильмов, добавление поиска с логикой. Скрин прилагаю:)
Разбор СustomPaint: рисование радиального прогресс-бара).
Итого: 46 ч. 7м.

+47 минут английского( 17 и 18 серии сериала Extra с англ. субтитрами).
Итого: 8 ч. 4 мин.
День 11:

+4,25 часа программирования( 41 урок ютуб-канала LazyLoad Dart & Flutter.
TheMovieDb: верстка экрана фильма). +пару часов(не считал, сколько) на блог в инстаграм.
Итого: 50 ч. 32м.

+49 минут английского( 19 и 20 серии сериала Extra с англ. субтитрами).
Итого: 8 ч. 53 мин.
День 12:

+5,10 часа программирования( 41, 42, 43 уроки ютуб-канала LazyLoad Dart & Flutter.
TheMovieDb: верстка экрана с информацией о фильме. Верстка скролла актеров. Разбор StatelessWidget.
Итого: 55 ч. 42м.

StatelessWidget - виджет, в котором ничего не меняется. Это просто статичная картинка, которая может только отображаться. Не может сохранять никакое состояние.

Советы из 43 урока(видео в доке StatelessWidget от команды Flutter):

Совет 1 - по возможности минимизируйте вложенность виджетов( обычно применяется, если лагает или нужно, чтоб было быстрее).

Совет 2 - используйте const везде где только можно. Это снижает нагрузку. Относится к любым виджетам.

Совет 3 - в некоторых местах полезно переделать виджет stateless в stateful.

+47 минут английского( 21 и 22 серии сериала Extra с англ. субтитрами).
Итого: 9 ч. 30 мин.
Полезно:)
7 бесплатных облачных серверов для ваших ботов, сайтов, приложений на PHP/Python/JavaScript и т.д.

Heroku - Для Telegram/Discord ботов и для веб приложений
Amazon AWS - На год выдает бесплатно Linux сервера и т.д.
Google Cloud - Дает $300 бесплатно на расходы внутри платформы
Azure - Как AWS, тоже бесплатно на год дает сервер + $200 на счет на внутренние расходы
Netlify - В основном для сайтов, есть лимиты на бесплатном тарифе
Vercel - Для JSеров (Next.js, Nuxt.js, Gatsby.js и тд)
Gear Host - .NET и PHP клауд хостинг

💪 Сохраните, чтобы не потерять!
День 13:

+7,03 часа программирования.
Сегодня начал писать проект по английскому. Оказывается, что повторять код и писать самому - абсолютно разные вещи:)) Сразу возникает много вопросов, за которыми идешь в доку или возвращаешься к видео и пересматриваешь( и это с учетом заметок).

Сверстал экран авторизации и сделал навигацию. Код пушу на свой github:)

Еще сегодня понял, что нужно прочесть доку флаттера, так как не мало пробелов:)
Итого: 62 ч. 45м.

+49 минут английского
(23 и 24 серии сериала Extra с англ. субтитрами).
Итого: 10 ч. 19 мин.
День 14:

+4,09 часа программирования.
Сегодня сверстал второй экран приложения по английскому. Скрин прилагаю:)

Решал больше часа проблему добавления в BottomNavigationBar больше 3 итемов, пока меня не озарило, что нужно гуглить на английском) Об этом в следующем посте.

Начал 44 урок ютуб-канала LazyLoad Dart & Flutter: StatefulWidget, State
Итого: 66 ч. 59м.

+47 минут английского
(25 и 26 серии сериала Extra с англ. субтитрами).
Итого: 11 ч. 6 мин.
Сегодня больше часа не мог решить проблему добавления больше 3 элементов в BottomNavigationBar.

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

Гуглил, тестил - времени потратил не мало) После небольшого перерыва меня "озарило" и я пошел гуглить на английском. Первый же ответ на stackoverflow решил проблему😂 Скрин решения прилагаю.
День 15:

+3,03 часа программирования.
44, 45, 46 уроки ютуб-канала LazyLoad Dart & Flutter: StatefulWidget, State, didUpdateWidget, Ключи.
Итого: 70 ч. 2м.

StatefulWidget - виджет, который еще проще Stateless, потому что у того есть хотя бы build:) Сам по себе виджет ничего не хранит. В этом ему помогает State.

Виджеты сами не отображаются на экране. На экране отображается ElementTree, который StatefulWidget создает.

Так же StatefulWidget создает state и в этом его достояние. Стейт может намного больше. Благодаря ему виджет может "запоминать" состояние. Наши виджеты могут поменяться, замениться на другой точно такой же, но стейт сохранится и он хранится в элементе. Благодаря этому верстка не перерисовывается каждый раз заново, что сильно оптимизирует.

+48 минут английского
(27 и 28 серии сериала Extra с англ. субтитрами).
Итого: 12 ч. 54 мин.
https://www.youtube.com/watch?v=6of3U8Ilo-4

Очень советую к просмотру!:)
После просмотра этого видео я начал применять метод pomodoro(об этом есть статья в блоге). Если коротко - то это один из лучших лайфхаков продуктивности, которые я пробовал, потому что концентрация теряется после минут 25.

Еще я заказал фитбол, он в пути и надеюсь напишу здесь положительный отзыв на него.

Так же из видео использую здоровый сон - я встаю в 5 утра и ложусь к 10 вечера. Очень важно вставать и ложиться в одно и то же время( и высыпаться, конечно же). Важно не только для здоровья, но так же для хорошей работы мозга и продуктивности в целом. Про это хочу написать отдельную статью:)
День 16:

+5,48 часов программирования.
46, 47, 47.5, 48 уроки ютуб-канала LazyLoad Dart & Flutter: ключи, контекст(BuildContext), инхерит
Итого: 75 ч. 50м.

Так же сегодня наткнулся на интересное видео-интервью с профессиональным IT-рекрутером. Статью по нему сделаю завтра, дам ссылку и распишу заметки, которые оттуда вынес:) Видео действительно интересное, узнал много нового.

+50 минут английского
29 и 30 серии сериала Extra с англ. субтитрами.

Сериал закончен, сегодня досмотрел последние серии. На протяжении сериала я понимал речь % на 90 в начале и % на 70 к концу. Незнакомые слова не выписывал, просто продолжал смотреть. Оказалось, что это неэффективный подход. На сайте есть инструкция по изучению живого английского языка по сериалам/фильмам. Текст и ссылку оформлю сейчас в отдельной статье.
Итого: 13 ч. 44 мин.