воскресенье, 7 июня 2015 г.

Как вырастить единорога. Часть десятая – только хардкор, только hardware.

Ребята из White Box Design тут же приступили к следующему этапу. А именно, скинули нам огроменный файл с картинками, и сказали – а собственно, ткните нам пальцем на то, что вы считаете выглядящим профессионально, элегантно и дружественно одновременно. К примеру, типы креплений

или что нам кажется более профессионально выглядящим

или элегантным

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

Уфффф, выбрали!

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

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


При достаточно равнозначных показателях, в плане голосов за каждого претендента, решили для начала остановиться на одном – и им стал «брильянтик»

Ибо проще изготавливать :)

В то же время остальные образцы («треугольник», «гробик» и «кружочек») также попали в руки разработчиков, и после запуска первого образца также пойдут в производство. Сейчас главное для нас было обкатать технологию производства плат для устройств, а также максимально оптимизировать энергопотребление и заняться вопросами передачи данных с нашего Ловца Мыслей на смартфон и в облака.

Поскольку на тот момент мы решили сфокусироваться на айфоновском приложении, по причинам рассказанным чуть выше, Коля начал ковыряться во внутренностях эппловских программ, с целью разобраться в их возможностях. В частности, в возможностях передачи данных на айфоны. И здесь мы столкнулись с очередной подлянкой от эппловцев. А именно, в своем стремлении заботы о пользователях, они довели хардверную и софтверную часть айфонов до такого идеала, что возможности сделать их еще лучше ну просто таки не оставалось! Для нас «лучше» означало дать пользователям возможность работать со своими же данными, а именно полученными с Ловца Мыслей. Дело в том, что политика Эппла не позволяет сторонним разработчикам использовать человеческие протоколы данных для передачи файлов – в нашем случае аудио файлов – на айфоны. Оно понятно, что это вопрос безопасности, и нечего абы кому ковыряться во внутренностях великого творения (мало ли чего абы кто там углядит!). Ну и плюс, конечно же, Эппл не хочет позволять нарушать свою монополию на пользование их устройствами... «Только бизнес, ничего личного.»

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

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

Делать нечего, приходится (пока что) играть по тем правилам, которые навязывают – и мы с новым рвением принялись за изучение нового для нас мира, мира Эппл. Даже какие-то решения сваяли... Но, спустя месяц, таки решили изменить маршрут, и сфокусироваться на других подходах. Причин тому было несколько – во-первых, в команде не было достаточно квалифицированного специалиста по MFi делам, который бы помог с разработкой протоколов передачи данных на айфоны; во-вторых, что оказалось весьма проблематичным, участвуя в этой программе, мы имели право работать только с компаниями-производителями, сертифицированными Эппл, что означало, что мы не можем на свое усмотрение выбрать производителя чипов, периферии для электронных плат, и т.п. (в то время как сертифицированные компании обладали весьма лимитированным набором компонентов, и сильно завышенными ценами). Ну и в-третьих, на тот момент у нас просто не было необходимости разрабатывать дорогостоящее и супер-пупер-высоко-технологичное решение. В виду озвученных выше причин, мы на какое-то время и переключились на что-то более кастомное.

Собственно, что ни делается, все к лучшему. В нашем случае, прессинг со стороны Эппла обернулся большим бонусом – свернув со стандартной дорожки, мы своими силами разработали нестандартный протокол, основанный на Bluetooth Low Energy технологиях, который позволил передавать данные с нашего Устройства на айфон по BLE, используя несколько каналов последнего одновременно, и при этом в значительной мере снижая энергопотребление как Устройства так и айфона. Причем данный подход не требует абсолютно никакой сертификации, может работать на стандартных электронных компонентах, и, что оказалось еще одним большим дополнительным бонусом, может применяться на любой платформе – Андроид, ВинМобайл, Блекберри. Круть, да! Ах, вот еще – стоимость нашего решения оказалась на порядок ниже.

Короче говоря, команда MYLE настоящие перцы!!!

В то же самое время весьма остро встал вопрос о программировании платы Устройства, ведь для того, чтобы данные на чем-то принять, их надо с чего-то отправить. Логично, не так ли? Но как вы наверное помните, наши китайские товарищи этот вопрос успешно профукали, оставив нас если не у разбитого корыта, то по крайней мере с большой технологической дыренцией – Устройство есть, а софта на нем нету. А значит пользы от него, как от сундука с золотом на необитаемом острове!

Нам в срочном порядке пришлось искать специалиста по программированию электронных плат, и всего, что с ними связано.

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

...но не надолго!

Совершенно случайно, на одном из профильных форумов, Женя столкнулся с человеком, который поделился советами по теме и всяческими идеями. Копнув глубже, Женя выяснил, что человек этот живет совершенно рядом с Калгари, в городке Ред Дир, всего в часе езды от нас! И даже более того, человек захотел с нами пообщаться, и даже ради этого приехал в Калгари.

Два с половиной часа беседы, куча технических и идеологических деталей, и Радим

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

Радим оказался чехом, приехавшим в Канаду несколько десятилетий тому назад, но при этом еще хорошо помнившим советскую Чехословакию (он, кстати, в разговоре всегда Чехию так называл) и советскую власть там. По русски понимал с трудом, но слово «водка» произносил практически без акцента, и мы с радостью приняли его в наши достойные ряды! Вместе с Женей они начали ковыряться в недрах наших плат, пытаясь всякими магическими ахалаями-махалаями привести последние в чувство. А именно, надо было прошить систему на платах, чтобы заставить их работать, прописать протоколы передачи данных между элементами, оптимизировать потребление всяческих там электрических и прочих внутренних ресурсов, а также заняться разработкой протокола передачи данных с платы на смартфон. И это всё еще не считая переработки и улучшения дизайна самих плат, с целью оптимизации места, и т.п.

Соответственно, для Жени и Радима работы уже становилось больше и больше, и ребятам потребовалась помощь...

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

Куен, так зовут нашего нового фирмварщика, весьма обрадовал нас своими сроками и ценами

и что более важно для нас – он их реально придерживается. Менее чем через месяц от него были получены первые схемы для тестовых образцов. Поскольку в производстве у нас было несколько прототипов, то начали с самого простого – прямоугольника – поскольку на нем проще всего размещать элементы. Еще две недели спустя получили первые рабочие прототипы от китайского производителя. Как вы догадываетесь, это был уже совсем иной производитель. Мы, кстати, на этот раз подошли весьма серьезно к вопросу выбора завода по печати плат, сборки компонентов и все такое. Прошерстили несколько заводов в континентальном Китае, Гон-Конге и Тайване. Пополнив наш лист производителей несколькими именами, пока остановились на одном, расположенном частично в Гон-Конге, частично через речку, на китайской территории. Удобная логистика, хорошие отзывы, и постоянные их приглашения приехать на завод, чтобы своими глазами убедиться, что и как у них происходит в технологически-процессуальном плане, что они делают для тестирования плат, и тому подобные вещи. По их словам, уровень брака у них не превышает 3% - типа это их политика (у многих других уровень колеблется между 5% и 10%).

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

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

А тем временем Женя нарыл нового производителя электронных чипов, которые разрабатываются по принципу «всё-в-одном» - что оказалось весьма удачной находкой. При использовании подобных чипов вместо одного ARM-овского процессора (который не маленький сам по себе, и весьма избыточен, с точки зрения функциональности), блютус-чипа, аудио-чипа и памяти – один небольшой чип (3х3 мм), выполняющий все эти функции. Проблема была только в памяти, но она достаточно легко решалась, путем интеграции отдельного модуля.

Вообще, хочется отдельно отметить умение Жени находить новые и неожиданные решения. Это реально удивительная способность!!! Вроде все обсудили, перерыли интернет, пообщались с производителями... И тут рррраз, появляется Женя и говорит, мол «гляньте-ка чего я нашел!», и мы такие рррраз, и охреневаем :)

Так вот, возвращаясь к новому, найденному чипу. Его производителем оказалась европейская компания CSR, которая занимается производством электроники, и сейчас сфокусирована на электронике для автомобилей, а именно для голосового обслуживания автомобилей. Собственно, по этой самой причине – узкой специализации этих ребят в области автоиндустрии – они ранее не попадали на наши радары.

Собственно, всё было замечательно ровно до тех пор, пока не подошли к этапу заказа чипов и тестовых образцов. В этот момент выяснилось, что CSR, несмотря на всё их дружелюбие по отношению к нам (ну и прочим, разумеется), не любит размениваться по мелочам. В частности, они заявили, что чипы кому попало не раздают (читай «нет заказа в сто тыщ единиц, гуляй, Вася!»), но мы можем работать с их представителями. На поверку оказалось, что представителей раз-два и обчелся, и в дополнение к этому эти самые представители не продают чипы, а продают решения на основе этих чипов. Пообщавшись с несколькими из них, поняли, что тут ничего не светит – они предлагали уже законченные решения, обладающие избыточностью по функционалу и размерам. Короче, не срослось...

Ну и ладно, не очень-то и хотелось! (ладно-ладно, вру – хотелось, конечно же... но, не судьба)

Но ведь хорошо известно, что свято место пусто не бывает – не успели мы закрыть отношения с CSR, как на горизонте замаячила другая компания, правда на этот раз из Китая. MediaTek.

Эти ребята были давно нам известны, как один из крупнейших в мире производителей чипсетов (любители китайских телефонов типа Xiaomi и т.п. наверняка слышали этот бренд). В середине 2014 года они объявили, что производство для носибельных устройств для них становится одним из наиболее приоритетных, и они разрабатывают чипы для «умных часов» и т.п. электроники, с целью наладить массовое производство последних, и в значительной мере снизить цену для подобных устройств. Ну что, замечательно – это нам как раз и надо!

Проблема работы с MediaTek-ом заключалась только в одном – эти черти открывают библиотеки для работы с периферией по кусочкам. Ну типа, разработчики должны вкушать счастье по капле, иначе обожрутся и плохо будет! :) Правда, до конца 2014 года обещали открыть все библиотеки... Ну, выбор у нас был не большой, и пришлось наслаждаться сладостью понемножечку, шаг за шагом.

С учетом того, что мы были, по сути, в новой для нас области, и хотя имели представление на тему того, что нам нужно получить в итоге, пока «плавали» в деталях. Собственно, это признаки любого стартапа или нового проекта, типа MYLE – надо пройти несколько кругов ада итераций, прежде чем окончательно придешь к полному пониманию того, что и как должно функционировать. Не являясь исключением из этого правила, мы подобно котятам тыкались туда-сюда, находя свою нишу и свое понимание того, что ж нам в итоге нужно, с технологической точки зрения. Поэтому и запускали несколько мини-проектов одновременно, в частности хардварные решения на Atmel, Texas Instrument, MediaTek, и впоследствии другие (об этом позже).

Как впоследствии показал результат, это было именно то, что нужно! Обжигавшись на мелочах, мы по сути быстрее двигались к результату, чем если б выбрали одно направление и безжалостно долбили бы его. Опять же, читая впоследствии умные (и интересные) книжки, находил подтверждение выше сказанного.

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

Понятно, что для того, чтобы быть в теме, надо много читать, и к счастью (или наоборот, уже сложно понять) ресурсов в интернете, он-лайн журналов, тематических порталов зиллион. Но кроме них надо еще овладевать и классикой жанра, где уже прошедшие по этой скользкой дорожке хорошо, подробно и в деталях описали процесс. Конечно же, начинать надо с «букварей». Вот те что сейчас читаю практически одновременно, причем некоторые уже по третьему кругу (спасибо тем кто делится книгами и подсказывает новые!)

Одним из наиболее приятных открытий в плане книгочтения стала сеть калгарийских библиотек. Точнее даже, не открытий, а пере-открытий, ибо несколько лет назад пользовался, потом перестал и позабыл. Фишка в том, что там найти можно практически все что угодно! А если не найдешь, то можно обратиться к этим ребятам, и они все равно найдут! Сервис просто замечательный, и возможности практически неограниченные – стоит только захотеть учиться!!! И местные библиотеки это действительно невероятная сокровищница для каждого страждущего по знаниям.

Очень рекомендую прочитать эту публикацию – отличное повествование о том, что такое местные библиотеки, как они работают, и как в них работать. Автор просто молодец!!!

Еще одним замечательным переоткрытием стала электронная книженция Киндл от Амазона

Купил Киндл еще в далеком 2010 году, попользовался какое-то время и забросил, переключившись на Айпад. А вот сейчас вернулся с мыслью, «и какого хрена я столько лет глаза об этот чертов Айпад ломал?!» - Киндл простой, легкий, небольшой, удобный, и самое главное более приятный и подходящий для глаз (поскольку там е-инк используется). Сейчас для чтения в основном его и пользую – заказываю книгу в библиотеке, в электронном формате, закачиваю на Киндл, и вуаля! Это действительно просто таки невероятно удобно и результативно. Настоятельно рекомендую.

Так вот, возвращаясь к нашим баранам... ну, то есть платам и прочим электронным вопросам. 

Поскольку количество направлений в области электронных и около-электронных разработок росло, то и росло количество вариантов коммуникации Ловца Мысли и смартфонов. И это несколько напрягало. Так что, перебрав множество возможных (и доступных на рынке) вариантов, в итоге все таки решили остановиться на выше упомянутом BLE (Bluetooth Low Energy) протоколе, в виду его повсеместного распространения, хорошей изученности в технологическом плане и достаточно простой внедряемости. Возможно, в обозримой перспективе перепрыгнем на что-нибудь еще, но пока BLE прекрасно справляется с возложенными задачами.

Как уже упоминал чуть ранее, MYLE будет платформой, которая будет работать на множестве систем, в частности, iOS, Android, WinMobile и BlackBerry (может, еще чего-нибудь экзотичненького добавим). Но начинать надо с чего-то одного, и этим одним стала iOS по уже озвученным причинам... А именно, статистически, пользователи эппловской продукции более открыты для опробирования чего-нибудь новенького.

На тот момент открытым оставался вопрос коммуникации Ловца и Айфона. Коля по-любительски поковырялся в этом новом для него поле, даже сваял какие-то пробные решения, которые позволяли передавать сохраненные на Ловце аудио-заметки на Айфон. Но мы прекрасно понимали что, во-первых, это не его область и его эффективность будет весьма не высока, и во-вторых, у него было множество других задач. Так что пришлось заняться поисками спеца в области iOS-построения, и в частности в области back-end и коммуникации девайсов и Айфонов.

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

Так что переписанное зазвучало новыми словами J

«Искали где-то чуть меньше часа...»


(продолжение следует)

4 комментария:

  1. Павел, а вы не думали добавить логотип на внешнюю часть девайса?
    Например так:

    https://lh3.googleusercontent.com/5I-kk_VE268fhwLupQjamAKsBAc5OpL4ebjFSaim=w1280-h801-no

    https://lh3.googleusercontent.com/tkizJfkaYullV228vy5YLUVXoAXVvJ3F2h-EW3Jk=w1280-h854-no

    Сорри, не знаю как вставлять картинки в комментарии.

    ОтветитьУдалить
    Ответы
    1. Вероника, думали, еще как думали! Но прежде чем совершать определенные телодвижения в направлении дизайна, хотели бы собрать отзывы пользователей, которые хотят юзать сей продукт. В частности, в процессе нашей компании на ИндиеГоГо (которая, кстати, через неделю запускается) запустим опросник - что людям нравится, что их штырит, как, и т.п.

      Мне Ваши картинки понравились :) Особенно на красном хорошо смотрится.

      Удалить
    2. Тогда набираюсь терпения, запасаюсь попкорном и жду окончательного варианта:) Очень интересно, какая будет последняя версия продукта.

      Удалить
    3. На текущий момент указанная версия последняя.
      С ней и будем выходить. Ну а по ходу более последних версий будет много, каждая последующая последняя лучше предыдущей ;)

      Удалить