SlideShare a Scribd company logo
1 of 15
Download to read offline
Из софтвар девелопера в
хардваръ и обратно за 365
дней!
Небольшой расказ о безопасном погружении в пучину железячного ада с детальными
инструкциями и лирическими отступлениями
Немного оптимизма
● Что такое профессия инженера?
● Почему создавать устройства так “просто”?
● Железка это та же программа, но ее можно потрогать!
● Процесс разработки девайса - от идеи до первого образца
за 5 мин - это реально (вайфай подсветка)!
Та самая вайфай подсветка
Спаяно и запрограммировано за пол часа, без шуток)
А теперь о сложном...
● Вообще-то это вредно для здоровья, и психического в том числе :)
● Оценка реализуемости устройства (если вы делаете железку на заказ),
несколько способов как конкретно провтычить.
● Отладка железок - это даже не поиски memory corruption в проекте на
миллионы строчек кода!
● Самое сложное это не заставить девайс “работать”, а сделать из него
продукт который нужен заказчику.
Практика - подготовительная часть
● Что из инструментов нужно.
● Рабочее место должно быть чистым и аккуратным(немного
занудства).
● Какие устройства всегда пригодятся.
● Что и где читать?
● Как начать без первых трех (и даже четырех) пунктов! :)
Инструменты, материалы, электроника.
● Пинцет, кусачки, скальпель, пасатижи/мультитул, набор отверток
● Тиски - мастхев! Напильник и пистолет для термоклея - для финальной
доводки, кроме шуток!
● Паяльная станция с феном, даже если вы ничего такого паять не
собираетесь.
● Отдельный стол с лампой.
● Минимальные расходники - припой, флюс, медная оплетка, изолента,
провода обычные и с запаянными розетками, ацетон.
● Самый дешевый вольтметр.
● Осциллограф - USB китайский, просто для солидности.
● Пачка отладочных плат - esp8266, arduino, stm32.
Вот так рабочее место выглядеть не должно. И это еще я
убрал паяльную станцию и тиски!)
Железо и софт для разработки (IMHO)
● Стоит разделять версии для proof of concept и первого прототипа
конечного устройства (MVP), поэтому железо будет разным.
● Почему я рекомендую stm32 (холивар!!!).
● Где искать схемотехнику и какие подсистемы почти всегда будут в
вашем устройстве.
● Какой софт я использую для разводки плат и программирования.
● Где закупаться и изготавливать устройство.
Почему STM32?
Выборка по RAM-32KB, FLASH-256KB с DigiKey. Дешево и сердито. Но не
всегда в наличии. Помимо этого для stm32 я могу назвать не менее 5 сред
разработки! - 2 из них точно бесплатны, для 2х есть lite(32KB code limit)
версии
Первый девайс - для себя
● Девайс надо делать тогда, когда чувствуешь, что тебе он нужен
(или забьешь и потратишь время зря, IMHO)
● Проектируем - ничего нового, все как и в софтварной
разработке!
● Сделать по нормальному или как обычно? Мое мнение.
● Результат нужно фиксировать - термоклеем! :)
● Немного о безопасности и аккуратности (если что-то может
отвалиться - оно отвалится)
Пример устройств “для себя”
Фрилансим - первый промышленный девайс!
● Особенности изготовления устройства “для людей”.
● Прикинем смету и умножим на 2(в лучшем случае не придется
продавать квартиру)
● Чем быстрей получится прототип, тем больше вероятность успеха.
● “Оно же работает”, поздравляю, вы прошли только треть пути!
● Самое сложное не электроника и не софт…
● Отладка и тестирование в “полях” или пишем логи! :)
Превый прототип - финальная версия - собранное
устройство.
Итог
● Сколько времени ушло на изучение проектирования
плат/прокачку скила пайки/изучения программирования под
микроконтроллеры?
● На изготовлении устройств и знании железа вместе с его
программированием можно фрилансить, но нужно ли?
● Мои реальные цифры - о деньгах :(
● Что можно получить от умения создавать железки?
● Ваши вопросы?
Спасибо!!!

More Related Content

What's hot

Контроль за качеством кода
Контроль за качеством кодаКонтроль за качеством кода
Контроль за качеством кодаКирилл Борисов
 
Уберинструментарий для тех, кому надоел MSBuild
Уберинструментарий для тех, кому надоел MSBuildУберинструментарий для тех, кому надоел MSBuild
Уберинструментарий для тех, кому надоел MSBuildSerhiy Kalinets
 
эмпирическая разработка Agile days
эмпирическая разработка   Agile daysэмпирическая разработка   Agile days
эмпирическая разработка Agile daysAlexander Borodin
 
Тестирование Локализации и Интернализации
Тестирование Локализации и ИнтернализацииТестирование Локализации и Интернализации
Тестирование Локализации и ИнтернализацииLilia Gorbachik
 
Куда катится PHP, а также про Yii и другие фреймворки / Александр Макаров (St...
Куда катится PHP, а также про Yii и другие фреймворки / Александр Макаров (St...Куда катится PHP, а также про Yii и другие фреймворки / Александр Макаров (St...
Куда катится PHP, а также про Yii и другие фреймворки / Александр Макаров (St...Ontico
 
Локализационное тестирование носителями языков
Локализационное тестирование носителями языковЛокализационное тестирование носителями языков
Локализационное тестирование носителями языковSQALab
 
Российская операционная система реального времени для микроконтроллеров, с по...
Российская операционная система реального времени для микроконтроллеров, с по...Российская операционная система реального времени для микроконтроллеров, с по...
Российская операционная система реального времени для микроконтроллеров, с по...CEE-SEC(R)
 
Владислав Грязнов "Многозадачность в PHP"
Владислав Грязнов "Многозадачность в PHP"Владислав Грязнов "Многозадачность в PHP"
Владислав Грязнов "Многозадачность в PHP"Fwdays
 
Про бэкапы (не энтерпрайз!)
Про бэкапы (не энтерпрайз!)Про бэкапы (не энтерпрайз!)
Про бэкапы (не энтерпрайз!)Alex Chistyakov
 
Собеседование на позицию Java Developer
Собеседование на позицию Java DeveloperСобеседование на позицию Java Developer
Собеседование на позицию Java DeveloperOlexandra Dmytrenko
 
Lego симуляция © Alex Krivitsky
Lego симуляция © Alex KrivitskyLego симуляция © Alex Krivitsky
Lego симуляция © Alex KrivitskyNikita Filippov
 
Контроль за стилем кода — Кирилл Борисов
Контроль за стилем кода — Кирилл БорисовКонтроль за стилем кода — Кирилл Борисов
Контроль за стилем кода — Кирилл БорисовYandex
 
Евгений Джамалов. Agile в условиях мульти-вендорности и распределённых команд.
Евгений Джамалов. Agile в условиях мульти-вендорности и распределённых команд.Евгений Джамалов. Agile в условиях мульти-вендорности и распределённых команд.
Евгений Джамалов. Agile в условиях мульти-вендорности и распределённых команд.ScrumTrek
 
Paul Miller "Как подняться на open source"
Paul Miller "Как подняться на open source"Paul Miller "Как подняться на open source"
Paul Miller "Как подняться на open source"Fwdays
 
КРИ 2010. Разработка технологической платформы в условиях временного прессинга
КРИ 2010. Разработка технологической платформы в условиях временного прессингаКРИ 2010. Разработка технологической платформы в условиях временного прессинга
КРИ 2010. Разработка технологической платформы в условиях временного прессингаKirill Lebedev
 
Максим Гуртовенко - The future is wild | HappyDev'12
Максим Гуртовенко - The future is wild | HappyDev'12Максим Гуртовенко - The future is wild | HappyDev'12
Максим Гуртовенко - The future is wild | HappyDev'12HappyDev
 
Фреймворк для регрессионного тестирования на основе WebDriver
Фреймворк для регрессионного тестирования на основе WebDriverФреймворк для регрессионного тестирования на основе WebDriver
Фреймворк для регрессионного тестирования на основе WebDriverautomated-testing.info
 
Андрей Рохилько – J-meter внутри и снаружи Яндекс.Танка
Андрей Рохилько – J-meter внутри и снаружи Яндекс.ТанкаАндрей Рохилько – J-meter внутри и снаружи Яндекс.Танка
Андрей Рохилько – J-meter внутри и снаружи Яндекс.ТанкаYandex
 
юнит тестирование Fork
юнит тестирование Forkюнит тестирование Fork
юнит тестирование ForkSergey Oreshkov
 

What's hot (20)

Контроль за качеством кода
Контроль за качеством кодаКонтроль за качеством кода
Контроль за качеством кода
 
Уберинструментарий для тех, кому надоел MSBuild
Уберинструментарий для тех, кому надоел MSBuildУберинструментарий для тех, кому надоел MSBuild
Уберинструментарий для тех, кому надоел MSBuild
 
эмпирическая разработка Agile days
эмпирическая разработка   Agile daysэмпирическая разработка   Agile days
эмпирическая разработка Agile days
 
Тестирование Локализации и Интернализации
Тестирование Локализации и ИнтернализацииТестирование Локализации и Интернализации
Тестирование Локализации и Интернализации
 
Куда катится PHP, а также про Yii и другие фреймворки / Александр Макаров (St...
Куда катится PHP, а также про Yii и другие фреймворки / Александр Макаров (St...Куда катится PHP, а также про Yii и другие фреймворки / Александр Макаров (St...
Куда катится PHP, а также про Yii и другие фреймворки / Александр Макаров (St...
 
Локализационное тестирование носителями языков
Локализационное тестирование носителями языковЛокализационное тестирование носителями языков
Локализационное тестирование носителями языков
 
Российская операционная система реального времени для микроконтроллеров, с по...
Российская операционная система реального времени для микроконтроллеров, с по...Российская операционная система реального времени для микроконтроллеров, с по...
Российская операционная система реального времени для микроконтроллеров, с по...
 
Владислав Грязнов "Многозадачность в PHP"
Владислав Грязнов "Многозадачность в PHP"Владислав Грязнов "Многозадачность в PHP"
Владислав Грязнов "Многозадачность в PHP"
 
Про бэкапы (не энтерпрайз!)
Про бэкапы (не энтерпрайз!)Про бэкапы (не энтерпрайз!)
Про бэкапы (не энтерпрайз!)
 
Собеседование на позицию Java Developer
Собеседование на позицию Java DeveloperСобеседование на позицию Java Developer
Собеседование на позицию Java Developer
 
Lego симуляция © Alex Krivitsky
Lego симуляция © Alex KrivitskyLego симуляция © Alex Krivitsky
Lego симуляция © Alex Krivitsky
 
Coding dojo
Coding dojoCoding dojo
Coding dojo
 
Контроль за стилем кода — Кирилл Борисов
Контроль за стилем кода — Кирилл БорисовКонтроль за стилем кода — Кирилл Борисов
Контроль за стилем кода — Кирилл Борисов
 
Евгений Джамалов. Agile в условиях мульти-вендорности и распределённых команд.
Евгений Джамалов. Agile в условиях мульти-вендорности и распределённых команд.Евгений Джамалов. Agile в условиях мульти-вендорности и распределённых команд.
Евгений Джамалов. Agile в условиях мульти-вендорности и распределённых команд.
 
Paul Miller "Как подняться на open source"
Paul Miller "Как подняться на open source"Paul Miller "Как подняться на open source"
Paul Miller "Как подняться на open source"
 
КРИ 2010. Разработка технологической платформы в условиях временного прессинга
КРИ 2010. Разработка технологической платформы в условиях временного прессингаКРИ 2010. Разработка технологической платформы в условиях временного прессинга
КРИ 2010. Разработка технологической платформы в условиях временного прессинга
 
Максим Гуртовенко - The future is wild | HappyDev'12
Максим Гуртовенко - The future is wild | HappyDev'12Максим Гуртовенко - The future is wild | HappyDev'12
Максим Гуртовенко - The future is wild | HappyDev'12
 
Фреймворк для регрессионного тестирования на основе WebDriver
Фреймворк для регрессионного тестирования на основе WebDriverФреймворк для регрессионного тестирования на основе WebDriver
Фреймворк для регрессионного тестирования на основе WebDriver
 
Андрей Рохилько – J-meter внутри и снаружи Яндекс.Танка
Андрей Рохилько – J-meter внутри и снаружи Яндекс.ТанкаАндрей Рохилько – J-meter внутри и снаружи Яндекс.Танка
Андрей Рохилько – J-meter внутри и снаружи Яндекс.Танка
 
юнит тестирование Fork
юнит тестирование Forkюнит тестирование Fork
юнит тестирование Fork
 

Viewers also liked

Oleksandr Yefremov Continuously delivering mobile project
Oleksandr Yefremov Continuously delivering mobile projectOleksandr Yefremov Continuously delivering mobile project
Oleksandr Yefremov Continuously delivering mobile projectАліна Шепшелей
 
Volodymyr Getmanskyi How to build a dynamic pricing model using big data
Volodymyr Getmanskyi How to build a dynamic pricing model using big dataVolodymyr Getmanskyi How to build a dynamic pricing model using big data
Volodymyr Getmanskyi How to build a dynamic pricing model using big dataАліна Шепшелей
 
Roman Ugolnikov Migrationа and sourcecontrol for your db
Roman Ugolnikov Migrationа and sourcecontrol for your dbRoman Ugolnikov Migrationа and sourcecontrol for your db
Roman Ugolnikov Migrationа and sourcecontrol for your dbАліна Шепшелей
 
Яна Пролис «Пожалуйста, не выгорай!»
Яна Пролис «Пожалуйста, не выгорай!»Яна Пролис «Пожалуйста, не выгорай!»
Яна Пролис «Пожалуйста, не выгорай!»Аліна Шепшелей
 
Jan Kein Do the right thingmarketing for startups
Jan Kein Do the right thingmarketing for startupsJan Kein Do the right thingmarketing for startups
Jan Kein Do the right thingmarketing for startupsАліна Шепшелей
 
Alexey Osipenko Basics of functional reactive programming
Alexey Osipenko Basics of functional reactive programmingAlexey Osipenko Basics of functional reactive programming
Alexey Osipenko Basics of functional reactive programmingАліна Шепшелей
 
Kononenko Alina Designing for Apple Watch and Apple TV
Kononenko Alina Designing for Apple Watch and Apple TVKononenko Alina Designing for Apple Watch and Apple TV
Kononenko Alina Designing for Apple Watch and Apple TVАліна Шепшелей
 
Mikhail Lebedinkiy iAIST the first pure ukrainian corporate erp and bi cloud ...
Mikhail Lebedinkiy iAIST the first pure ukrainian corporate erp and bi cloud ...Mikhail Lebedinkiy iAIST the first pure ukrainian corporate erp and bi cloud ...
Mikhail Lebedinkiy iAIST the first pure ukrainian corporate erp and bi cloud ...Аліна Шепшелей
 
Anton Ivinskyi Application level metrics and performance tests
Anton Ivinskyi	Application level metrics and performance testsAnton Ivinskyi	Application level metrics and performance tests
Anton Ivinskyi Application level metrics and performance testsАліна Шепшелей
 
Миша Рыбачук Что такое дизайн?
Миша Рыбачук Что такое дизайн?Миша Рыбачук Что такое дизайн?
Миша Рыбачук Что такое дизайн?Аліна Шепшелей
 
Valentin Dombrovsky Travel startups challenges and opportunities
Valentin Dombrovsky Travel startups challenges and opportunitiesValentin Dombrovsky Travel startups challenges and opportunities
Valentin Dombrovsky Travel startups challenges and opportunitiesАліна Шепшелей
 
Vitalii Bondarenko HDinsight: spark. advanced in memory big-data analytics wi...
Vitalii Bondarenko HDinsight: spark. advanced in memory big-data analytics wi...Vitalii Bondarenko HDinsight: spark. advanced in memory big-data analytics wi...
Vitalii Bondarenko HDinsight: spark. advanced in memory big-data analytics wi...Аліна Шепшелей
 
Ruslan Shevchenko Programming languages landscape: new & old ideas
Ruslan Shevchenko Programming languages landscape:  new & old ideasRuslan Shevchenko Programming languages landscape:  new & old ideas
Ruslan Shevchenko Programming languages landscape: new & old ideasАліна Шепшелей
 
Sergii Androshchuk Legal protection when you work with the investor
Sergii Androshchuk	Legal protection when you work with the investorSergii Androshchuk	Legal protection when you work with the investor
Sergii Androshchuk Legal protection when you work with the investorАліна Шепшелей
 
Alexander Voronov Test driven development in real world
Alexander Voronov Test driven development in real worldAlexander Voronov Test driven development in real world
Alexander Voronov Test driven development in real worldАліна Шепшелей
 

Viewers also liked (18)

Oleksandr Yefremov Continuously delivering mobile project
Oleksandr Yefremov Continuously delivering mobile projectOleksandr Yefremov Continuously delivering mobile project
Oleksandr Yefremov Continuously delivering mobile project
 
Volodymyr Getmanskyi How to build a dynamic pricing model using big data
Volodymyr Getmanskyi How to build a dynamic pricing model using big dataVolodymyr Getmanskyi How to build a dynamic pricing model using big data
Volodymyr Getmanskyi How to build a dynamic pricing model using big data
 
Roman Ugolnikov Migrationа and sourcecontrol for your db
Roman Ugolnikov Migrationа and sourcecontrol for your dbRoman Ugolnikov Migrationа and sourcecontrol for your db
Roman Ugolnikov Migrationа and sourcecontrol for your db
 
Vadym Gorenko How to pass the "death valley"
Vadym Gorenko How to pass the "death valley"Vadym Gorenko How to pass the "death valley"
Vadym Gorenko How to pass the "death valley"
 
Яна Пролис «Пожалуйста, не выгорай!»
Яна Пролис «Пожалуйста, не выгорай!»Яна Пролис «Пожалуйста, не выгорай!»
Яна Пролис «Пожалуйста, не выгорай!»
 
Jan Kein Do the right thingmarketing for startups
Jan Kein Do the right thingmarketing for startupsJan Kein Do the right thingmarketing for startups
Jan Kein Do the right thingmarketing for startups
 
Alexey Tokar To find a needle in a haystack
Alexey Tokar To find a needle in a haystackAlexey Tokar To find a needle in a haystack
Alexey Tokar To find a needle in a haystack
 
Alexey Osipenko Basics of functional reactive programming
Alexey Osipenko Basics of functional reactive programmingAlexey Osipenko Basics of functional reactive programming
Alexey Osipenko Basics of functional reactive programming
 
Kononenko Alina Designing for Apple Watch and Apple TV
Kononenko Alina Designing for Apple Watch and Apple TVKononenko Alina Designing for Apple Watch and Apple TV
Kononenko Alina Designing for Apple Watch and Apple TV
 
Mikhail Lebedinkiy iAIST the first pure ukrainian corporate erp and bi cloud ...
Mikhail Lebedinkiy iAIST the first pure ukrainian corporate erp and bi cloud ...Mikhail Lebedinkiy iAIST the first pure ukrainian corporate erp and bi cloud ...
Mikhail Lebedinkiy iAIST the first pure ukrainian corporate erp and bi cloud ...
 
Kyryl Sablin Crdt and their uses
Kyryl Sablin Crdt and their usesKyryl Sablin Crdt and their uses
Kyryl Sablin Crdt and their uses
 
Anton Ivinskyi Application level metrics and performance tests
Anton Ivinskyi	Application level metrics and performance testsAnton Ivinskyi	Application level metrics and performance tests
Anton Ivinskyi Application level metrics and performance tests
 
Миша Рыбачук Что такое дизайн?
Миша Рыбачук Что такое дизайн?Миша Рыбачук Что такое дизайн?
Миша Рыбачук Что такое дизайн?
 
Valentin Dombrovsky Travel startups challenges and opportunities
Valentin Dombrovsky Travel startups challenges and opportunitiesValentin Dombrovsky Travel startups challenges and opportunities
Valentin Dombrovsky Travel startups challenges and opportunities
 
Vitalii Bondarenko HDinsight: spark. advanced in memory big-data analytics wi...
Vitalii Bondarenko HDinsight: spark. advanced in memory big-data analytics wi...Vitalii Bondarenko HDinsight: spark. advanced in memory big-data analytics wi...
Vitalii Bondarenko HDinsight: spark. advanced in memory big-data analytics wi...
 
Ruslan Shevchenko Programming languages landscape: new & old ideas
Ruslan Shevchenko Programming languages landscape:  new & old ideasRuslan Shevchenko Programming languages landscape:  new & old ideas
Ruslan Shevchenko Programming languages landscape: new & old ideas
 
Sergii Androshchuk Legal protection when you work with the investor
Sergii Androshchuk	Legal protection when you work with the investorSergii Androshchuk	Legal protection when you work with the investor
Sergii Androshchuk Legal protection when you work with the investor
 
Alexander Voronov Test driven development in real world
Alexander Voronov Test driven development in real worldAlexander Voronov Test driven development in real world
Alexander Voronov Test driven development in real world
 

Similar to Maksym Antipov Hardware development as a hobby and a job

Я. Садовская "Управление конфигурациями и тестовой средой", DUMP-2014
Я. Садовская "Управление конфигурациями и тестовой средой", DUMP-2014Я. Садовская "Управление конфигурациями и тестовой средой", DUMP-2014
Я. Садовская "Управление конфигурациями и тестовой средой", DUMP-2014it-people
 
Валерий Петров «Модель памяти .NET»
Валерий Петров «Модель памяти .NET»Валерий Петров «Модель памяти .NET»
Валерий Петров «Модель памяти .NET»SpbDotNet Community
 
Кикие вопросы нужно задать для выбора компьютера
Кикие вопросы нужно задать для выбора компьютераКикие вопросы нужно задать для выбора компьютера
Кикие вопросы нужно задать для выбора компьютераAlexey Samoylov
 
CodeFest 2014. Каплуновский Б. — Использование асинхронного I/O для снижения ...
CodeFest 2014. Каплуновский Б. — Использование асинхронного I/O для снижения ...CodeFest 2014. Каплуновский Б. — Использование асинхронного I/O для снижения ...
CodeFest 2014. Каплуновский Б. — Использование асинхронного I/O для снижения ...CodeFest
 
SECON'2016. Чубарь Алексей, Мобильные грабли Unity
SECON'2016. Чубарь Алексей, Мобильные грабли UnitySECON'2016. Чубарь Алексей, Мобильные грабли Unity
SECON'2016. Чубарь Алексей, Мобильные грабли UnitySECON
 
Tech Talks @NSU: Проходим тест Джоэла
Tech Talks @NSU: Проходим тест ДжоэлаTech Talks @NSU: Проходим тест Джоэла
Tech Talks @NSU: Проходим тест ДжоэлаTech Talks @NSU
 
Проходим тест Джоэла
Проходим тест ДжоэлаПроходим тест Джоэла
Проходим тест Джоэла0leGG
 
Интернет в помощь команде разработчиков культурно массового мероприятия
Интернет в помощь команде разработчиков культурно массового мероприятияИнтернет в помощь команде разработчиков культурно массового мероприятия
Интернет в помощь команде разработчиков культурно массового мероприятияnomoretears
 
(Не) преждевременная оптимизация проекта на Unreal Engine 4 / Владимир Алямки...
(Не) преждевременная оптимизация проекта на Unreal Engine 4 / Владимир Алямки...(Не) преждевременная оптимизация проекта на Unreal Engine 4 / Владимир Алямки...
(Не) преждевременная оптимизация проекта на Unreal Engine 4 / Владимир Алямки...DevGAMM Conference
 
Porting existing games to Apple Metal API. Case study: Divinity Original Sin ...
Porting existing games to Apple Metal API. Case study: Divinity Original Sin ...Porting existing games to Apple Metal API. Case study: Divinity Original Sin ...
Porting existing games to Apple Metal API. Case study: Divinity Original Sin ...DevGAMM Conference
 
Продуктивность и производительность в новых скриптовых языках / Антон Юдинцев...
Продуктивность и производительность в новых скриптовых языках / Антон Юдинцев...Продуктивность и производительность в новых скриптовых языках / Антон Юдинцев...
Продуктивность и производительность в новых скриптовых языках / Антон Юдинцев...DevGAMM Conference
 
Performance engineering stories from #fdminicon Saransk
Performance engineering stories from #fdminicon SaranskPerformance engineering stories from #fdminicon Saransk
Performance engineering stories from #fdminicon SaranskAlex Chistyakov
 
Bionic arduino class1_russian
Bionic arduino class1_russianBionic arduino class1_russian
Bionic arduino class1_russiansrgksch
 
трики разработчика мобильных игр
трики разработчика мобильных игртрики разработчика мобильных игр
трики разработчика мобильных игрAlexander Degtyarev
 
Завершающая лекция - часть 1 - информатика и зомби
Завершающая лекция - часть 1 - информатика и зомбиЗавершающая лекция - часть 1 - информатика и зомби
Завершающая лекция - часть 1 - информатика и зомбиAlexey Vasyukov
 
Rozum robotics release cycle
Rozum robotics release cycleRozum robotics release cycle
Rozum robotics release cycleNikolay Lagutko
 

Similar to Maksym Antipov Hardware development as a hobby and a job (20)

Я. Садовская "Управление конфигурациями и тестовой средой", DUMP-2014
Я. Садовская "Управление конфигурациями и тестовой средой", DUMP-2014Я. Садовская "Управление конфигурациями и тестовой средой", DUMP-2014
Я. Садовская "Управление конфигурациями и тестовой средой", DUMP-2014
 
Валерий Петров «Модель памяти .NET»
Валерий Петров «Модель памяти .NET»Валерий Петров «Модель памяти .NET»
Валерий Петров «Модель памяти .NET»
 
Кикие вопросы нужно задать для выбора компьютера
Кикие вопросы нужно задать для выбора компьютераКикие вопросы нужно задать для выбора компьютера
Кикие вопросы нужно задать для выбора компьютера
 
CodeFest 2014. Каплуновский Б. — Использование асинхронного I/O для снижения ...
CodeFest 2014. Каплуновский Б. — Использование асинхронного I/O для снижения ...CodeFest 2014. Каплуновский Б. — Использование асинхронного I/O для снижения ...
CodeFest 2014. Каплуновский Б. — Использование асинхронного I/O для снижения ...
 
SECON'2016. Чубарь Алексей, Мобильные грабли Unity
SECON'2016. Чубарь Алексей, Мобильные грабли UnitySECON'2016. Чубарь Алексей, Мобильные грабли Unity
SECON'2016. Чубарь Алексей, Мобильные грабли Unity
 
Kranonit s16 (python). sergey burma
Kranonit s16 (python). sergey burmaKranonit s16 (python). sergey burma
Kranonit s16 (python). sergey burma
 
Tech Talks @NSU: Проходим тест Джоэла
Tech Talks @NSU: Проходим тест ДжоэлаTech Talks @NSU: Проходим тест Джоэла
Tech Talks @NSU: Проходим тест Джоэла
 
Проходим тест Джоэла
Проходим тест ДжоэлаПроходим тест Джоэла
Проходим тест Джоэла
 
Joker2014
Joker2014Joker2014
Joker2014
 
Интернет в помощь команде разработчиков культурно массового мероприятия
Интернет в помощь команде разработчиков культурно массового мероприятияИнтернет в помощь команде разработчиков культурно массового мероприятия
Интернет в помощь команде разработчиков культурно массового мероприятия
 
(Не) преждевременная оптимизация проекта на Unreal Engine 4 / Владимир Алямки...
(Не) преждевременная оптимизация проекта на Unreal Engine 4 / Владимир Алямки...(Не) преждевременная оптимизация проекта на Unreal Engine 4 / Владимир Алямки...
(Не) преждевременная оптимизация проекта на Unreal Engine 4 / Владимир Алямки...
 
Porting existing games to Apple Metal API. Case study: Divinity Original Sin ...
Porting existing games to Apple Metal API. Case study: Divinity Original Sin ...Porting existing games to Apple Metal API. Case study: Divinity Original Sin ...
Porting existing games to Apple Metal API. Case study: Divinity Original Sin ...
 
Продуктивность и производительность в новых скриптовых языках / Антон Юдинцев...
Продуктивность и производительность в новых скриптовых языках / Антон Юдинцев...Продуктивность и производительность в новых скриптовых языках / Антон Юдинцев...
Продуктивность и производительность в новых скриптовых языках / Антон Юдинцев...
 
Apalon
ApalonApalon
Apalon
 
Performance engineering stories from #fdminicon Saransk
Performance engineering stories from #fdminicon SaranskPerformance engineering stories from #fdminicon Saransk
Performance engineering stories from #fdminicon Saransk
 
Bionic arduino class1_russian
Bionic arduino class1_russianBionic arduino class1_russian
Bionic arduino class1_russian
 
трики разработчика мобильных игр
трики разработчика мобильных игртрики разработчика мобильных игр
трики разработчика мобильных игр
 
IT basics for non technical CEO (Rus)
IT basics for non technical CEO (Rus)IT basics for non technical CEO (Rus)
IT basics for non technical CEO (Rus)
 
Завершающая лекция - часть 1 - информатика и зомби
Завершающая лекция - часть 1 - информатика и зомбиЗавершающая лекция - часть 1 - информатика и зомби
Завершающая лекция - часть 1 - информатика и зомби
 
Rozum robotics release cycle
Rozum robotics release cycleRozum robotics release cycle
Rozum robotics release cycle
 

More from Аліна Шепшелей

Vladimir Lozanov How to deliver high quality apps to the app store
Vladimir Lozanov	How to deliver high quality apps to the app storeVladimir Lozanov	How to deliver high quality apps to the app store
Vladimir Lozanov How to deliver high quality apps to the app storeАліна Шепшелей
 
Valerii Iakovenko Drones as the part of the present
Valerii Iakovenko	Drones as the part of the presentValerii Iakovenko	Drones as the part of the present
Valerii Iakovenko Drones as the part of the presentАліна Шепшелей
 
Dmitriy Kouperman Working with legacy systems. stabilization, monitoring, man...
Dmitriy Kouperman Working with legacy systems. stabilization, monitoring, man...Dmitriy Kouperman Working with legacy systems. stabilization, monitoring, man...
Dmitriy Kouperman Working with legacy systems. stabilization, monitoring, man...Аліна Шепшелей
 
Макс Семенчук Дизайнер, которому доверяют
 Макс Семенчук Дизайнер, которому доверяют Макс Семенчук Дизайнер, которому доверяют
Макс Семенчук Дизайнер, которому доверяютАліна Шепшелей
 
Anton Parkhomenko Boost your design workflow or git rebase for designers
Anton Parkhomenko Boost your design workflow or git rebase for designersAnton Parkhomenko Boost your design workflow or git rebase for designers
Anton Parkhomenko Boost your design workflow or git rebase for designersАліна Шепшелей
 
Andrew Veles Product design is about the process
Andrew Veles Product design is about the processAndrew Veles Product design is about the process
Andrew Veles Product design is about the processАліна Шепшелей
 
Mihail Patalaha Aso: how to start and how to finish?
Mihail Patalaha Aso: how to start and how to finish?Mihail Patalaha Aso: how to start and how to finish?
Mihail Patalaha Aso: how to start and how to finish?Аліна Шепшелей
 
Gregory Shehet Undefined' on prod, or how to test a react app
Gregory Shehet Undefined' on  prod, or how to test a react appGregory Shehet Undefined' on  prod, or how to test a react app
Gregory Shehet Undefined' on prod, or how to test a react appАліна Шепшелей
 
Den Golotyuk Big data from 30 million daily users
Den Golotyuk Big data from 30 million daily usersDen Golotyuk Big data from 30 million daily users
Den Golotyuk Big data from 30 million daily usersАліна Шепшелей
 
Anton Fedorchenko Swift for server side development
Anton Fedorchenko Swift for server side developmentAnton Fedorchenko Swift for server side development
Anton Fedorchenko Swift for server side developmentАліна Шепшелей
 
Valerii Vasylkov Erlang. measurements and benefits.
Valerii Vasylkov Erlang. measurements and benefits.Valerii Vasylkov Erlang. measurements and benefits.
Valerii Vasylkov Erlang. measurements and benefits.Аліна Шепшелей
 

More from Аліна Шепшелей (18)

Vladimir Lozanov How to deliver high quality apps to the app store
Vladimir Lozanov	How to deliver high quality apps to the app storeVladimir Lozanov	How to deliver high quality apps to the app store
Vladimir Lozanov How to deliver high quality apps to the app store
 
Valerii Iakovenko Drones as the part of the present
Valerii Iakovenko	Drones as the part of the presentValerii Iakovenko	Drones as the part of the present
Valerii Iakovenko Drones as the part of the present
 
Valerii Moisieienko Apache hbase workshop
Valerii Moisieienko	Apache hbase workshopValerii Moisieienko	Apache hbase workshop
Valerii Moisieienko Apache hbase workshop
 
Dmitriy Kouperman Working with legacy systems. stabilization, monitoring, man...
Dmitriy Kouperman Working with legacy systems. stabilization, monitoring, man...Dmitriy Kouperman Working with legacy systems. stabilization, monitoring, man...
Dmitriy Kouperman Working with legacy systems. stabilization, monitoring, man...
 
Макс Семенчук Дизайнер, которому доверяют
 Макс Семенчук Дизайнер, которому доверяют Макс Семенчук Дизайнер, которому доверяют
Макс Семенчук Дизайнер, которому доверяют
 
Anton Parkhomenko Boost your design workflow or git rebase for designers
Anton Parkhomenko Boost your design workflow or git rebase for designersAnton Parkhomenko Boost your design workflow or git rebase for designers
Anton Parkhomenko Boost your design workflow or git rebase for designers
 
Andrew Veles Product design is about the process
Andrew Veles Product design is about the processAndrew Veles Product design is about the process
Andrew Veles Product design is about the process
 
Mihail Patalaha Aso: how to start and how to finish?
Mihail Patalaha Aso: how to start and how to finish?Mihail Patalaha Aso: how to start and how to finish?
Mihail Patalaha Aso: how to start and how to finish?
 
Gregory Shehet Undefined' on prod, or how to test a react app
Gregory Shehet Undefined' on  prod, or how to test a react appGregory Shehet Undefined' on  prod, or how to test a react app
Gregory Shehet Undefined' on prod, or how to test a react app
 
Vladimir Mikhel Scrapping the web
Vladimir Mikhel Scrapping the web Vladimir Mikhel Scrapping the web
Vladimir Mikhel Scrapping the web
 
Dmutro Panin JHipster
Dmutro Panin JHipster Dmutro Panin JHipster
Dmutro Panin JHipster
 
Alex Theedom Java ee revisits design patterns
Alex Theedom	Java ee revisits design patternsAlex Theedom	Java ee revisits design patterns
Alex Theedom Java ee revisits design patterns
 
Ievgen Vladimirov Only cloud
Ievgen Vladimirov Only cloudIevgen Vladimirov Only cloud
Ievgen Vladimirov Only cloud
 
Denis Reznik Data driven future
Denis Reznik Data driven futureDenis Reznik Data driven future
Denis Reznik Data driven future
 
Den Golotyuk Big data from 30 million daily users
Den Golotyuk Big data from 30 million daily usersDen Golotyuk Big data from 30 million daily users
Den Golotyuk Big data from 30 million daily users
 
Anton Fedorchenko Swift for server side development
Anton Fedorchenko Swift for server side developmentAnton Fedorchenko Swift for server side development
Anton Fedorchenko Swift for server side development
 
Valerii Vasylkov Erlang. measurements and benefits.
Valerii Vasylkov Erlang. measurements and benefits.Valerii Vasylkov Erlang. measurements and benefits.
Valerii Vasylkov Erlang. measurements and benefits.
 
Oleg Gorbunov Action cable
Oleg Gorbunov Action cableOleg Gorbunov Action cable
Oleg Gorbunov Action cable
 

Maksym Antipov Hardware development as a hobby and a job

  • 1. Из софтвар девелопера в хардваръ и обратно за 365 дней! Небольшой расказ о безопасном погружении в пучину железячного ада с детальными инструкциями и лирическими отступлениями
  • 2. Немного оптимизма ● Что такое профессия инженера? ● Почему создавать устройства так “просто”? ● Железка это та же программа, но ее можно потрогать! ● Процесс разработки девайса - от идеи до первого образца за 5 мин - это реально (вайфай подсветка)!
  • 3. Та самая вайфай подсветка Спаяно и запрограммировано за пол часа, без шуток)
  • 4. А теперь о сложном... ● Вообще-то это вредно для здоровья, и психического в том числе :) ● Оценка реализуемости устройства (если вы делаете железку на заказ), несколько способов как конкретно провтычить. ● Отладка железок - это даже не поиски memory corruption в проекте на миллионы строчек кода! ● Самое сложное это не заставить девайс “работать”, а сделать из него продукт который нужен заказчику.
  • 5. Практика - подготовительная часть ● Что из инструментов нужно. ● Рабочее место должно быть чистым и аккуратным(немного занудства). ● Какие устройства всегда пригодятся. ● Что и где читать? ● Как начать без первых трех (и даже четырех) пунктов! :)
  • 6. Инструменты, материалы, электроника. ● Пинцет, кусачки, скальпель, пасатижи/мультитул, набор отверток ● Тиски - мастхев! Напильник и пистолет для термоклея - для финальной доводки, кроме шуток! ● Паяльная станция с феном, даже если вы ничего такого паять не собираетесь. ● Отдельный стол с лампой. ● Минимальные расходники - припой, флюс, медная оплетка, изолента, провода обычные и с запаянными розетками, ацетон. ● Самый дешевый вольтметр. ● Осциллограф - USB китайский, просто для солидности. ● Пачка отладочных плат - esp8266, arduino, stm32.
  • 7. Вот так рабочее место выглядеть не должно. И это еще я убрал паяльную станцию и тиски!)
  • 8. Железо и софт для разработки (IMHO) ● Стоит разделять версии для proof of concept и первого прототипа конечного устройства (MVP), поэтому железо будет разным. ● Почему я рекомендую stm32 (холивар!!!). ● Где искать схемотехнику и какие подсистемы почти всегда будут в вашем устройстве. ● Какой софт я использую для разводки плат и программирования. ● Где закупаться и изготавливать устройство.
  • 9. Почему STM32? Выборка по RAM-32KB, FLASH-256KB с DigiKey. Дешево и сердито. Но не всегда в наличии. Помимо этого для stm32 я могу назвать не менее 5 сред разработки! - 2 из них точно бесплатны, для 2х есть lite(32KB code limit) версии
  • 10. Первый девайс - для себя ● Девайс надо делать тогда, когда чувствуешь, что тебе он нужен (или забьешь и потратишь время зря, IMHO) ● Проектируем - ничего нового, все как и в софтварной разработке! ● Сделать по нормальному или как обычно? Мое мнение. ● Результат нужно фиксировать - термоклеем! :) ● Немного о безопасности и аккуратности (если что-то может отвалиться - оно отвалится)
  • 12. Фрилансим - первый промышленный девайс! ● Особенности изготовления устройства “для людей”. ● Прикинем смету и умножим на 2(в лучшем случае не придется продавать квартиру) ● Чем быстрей получится прототип, тем больше вероятность успеха. ● “Оно же работает”, поздравляю, вы прошли только треть пути! ● Самое сложное не электроника и не софт… ● Отладка и тестирование в “полях” или пишем логи! :)
  • 13. Превый прототип - финальная версия - собранное устройство.
  • 14. Итог ● Сколько времени ушло на изучение проектирования плат/прокачку скила пайки/изучения программирования под микроконтроллеры? ● На изготовлении устройств и знании железа вместе с его программированием можно фрилансить, но нужно ли? ● Мои реальные цифры - о деньгах :( ● Что можно получить от умения создавать железки? ● Ваши вопросы?