Отчет о посещении презентации Львовского IT-Кластера в Пало-Альто, Калифорния
Побывал на презентации Львовского IT-Кластера в Пало-Альто, Калифорния. Презентация проходила в Пало-Альто, в коммьюнити центре, в котором я когда-то ходил на курсы японского языка.
Встреча рекламировалась на Фейсбуке и на нее пришло двадцать с чем-то человек, среди которых были: программисты из Фейсбука и Микрософта, представители компаний ведущих аутсорсинг бизнес с Украиной, я и Сергей Вакуленко из Imagination Technologies, аналоговый электронщик из KLA-Tencor, девушка-графический дизайнер, программист из медицинской компании и другие. 100% присутствующих владели украинским языком.
Встречу организовал Остап Коркуна из Фейсбука. Из Львова приехали трое человек, презентующим из которых был Степан Веселовский, CEO IT-Кластера.
По повадкам и духу презентации товарищи из Западной Украины напомнили мне разного рода восточноевропейцев, с которыми я периодически работаю здесь в Silicon Valley. Когда я работал в американском отделении сингапурской компании Creative Labs в 1994 году, у меня был начальник венгр, непосредственный менеджер поляк и ближайший приятель румын. Вот от этих товарищей такое же ощущение, но на более ранней стадии и с украинским языком.
Целями Львовского IT-Кластера являются:
1. Cтроительство коммьюнити программистов во Львове и филиала такого коммьюнити в виде сети контактов у нас в Silicon Valley, а также связь его с другими кластерами в Киеве, Днепропетровске, Харькове и Одессе.
2. Инициация тектонических изменений в украинской системе образования. Насколько я понял точку зрения Степана, он считает современную украинскую систему образования нереформируемой и хочет вырастить некие параллельные программы, лучше связанные с мировой и украинской действительностью.
3. Решение бытовых проблем программистов с помощью строительства жилья дотируемого компаниями. Про это Степан говорил долго, а меня подмывало спросить «а что если программист купит дотируемую квартиру, после чего уволится из компании, а съезжать из квартиры откажется, показывая на беременную жену и мороз на улице?» Но я подавил в себе желание начинать русские/украинские споры о недвижимости, ибо знаю, что в Silicon Valley они длятся долго.
Рассказ Степана про жизнь львовских компаний был интересным, но его слайды имхо не соответствуют местной аудитории:
1. В слайдах есть элементы, которые большинству потенциальных партнеров Степана в Silicon Valley просто безразличны, например сколько львовские программисты пьют кофе в день. О, я понимаю, что даже в википедии написано что креативный класс обязан ходить в кофейни но тем не менее.
2. Или вот Big Mac index. Я тут же вспоминаю, как в 1996 году один менеджер в Mentor Graphics договаривался с российским партнером об оплате труда за писание симулятора процессора Hitachi SH, и российский партнер приводил какие-то аргументы о стоимости колбасы в Долгопрудном (я стоял в этой переписке в CC). Американского менеджера такое ведение переговоров раздражало.
3. А вот пункт, который может отпугнуть некоторых чувствительных американцев: какой процент дохода тратят львовские программисты на поддержку украинской армии. Возможно именно подобные слайды стали причиной, почему Xilinx в прошлом году перестали поставлять на Украину образовательные FPGA платы, которые Xilinx поставляет в коммунистический Китай и даже (с ограничениями) в Россию. Американские компании не хотят становится на чью-либо сторону в любых вооруженных конфликтах между не-членами НАТО.
4. Также местному народу в Silicon Valley может быть непонятно, в чем крутость того, что 7 из 10 львовских программистов были за границей. Были в качестве кого? В туристических поездках? Ну и как это влияет на приобретение конкурентного преимущества в программировании?
5. В презентации был слайд про соотношение аутсорс-компаний и компаний продуктов, но отсутствовали слайды с разбивкой компаний по технологическим нишам. Остановимся на этом пункте подробнее. Еще на украинской конференции 2013 года в Сан-Франциско я заметил, что украинская экосистема доминируется несколькими крупными аутсорс-компаниями, которые продают одни и те же сервисы: бизнес-программирование, веб-программирование и немного программирования встроенных систем. С моей точки зрения такая «коммодитизация» программистов опасна во время кризисов, потому что когда все делают одно и то же, то при падении спроса происходит паника. Более диверсифицированная система, особенно с бОльшей долей компаний продуктов, является более устойчивой, а также предоставляет ее участникам более широкий спектр интересных профессий. Я хотел понять, произошел ли за два года прогресс в этом направлении, но на слайдах Степана этой информации не было.
Наиболее интересной для меня была дискуссия об образовательных программах, инициацией которых занимается львовский IT-Кластер. В частности, Степан сказал, что они планируют введения образовательной программы «интернета вещей» (Internet of Things, IoT). Это меня заинтересовало, так как наша компания Imagination Technologies и наш партнер по микроконтроллерам компания Microchip Technology уже долго занимаются образовательными программами в области интернета вещей, мы спонсировали создание курса по микроконтроллерам в университете Северной Каролины, я общался на темы связанные темы в Сколково и МФТИ и т.д. В частности два года назад я сделал презентацию с упоминанием интернета вещей на конференции русского хайтека в Аризоне:
Я сказал Степану, что программы в области IoT сейчас вводят и многие российские вузы, и я заметил, что они иногда делают ошибку, разводя на разные факультеты или даже в разные вузы три уровня IoT:
1. Уровень приложений — собирать всякие красивые игрушки из готовых компонент — как аппаратных, так и программных. Часто применяется вместе с обучением бизнесу и креативности.
2. Уровень базовых и поддерживающих технологий — архитектура микроконтроллеров и встроенных микропроцессоров, встроенные операционные системы реального времени, протоколы интерфейсов и т.д.
3. Уровень внутреннего устройства микросхем, которые являются сердцем Internet of Things. Да, такое возможно, причем даже на уровне лабораторных работ. Пакет MIPSfpga позволяет студентам экспериментировать с внутренностями процессорного ядра MIPS microAptiv UP, которое стоит например в новой платформе для Internet of Things, которая называется Samsung Artik-1. Эксперименты с MIPSfpga производятся на учебных платах с ПЛИС-ами — микросхемами, которые представляют собой матрицы ячеек, логические функции которых можно переопределять.
Я спросил Степану собираются ли они учить в вузах все три уровня понимания, на что он сказал, что программа находится в процессе разработки.
Тогда я показал Степану несколько материалов от нашей компании Imagination Technologies и наших партнеров — Microchip Technology и Digilent. Наша компания спроектировала PowerVR GPU внутри микросхемы внутри Apple iPhone, так что вы получаете материалы с переднего края.
Прежде всего, наша официальная брошура образовательных программ:
http://community.imgtec.com/university
Слайды про образовательные программы на русском языке:
Слайды про новый курс по программированию микроконтроллеров — Connected MCU. Это курс разрабатывает профессор университета Северной Каролины Алекс Дин, в кооперации с промышленными компаниями — Imagination Technologies, Microchip Technology и Digilent. Сейчас курс в целом завершен и находится в процессе ревью парой десятков мировых университетов в Великобритании, Китае и т.д. Мне удалось привлечь к процессу ревью некоторые российские университеты. Курс им понравился — он сделан солидно, с разбором архитектуры ядра и периферии микроконтроллера, профессиональным введением в использование встроенных RTOS и т.д. Можно привлечь к процессу ревью и украинские университеты, если хватит времени — это полезно, чтобы представить их менеджменту в вышеперечисленных организациях. У Imagination есть отделение в Польше, у Digilent — в Румынии, поэтому идея работа с Украиной может быть воспринята. Я вхожу в комитет по разработке курса:
При этом я в курсе, но в Украине есть много поклонников альтернативных способов преподавания IoT — используя Ардуино, Raspberry Pi, Intel Galileo, STM32 и т.д. и т.п. Я не буду даже пытаться их переубеждать, потому что помимо преподавания программирования микроконтроллеров и встроенных процессоров у меня есть две вещи, которые можно изучать независимо от личных предпочтений преподавателей курсов встроенного программирования.
Прежде всего это бесплатный учебник электроники, архитектуры компьютера и низкоуровневого программирования на русском языке — Дэвид Харрис и Сара Харрис, «Цифровая схемотехника и архитектура компьютера», второе издание. Этот учебник вышел на английском языке в 2012 году и русском в 2015 году. Пост про учебник получил более 120,000 просмотров на Хабре http://habrahabr.ru/post/259505/ и стал немедленно использоваться преподавателями в МФТИ, МВТУ, ИТМО и других ведущих российских вузах. И украинских — одним из главных участников перевода стал преподаватель Киевского Национального Университета им. Тараса Шевченко Александр Барабанов:
Для старших курсов можно попробовать пакет MIPSfpga, о котором хорошо отозвался не только президент Стенфорда Джон Хеннесси, но и преподаватели российских вузов — МГУ, МФТИ, МИЭТ, ИТМО.
Что такое MIPSfpga?
https://www.silicon-russia.com/2016/01/04/mipsfpga-how-to-start
MIPSfpga — это пакет, который содержит процессорное ядро в исходниках на языке описания аппаратуры Verilog, которое можно менять, добавлять новые инструкции, строить многопроцессорные системы, менять одновременно софтвер и хардвер, симулировать на симуляторе верилога, синтезировать для ПЛИС/FPGA и т.д. Его можно в целях эксперимента например запускать с частотой 1 такт в секунду и выводить наружу информацию о состоянии кэша, конвейера, и любых структур внутри процессора. При этом ядро MIPS microAptiv UP внутри MIPSfpga — это то же ядро которое например используется в платформе IoT Samsung Artik 1 и Microchip PIC32MZ, т.е. студенты получают возможность работать с тем же кодом, с которым сейчас работают инженеры в Samsung и Microchip.
MIPSfpga не предназначен для введения в предмет с абсолютного нуля. Для его плодотворного использования нужно чтобы студент или исследователь уже знал основы цифровой схемотехники, умел бы программировать на Си и на ассемблере, а также представлял бы концепции микроархитектуры — конвейера, конфликтов конвейера и т.д. Желательно, чтобы до работы с MIPSfpga студент уже бы построил собственный простой процессор с нуля и мог бы сравнивать свой простой процессор с процессором, используемым в промышленности и совместимым с развитой экосистемой разработки.
Наконец, когда студенты освоят использование готовых микропроцессоров (хоть от нас — MIPS/Imagination/Microchip, хоть от наших конкурентов — ARM, Atmel, Intel), а также проектирование цифровой логики на FPGA, ни могут в аспирантуре заняться исследовательскими проектами в рамках сотрудничества с Europractice для разработки микросхем ASIC и мелкосерийное производство их на фабрике. См. мою видеозапись интервью с директором Europractice по поводу образовательных программ в “Оруженосцы микроэлектроники. Видеорепортаж с конференции по проектированию электроники в Сан-Франциско”:
Другие полезные материалы:
Статья, в популярной форме обьясняющая меры по поднятию образовательной экосистемы микроэлектроники в России, бОльшая часть доводов применима и к Украине — “Как России развить микроэлектронику и победить Айфон”.
Для курсов цифровой схемотехники студентам необходимы лабораторные работы на микросхемах ПЛИС / FPGA. Вот заметка, которая на пальцах объясняет, что это такое и как выглядит с ними работа “Как начать разрабатывать железо, используя ПЛИС — пошаговая инструкция”.
Пост с обсуждением (с преподавателем московского МГУ), что нужно знать студенту перед использованием / во время использования / после использования MIPSfpga — “По просьбе преподавателя одного из российских вузов выписал список тем, связанных с MIPSfpga”.
Текст с обзором состояний дел в росийских вузах, у которых сходные проблемы по поднятию экосистемы — «Путешествие по микроэлектронной России 2015 года».
Я думаю, что поднятие экосистемы развития микроэлектроники в Украине, как и во всех странах бывшего СССР и восточной Европы, повысит благополучие региона, и предоставить возможность большому количеству молодых людей работать на интересных работах. Будет интересно следить за дальнейшими украинскими презентациями в Долине.