Connect with us

Разработка

SketchAR: новая эра рисования – история запуска на iOS

Решать то, что никем не решалось, сложно, но интересно. Главное, что мы четко знаем, как это применить в обычной жизни, где технологии развивают личность. Тем более, если речь идет о вечной и интересной теме — искусстве.

AppTractor

Опубликовано

/

     
     

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

Рады сообщить – SketchAR теперь доступен в AppStore. Это начало новой эры и вот почему…

SketchAR — это приложение, с помощью которого пользователь видит виртуальный рисунок на поверхности. В одной руке пользователь держит телефон и видит на экране виртуальный рисунок, а другой рукой обводит виртуальные линии эскиза уже на бумаге.

Полгода назад я рассказывал о том, как было придумано приложение, и какую волну публикаций подняла новость о выходе подобного продукта. “Game changer app”- так отзывались мировые СМИ и обычные пользователи в социальных сетях. “Правила игры” действительно меняются. Отныне, навык рисования становится доступен всем обладателям смартфонов.

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

Ниже описаны ряд проблем, с которыми столкнулись:

Метки

После первоначального исследования стало очевидно, что на рынке нет решений для корректного обнаружения рукописных меток. Доступные на рынке технологии “заточены” под заранее предустановленные метки. Массовый пользователь не будет ничего печатать, ему надо “здесь и сейчас”.

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

Тесты выявили простой для воспроизведения и эффективный для детектирования вид меток…

Оптимальной меткой оказался Круг.

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

В первой версии SketchAR в качестве меток необходимо нарисовать карандашом пять кружков

Мы понимаем, что лучшая метка — это её отсутствие, но сегодня смартфоны слабо ориентируются в пространстве на относительно небольших расстояниях и камера должна ориентироваться по меткам, чтобы четко позиционировать и удерживать виртуальный объект на реальной плоскости. Существующие решения успешно расставляют мебель в комнате, но в формате стола и белого листа перед камерой эти алгоритмы не работают.

[highlight]Исключение – Lenovo Phab 2 Pro с Project Tango, который вышел в ноябре 2016-го года. Кратко скажу, что благодаря Project Tango смартфон научился сканировать пространство и сохранять в памяти 3D модель этого пространства. Нам это казалось подходящим решением, НО — это только один тип смартфонов. Не сомневаемся, что эта технология станет массовой. Вопрос времени…[/highlight]

Контуры

Итак, количество и вид меток найдены, далее мы выяснили какие метки могут перекрываться рукой или карандашом в процессе рисования. Критичными для удержания оказались нижняя и боковые метки. Одна из верхних меток может перекрываться в процессе без ущерба для качества удержания. По ряду причин совсем отказаться от одной из верхних меток мы тоже пока не можем.

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

Честно говоря, на этот этап мы закладывали не больше недели. Оказалось, что тысячи приложений, превращающих фото в контурные “типа эскизы”, используют крайне слабый общедоступный алгоритм, качество которого совсем печальное. Наша задача стояла в том, чтобы превращать в качественные контуры самые невнятные фотографии. В итоге ушло около 3-х недель, чтобы доработать и настроить необходимый результат.

Правильные примеры

Набросок, выполненный по фото с помощью SketchAR

Первая Библиотека примеров состояла из крутых эскизов. При тестировании выяснилось, что разница между оригиналом и тем, что рисовал пользователь, получалась огромная. Это демотивировало и дальнейшее желание развиваться пропадало. Позже сформировали библиотеку из нейтральных эскизов, которые несложно воспроизвести. Даже если у пользователя получится обвести их получится криво, то работа не выглядит хуже, а просто смотрится “по-другому”.

Публикация в AppStore

Мы не новички, ведь за плечами 5 лет разработок технологии для издателей и “Приложение Года 2015” в App Store. Но никогда нельзя быть уверенным в том, что публикация пройдет гладко. Разработчики знают какой это стресс и боль – отправлять очередную сборку в App Store.

На этот раз оказалось еще хуже, чем раньше. Приложение завернули с формулировкой: “На видео-превью изображены iPhone и человек”, а это по правилам Apple не разрешается. Устройство из кадра убрали, хотя подразумевается, что пользователь держит телефон и смотрит в него, чтобы обрисовывать рисунок. Но запрет на показ человека завел эту ситуацию в абсурдно-маразматичный тупик.

Первая версия видео о SketchAR для App Store

Первый вопрос, который всплыл в головах: “Как показать процесс без рук?”. Ребята из Apple видимо не разобрались в принципе работы приложения и  подогнали требования под стандартные правила.

Вторая версия видео (скринкаста с телефона) для App Store о работе SketchAR

После второй попытки отказали по той же причине.

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

[highlight]Задача: как показать видео про приложение c дополненной реальностью, где создается рисунок с помощью рук, но руки показывать нельзя, а видео-скринкаст записать можно только с телефона? Правильные ответы присылайте на impossible@apple.com.[/highlight]

 

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

Одобрили!

Сверху скрины SketchAR. Снизу примеры приложений с главной App Store, которые мы привели в апелляции как показатель их предвзятости.

SketchAR and Project Tango

Проект Tango от Google казался подходящим решением. Быстро заказали пару смартфонов Lenovo Phab 2 Pro в момент анонса продаж в США и провели первые тесты. Результаты оказались хорошие, но дальше начались проблемы.

Тест привязки виртуального рисунка на стену с помощью приложения SketchAR

SDK Tango Project оказался простым, но в формате нашего приложения применим не полностью.

Ряд противоречий, которые пришлось решить:

  • Рука в кадре сбивала датчики и рисунок просто уезжал из кадра. Необходимо было отдельно адаптировать алгоритм для определения рук и не учитывать их при удержании виртуального рисунка.
  • Tango программно запрещает использовать главную камеру и блокирует её во время работы. Мы обошли ограничение переменно включая датчики Танго и основную камеру. Сделали это из-за того, что Танго плохо отрабатывает и удерживает виртуальный объекты на близких расстояниях.
  • Горизонтальное положение смартфона-обязательное условие в Tango. И тут насильно обошли и заставили стандартные SDK Tango работать в вертикальном положении смартфона, необходимом для нас.

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

Решать то, что никем не решалось, сложно, но интересно. Главное, что мы четко знаем, как это применить в обычной жизни, где технологии развивают личность. Тем более, если речь идет о вечной и интересной теме — искусстве.

Всем конфет!

Комментарии
Если вы нашли опечатку - выделите ее и нажмите Ctrl + Enter! Для связи с нами вы можете использовать info@apptractor.ru.
Advertisement
Click to comment

You must be logged in to post a comment Login

Leave a Reply

Новости

Digest MBLTdev: Новости для iOS разработчиков №152

В течение недели топовые iOS-разработчики Руслан Гуменный, Саша Черный и Саша Зимин, а также директор по продукту VK Иван Козлов собирают для вас интересные и полезные ссылки на статьи, необходимые для прочтения каждому начинающему и опытному разработчику. В каждом выпуске – новости, коды, инструменты, дизайн и прочее.

e-Legion

Опубликовано

/

Автор:

Кстати, о командах. Опрос о скорости работы команд Android- и iOS-разработки показал следующее: iOS-команда хоть немного быстрее — 32,4%, команды в общем-то равны — 24,9%, Android-команда хоть немного быстрее — 42,7%. В опросе приняли участие 185 человек и один учёный кот.

Почему мы видим то, что видим — как всегда отдельный вопрос, но с личным наблюдением некоторых авторов дайджеста совпадает. Нам же, iOS-разработчикам, стоит подумать: что изменилось? iOS стала сложнее, хуже? Качество разработчиков? Сложность создаваемых продуктов?

1

Опрос про отечественные команды мобильной разработки

А вот и ещё один опрос, который заполнят многие, а в итоге мы получим обработанную информацию о том, какие же компании работают над Dev PR’ом лучше всего, и откуда выходят самые активные мобильные разработчики :)

GOO.GL

Tim Cook says users will be able to turn off iPhone battery performance throttling in future iOS update

История с тормозящими айфонами подходит к концу. Теперь Apple обещала дать пользователям выбор: долгая жизнь батареи или быстрый девайс.

9TO5MAC.COM

Xcode Activity Time Tracking. Results of 2017

Два разработчика год собирали статистику про свою работу в Xcode. Сколько времени проходит от Cmd+B до успешной сборки? А до неуспешной? А с тестами как?

MEDIUM.COM

Universal link broken in iOS 11.2

Незамеченная, но очень важная новость: диплинки сломаны в iOS 11.2. Так что не пугаемся и ждём свежего релиза с фиксом.

STACKOVERFLOW.COM

4

Uber RIBs

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

GITHUB.COM

A better way to update UICollectionView data in Swift with diff framework

Про DeepDiff мы писали. А вот вам статеечка про применение DeepDiff к UICollectionView. В конце — абзац про производительность. С картинкой!

MEDIUM.COM

Swift 4.1 Beta

Apple активно развивает 4.1. И там уже много интересного. Например, Struct и Enum получили дефолтный hash и equal, array/dictonary/set получили дефолтный Codable/Decodable, полностью реализован KeyPath и так далее. Прямо праздник какой-то.

GITHUB.COM

Обновление строк на лету в мобильных приложениях: часть 1

Вводная статья про то, как команда Badoo подошла к локализации приложения.

HABRAHABR.RU

2

iOSSnapshotTestCase (previously named FBSnapshotTestCase)

Помните FBSnapshotTestCase, единственную нормальную библиотеку для UI Snapshot тестов на iOS, которую забросили Facebook в этом году? Так вот, Uber взяли её под своё крыло и обещали поддерживать. Хорошие новости, господа.

GITHUB.COM

16f106c0eaa442b184873f18f426a916

All-English conferences for Cocoa developers.

Список будущих (и прошедших) конференций для iOS-разработчиков с датами, городами и информацией по CFP.

GITHUB.COM

Computer latency: 1977-2017

Товарищ вооружился высокоскоростной камерой и измерил время между нажатием на кнопку/экран и рендром символа на экране. Интересно, что iPad Pro c Pencil является самым быстрым в его тесте.

DANLUU.COM

Affine transformations

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

ELI.THEGREENPLACE.NET

Комментарии
Продолжить чтение

Разработка

Интересные материалы для разработчика мобильных приложений #197 (15-21 января)

В новом дайджесте мы рассказываем про особую магию HQ Trivia, самую необычную головоломку в Google Play, мгновенную локализацию, итоги 2017 года и перспективы 2018.

Леонид Боголюбов

Опубликовано

/

Пожалуй, самая необычная головоломка на Google Play

Я недавно подсчитал, что уже 5 лет занимаюсь созданием игр в свободное от основной работы время. За этот период я сделал несколько игр, которые можно назвать успешными, если судить по количеству загрузок. Но по настоящему, я горжусь только последней, она изображена на картинке выше. Нет, это не игра про лутбоксы. Это набор головоломок, основная идея которого в том, чтобы объединить разноплановые головоломки одним сюжетом.

Распознавание жестов движений на Android используя Tensorflow

В сегодняшние дни есть много разных способов взаимодействия со смартфонами: тач-скрин, аппаратные кнопки, сканер отпечатков пальцев, видео камера (например система распознавания лиц), D-PAD, кнопки на гарнитуре, и так далее. Но что насчет использования жестов движений?

Реверс-инжинеринг iPhone 2G

Для проведения опытов нам понадобится сам телефон порвергнутый Jajebreak’у, программа IFunBox для просмотра и модификации системных файлов, дизассемблер IDA, HEX редактор. На моем телефоне установлена IOS 3.1.3, но данные модификации будут работать и на других версиях(может быть).

 iOS

 Android

 Разработка

 Аналитика, маркетинг и монетизация

 Устройства, IoT, AI

Комментарии
Продолжить чтение

Исследования

Какие эмодзи больше всего используют программисты

Эваристо Карабайо  проанализировал около 3,5 гигабайтов логов, чтобы узнать о том, какой эмодзи самый популярный у разработчиков.

AppTractor

Опубликовано

/

Автор:

Эмодзи радикально изменили способ общения в соцсетях. Существует множество исследований, в которых указывается на различия в том, как люди используют их на разных платформах. Например, списки топ-эмодзи в Instagram, Twitter или Facebook имеют некоторое сходство, но также много в чем различаются. Эти различия становятся все больше при движении дальше по списку социальных сетей.

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

В этой статье я рассматриваю то, как новые разработчики используют эмодзи, в частности, в Gitter Main Chat Room на платформе freeCodeCamp.

Есть как минимум два способа рендеринга эмодзи в Gitter:

  • с использованием псевдонимов (например, таких);
  • с использование UTF-8 путем написания эмодзи непосредственно ключевым словом или копированием/вставкой символа из онлайн-ресурса.

Оба по-разному рендерется в сообщении, причем первый визуализируется существующими изображениями Gitter, а второй показывается в соответствии с настройками вашего компьютера. Первый метод – «использования псевдонимов» – является самым популярным и будет основным предметом обсуждения.

Чтобы дать вам краткое представление о том, чем я интересовался, я хотел бы быстро осветить ответы на такие вопросы, как:

  • Есть ли явный шаблон в использовании эмодзи?
  • Каковы самые популярные эмодзи?
  • Сколько людей использует эмодзи?
  • Насколько люди разбираются в словаре эмодзи?

Поэтому давайте начнем и ответим на эти вопросы.

Поговорим об эмодзи

Проведя свой анализ чата freeCode, я узнал, что около 23% вовлеченных в разговоры в чате также были и любителями эмодзи. Я определяю слово «вовлеченный» как человека, который отправил не менее 10 сообщений. Если мы сравним вовлеченных и невовлеченных любителей эмодзи с обычными ценителями чатов, эта цифра возрастет до 45%.

Количество «эмодзионеров» в чате freeCode может показаться маленьким по сравнению с другими чатами и платформами. Однако важно отметить, что:

  • Многие пользователи чата очень скоро выходили из него.
  • Были пользователи, которые предпочли консервативное общение.
  • Некоторые пользователи могли и не знать о существовании эмодзи.

В целом, наши эмодзионеры отослали по крайней мере 753,000 эмодзи (или 600,000, если считать не общее количество эмодзи, а количество сообщений, в которых они появлялись) со средним значением 32 эмодзи для каждых 100 сообщений.

В целом, наши эмодзионеры показали коллективную грамотность, отослав около 800 самых разных эмодзи, то есть около 25% от полного списка. Я отобразил появление новых эмодзи с помощью D3.js, показав, что многие из них были впервые представлены в чате в период с июля 2015 года по июль 2016 года с темпом роста от 10 до 20 новых эмози в неделю.

В среднем один человек использовал около трех разных эмодзи. Такое число получилось потому, что были у нас и настоящие профессионалы эмодзи – так, один использовал около 500 различных эмодзи.

Нетипичные эмодзи в чате?

Чтобы лучше понять, как люди обменивались эмодзи в чате, я сравнил свои выводы с докладом, подготовленным SwiftKey в 2015 году. Эти данные немного устарели, поэтому я добавил данные unicod.org. Объединил их и вот что получилось.

Сначала я оценил использование эмодзи на уровне категории, и результаты были очень похожими на отчет SwiftKey. Большинство эмодзи, размещенных в чате freeCodeCamp, принадлежали к категории «Смайлики и люди», которая включает лица, жесты, персональные роли, части тела и сердца.

Поскольку сравнения, основанные на категоризации высокого уровня, обычно слишком непонятные, я попробовал другое сравнение, сосредоточившись на 25 наиболее используемых эмодзи с 2015 по 2017 год, используя их подкатегории. Вместе эти 25 эмодзи составляли около 15% всех, отправленных в течение этого периода смайликов.

Список эмодзи и их подкатегорий показывает, что наши эмодзионеры все равно хорошо вписываются в типичную модель пользователя эмодзи. Широкое использование иконок категории «Позитивные лица» совпало с подкатегорией «Счастливые лица» SwiftKey.

То же самое было и с подкатегорией «Негативные лица», подобной категории «Печальные лица» SwiftKey. Немного обособленно было использование «: trollface:», которое является доступным значком в GitHub, и обычно оно связано со спам-сообщениями и вредительством, но также используется как шутка в чат-комнате freeCodeCamp. «Какашка» 💩 также была в числе 25 самых используемых эмодзи.

Наиболее часто используемые значки жестов в чате freeCodeCamp являются положительными, связанными с приветствием, поддержкой, доверием и признанием успеха. Еще одно отличие заключается в меньшем использовании значков, таких как «сердца» ♥️ или «поцелуи» 💋, что говорит о том, что поиск партнера не был главной целью этого чата. В чате находится обычно около 70-80% мужчин, что может объясняться тем, что они использовали иконки с оружием 🔫.

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

И награду получает…

В качестве бонуса я написал код с графиком, который показывает Топ-5 наиболее часто используемых эмодзи на freeCodeCamp. Что интересно, некоторые эмодзи набирают постепенно популярность, в то время как другие постепенно сдают позиции. Это очень похоже на «Тур де Франс». Сегодня эмодзи является самым востребованным, а завтра о нем забывают.

Итак, вот самый популярный смайлик:

Честно говоря, я не ожидал, что 😄 («: smile:») станет самым популярным эмодзи. Я думал, что им будет 😂 («: joy:») , учитывая, что Apple недавно назвала его самым популярным за 2017 год.

Следующие 8 эмодзи также появлялись в чате freeCodeCamp. Угадайте, как называется каждый из них.

Я использовал Python и Gitter API, чтобы получать сообщения из основной комнаты чата freeCodeCamp. Библиотеки Python, такие как мультипроцесс и эмодзи, использовались для преобразования данных.

Часть преобразований также требовала данных, доступных в интернете, для которых я сделал настраиваемые скребки, также с библиотеками Python (запросы, urllib, BeautifulSoup4).

Для анализа данных я использовал простой Python и некоторые панды. Визуализация была сделана с использованием matplotlib, а интерактивные графики — в D3.js.

Версии кода доступны в моем репозитории GitHub вместе с несколькими конечными наборами данных. Что касается необработанных наборов данных, используемых для этого проекта, они теперь доступны в Kaggle freeCodeCamp.

Комментарии
Продолжить чтение

Обучение

Истории разработчиков, получивших первую работу после 30, 40 и 50 лет

Куинси Ларсон, преподаватель в freeCodeCamp, собрал более 300 историй разработчиков, которые доказывают, что начинать учиться программированию никогда не поздно.

Анна Гуляева

Опубликовано

/

Почему я это сделал

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

Мне __ лет. Мне уже поздно учиться разработке?

Это один из самых распространенных вопросов в разработке в целом. Чтобы показать вам, сколько разработчиков волнует их возраст, я зашёл на Quora. Конечно, я нашел людей всех возрастов, которые переживают из-за того, что они «слишком старые», чтобы учиться программированию и становиться разработчиком: 60, 59585756555453, 52, 51504948474645444342414039383534333231, 29282726252423222120191817161514.

Что вы скажете кому-то, кто переживает, не слишком ли уже поздно? Многие люди ограничатся старой цитатой Уолта Диснея: «Если вы можете представить это, вы можете сделать это!»

Но я понимаю эти переживания. Я работал учителем и не умел программировать до 30 лет. До этого возраста я не мог написать даже простой код на JacaScript. Я не мог установить Linux. Да, я даже не мог настроить роутер без помощи жены.

Я получил первую работу в качестве разработчика в 31. И, конечно, я верю, что возраст — это просто число. И что все, кто могут вложить в обучение свои силы, могут научиться программировать и получить работу.

Но как мне убедить всех этих людей, задающих этот вопрос каждый день? Просто говорить «не переставайте верить» — неэффективно.

Я собрал доказательства, чтобы убедить людей расслабиться по поводу возраста

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

Например, одна моя подруга была учительницей французского за 50. После бесплатных университетских онлайн-курсов она получила работу разработчика в Apple. Поэтому я знал, что это возможно.

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

Поэтому однажды, после очередной попытки успокоить тревоги людей, я пересмотрел свой подход. Я подумал: «Возможно, я смогу найти список разработчиков, которые получили первую работ в 30, 40 или больше лет. Может быть, это убедит людей перестать так беспокоиться о возрасте».

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

Оказалось, что многие разработчики получили первую работу в 30, 40 или 50 лет. Вот несколько историй:

https://twitter.com/mikleane/status/949452946600730626?ref_src=twsrc%5Etfw&ref_url=https%3A%2F%2Fmedium.freecodecamp.org%2Fmedia%2F2215e9cee7ade93a7ffbf76c00f6702a%3FpostId%3D64306eb6bb27

https://twitter.com/americanwombat/status/949486088325799937?ref_src=twsrc%5Etfw&ref_url=https%3A%2F%2Fmedium.freecodecamp.org%2Fmedia%2Ff3305f7a1f903b59e7c4c9a9c6edd974%3FpostId%3D64306eb6bb27

https://twitter.com/jefflazerus/status/949457462939205632?ref_src=twsrc%5Etfw&ref_url=https%3A%2F%2Fmedium.freecodecamp.org%2Fmedia%2Fc3053bd231b0056db2839f8c57f3828d%3FpostId%3D64306eb6bb27

https://twitter.com/peterdaily/status/949453856127307776?ref_src=twsrc%5Etfw&ref_url=https%3A%2F%2Fmedium.freecodecamp.org%2Fmedia%2F054d685fc2fed0e12bfc45634abf6296%3FpostId%3D64306eb6bb27

https://twitter.com/gillessew/status/950138976655912960?ref_src=twsrc%5Etfw&ref_url=https%3A%2F%2Fmedium.freecodecamp.org%2Fmedia%2F48799b09a4826507d15624371e46bf60%3FpostId%3D64306eb6bb27

https://twitter.com/amwcodes/status/949581047808716800?ref_src=twsrc%5Etfw&ref_url=https%3A%2F%2Fmedium.freecodecamp.org%2Fmedia%2F46ff7a793cd12eb3273696b47e4f17f3%3FpostId%3D64306eb6bb27

https://twitter.com/dbriesz/status/949483215256825856?ref_src=twsrc%5Etfw&ref_url=https%3A%2F%2Fmedium.freecodecamp.org%2Fmedia%2F5daccc8369b60bb9807d39e133237d74%3FpostId%3D64306eb6bb27

https://twitter.com/jessdelgrande/status/950163504773902342?ref_src=twsrc%5Etfw&ref_url=https%3A%2F%2Fmedium.freecodecamp.org%2Fmedia%2F700f10a61f7d7a18fd00ba8d9bc31ecf%3FpostId%3D64306eb6bb27

Я создал список из 300 разработчиков, которые начали после 30, чтобы показать, сколько людей начали переход к разработке ПО в более старшем возрасте. Я буду и дальше вести этот список. Поэтому, если вы разработчик, получивший первую работу после 30, твитните мне с хэштегом #DevAfter30, и я добавлю вас в список.

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

Комментарии
Продолжить чтение

Наша рассылка

Каждому подписавшемуся - "1 час на UI аудит": бесплатный ускоренный курс для разработчиков!

Нажимая на кнопку "Подписаться" вы даете согласие на обработку персональных данных.

Вакансии

Популярное

X

Спасибо!

Теперь редакторы в курсе.