JavaRush /Blog Java /Random-PL /11 technologii, które powinien znać każdy szanujący się p...
Dr-John Zoidberg
Poziom 41
Марс

11 technologii, które powinien znać każdy szanujący się programista

Opublikowano w grupie Random-PL
Od uczenia maszynowego po cyfrowe bliźniaki – morze możliwości przy rosnących (i opadających) trendach technologicznych. Nowe i rozwijające się technologie szybko zmieniają sposób, w jaki pracujemy, oferując kreatywne możliwości programistom, którym nie przeszkadza zmiana ostrości i nauka czegoś nowego. W tym artykule przyglądamy się 11 nowym trendom technologicznym, które zdaniem ekspertów mogą zakłócić istniejące praktyki IT i stworzyć popyt na programistów zorientowanych na przyszłość.
11 technologii, które powinien znać każdy szanujący się programista - 1
Nie mówimy tylko o kolejnym megaprzełomie (czyli Next Big Thing). Źródłem przyszłych możliwości dla programistów jest fuzja kilku zaawansowanych technologii - sztucznej inteligencji (AI), rzeczywistości wirtualnej (VR), rzeczywistości rozszerzonej (AR), Internetu Rzeczy (IoT. Internet Rzeczy, IoT) i technologii chmurowych ... i oczywiście w kwestiach bezpieczeństwa wynikających z tej fuzji. Jeśli chcesz rozbudować swój osobisty zestaw narzędzi, polecamy przyjrzeć się bliżej tym popularnym technologiom i naszym wskazówkom, jak odnieść sukces w ich stosowaniu.

Bezpieczeństwo Internetu rzeczy

11 technologii, które powinien znać każdy szanujący się programista - 2
Po tym, jak w 2016 r. zhakowano dziesiątki milionów podłączonych urządzeń, nawet zewnętrzni obserwatorzy zauważyli, że niezabezpieczone urządzenia IoT (IoT = internet rzeczy) prowadzą do strasznych problemów z bezpieczeństwem. W niedawnym raporcie firma analityczna Gartner opublikowała rekomendacje dla programistów i zespołów ekspertów. Sugeruje to, że specjaliści ci powinni ze sobą współpracować już od samego początku procesu projektowania. W takim przypadku możesz eliminować zagrożenia w miarę ich pojawiania się. Na przykład pobierając aktualizacje zabezpieczeń na urządzenia IoT. Zapotrzebowanie na ekspertów ds. bezpieczeństwa Internetu rzeczy jest duże, szczególnie na tych, którzy rozumieją słabe punkty sprzętu i oprogramowania wykorzystywanego przez urządzenia podłączone do sieci. „Wektory ataków IoT są niemal identyczne jak w przypadku dowolnej sieci rozproszonej, takiej jak komputery czy telefony komórkowe. Zatem wiedza o bezpieczeństwie będzie istotna i ważna w tym obszarze, mówi Richard Whitney, wiceprezes ds. produktu w startupie Particle. „Naucz się podstaw kryptografii i uwierzytelniania, a osiągniesz wielkie rzeczy.” Tom Gonser, założyciel DocuSign i partner w Seven Peaks Ventures, twierdzi, że firmy potrzebują obecnie umiejętności programowania niskiego poziomu dla mikroprocesorów. „Potrzebują także doświadczenia z technologią Bluetooth, [Windows Identity Foundation] i technologiami widma rozproszonego. Mile widziana jest także znajomość najnowszych opcji bezpieczeństwa systemu operacyjnego Linux, w szczególności opcji zoptymalizowanych pod kątem minijądra, takich jak Qubes OS.” Matt Abrams, partner w Seven Peaks Ventures, sugeruje skupienie wysiłków na zrozumieniu procesów technologicznych i sposobach ich zniszczenia. Jego zdaniem era kryptografii postkwantowej zbliża się szybciej, niż oczekiwano. „Specjaliści muszą zrozumieć, na czym polega różnica w prywatności i sieciach kontradyktoryjnych”.

Sztuczna inteligencja

11 technologii, które powinien znać każdy szanujący się programista - 3
Zapotrzebowanie na inżynierów znających się na sztucznej inteligencji rośnie gwałtownie w oczekiwaniu na nową falę samochodów autonomicznych, robotów i inteligentnej elektroniki. „Obecnie znajdujemy się w punkcie zwrotnym, napędzanym głównie postępem w zakresie wszechobecnego przetwarzania danych, przystępnych cenowo usług w chmurze i praktycznie nieograniczonego przechowywania informacji” – powiedziała Nicola Morini-Bianzino, starszy dyrektor wykonawczy i lider grupy sztucznej inteligencji w Accenture. „Sztuczna inteligencja jest obecnie wbudowana dosłownie we wszystko”. Morini-Bianchino przewiduje zapotrzebowanie na programistów, technologów i badaczy z doświadczeniem w dziedzinach [automatyzacja – ok. tłum.] tłumaczenie z jednego języka na drugi, rozpoznawanie mowy, widzenie komputerowe, robotyka, przetwarzanie tekstu w językach naturalnych, reprezentacja wiedzy i logiczne rozumowanie. Pożywieniem sztucznej inteligencji są dane, dlatego też zapotrzebowanie na specjalistów ds. zarządzania danymi i treścią, analityków danych i analityków jest również niezwykle duże. Wiceprezes ds. marketingu Treasure Data, Kiyoto Tamura, przewiduje, że sztuczna inteligencja wkrótce przeniesie się z niszowych, przyziemnych aplikacji do znacznie szerszych – i ekscytujących – zastosowań. Wcześniej zadania dla sztucznej inteligencji wyglądały mniej więcej tak: „Znajdź optymalną trasę dostawy paczki… lub najbardziej odpowiednie strony dla zapytania”. Teraz ich sformułowanie jest bliższe: „graj ​​w Go na przyzwoitym poziomie”, „jedź bezpiecznie” itp. „To świetnie, ale ludzie wciąż muszą mówić komputerowi, co ma robić, i nic nie można na to poradzić” – mówi Tamura Kiyoto. Zapotrzebowanie na analityków danych, naukowców zajmujących się uczeniem maszynowym i lingwistów obliczeniowych stale rośnie. mówi Tim, dyrektor generalny MindMeld Tuttle, cytując badanie VentureScanner, w którym wymieniono 910 firm zajmujących się sztuczną inteligencją, które rozpoczęły działalność od marca do października 2016 r., z czego ponad połowa zajmuje się głębokim uczeniem się/uczeniem maszynowym i analizą danych. Języki naturalne. „Nie tylko liczebność tego obszaru rośnie, ale jest to także obszar, w który zainwestowano najwięcej pieniędzy, wynoszący około 4,5 miliarda dolarów” – mówi Tuttle. Pomimo niedawnego wzrostu zainteresowania aplikacjami interaktywnymi, istnieje asymetria między podażą a popytem w tym obszarze. W rezultacie eksperci merytoryczni pozostaną cennym zasobem, dopóki środowisko akademickie i przemysł nie przywrócą równowagi.

Nauczanie maszynowe

11 technologii, które powinien znać każdy szanujący się programista - 4
Rodzaj sztucznej inteligencji, uczenie maszynowe, może przetwarzać ogromne ilości danych, aby szybko znajdować wzorce – takie jak rozpoznawanie twarzy – i wykonywać zadania, takie jak polecanie filmów do strumieniowego przesyłania, bez potrzeby jawnego programowania. Patrick Spedding, starszy dyrektor ds. badań Business Intelligence w Rocket Software uważa, że ​​technologie kognitywne w połączeniu z botami i uczeniem maszynowym mogą poprawić efektywność organizacji poszukujących „przydatnego sygnału wśród szumu”. „Uczenie maszynowe w końcu opiera się na możliwościach zaawansowanej analityki, dawniej zwanej eksploracją danych, która potrzebowała jedynie odpowiedniej platformy, aby stać się bardziej popularna” – komentuje Spadding. Powstaje pytanie: jak zyskać Abrams z Seven Peaks Ventures poleca Abrams z Seven Peaks Ventures Internetowy kurs Andrew Ng na temat uczenia maszynowego na platformie Coursera. Osoby, które biorą udział w kursie, osiągają lepsze wyniki w konkursach Kaggle. Lepsze wyniki niż niektórzy praktycy z wieloletnim doświadczeniem. Nie każdy programista zajmujący się uczeniem maszynowym ma dyplom z informatyki. „Oczywiście dyplom z informatyki lub podstawowy stopień inżyniera zwykle pomaga technikom odnieść sukces w pracy „tacy specjaliści są w stanie przeprowadzać eksperymenty przez długi czas i ulepszać modele uczenia maszynowego” – mówi Mehdi Samadi, dyrektor ds. technicznych i współzałożyciel Solvvy. „Jednak często widziałem, jak firmy zatrudniają kandydatów bez wykształcenia informatycznego i przekształcają ich w specjalistów ds. uczenia maszynowego”.

Nauka o danych

11 technologii, które powinien znać każdy szanujący się programista - 5
Analiza danych to kolejna modna dziedzina, która wymaga różnorodnych umiejętności interdyscyplinarnych, a każda branża ma swoje własne. Do przekształcenia dużych ilości danych w dane przydatne do podejmowania decyzji biznesowych może być wymagane doświadczenie w zakresie uczenia maszynowego i sztucznej inteligencji. „Doświadczeni badacze danych to towar deficytowy” – mówi Spadding. „Wydaje mi się, że obszary, w których można tworzyć technologie pomagające w podejmowaniu decyzji, takie jak boty kognitywne i analityka kierowana, to obszary niezwykle zyskownych możliwości.” Dla tych, którzy chcieli pracować w tych obszarach, dogłębna wiedza na temat prawdopodobieństwa teoria i statystyka matematyczna to kluczowe wymagania, mówi Gary Kazantsev, który kieruje grupą uczenia maszynowego w Bloomberg. „Umiejętności inżynieryjne, takie jak umiejętność pisania kodu potrzebnego do stworzenia systemu, stają się plusem”. narzędzi takich jak biblioteka uczenia maszynowego TensorFlow czy notesy Jupyter zadanie to jest znacznie uproszczone. Do uprawiania data science przydadzą się dobre umiejętności badawcze, czyli umiejętność formułowania hipotez, ich testowania, studiowania współczesnej literatury i ciągłego monitorowania nowości w Twoja okolica." Gunter Ollmann, dyrektor ds. bezpieczeństwa w firmie Vectra, twierdzi, że wiele firm traktuje obecnie analityków danych oddzielnie od projektantów, zespołów badawczo-rozwojowych i programistów. W miarę udoskonalania narzędzi głębokiego uczenia się i uczenia maszynowego oraz zwiększania skuteczności kursów szkoleniowych w przekazywaniu starszym inżynierom informacji o nowościach w nauce o danych, różnica między nauką o danych a inżynierią oprogramowania będzie stopniowo zanikać. W przyszłości połączenie umiejętności i biegłości w posługiwaniu się obydwoma instrumentami będzie koniecznością.”

Łańcuch bloków transakcyjnych

11 technologii, które powinien znać każdy szanujący się programista - 6
Korzyści płynące z tej metody tworzenia rozproszonego narzędzia rachunkowości finansowej dla transakcji obejmują zarówno przejrzystość, jak i bezpieczeństwo, chociaż brak standaryzacji spowolnił jej przyjęcie w wielu branżach. Peter Loop, zastępca wiceprezesa i główny architekt technologii w firmie Infosys, optymistycznie podchodzi do tej technologii: „Pomimo błędnego przekonania, że ​​dzieli nas wiele lat od technologii blockchain, już wkroczyliśmy w kolejny: „W tym roku będziemy świadkami pełnych wdrożeń w usługach finansowych , ubezpieczenia i opiekę zdrowotną. Całkowicie zakłóci to nasz system płatności na arenie międzynarodowej.” W przypadku innych nowych technologii nauka jest bardziej stroma, mówi Robert Bardunias, współzałożyciel i dyrektor podatkowy IRIS.TV, który podziwia przedsiębiorczy charakter tej technologii. „Technologie te rozwijają się od pierwszego dnia, koncentrując się na operacyjnych aplikacjach biznesowych, więc programiści nie muszą wyobrażać sobie przypadków użycia — pojawiają się i ewoluują w czasie rzeczywistym” – komentuje Bardounias. „Nadążanie za nowymi rozwiązaniami i zmianami będzie wyzwaniem .wyzwanie dla każdego, kto chce zostać profesjonalistą w tej dziedzinie.Pamiętam, jak kiedyś rozwijałem drobne umiejętności zawodowe, takie jak czytanie stron internetowych - i magazynów branżowych.To ostatnia rzecz, którą chciałem zrobić, ale dziś jest to obowiązkowa część szkolenie programisty chcącego zdobyć i utrzymać przewagę konkurencyjną na rynku globalnym.”

Architektura aplikacji i usług siatkowych (MASA)

11 technologii, które powinien znać każdy szanujący się programista - 7
Istnieje również stale rosnące zapotrzebowanie na aplikacje, które mogą utrzymać nieprzerwane połączenie, przełączać się i pracować, gdy poruszamy się po domu. „Zaletą siatki jest wysoka dostępność: wszystkie elementy są ze sobą połączone” – mówi Joseph Carson z Thycotic. „Jeśli trasa nie jest dostępna, zostanie znalezione inne urządzenie w celu ustanowienia połączenia. Wykorzystuje się to na przykład , dla urządzeń śledzących Tile, a także dla kryptowalut, takich jak Bitcoin, jako rozproszonego środka rachunkowości finansowej.” Inni eksperci wskazują na potencjalne wąskie gardło w postaci braku wystarczającej kompatybilności urządzeń. „Wszyscy dostawcy na swój sposób starają się budować zaufanie konsumentów, zamykając swoje ekosystemy, jeśli w ogóle istnieją” – mówi Derek Collison, dyrektor generalny Apcera (dawniej Cloud Foundry). „Myślę, że sztuczna inteligencja będzie trenowana w chmurach, na ogromnych ilościach danych od wszystkich użytkowników” – mówi Collison. „Algorytmy te będą na bieżąco aktualizować swoje modele wykonawcze, które będą przesyłane bezprzewodowo do punktów końcowych i wykorzystywane do aktualizacji oprogramowania sprzętowego „na naszych telefony, samochody i urządzenia domowe. Przetwarzanie danych odbywać się będzie na sprzęcie urządzeń lokalnych, a szkolenia odbywać się będą z wykorzystaniem oprogramowania w chmurze.”

Cyfrowe bliźniaki

11 technologii, które powinien znać każdy szanujący się programista - 8
Połączone z czujnikami fizycznymi i wirtualnymi modele oprogramowania mogą służyć do przewidywania awarii produktów i usług, umożliwiając firmom planowanie i przydzielanie zasobów w celu przeprowadzenia napraw przed wystąpieniem awarii. Postępy w uczeniu maszynowym i wprowadzanie technologii sztucznej inteligencji obniżają koszty takiego modelowania predykcyjnego, zwanego „cyfrowymi bliźniakami”, co pozwala znacząco zwiększyć wydajność i obniżyć koszty eksploatacji przez cały okres życia, powiedzmy, silnika odrzutowego lub mocy zakład. Według Matiasa Woloskiego, CTO i współzałożyciela Auth0, firmy będą mogły wykorzystywać cyfrowe bliźniaki także na etapie koncepcyjnym i projektowym, przeprowadzając symulacje nowych produktów oprogramowania ze stopniowymi zmianami, aż do uzyskania zadowalającego rezultatu. Informacje uzyskane od cyfrowych bliźniaków zostaną uwzględnione przy tworzeniu produktu. "Kilka organizacji korzysta już z cyfrowych bliźniaków. Na tę technologię jest zapotrzebowanie głównie w tych projektach, w których koszty początkowe są zbyt wysokie, a co za tym idzie, cena niepowodzenia" – mówi Voloshsky. Dyrektor ds. technologii SpaceTime Insight Paul Hofmann twierdzi, że cyfrowe bliźniaki korzystają z uczenia maszynowego, dzięki czemu są skuteczniejsze w przewidywaniu awarii niż modele konserwacji oparte na stanie. „Dzięki systemom IoT i uczenia maszynowego firmy mogą mieć pewność, że ich zasoby nie ulegną losowej awarii, a jeśli tak się stanie, będą mogły podjąć najlepszą decyzję w czasie rzeczywistym i w dłuższej perspektywie”.

Samochody bez kierowcy, roboty i sprzęt AGD

11 technologii, które powinien znać każdy szanujący się programista - 9
Urządzenia gospodarstwa domowego, urządzenia przemysłowe, samochody i drony stają się coraz inteligentniejsze dzięki sztucznej inteligencji i uczeniu maszynowemu. Firma badawcza Gartner szacuje, że do 2020 r. z linii produkcyjnych producentów samochodów zjedzie 61 milionów pojazdów podłączonych do sieci rocznie. „Rozwijają się tu całe gospodarki” – mówi Vince Jeffs, dyrektor ds. strategii produktów i marketingu w Pegasystems. — Są na przykład startupy i już powstałe firmy zajmujące się sztuczną inteligencją, które dość mocno ugruntowały się w obszarze pojazdów autonomicznych. Na przykład MobileEye to firma posiadająca kapitał wysokiego ryzyka o wartości 500 milionów dolarów, która specjalizuje się w małych kamerach umieszczanych w całym samochodzie. Podobnie istnieją firmy sprzedające roboty fizyczne – na przykład SoftBank Robotics specjalizuje się w hotelowych robotach concierge. Mają kapitał wysokiego ryzyka o wartości 250 milionów dolarów.” Postępy w głębokim uczeniu się doprowadziły do ​​poprawy widzenia komputerowego, przetwarzania języka naturalnego i mowy, a także zdolności maszyn i oprogramowania do „dążenia do nagrody” i maksymalizacji produktywności, mówi Wayne Thompson, główny analityk danych SAS: „Rezultatem jest nowa generacja maszyn zdolnych widzieć świat, słyszeć i czytać języki naturalne, komunikować się z ludźmi i samoregulować się zarówno mechanicznie, jak i behawioralnie w sposób zupełnie bezprecedensowy”. automatyzacja jako koszmar, pozbawiający ludzi pracy, inni twierdzą, że te technologie prowadzą do jaśniejszej i bardziej humanitarnej przyszłości. „Często jestem pytany o konsekwencje automatyzacji” – mówi Michael Hubbard, dyrektor ds. komunikacji globalnej w ServiceNow. — Inteligentna automatyzacja nie jest zagrożeniem, ale ogromną szansą. Może uwolnić nas od rutynowych zajęć, otworzyć drzwi do kreatywności i pozwolić nam tworzyć silniejsze, bardziej produktywne relacje w pracy”.

Rzeczywistość wirtualna i rozszerzona

11 technologii, które powinien znać każdy szanujący się programista - 10
Po dziesięcioleciach natrętnej reklamy rzeczywistość wirtualna i rozszerzona wreszcie osiąga punkt zwrotny. A dla tych, którzy chcą tworzyć produkty oparte na tych technologiach, otwierają się nowe horyzonty: poszerzanie wrażeń podczas gier. „Te technologie nie są jeszcze zbyt powszechne, ale w ostatnich latach stały się znacznie bardziej dojrzałe” – mówi Anup Nair, wiceprezes i dyrektor techniczny Mphasis Digital. „Wierzę, że w branży biomedycznej i zdrowotnej AR / VR przyniesie ogromne korzyści, zarówno w celach szkoleniowych, jak i w zakresie udostępniania informacji o skomplikowanych zabiegach chirurgicznych.Widzimy plany działań AR mających na celu przeprowadzenie dogłębnej analizy w centrach kontroli mediów społecznościowych dużych banków, a także na giełdach, gdzie będą udostępniać Maklerzy giełdowi mają nieograniczoną przestrzeń do analizowania danych i współpracy”. Christian Sasso, profesor nadzwyczajny w programie studiów podyplomowych VR/AR w Cogswell College w San Jose, postrzega rzeczywistość rozszerzoną jako największy trend technologiczny roku. „AR będzie rzeczywistości już wkrótce, aby móc obsługiwać klientów, gdy będą musieli naprawić wyprodukowane przez firmę urządzenie” – mówi Sesso. „Przykładowo w projekcie, nad którym pracuję, okulary rozszerzonej rzeczywistości służą do komunikacji z konsultantem obsługi klienta w przypadku awarii telewizora lub monitora. Rozmawiając bezpośrednio z klientem za pośrednictwem interfejsu rozszerzonej rzeczywistości, przedstawiciel firmy może uzyskać wszystkie niezbędne informacje, wizualnie oględzinami stłuczonego ekranu, bez konieczności telefonicznego opisywania problemu czy szukania numeru seryjnego.” „Technologie AR i VR nie będą powszechne, dopóki nie będzie dla nich dostępny sprzęt o wysokiej jakości i przystępnej cenie” – mówi Vishwa Ranjan, dyrektor ds. rzeczywistości rozszerzonej i wirtualnej w Infosys. „Już w 2017 roku producenci smartfonów zaczną rozwijać możliwości rzeczywistości rozszerzonej i wirtualnej, takie jak jako technologie oparte na rozpoznawaniu twarzy, detekcji lokalizacji, wykorzystaniu czujników i kamer 360 stopni, które odegrają znaczącą rolę w promowaniu sprzedaży urządzeń AR i VR wśród wczesnych nabywców.”

Humanoidalni pomocnicy

11 technologii, które powinien znać każdy szanujący się programista - 11
To kolejny etap sztucznej inteligencji! Pozbędziemy się nieporadnych narzędzi, których obecnie używamy do interakcji ze światem cyfrowym. Zdaniem ekspertów narzędzia wspomagające już niedługo będziemy wykorzystywać nie tylko do zamawiania towarów i usług online czy przeszukiwania Internetu. Staną się przedłużeniem naszego mózgu. Nie będziemy już musieli zapamiętywać tak dużej ilości informacji: za pomocą narzędzi technologicznych uwolnimy zasoby do analitycznego i krytycznego myślenia.” Na co powinniśmy zwrócić uwagę, jeśli jesteśmy zainteresowani rozwojem tego typu technologii wspomagających? „The największe zapotrzebowanie jest obecnie na głęboką wiedzę” – mówi Günther Ohlmann, dyrektor ds. bezpieczeństwa w firmie Vectra. „Na przykład wiedza ekspercka z zakresu bezpieczeństwa informacji (bezpieczeństwo aplikacji internetowych, kryminalistyka sieci, demontaż złośliwego oprogramowania).” David Parmenter, analityk danych i dyrektor ds. technologii w Adobe Document Cloud, twierdzi, że kluczem do tego, nawet większym niż dyplom z informatyki, jest pasja do matematyki i logiki. „Kreatywność, chęć ciągłego uczenia się, myślenie zorientowane na klienta, odporność na niepowodzenia – rezultaty uczenia maszynowego nie są bynajmniej produktem gotowym – a umiejętności komunikacyjne to najważniejsze umiejętności miękkie dla inżynierów pracujących w tej dziedzinie. ”

A zwycięzca... to połączenie tego wszystkiego!

11 technologii, które powinien znać każdy szanujący się programista - 12
Chociaż sztuczna inteligencja jest prawdopodobnie najczęściej cytowaną przełomową technologią roku, najważniejszym trendem jest konwergencja szybko rozwijających się nowych technologii. Firma Canonical Maarten Ectors wymienia kilkanaście różnych technologii, których połączenie daje więcej niż sumę ich części: „chmura, urządzenia mobilne, IoT, sztuczna inteligencja, blockchain, rzeczywistość rozszerzona, interfejsy głosowe, komunikacja radiowa sterowana programowo, „czwarta rewolucja przemysłowa” [automatyzacja i transmisja danych w przemyśle], robotyka, przetwarzanie brzegowe i samochody bez kierowcy. Patrick Spadding z Rocket Software twierdzi, że oddzielne technologie łączą się ze sobą głównie dlatego, że firmy muszą korzystać z własnych danych, na przykład podczas analizy ruchu w witrynie. „Jeśli dodać do tego rozwój nowych źródeł danych, takich jak Internet przedmiotów”, mówi, „nie jest łatwo nadążać za ilością dostępnych informacji potrzebnych do podejmowania decyzji biznesowych”. Spadding uważa, że ​​perspektywy łączenia technologii kognitywnych, botów i języków maszynowych wzrosną, gdy staną się one bardziej zrozumiałe. Nowa generacja cyfrowych tubylców przyspieszy przyjęcie tych połączonych technologii, mówi, ponieważ oczekują łatwości obsługi, interfejsów przypominających gry oraz wszechobecności rzeczywistości rozszerzonej i wirtualnej.
Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION