Z tego wpisu dowiesz się:
- na nauce jakich języków programowania warto się skupić?
- programiści których technologii nie mają problemów ze znalezieniem pracy?
- jakich kompetencji szukają pracodawcy u kandydatów IT?
Jakich języków programowania się uczyć? – to pytanie powraca jak bumerang na forach internetowych dla developerów czy grupach poświęconych pracy w IT. Kto je śledzi, ten wie, ile emocji potrafią wzbudzić dyskusje na temat wyższości jednego języka nad innym. Pomocą w rozwiązaniu tych dylematów mogą być regularnie publikowane rankingi popularności technologii programistycznych. Najbardziej znane raporty, przygotowywane przez światowe portale, nie odnoszą się co prawda bezpośrednio do polskich warunków, ale stanowią bezcenne źródło wiedzy na temat globalnych trendów, które zwykle prędzej czy później znajdują swoje odzwierciedlenie na rodzimym rynku.
Zebraliśmy informacje z trzech źródeł: TIOBE Index for October 2017*, GitHub Octoverse 2017** oraz StackOverflow Developer Survey 2017*** i na ich podstawie stworzyliśmy własne zestawienie 15 najpopularniejszych języków programowania, biorąc pod uwagę tylko te technologie, które występują przynajmniej w dwóch w/w raportach. Oto jego wyniki:
15. Objective-C
Język ten jest kombinacją języków programowania C i Smalltalk. Jego popularność wzrosła wraz z powstaniem w 1988 roku systemów NeXT Steve’a Jobsa. Obecnie język Objective-C jest najczęściej spotykany w komputerach Apple z systemem Mac OS X.
14. Perl
Jest to popularny język skryptowy, używany również do programowania graficznego, administracji systemów, a także do tworzenia aplikacji finansowych. Choć jego użyteczność jest obecnie kwestionowana przez programistów, wciąż pojawiają się jego nowe wersje, a posługujący się nim programiści mają szansę na znalezienie dobrej pracy.
13. Swift
Ten stworzony w 2014 roku przez Apple język zaprojektowany został jako następca dla Objective – C z myślą o tworzeniu aplikacji na iOS i OS X. Swift oferuje wiele nowoczesnych, wysokopoziomowych struktur i cech takich jaki typy generyczne czy protokoły. Wielu programistów dostrzega duże podobieństwo niektórych jego części do C++.
12. SQL
Ten opracowany w latach 60. w firmie IBM strukturalny język zapytań, pojawia się nawet w co ósmym ogłoszeniu o pracę IT, jako jedno z wymagań dla kandydatów na stanowiska techniczne. To język do zadań specjalnych używany obecnie do zarządzania informacjami w takich bazach danych jak Oracle, noSQL czy Microsoft SQL. Jego popularność wynika z uniwersalizmu (można z niego korzystać niezależnie od sprzętu czy systemu operacyjnego) oraz tego, że jest stosunkowo prosty do nauczenia.
11. Język asemblera
Jest to język niskiego poziomu, z którego korzystają osoby zajmujące się programowaniem procesorów. Obecnie nie pisze się w nim całych programów, a jedynie stosuje się w przypadku programowania mikrokontrolerów, sterowników sprzętu, a także systemów wbudowanych. Choć znajomość asm nie przyda się przy tworzeniu aplikacji mobilnych, programów komputerowych czy stron internetowych, jak widać na świecie wciąż cieszy się popularnością.
10. Visual Basic .NET
To język programowania działający na platformie .NET zaprojektowanej przez Microsoft. Początkowo oczekiwano, że w prosty sposób da się do niego przenieść aplikacje stworzone w Visual Basic. Mimo że w większości przypadków okazało się to niemożliwe, VB.NET zyskał wielu zwolenników. Dziś korzystają z niego osoby, które potrzebują wygodnego narzędzia, pozwalającego szybko stworzyć aplikację do prezentacji i analizy konkretnych danych. Wśród największych atutów VB.NET są jasna, mało skomplikowana składnia, doskonała biblioteka gotowych kontrolek i bezkolizyjna współpraca z bazą danych.
9. TypeScript
Język ten, stworzony w 2012 roku przez Microsoft jako nadzbiór języka JavaScript, udostępniony jest wraz z zestawem narzędzi na zasadach open source. Z każdym rokiem zyskuje coraz większe uznanie tysięcy programistów. Umożliwia tworzenie solidnych aplikacji przy wykorzystaniu technik obiektowych: aplikacji www, serwerowych, dla urządzeń mobilnych a także oprogramowania do sterowania urządzeniami w internecie rzeczy (IoT).
8. Ruby
To w pełni obiektowy i dynamicznie typowany język programowania. Inspiracją do jego tworzenia były zarówno takie języki jak Perl czy Python, jak i CLU, Eiffel czy Smalltalk. Za jego popularność w głównej mierze odpowiedzialny jest framework Ruby on Rails znany z przełomowych innowacji w tworzeniu aplikacji webowych.
7. C
Technologia ta przez wiele osób uznawana jest za podstawę współczesnej informatyki. Nie sposób policzyć, ile języków programowania wywodzi się wprost lub pośrednio z niej. I choć wśród programistów toczą się dyskusje, czy język C jest nadal potrzebny, mnóstwo firm na świecie widzi w nim potencjał a biegle posługujący się nim programiści wciąż mogą liczyć na znalezienie bardzo dobrze płatnej pracy.
6. PHP
Język ten wykorzystywany jest przez ponad 80% stron internetowych. Jego wszechobecność, dystrybucja wśród dostawców usług hostingowych oraz bezproblemowa integracja z MySQL RDBMS sprawiają, że programiści PHP są pożądani przez pracodawców na całym świecie.
5. C#
C Sharp to obiektowy język, który umożliwia programistom tworzenie bezpiecznych i solidnych aplikacji działających na platformie .NET. Swoją popularność zawdzięcza programistom wykorzystującym narzędzia Microsoft, w której to firmie został zresztą stworzony. C# znany jest ze swojej prostoty i szerokiego zastosowania. Dzięki podobieństwu do Javy, każdy Javowiec może stosunkowo łatwo go opanować.
4. C++
Język ten znajduje się w czołówce wszystkich rankingów od ponad dekady. Stał się inspiracją dla wielu innych języków programowania, np. Javy. Mimo że ma już swoje lata, jego popularność nie słabnie, wciąż jest rozwijany i znajduje różnorodne zastosowania, jak choćby w tworzeniu gier komputerowych. W C++ w dużej mierze napisany jest m.in. Windows oraz środowiska graficzne, takie jak KDE dla systemu Linux.
3. Python
Pierwszą trójkę otwiera Python. To język ogólnego przeznaczenia, którego celem jest zwiększenie produktywności programisty i czytelności kodu. Skąd taka popularność? Mówiąc najprościej, w Pythonie developera dzieli najkrótsza droga od pomysłu do realizacji. To technologia z mnóstwem bibliotek i frameworków, idealna dla tych, którzy chcą nauczyć się programować. Jej elastyczność umożliwia budowanie aplikacji dla różnych systemów operacyjnych, w tym systemu Android.
2. JavaScript
Wysoką pozycję w zestawieniu zajmuje również JavaScript. Warto dodać, że zarówno w rankingu StackOverflow jak i GitHub, język ten znalazł się na pierwszym miejscu. JavaScript początkowo zaprojektowana do stron internetowych, jest podstawą środowisk serwerowych, takich jak Node.js, dziesiątek frameworków dla aplikacji mobilnych a nawet oprogramowania komputerowego. Ogromne zapotrzebowanie na programistów JavaScript sprawia, że są oni jednymi z najbardziej poszukiwanych na rynku specjalistów.
1. Java
Niekwestionowanym liderem pod względem powszechności użycia jest Java, która zajmuje wysoką pozycję we wszystkich trzech rankingach. Na świecie korzysta z niej około 9 mln programistów! Z czego wynika ta popularność? Przede wszystkim to język obiektowy, dzięki czemu tworzenie aplikacji i ich późniejsza rozbudowa jest dość proste. Wśród zalet wymienia się również tworzenie kodu niezależnie od platformy, niski próg wejścia i rozbudowaną kolekcję bibliotek. Nie trzeba dodawać, że rynek pracy IT roi się od ofert pracy dla programistów Java, którzy należą również do najlepiej opłacanych.
Wybór języka programowania to jedno z najtrudniejszych wyzwań, z jakimi musi się zmierzyć każdy początkujący programista. Analiza rankingów popularności w wielu przypadkach może być istotnym wsparciem pozwalającym podjąć tę niełatwą decyzję. I choć obraz powszechności użycia technologii programistycznych może się różnić w zależności od użytej metody badania, nasze zestawienie pokazuje, że istnieją pewni faworyci, których pozycje są bardzo silne we wszystkich rankingach. zanim jednak postawimy na któryś z nich, warto pamiętać, że „najpopularniejszy” nie zawsze znaczy „najlepszy”.
* Index publikowany jest co miesiąc a jego podstawą są zapytania zawierające nazwę języka programowania, jakie użytkownicy internetu kierują do wiodących na rynku wyszukiwarek, takich jak Google, Bing, Baidu i Wikipedia.
** GitHub raz na rok publikuje ranking popularności narzędzi wykorzystywanych do pracy przez swoich użytkowników. Popularność języków programowania badana jest na podstawie „pull requests” użytkowników.
*** Raport przygotowywany jest na podstawie ankieta przeprowadzanej każdego roku przez serwis Stackoverflow wśród swoich użytkowników. W 2017 roku wzięło w niej udział 64 tysiące developerów.