Чтобы преуспеть в области, связанной с компьютерными науками, студент колледжа должен сделать гораздо больше, чем просто получить степень - он должен сделать все возможное, чтобы быть конкурентоспособным с другими в этой области.
Будучи студентом CS, я относительно доволен программным аспектом IoT, но менее доволен электроникой и общей конструкцией датчика / устройства с поддержкой Интернета.
Что касается IoT, что я могу сделать, чтобы развить свои навыки? В частности, меня интересуют вещи, которые не могут преподавать в колледже для моего курса CS, чтобы помочь мне в будущем с получением работы или продвижением в этой области.
Ответы:
Я был преподавателем в университете на факультете, который сейчас преподает IoT, и ваши наблюдения верны, когда речь идет о том, чтобы испачкать руки игрушками, а не просто получить степень. Многие ученые-компьютерщики работают в сотрудничестве с инженерами, такими как инженеры связи, инженеры-технологи, чтобы найти уникальные решения, в которых IoT становится интересным приложением.
Я думаю, вы можете начать с изучения различных стеков протоколов связи, таких как:
IEEE 802.15.4, который включает в себя такие области, как беспроводные сенсорные сети и хорошо известный ZigBee . Посмотрите на Contiki-OS и RIOT-OS . Сами сенсорные узлы стоят немного дороже, но университетский отдел, который может работать на местах, может дать вам немного поиграть.
Дорогие инструменты, которые, я полагаю, вы можете начать понимать, если вы обращаетесь к исследовательскому институту и / или отрасли, - это Weightless P , SigFox , LORAWAN и т. Д. Они дадут вам подробное представление о телекоммуникациях, таких стеках, как 3G и LTE, и их участии в Интернет вещей и индустрия 4.0 .
IoT прогрессирует в области « умного дома» и автоматизации , поэтому вы можете взглянуть на такие инструменты, как openHAB и OpenThread, а также изучать информатику и разрабатывать полезные API.
Наконец, что не менее важно, любое устройство с платформой с открытым исходным кодом, такое как Raspberry Pis и другие микроконтроллеры, может использоваться в сочетании с модулями беспроводной связи вышеупомянутых технологий для создания простых и / или сложных решений IoT.
инструменты
Как специалист по IoT, языки программирования, такие как C / C ++, Java и Python, пройдут долгий путь. Разработка внешнего интерфейса , HTML, CSS, JavaScript, jQuery и т. Д. Позволит лучше понять работу с интернет-типами данных, такими как JSON, XML, простой текст, CBOR и т. Д. , А также с бэкендом , таким как Node.js, Flask от Python и Ruby on. Rails поможет вам настроить наиболее часто используемые модели клиентских серверов.
Git и репозитории с открытым исходным кодом дадут вам скачок в приложения и различные API, которые можно использовать для ваших будущих проектов.
Чем больше вы углубляетесь, тем лучше будут ваши навыки работы с инструментом и понимание IoT.
источник
IoT обладает широким спектром компьютерных технологий и охватывает широкий спектр технологий, реализаций и тактик. Короче говоря, это просто означает, что все связано с каналом связи, например, Интернет. Понимание того, как вещи соединяются с вещами, вероятно, является ключевым: обмен сообщениями, событиями, потоками.
Я бы взял несколько небольших устройств, неважно, какие они, но самое простое - на основе Arduino или Pi. Получите что-то с WiFi или что-то, что поддерживается существующим облаком, например, Photon.
Наклейте на него несколько датчиков. Температура является каноническим примером. Начните засасывать данные и хранить их. Затем возьмите эти данные и проанализируйте их; любое количество способов сделать это.
Если вас больше интересует анализ (коммуникация здесь на самом деле не сложная вещь - библиотеки справляются с этим, будь то WiFi, BT, ZigBee, ...), тогда есть много наборов данных, например, данные о турникетах метро Нью-Йорка. ,
источник
Интернет вещей огромен. Он состоит не только из компьютерных наук, но и из домашних приложений, таких как Google Home и т. Д. Если вы в конечном итоге начнете продавать, то может быть полезно узнать что-то о доступных устройствах.
Я лично рекомендую несколько вещей:
1. Подпишитесь на хорошие журналы.
Существует множество журналов и актуальных статей, которые помогут вам быть в курсе того, что происходит в мире IoT; Журнал IoTolution - это журнал, который я часто читаю. Еще один, содержащий много ценной технической информации, - это журнал M2M .
2. Получите несколько устройств IoT.
Это мало что делает для вашей информатики, но знакомит вас с тем, что доступно. В зависимости от того, в какой области вы работаете, могут быть полезны широкие общие знания о том, что доступно. Подумайте о том, чтобы приобрести несколько IoT-коммутаторов и установить их или даже создать собственные IoT-устройства по дому.
Просто мои 2 цента (что округляется в Канаде), но надеюсь, что это поможет!
источник
Как отмечалось в других ответах, лучший способ научиться - это делать - в данном случае, погружаться и проектировать устройство от начала до конца, чтобы понять процессы и этапы, связанные с разработкой IoT.
Эта проблема очень похожа на ту, с которой вы сталкиваетесь в разработке программного обеспечения / программировании - многие университетские курсы преподают своим студентам информатику , то есть теорию и концепции, лежащие в основе разработки программного обеспечения. Но после 3 или 4 лет обучения их бросают в мир, чтобы найти работу по программированию, и им не хватает практических навыков, необходимых для успешного разработчика.
В Индии утверждают, что только 7% выпускников действительно могут работать инженером-программистом, потому что:
Я уверен, что вы можете увидеть параллель здесь - если вы хотите войти в область IoT, вы должны быть в состоянии понять, как разработать устройство и инфраструктуру, в которой оно нуждается .
Несколько вещей, которые следует учитывать, когда вы начинаете делать свой прототип:
Он не должен быть революционным - как учебный проект, нет ничего плохого в выполнении чего-то простого. Ключевым моментом здесь является достижение достижимой конкретной цели .
Как только у вас есть цель, разбейте задачу на шаги . Это будет трудно ; если это ваш первый проект, вы обязательно почувствуете себя немного растерянным. Важно здесь ...
Если вы не можете найти кого-то, кто может помочь, всегда есть сайты для энтузиастов, экспертов и опытных пользователей, которые могут дать вам несколько советов!
источник
Я бы предложил сделать свой собственный проект.
Мне очень понравилась книга Дерека Моллой « Изучение BeagleBone» .
Вы могли бы тогда сделать следующее
Когда вы идете на собеседование, теперь вы можете говорить о проекте IoT, который вы сделали. Упомяните, что в настоящее время он работает в прямом эфире и что он находится на GitHub, если работодатель хочет узнать больше.
Это показывает работодателю, что вы действительно заинтересованы в IoT, обладаете компетенцией в этой области и являются отличной темой для собеседования.
источник
Если вы не создали реализацию встроенного приложения, вы будете значительно отставать от своих более опытных коллег. Ясно, что вы будете ограничены выбранной вами областью, но в идеале вы должны иметь практический опыт работы со всем стеком - от датчика к ценностному предложению. На этом этапе самое ценное - это найти проблемы, а не хороший результат.
источник
Шаг 1: Перестаньте тратить так много времени на видеоигры
Шаг 2: Начните простой проект и станьте действительно успешным в поиске Google. Разбейте каждый фрагмент проекта на более мелкие, более управляемые фрагменты. Решайте каждую проблему по одной, а затем переходите к следующей, пока ваш проект не будет завершен.
Вы получите ценные уроки, которые потом сможете использовать в других, более сложных проектах.
Например, в настоящее время я работаю над панелью солнечных батарей с автоматическим отслеживанием солнца, которая регистрирует данные о заряде и заряде батареи на онлайн-панели. Первое, что мне нужно было сделать, это выяснить, как сделать мигание светодиода на ESP8266 с помощью Arduino IDE. Затем я должен был выяснить, как я собирался получать показания света и напряжения с аналоговым входом. Каждый шаг занимал от часа до дней, но до сих пор я многое узнал об электронике и о том, как написанный код взаимодействует с каждым компонентом.
Конечно, идея вашего проекта должна быть чем-то, что вы чувствуете достаточно страстным, чтобы довести его до конца.
Главное, что я всегда нахожу, это то, что, если я получаю от этого удовольствие, тем больше я хочу это делать. Но на самом деле, в IoT не так уж много интересного!
источник
Раньше я был Компьютерным Компьютерщиком, мое падение было математикой, из-за трудностей с обучением мои базовые знания по математике были на уровне ученика приемного класса, и так будет всегда.
То, как я узнал о компьютерах, эксперименты, YouTube, проб и ошибок, терпение.
90% компьютеров - это терпение, а остальные 10% - это повторение.
Если у вас есть интерес к компьютерам, воспитывайте их и воспитывайте, как своего собственного ребенка. Ваш интерес поблагодарит вас однажды.
источник