Мобильный кот
2.71K subscribers
88 photos
3 videos
2 files
87 links
Все, что считаю важным про жизнь мобильного разработчика

Шкаф с материалами
https://t.me/cat_with_mobile_cabinet
Download Telegram
Генератор иконок для iOS, macOS, watchOS и Android

#инструменты

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

https://appicon.co/#app-icon
Самый частый вопрос в чатах по Swift от начинающих: “Какой mac купить для обучения разработке на Swift”.

#вопросы

Ответ
Берите мак не ниже 2014 года выпуска. Так вы протяните минимум 2 года на актуальной операционке.
Желательно 16+Гб оперативной памяти и 256+Гб ssd. Но если хватает денег только на 8/128, то берите все равно. Хватит уже искать причины не учиться iOS-разработке.

Почему
Ориентируемся, что период становления разработчика примерно 2 года. В любой момент времени у вас должна работать последняя версия Xcode. Последняя версия среды со всеми своими плюшками работает только на актуальной версии macOS. Сейчас macOS Big Sur поддерживает маки от 2013 года. Значит следующая ОСь запустится минимум на модели 2014 года.
Как стать программистом

#подкаст

Интересный выпуск подкаста "Запуск завтра" от Самата Галимова. Хорошие примеры того, что человек может найти себя в программировании, как в школе/институте, так и в уже более сознательном возрасте. Никогда не поздно начать действовать.

В Яндекс.Музыка
https://music.yandex.ru/album/9294155/track/70552932

В Apple.Подкасты
https://podcasts.apple.com/ru/podcast/как-стать-программистом/id1488945593?i=1000489276064
📚 Книга "Просто космос" Екатерины Ленгольд
покупать только в паре с одноименным ежедневником

#книга #продуктивность

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

Лично на меня произвела прекрасное впечателние, многое из написанного знал, но не использовал ранее. Книга дала отличный заряд двигаться дальше, а фирменный ежедневник стал частью моего рабочего стола
Генератор (De)Codable типов на основе JSON, TypeScript, Postman

#инструменты

Замечательный сервис, который способен сэкономить вам приличное количество времени при работе с данными в формате JSON и др. Поддерживает Swift и целую пачку других языков.

Все просто: вводите пример JSON и получаете готовый класс или структуру.

https://app.quicktype.io
🛠 Все еще слабо знаешь и практически не используешь паттерны?

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

P.S. Изучать значит не читать, а читать + (ш)кодить.

В YouTube есть неплохие видео по теме
https://youtu.be/_Vet94Ogp7Y
📰 Возможно вы пропустили

Но вышел официальный билд Swift 5.3 под Windows 10.

#новости

Помимо компилятора также доступы некоторые фреймворки (к примеру, Foundation). Можете уже сейчас попробовать сделать проект в Visual Studio с использованием Swift SDK. Хотя, конечно, в данный момент практической пользы от этого для нас нет, так как это ранняя версия, и компании не будут переходить на этот стек в ближайшее время.

Но если у вас есть свободное время после семьи, работы, изучения Swift на macOS, то буду рад узнать о вашем опыте. Остальные продолжаем пилить аппки в Xcode. 🤜🏻🤛🏽
А у меня эта собака (Xcode, а не та, что на аватарке) еще и сториборды через раз грузит.

Но мне нравится его иконка и все теперь хотят виджеты. А значит продолжаем работать в Xcode 12.

#изчата
Это многопоточность, асинхронное (условно одновременное) выполнение задач.

В Swift есть специальный механизм, который позволяет работать с многопоточностью - Grand Central Dispatch. И если вы рассчитываете рано или поздно найти работе в качестве Swift Junior Developer, то обязаны рано или поздно изучить его.

А пока запомните, что async - это прекрасный способ, чтобы ваше приложение выполняло свои задачи. Но мне потребовались года, чтобы понять, что это хорошо для приложений, но плохо для человека.

В свои первые года профессиональной деятельности я очень гордился своей многопоточность и всячески поощрял ее. Действительно круто одной рукой писать код, другой восстанавливать упавшую Active Directory, и одновременно учить английский по учебнику. Это было круто и в 21 и в 25. Но чем ближе я подкрадывался к заветной тридцаточке (когда вроде бы надо подвести кое-какие итоги всего своего пути), тем чаще начал говорить фразу

«Почему в сутках не 25 часов?»

Мне тупо не хватало времени. Количество дел и стартапов росло, а дни становились короче;) И тогда я начал искать варианты Тайм Менеджмента, я хотел научиться впихнуть в свой график еще пару дел. Я впихивал невпихуемое, иногда за счет сна, иногда за счет выходных.
Это однопоточность, синхронное (последовательное) выполнение задач.

Swift позволяет выполнять задачи в однопоточном режиме, но пользоваться этим механизмом нужно с осторожностью. К примеру, вы можете случайно заморозить интерфейс, пока не закончится загрузка данных с сервера.

Мне потребовались года, чтобы понять, что однопоточность нужно с осторожностью использовать в приложениях, но постоянно использовать в профессиональной жизни.

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

Используйте однопоточность, когда делаете свою работу, выкиньте в помойку свой навык многопоточности. Все довольно просто:

1. Все задачи выполняются последовательно. Пока не завершена одна задача, я не перехожу ко второй.

2. Каждая новая задача занимает свое место в последовательности в соответствии с ее «важностью». Как определить важность? Спросите себя, чем обернется невыполнение задачи через 1-2 года. Для меня было открытием, но оказалось, что далеко не каждая задача, поступающая в режиме «надо прям сейчас, иначе хана», требует немедленной реакции и не способна отлежаться, по крайней мере до послеобеда.

3. Процесс работы делите на небольшие отрезки работа/отдых. Это так называемая техника Помодоро, когда вы, например, работаете 25 минут, после чего 5 минут отдыхаете.

4. В конце рабочего дня подводите итоги сегодняшнего дня и составляйте план на завтра, выделяя 1-2 наиболее важных дела. Остальные идут с пометкой «если будет возможность».

P.S. Очевидно, что вы практически не сможете заниматься одной задачей весь день, этого и не требуется. Рассматривайте однопоточность как в глобальном плане, когда вы не занимаетесь задачами из одной категории одновременно, так и в локальном, в рамках одного дня.
📚 Книга «ReWork Бизнес без предрассудков» Джейсона Фрайда и Девида Хайнемейера Хеннсона

#книга #стартап

Копался в своих закромах и наткнулся на это чудо от основателей компании 37signals. Сразу после выхода книга заслуженно стала бестселлером.

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

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

Лично я вынес из этой книги две важные мысли:

1. Работать нужно над тем проектом, который будет решать именно мою проблему. Чеши там, где чешется у тебя!

2. Что такое MVP* и зачем он вообще нужен, да и вообще, что это наиболее правильный способ работы над стартапом.

* Minimal viable product - минимальный жизнеспособный продукт