Jako student informatyki, jak mogę rozwijać umiejętności związane z pracą w Internecie przedmiotów poza formalnym wykształceniem?

25

Aby dobrze sobie radzić w dziedzinie informatyki, student musi zrobić znacznie więcej niż tylko zdobycie dyplomu - musi wykraczać poza to, aby konkurować z innymi w tej dziedzinie.

Jako student CS jestem stosunkowo zadowolony z oprogramowania IoT, ale mniej zadowolony ze strony elektroniki i ogólnej budowy czujnika / urządzenia z dostępem do Internetu.

Jeśli chodzi o Internet Rzeczy, co mogę zrobić, aby rozwinąć swoje umiejętności? Szczególnie interesują mnie rzeczy, których nie można uczyć na studiach na kursie CS, aby pomóc mi w przyszłości w znalezieniu pracy lub awansie w tej dziedzinie.

Greg
źródło
3
Czy możesz wykonać jakieś zadanie związane z Internetem przedmiotów na studiach? Kup kilka Raspberry Pi Zero W (lub podobnych, ale te są najtańsze), wymyśl projekt. Może weź kapelusz z czujnikiem; w przeciwnym razie znajdź darmowy interfejs API JSON, który dostarczy Ci dane i opublikuje dane na stronie internetowej. Następnie awansuj. Spójrz na Zigbee i MQTT . Opublikuj kilka projektów lub witryn GitHub, które możesz pokazywać ludziom. Być może zaangażujesz się w większy, istniejący projekt FOSS. Zacznij od małych, rozwijaj swoją drogę, dodając złożoności i spraw, aby była widoczna, a następnie dodaj ją do swojego CV.
Mawg,
FWIW, widzę wiele ofert pracy w Zigbee, ale jak dotąd żadnych dla MQTT, ale nadal bym szukał MQTT, gdybym był tobą.
Mawg,

Odpowiedzi:

16

Byłem opiekunem uniwersyteckim na wydziale, który obecnie uczy IoT, a twoje spostrzeżenia są słuszne, jeśli chodzi o brudzenie rąk niektórymi zabawkami, a nie tylko stopień naukowy. Wielu informatyków współpracuje z inżynierami, takimi jak inżynierowie komunikacji, inżynierowie produkcji, aby opracować unikalne rozwiązania, w których Internet Rzeczy staje się interesującą aplikacją.

Myślę, że możesz zacząć od spojrzenia na różne stosy protokołów komunikacyjnych, takie jak:

  1. IEEE 802.15.4, która obejmuje pola takie jak bezprzewodowe sieci czujników i dobrze znany ZigBee . Spójrz na Contiki-OS i RIOT-OS . Same węzły czujnikowe kosztują nieco więcej, ale wydział uniwersytecki, który może pracować w terenie, może zapewnić ci trochę zabawy.

  2. Drogie narzędzia, które, sugeruję, możesz zacząć rozumieć, jeśli docierasz do instytutu badawczego i / lub branży, to Weightless P , SigFox , LORAWAN itp. Dadzą ci one szczegółowe informacje na temat telekomunikacji, stosów takich jak 3G i LTE i ich udziału w Internet przedmiotów i przemysł 4.0 .

  3. Internet przedmiotów rozwija się w dziedzinie inteligentnego domu i automatyki , więc możesz spojrzeć na narzędzia takie jak openHAB i OpenThread, a jako student informatyki opracować przydatne interfejsy API.

  4. Wreszcie, jakikolwiek rodzaj platformy typu open source, takiej jak Raspberry Pis i inne mikrokontrolery, może być używany w połączeniu z bezprzewodowymi modułami komunikacyjnymi wyżej wymienionych technologii, aby stworzyć proste i / lub złożone rozwiązania IoT.

Przybory

Jako człowiek technologii IoT, języki programowania, takie jak C / C ++, Java i Python, zabiorą Cię daleko. Programowanie nakładek , HTML, CSS, JavaScript i jQuery itp. Zapewni lepsze zrozumienie obsługi typów danych w Internecie, takich jak JSON, XML, zwykły tekst, CBOR itp. , Oraz zaplecza, takiego jak Node.js, Flask by Python i Ruby na Railsy pomogą Ci skonfigurować najczęściej używane modele klientów serwerów.

Repozytoria Git i open source dadzą ci skok do aplikacji i różnych interfejsów API, które mogą być używane w nadchodzących projektach.

Im bardziej zanurzysz się głębiej, tym lepsze będą twoje umiejętności obsługi narzędzi i zrozumienie IoT.

Shan-Desai
źródło
7

IoT obsługuje gamę komputerów i obejmuje szeroki zakres technologii, implementacji i taktyk. Krótko mówiąc, oznacza to, że rzeczy są połączone z kanałem komunikacyjnym, np. Internetem. Zrozumienie, w jaki sposób rzeczy łączą się z rzeczami, jest prawdopodobnie kluczem: wiadomości, zdarzenia, strumienie.

Chwyciłbym kilka małych urządzeń, nie ważne jakie one są, ale najłatwiejszy jest oparty na Arduino lub Pi. Zdobądź coś z Wi-Fi lub coś, co jest wspierane przez istniejącą chmurę, np. Photon.

Przyklej kilka czujników. Temperatura jest przykładem kanonicznym. Zacznij zasysać dane i przechowywać je. Następnie weź te dane i przeanalizuj je; dowolną liczbę sposobów, aby to zrobić.

Jeśli bardziej interesuje Cię strona analizy (komunikacja nie jest tutaj naprawdę trudna - biblioteki radzą sobie z tym, czy jest to WiFi, BT, ZigBee, ...), to istnieje wiele zestawów danych, np. Dane o kołowrotku metra w Nowym Jorku .

Dave Newton
źródło
7

Internet przedmiotów jest ogromny. Składa się nie tylko z informatyki, ale również z aplikacji domowych, takich jak Google Home itp. Jeśli zdecydujesz się na sprzedaż, pomocne może być poznanie dostępnych urządzeń.

Ja osobiście polecam kilka rzeczy:

1. Subskrybuj dobre czasopisma.

Istnieje mnóstwo czasopism i aktualnych artykułów, które pomogą ci zsynchronizować się z tym, co dzieje się w świecie Internetu Rzeczy; Magazyn ewolucyjny IoT to taki, który często czytam. Kolejnym z wieloma cennymi informacjami technicznymi jest magazyn M2M .

2. Zdobądź niektóre urządzenia IoT.

Nie ma to większego wpływu na twoją informatykę, ale zapoznaje cię z tym, co jest dostępne. W zależności od dziedziny, w której pracujesz, pomocna może być szeroka ogólna wiedza na temat tego, co jest dostępne. Zastanów się nad uzyskaniem kilku przełączników IoT i ich instalacją, a nawet tworzeniem własnych urządzeń IoT w całym domu.

Tylko moje 2 centy (które zaokrągla się w Kanadzie), ale mam nadzieję, że to pomoże!

anonimowy 2
źródło
1
Szerokie tło jest niezwykle przydatne - nawet jeśli pomaga tylko rozmawiać z ekspertami z innych dziedzin.
Sean Houlihane,
3

Jak stwierdzono w innych odpowiedziach, najlepszym sposobem na naukę jest zrobienie - w tym przypadku zanurzenie się i zaprojektowanie urządzenia od początku do końca, aby poznać procesy i kroki związane z rozwojem Internetu Rzeczy.

Jest to bardzo podobny problem do tego, z którym się spotykamy w inżynierii oprogramowania / programowaniu - wiele kursów uniwersyteckich uczy swoich studentów informatyki , tj. Teorii i koncepcji związanych z tworzeniem oprogramowania. Ale po 3 lub 4 latach nauki zostają wyrzuceni na świat w poszukiwaniu pracy programistycznej i brakuje im praktycznych umiejętności, których potrzebujesz, aby odnieść sukces jako programista.

W Indiach twierdzi się, że tylko 7% absolwentów jest faktycznie zatrudnionych jako inżynier oprogramowania, ponieważ:

Podczas gdy ogromna liczba studentów inżynierii w kraju studiuje swoje podręczniki, zdaje egzaminy i zbiera stopnie naukowe, dopiero wtedy, gdy napotykają problemy świata rzeczywistego, zdają sobie sprawę z niedoborów. Do tego czasu muszą poświęcić dodatkowy czas, aby się wyszkolić lub cierpieć z powodu bezrobocia.

Jestem pewien, że widać tu równoległość - jeśli chcesz wejść w pole IoT, musisz być w stanie zrozumieć, jak zaprojektować urządzenie i potrzebną infrastrukturę .


Kilka rzeczy do rozważenia podczas tworzenia prototypu:

  • Nie musi być rewolucyjny - jako projekt edukacyjny nie ma nic złego w robieniu czegoś prostego. Kluczową kwestią jest tutaj osiągnięcie konkretnego celu .

  • Gdy osiągniesz swój cel, podziel zadanie na etapy . Będzie ciężko ; jeśli to twój pierwszy projekt, poczujesz się trochę zagubiony. Ważne jest tutaj ...

  • Mieć grupę osób, które mogą ci pomóc. Jeśli jesteś w placówce edukacyjnej, masz szczęście - będzie mnóstwo ludzi pełnych pasji i wiedzy. Jest prawie pewne, że będą zainteresowani i będą chcieli ci pomóc; w końcu każdy powinien być ich, ponieważ informatyka jest ich pasją!

Jeśli nie możesz znaleźć nikogo, kto mógłby pomóc, zawsze znajdziesz strony dla entuzjastów, ekspertów i zaawansowanych użytkowników, którzy mogą dać ci jakieś sugestie!

Aurora0001
źródło
3

Sugerowałbym zrobienie własnego projektu.

Uważam, że książka Dereka Molloy'a Exploring BeagleBone jest bardzo dobra.

Następnie możesz wykonać następujące czynności

  • Zdobądź czarny beaglebone
  • Wykonaj wszystkie projekty w książce Dereka (dobre wprowadzenie do elektroniki i czujników do Internetu Rzeczy)
  • Przedłużyć projekt
  • Opublikuj swój projekt na GitHub lub Bitbucket

Kiedy idziesz na rozmowę, możesz teraz porozmawiać o projekcie IoT, który zrobiłeś. Wspomnij, że obecnie działa na żywo i że jest na GitHub, jeśli pracodawca chce dowiedzieć się więcej.

To pokazuje pracodawcy, że naprawdę interesujesz się Internetem przedmiotów, masz kompetencje w tej dziedzinie i jest świetnym punktem do rozmowy kwalifikacyjnej.

SeanJ
źródło
2

Jeśli nie zbudowałeś implementacji aplikacji osadzonej, będziesz daleko w tyle za bardziej doświadczonymi użytkownikami. Oczywiście wybrane przez ciebie pole będzie ograniczone, ale idealnie byłoby, gdybyś miał praktyczne doświadczenie z całym stosem - od czujników do propozycji wartości. Na tym etapie najcenniejsze jest znalezienie problemów, a nie dobry wynik.

Sean Houlihane
źródło
2

Krok 1: Przestań spędzać tyle czasu, grając w gry wideo

Krok 2: Rozpocznij prosty projekt i uzyskaj naprawdę dobre wyniki w wyszukiwaniu w Google. Podziel każdy element projektu na mniejsze, łatwiejsze do zarządzania bity. Rozwiąż każdy problem pojedynczo, a następnie przejdź do następnego, aż do zakończenia projektu.

Po drodze nauczysz się cennych lekcji, które możesz wykorzystać w innych, bardziej skomplikowanych projektach.

Na przykład obecnie pracuję nad panelem słonecznym z automatycznym śledzeniem słońca, który rejestruje dane dotyczące ładowania i baterii na internetowym pulpicie nawigacyjnym. Pierwszą rzeczą, którą musiałem zrobić, było wymyślenie, jak zrobić mruganie diody LED na ESP8266 za pomocą Arduino IDE. Potem musiałem dowiedzieć się, jak uzyskać odczyty światła i napięcia z wejściem analogowym. Każdy krok trwał od godziny do kilku dni, ale do tej pory nauczyłem się dużo o elektronice i tym, jak kod, który piszę, współdziała z każdym komponentem.

Oczywiście pomysł na Twój projekt musi być czymś, co czujesz wystarczająco namiętnie, aby zrealizować go do końca.

Najważniejsze, że zawsze znajduję to, że jeśli dobrze się z tym bawię, tym bardziej chcę to robić. Ale tak naprawdę nie ma wielu rzeczy na temat Internetu Rzeczy, które nie są zabawne!

TheFreddyKilo
źródło
1

Kiedyś byłem geekiem komputerowym, mój upadek był matematyką, z powodu trudności w nauce moja podstawowa matematyka jest na poziomie ucznia klasy przyjmującej i zawsze tak będzie.

Sposób, w jaki nauczyłem się o komputerach, eksperymentach, YouTube, próbach i błędach, cierpliwości.

90% komputerów to cierpliwość, a pozostałe 10% to powtarzalność.

Jeśli interesujesz się komputerami, pielęgnuj go i wychowuj jak własne dziecko. Twoje zainteresowanie kiedyś ci podziękuje.

Jonathon Mirza
źródło