CodeGym /Blog Java /Random-PL /Czy kodowanie jest dziś łatwiejsze niż 10-15 lat temu? Na...
John Squirrels
Poziom 41
San Francisco

Czy kodowanie jest dziś łatwiejsze niż 10-15 lat temu? Narzędzia i techniki, które to umożliwiły

Opublikowano w grupie Random-PL
Ponieważ branża technologiczna pędzi do przodu i potrzebuje coraz większej liczby wykwalifikowanych programistów, zawód ten staje się również bardziej dostępny dla każdego, kto chce uczyć się programowania i czerpać korzyści z dużego zapotrzebowania na talenty i hojne zarobki. Weterani tworzenia oprogramowania z wieloletnim doświadczeniem w programowaniu często opowiadają historie o tym, jak inny był ten zawód w niedalekiej przeszłości, kiedy informacje o językach programowania i procesach tworzenia oprogramowania były ograniczone i dostępne tylko w drukowanych podręcznikach, czasem wątpliwej jakości. Nawet seniorzy, którzy zaczynali programować zaledwie 10-15 lat temu, są zgodni, że dziś o wiele łatwiej jest być programistą i dotyczy to zarówno łatwości nabywania umiejętności kodowania, jak i późniejszego wykonywania faktycznej pracy. Czy kodowanie jest dziś łatwiejsze niż 10-15 lat temu?  Narzędzia i techniki, które to umożliwiły — 1Ale co dokładnie sprawia, że ​​bycie (i zostanie) programistą dzisiaj, w 2021 roku, jest o wiele łatwiejsze niż było, powiedzmy, dwadzieścia lat temu, w 2001 roku? Pomyśleliśmy, że może to być interesujący temat do bardziej szczegółowego przyjrzenia się i tym właśnie się teraz zajmiemy.

Narzędzia, dzięki którym praca programisty jest łatwiejsza niż kiedykolwiek wcześniej

Oczywiście wraz z rozwojem branży programistycznej wszystkie narzędzia, podejścia i technologie ewoluują wraz z nią, stając się potężniejsze i łatwiejsze w użyciu, a informacje stają się coraz bardziej dostępne i obszerne. Ale niektóre instrumenty, które zostały wprowadzone nie tak dawno temu i są obecnie powszechnie używane przez większość programistów, naprawdę robią różnicę. Oto te, naszym zdaniem, najbardziej godne uwagi.

1. Git i GitHub.

Git to darmowy i rozproszony system kontroli wersji typu open source, zaprojektowany do obsługi wszystkiego, od małych do bardzo dużych projektów, szybko i wydajnie. Git, pierwotnie wydany w 2005 roku, szybko stał się standardem branżowym, umożliwiając programistom znacznie lepszą kontrolę nad zmianami w kodzie i wersjach projektów oprogramowania, a także znacznie usprawniając i organizując współpracę wielu programistów. GitHub to platforma hostująca repozytorium kodu Git do kontroli wersji i współpracy. Uruchomiony po raz pierwszy w 2008 roku, GitHub stał się wkrótce wiodącą na świecie platformą do tworzenia oprogramowania. GitHub znacznie ułatwia programistom współpracę i udział w projektach open source, tworzenie odpowiedniej dokumentacji kodu, prezentowanie swojej pracy innym i tak dalej. „Wcześniej korzystałem z Apache Subversion (SVN), który jest scentralizowany, tzn. wszystkie zmiany są przechowywane na jednym serwerze. Oznacza to, że po zatwierdzeniu zmiany są przesyłane bezpośrednio. Pamiętam, że czasami było to dość stresujące, a momenty „Nie jestem pewien, czy to działa, ale lepiej zapisz ten kod” były naprawdę trudne do zniesienia. Podczas gdy w przypadku Git możesz po prostu zatwierdzić i martwić się o późniejszy push (w razie wątpliwości zawsze możesz rozgałęzić)” Guillaume Elias, doświadczony programista C++,przypomina .

2. IntelliJ IDEA i inne IDE.

IntelliJ IDEA to zintegrowane środowisko programistyczne napisane w języku Java, które jest w stanie zrozumieć i zapewnić inteligentną pomoc w kodowaniu dla wielu innych języków, takich jak SQL, JPQL, PQL, HTML, JavaScript, Kotlin itp. Obsługuje również wiele innych języków, w tym Scala, Rust, PHP, Ruby i inne za pośrednictwem wtyczki. Mimo że pierwsze IDE — Microsoft Visual Basic (VB) — zostało wprowadzone na rynek w 1991 roku, oryginalne IDE nie zostały dobrze przyjęte przez programistów. Zmieniło się to w 2000 roku po wydaniu IntelliJ IDEA w 2001 roku, kiedy zaczął zyskiwać popularność na początku 2000 roku wraz z dodaniem zaawansowanych funkcji i integracji. W rezultacie do 2010 roku IDE, aw szczególności IntelliJ IDEA, stały się de facto standardem dla większości programistów. „Zaczynałem w latach 80. z powrotem, gdy linie poleceń i pliki make były standardem. IDE ze zintegrowanym debuggerem na poziomie źródła (moim pierwszym był Lightspeed C) było ogromną poprawą. Każda poprawa od tego czasu była stopniowa. Lepsze IDE z bardziej zintegrowanymi funkcjami poprawiły proces programowania, ale to tylko przyrost. IDE z debugowaniem źródeł było milowym krokiem naprzód, porównywalnym z rozwojem języków programowania wykraczających poza asembler” — William Hembree, emerytowany programista i wykładowca informatyki,powiedział .

3. Przepełnienie stosu.

Jeśli chodzi o uzyskiwanie informacji związanych z kodowaniem, wiele się zmieniło pod koniec 2000 roku i na początku 2010 roku wraz z rosnącą liczbą nowych forów dyskusyjnych i platform społecznościowych dla programistów. Stack Overflow to najpopularniejsza internetowa społeczność programistów, odwiedzana miesięcznie przez ponad 50 milionów programistów. Uruchomiony w 2008 roku Stack Overflow ułatwił programistom wymianę wiedzy i komunikację między sobą oraz uprościł procesy uczenia się dla początkujących programistów. „Pierwszą rzeczą, która przychodzi mi na myśl, jest przepełnienie stosu. Teraz powiesz, że to nie jest narzędzie, ale jest. To nieocenione źródło informacji, którego ludzie przed 2008 rokiem nie mieli. Mieliśmy podręczniki, książki i mentorów (starszych programistów) i tak mniej więcej ludzie uczyli się i dzielili materiałami przed SO”, Antonio Nesic, starszy inżynier oprogramowania z Chorwacji,wskazuje .

4. Zarządzane usługi w chmurze.

Rosnąca popularność zarządzanych usług w chmurze również odegrała ważną rolę w ułatwieniu pracy współczesnych programistów. Po tym, jak usługi w chmurze, takie jak Amazon Web Services i Microsoft Azure, uruchomione odpowiednio w 2006 i 2008 roku, stały się dostępne i zyskały masową popularność, programiści nie potrzebują już tak wielu osób do konfigurowania i utrzymywania serwerów i sieci, aby system działał. Usługi w chmurze sprawiły również, że tworzenie oprogramowania stało się o wiele bardziej wydajne, ponieważ dzisiejsze zespoły programistów mogą być mniejsze i bardziej produktywne na poziomie indywidualnym. „Kiedy zaczynałem dynamiczne programowanie WWW, istniała ASP i nie mówię o ASP.NET, open-source'owym frameworku internetowym dla .NET, ale o starej, dobrej, klasycznej ASP, która korzystała z bazy danych MS Access. Tak, dobrze mnie słyszałeś. Nie używał MySQL, MSSQL ani czegoś podobnego. Dołączyłbyś do niego bazę danych MS Access. A wtedy miałbyś serwer i klienta. I to było to. Tak proste jak to. W dzisiejszych czasach masz DigitalOcean, Linode, Google Cloud, AWS, Azure itp. A wszystkie one mają mnóstwo rzeczy w swoim arsenale, które pomagają skalować oprogramowanie i pracować z minimalnym przestojem” – dodaje Antonio Nesic.

5. Narzędzia do zarządzania projektami i komunikacji: Jira i Slack.

Na koniec zdecydowanie warto wspomnieć o Jira i Slack oraz innych podobnych narzędziach, dzięki którym zarządzanie projektami i komunikacja między programistami i innymi specjalistami jest znacznie lepiej zorganizowana i zaplanowana. Jira to zastrzeżone rozwiązanie do śledzenia problemów, po raz pierwszy wprowadzone na rynek w 2002 roku, które umożliwia użytkownikom planowanie, śledzenie i zarządzanie projektami zwinnymi i programistycznymi. Posiada również wiele innych funkcji, które pozwalają programistom wydajniej współpracować, dostosowywać przepływ pracy, śledzić błędy i zarządzać zaległościami. Slack to platforma komunikacji biznesowej, która ma wiele funkcji przesyłania wiadomości i współpracy, takich jak czaty zorganizowane według tematów, prywatne grupy do rozmów z kilkoma osobami, rozmowy wideo i tak dalej. Wydany po raz pierwszy w 2009 roku, szybko stał się najpopularniejszym narzędziem komunikacyjnym dla zespołów programistów. Bretta Wattersa, inny doświadczony programista, przypomniał sobie inne narzędzia, o których warto wspomnieć. „Skype, Teams, IM, SharePoint i inne podobne narzędzia umożliwiają teraz szybkie udostępnianie informacji, współpracę itp. bez fizycznych spotkań, dyskusji, długich wymian e-maili itd.”powiedział .

Dlaczego zostanie programistą jest dziś łatwiejsze niż kiedykolwiek wcześniej

Oczywiście, w miarę jak praca programisty staje się łatwiejsza dzięki nowym narzędziom i rozwojowi technologii, zdobywanie umiejętności wymaganych od profesjonalnego programisty staje się o wiele bardziej dostępne i przyjazne dla początkujących niż wcześniej. Co więc zmieniło się w edukacji programistycznej w ciągu ostatniej dekady lub dwóch? Wiele rzeczy. Informacje powiększyły się i stały się dostępne z wielu źródeł i na wiele sposobów, udoskonalono również technologie uczenia się.

  • Bezpłatne samouczki programowania.

Częściowo dzięki dostępności świetnych narzędzi i platform do współpracy oraz dzięki szybko rosnącej społeczności programistów, zarówno online, jak i offline, dziś początkujący, którzy chcą nauczyć się języka programowania, mogą znaleźć wiele bezpłatnych samouczków do nauki online. Jest to szczególnie prawdziwe, jeśli chodzi o masowo popularne języki programowania, takie jak Java. W Internecie dostępnych jest mnóstwo bezpłatnych samouczków Java. Oficjalne samouczki Java firmy Oracle są z pewnością warte polecenia. Inne świetne interaktywne samouczki Java online to LearnJavaOnline.org , JavaBeginnersTutorial.com oraz ten, który można znaleźć w Tutorials Point .

  • Zaawansowane kursy nauki online.

Istnienie zaawansowanych kursów do nauki programowania z planami nauki, elementami grywalizacji, funkcjami społecznościowymi i naciskiem na nauczanie uczniów odpowiednich umiejętności zamiast bezużytecznej teorii to kolejna rzecz, która zmienia dzisiejsze kształcenie w zakresie tworzenia oprogramowania. Nie będę nieskromny, ale CodeGym jest prawdopodobnie najlepszym przykładem zaawansowanego kursu online, który jest dobry dla początkujących i może zapewnić absolwentom, którzy są w pełni funkcjonalnymi programistami Java. CodeGym jest idealny do nauki, jak poprawić kodowanie w najbardziej efektywny sposób — poprzez praktykę, dużo. Począwszy od pierwszej lekcji CodeGym, będziesz powoli poznawać podstawy Javy, mając wiele różnorodnych zadań (łamigłówek), które pomogą Ci wesprzeć wiedzę teoretyczną praktycznymi umiejętnościami.

  • Programowanie platform przygotowawczych.

Internetowe platformy przygotowawcze, na których początkujący programiści mogą ćwiczyć i przygotowywać się do rozmów kwalifikacyjnych, to kolejna istotna nowość, której nie było aż do lat 2000-2010. Niektóre z najpopularniejszych platform przygotowawczych to LeetCode , Interview Cake i HackerEarth . Nawiasem mówiąc, CodeGym z ponad 1200 zadaniami można również sklasyfikować jako platformę przygotowawczą. Zgrywalizowana i przyjemna w użyciu platforma, można dodać.

  • Kanały YouTube, blogi i podcasty o programowaniu.

Nowe media z mnóstwem treści tworzonych przez użytkowników mogą być doskonałym źródłem wspomagającym naukę, pomagając początkującym uzyskiwać informacje bezpośrednio od ekspertów w swojej dziedzinie za pośrednictwem kanałów YouTube , blogów i podcastów. Na przykład dzisiaj można znaleźć wiele świetnych kanałów YouTube dla początkujących użytkowników języka Java , takich jak Derek Banas , Programming with Mosh , Oracle's Java channel , Adam Bien i vJUG .

  • Gry kodujące.

W końcu wydano kilka naprawdę świetnych gier do kodowania . Jak wiemy, a CodGym jest tego żywym dowodem , grywalizacja może być całkiem świetnym sposobem na wzmocnienie nauki i osiąganie lepszych postępów, a jednocześnie dobrą zabawę. W zastosowaniu do nauki programowania pomaga początkującym zrozumieć istotę trudnych koncepcji i technik programowania szybciej i przy mniejszym wysiłku. Czy zgadzasz się, że nauka programowania i praca jako programista jest dziś łatwiejsza niż kiedykolwiek wcześniej, czy może przegapiliśmy coś, co dowodzi przeciwnego punktu widzenia? Daj nam znać w sekcji komentarzy poniżej.
Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION