Какой-то гигантский получился дайджест – и про техлидов, и про GitHub, и про блокировщик рекламы, и про Microsoft, которая теперь Apple, и про магию, и про многое-многое другое.
Задача очень простая. Сделать приложение, которое создает папку DisTalk в корне устройства. Пользователь кладет туда картинки, гружу это в GridView, при нажатии на картинку произношу название файла. Еще чтоб было повеселей сделал переключение по папкам. Чтобы учитель ребенка мог сделать разные наборы… Я сделал такое приложение, загрузил в play market. И сейчас я расскажу о том, как не надо писать приложения. (Но как надо я не знаю и не претендую на звание гуру)
Больше года я занимаю должность технического лидера в своей компании, и хочется поделиться наработками по теме. Имеет смысл уточнить: я веду отдел iOS-разработки из 10 человек в компании-аутсорсере. В моём случае должность подразумевает оптимизацию работы отдела, распределение задач между разработчиками и активности, связанные с программированием.
В этой статье вы сможете вместе с нами пронестись по всем главным взлетам и падениям, приключавшимися с нами с момента Kickstarter месяц за месяцем. Без прекрас, без пиара, без воды. Только чистый кейс и жесткий опыт. Опыт, с которым с высокой вероятностью вы либо столкнетесь, став на путь инди-разработчика, или уже столкнулись, если вы и так уже работаете над своей игрой.
Теперь дайджест доступен и в виде рассылки. Подписаться вы можете тут.
iOS
Android
Windows
Разработка
Аналитика, маркетинг и монетизация
Устройства и IoT
< Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.
DisTalk. Если ты не умеешь читать, это не значит то, что ты не можешь общаться |
Я техлид. Что делать? |
Разработка Инди РПГ: разбор двух лет разработки |
Теперь дайджест доступен и в виде рассылки. Подписаться вы можете тут.
iOS
- (+158) Парсинг JSON — это минное поле
- (+19) Enums + Associated Values = Swift
- Пиратство в iMessage App Store: наступление вьетнамских стикерпаков
- Как я получил 1000 * за мой проект на GitHub
- Цветовые темы для Xcode
- Как использовать NSTouchBar в macOS
- От статичного к динамичному контенту в View Controller
- Работа с Socket.io в Swift на iOS
- Туториал по Firebase: Чат в реальном времени
- CascadingTableDelegate: новый подход к работе с UITableView
- Apodimark: парсер разметки на Swift 3
- CRNetworkButton: кнопка отправки
- Highlightr: библиотека для подсветки синтаксиса кода в NSAttributtedString
- Airstream: стриминг музыки через AirPlay
- SwiftyFORM: работа с формами
Android
- (+35) О том как я написал блокировщик рекламы и трекеров для смартфонов Samsung на Android. Adhell
- (+18) Уязвимость Account Manager в Android, о которой необходимо знать
- (+18) Kivy. От создания до production один шаг. Часть 1
- (+15) Google научился фильтровать фальшивые установки на Android
- (+12) Адаптирование мобильного приложения для Android TV или почему я люблю Google
- (+11) Изучаем Retrofit 2
- (+5) Как превратить смартфон в микрофон (идеи и вопросы)
- Google прекращает поддержку Eclipse
- Google Play начал показывать среднюю конверсию по категориям
- Google научил свой поиск заклинаниям из «Гарри Поттера»
- Android Dev Подкаст. Выпуск 20. Новости с Droidcon London 2016
- Окончательный и бесповоротный список проверки перед запуском успешного приложения в Google Play
- Как Kotlin стал нашим основным языком для Android
- Видео Droidcon NYC 2016
- Скажем «нет» Фрагментам (и Активити): Создание приложений на основе View при помощи Flow
- Аутентификация отстой. Плохая безопасность тоже.
- TransitionHelper: анимация переходов
Windows
- (+36) Создание голограмм для HoloLens без Unity
- Признаем это: Microsoft сейчас смелее и инновационнее Apple
Разработка
- (+57) 2D магия в деталях. Часть третья. Глобальное освещение
- (+36) Большинство игроков не пройдёт вашу игру, и это нормально и Вашу игру пройдут немногие, так стоит ли тратить время на концовку?
- (+36) Советы по пропорциям и масштабу в играх
- (+33) Как набить кучу шишек и выпустить игру
- (+22) Создание материалов для Unity в Substance Designer
- (+19) Локализация инди-игр в Unity: неявные затраты
- (+12) Как решить проблему ограничения в 64К методов в Unity3D
- (+11) Секреты Progressive Web Apps: часть 2
- (+7) Пишем сервер-помощник для BaaS или «Ну и зачем мне тогда Firebase?»
- (+1) Миссионерские интерфейсы
- (0) Маленькие дизайн-алгоритмы против большого тлена
- Unity выпустит открытый редактор для виртуальной реальности EditorVR
- Софт и шлем: как заработать на виртуальной реальности
- Можно ли уже сейчас считать рынок виртуальной реальности доходным
- В Unity появилась поддержка Facebook Gameroom
- Как спроектировать API и не облажаться
- Чему я научился за пять лет работы в продакт-менеджменте
- Как выбрать лучшую стоковую музыку для игры
- Важность профессионального отдела тестирования
Аналитика, маркетинг и монетизация
- (+29) Интервью с Павлом Ряйкконеном, исполнительным директором Nevosoft
- (+27) Интервью с Иваном Козловым, вице-президентом мобильных продуктов Aviasales.ru
- (+13) ASO оптимизация. Составление семантического ядра для магазинов приложений
- Новая версия приложения Uber с точки зрения ASO
- Отчет App Annie о монетизации приложений: к 2020 году выручка рынка приложений достигнет $189 млрд
- Вводный опыт во free-to-play играх
- Выбор правильного UX шаблона для онбординга пользователей
- Реклама в приложении: как выглядит поражение
Устройства и IoT
- (+33) Как уберечь IP камеру от ботнета Mirai с Flussonic Agent
- (+26) Открытые операционные системы для интернета вещей
- (+20) Подключение шлюзов Intel для интернета вещей к AWS и обмен данными с облаком при помощи Node-RED или Python
- (+18) Компания Canonical выпустила новую версию Ubuntu Core для IoT-приложений
- (+17) Учебное руководство по управлению светодиодами с помощью Robotics Development Kit
- Daydream View в магазинах с 10 ноября
- Начинаются продажи Lenovo Phab 2 Pro
- 30 самых красивых приложений по управлению умным домом
< Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.
Поделиться с друзьями