Najgorsza technologia do nauki języków
Jeśli chcesz nauczyć się innego języka, jest wiele sposobów, aby to zrobić. Internet jest wspaniałym zasobem, który oferuje tony materiałów, ale wiele z nich jest nielegalnych i nie nadaje się do nauki języka. Ten artykuł pokaże Ci, jak wybrać najlepsze zasoby do wykorzystania, gdy chcesz nauczyć się nowego języka.
Chatboty
Chatbot to program, który może odpowiadać na rozmowę, ale jest wiele problemów z ich używaniem. Mają niespójne osobowości, wymagają ciągłej konserwacji i optymalizacji. Ponadto mogą być trudne do śledzenia, co może prowadzić do błędnej komunikacji. Wreszcie, podlegają regulacjom dotyczącym prywatności danych.
Najnowszym osiągnięciem w dziedzinie chatbotów jest eksperyment laboratorium badawczego Facebook AI, w którym chatboty mogły rozmawiać z prawdziwymi ludźmi. Co ciekawe, te chatboty rozwinęły swój własny język, odbiegający od zaprogramowanych ścieżek konwersacyjnych. Reagowały na siebie w dziwny sposób i tworzyły swój własny język bez jakiegokolwiek wkładu człowieka.
Przed szaleństwem Machine Learning, chatboty były ręcznie kodowanymi serwisami FAQ. Ograniczenia takich systemów polegały na tym, że były one bardzo ograniczone w swoim zrozumieniu i nie były zdolne do uczenia się z kontekstu rozmowy. Co gorsza, nie były w stanie nauczyć się, jak odpowiednio odpowiadać na różne pytania.
Kolejną wadą chatbotów jest to, że wymagają od ludzi dzielenia się z botem osobistymi informacjami. Utrudnia to ludziom angażowanie się w codzienną rozmowę bez poczucia wstydu i frustracji. Chatboty muszą być zaprojektowane starannie, aby pytać tylko o istotne informacje, a organizacje muszą je zaprojektować tak, aby uniknąć naruszenia danych. Muszą również być w stanie zrozumieć krótkie i długie zdania, wielokrotne zgłoszenia oraz różne sposoby mówienia ludzi. Chociaż NLP może pomóc w tych wyzwaniach, nadal jest to bardzo ograniczone narzędzie.
Podczas gdy chatboty mogą nie być najlepszą technologią do nauki języków, są doskonałym sposobem dla firm na poprawę doświadczenia klienta. Chatboty mogą odpowiadać na pytania klientów i wydawać zalecenia, a także mogą pomóc firmom śledzić i analizować dane generowane przez klientów. Poprzez automatyzację podróży klienta, firmy mogą poprawić współczynniki konwersji i zadowolenie klientów.
Erlang
Podczas gdy Erlang miał pod górkę w kwestii adopcji, nigdy tak naprawdę nie był barierą dla globalnego wpływu. Jego głównym ograniczeniem był zawsze brak miejsc pracy. Nie ma wystarczającej liczby programistów, aby zaspokoić popyt, a rozkład geograficzny miejsc pracy w Erlangu był niespójny. Do niedawna Erlang nie był w stanie przebić się na rynek webappów. Obecnie nie ma już takiej możliwości. Elixir i inne języki, takie jak Ruby, stają się bardziej popularne, a to świetna wiadomość dla programistów, którzy chcą realizować swoje wymarzone miejsca pracy.
Erlang to funkcjonalny język programowania ogólnego przeznaczenia, który ma wbudowane wsparcie dla odporności na błędy, dystrybucji i współbieżności. Erlang jest często używany w telekomunikacji i ma znaczenie dla wielu branż. Jednak jego rosnące znaczenie na rynku pracy IoT i rollout 5G może być powodem jego niedawnego spadku popularności. Niezależnie od przyczyn jego zmniejszonej popularności, Erlang nie jest najgorszą technologią do nauki języków.
Osoby zainteresowane nauką Erlanga powinny być świadome jego wad. Nie jest to język dla początkujących, a jego składnia jest obca programistom C. Nie słodzi również programowaniu funkcyjnemu, a jego zestaw narzędzi jest prymitywny. Na przykład, zmiana nazwy zmiennych nie jest tak łatwa jak w innych językach, a modyfikacja kodu podklas wymaga abstrakcyjnego myślenia.
Erlang ma unikalne podejście do fault-tolerance. Używa lekkich procesów, które mogą być szybko restartowane przez system nadzorujący. To pomaga budować systemy, które są samoleczące. Erlang został również zaprojektowany do obsługi wielu procesorów.
Objective-C
Objective-C to język programowania, który służy do tworzenia aplikacji na iPhone’a i iPada. Ten język jest rozszerzeniem C i ma na celu poprawę szybkości wykonywania nad czystymi językami OOP. Istnieją jednak pewne powody, dla których ten język nie jest najlepszym wyborem do nauki języka.
Po pierwsze, jest on prawie wyłącznie używany do rozwoju iOS i macOS. Oznacza to, że nie jest skalowalny dla innych systemów operacyjnych. Dodatkowo Objective-C ma bardzo ograniczone zasoby. Java, z drugiej strony, jest dostępna wszędzie. Ponadto ma spójne doświadczenie dla programistów.
Innym powodem, że Objective-C nie jest najlepszą technologią do nauki języka jest to, że nie rozwija się w stałym tempie. Chociaż nadal istnieje wiele możliwości pracy dla programistów z tą technologią, rynek jest nasycony programistami z tym zestawem umiejętności. Oznacza to, że nauka Objective-C może być ryzykownym zakładem dla nowego programisty. Zamiast tego lepiej jest uczyć się innych języków programowania.
Innym powodem, dla którego Objective-C nie jest dobry do nauki języka jest jego niskie zaangażowanie w społeczność programistów. W porównaniu z innymi językami, zajął 18 miejsce na 20 pod względem zaangażowania społeczności, za językami takimi jak Erlang i CoffeeScript. Ma również niskie zaangażowanie społeczności na innych platformach mediów społecznościowych, takich jak Stack Overflow. Podczas gdy ma więcej repozytoriów na GitHubie niż Erlang, ma mniej forków na platformie, co pokazuje, że deweloperzy nie są zbytnio zaangażowani w ten język.
Jako język programowania, Objective-C oferuje typowanie kaczek, pozwalając na przekazanie dowolnego typu obiektu do dowolnej metody. Działa to jednak tylko wtedy, gdy kod został napisany, aby go oczekiwać. Obsługuje również typ array, który może przechowywać dowolną mieszaną listę obiektów.
Dart
Dart to nowy język, który został przedstawiony społeczności programistów w 2011 roku i ma być alternatywą dla JavaScript. Pierwotnie opracowany przez Google, Dart jest interpretowanym językiem, który może być transkompilowany do JavaScript i używany w aplikacjach mobilnych. Chociaż Dart jest dość nowy, szybko zyskuje popularność wśród programistów. Google włączyło Dart jako podstawowy język do swojego systemu operacyjnego Fuchsia. Jego wczesny sukces wynika w dużej mierze z obsługi przez przeglądarki. Jednak wielu programistów nie wykorzystuje zalet Dart i zaleca deweloperom unikanie tego języka.
Pomimo tych wad, Dart jest nadal dobrym wyborem dla programistów. Został niedawno uznany za najlepszy język 2019 roku przez Jaxenter i zajął drugie miejsce w niedawnym badaniu Stack Overflow. Ponadto pojawił się jako jedna z najszybciej rozwijających się kategorii językowych według Octoverse. Ponadto deweloperzy pochwalili wsparcie Dart dla produktów Google i jego fajne funkcje.
Podstawowa architektura Dart jest oparta na obiektowych językach programowania. Takie podejście pozwala programistom pisać kod w postaci kodu, który ma więcej struktury niż w zwykłym języku. Jest to idealne rozwiązanie do zmniejszenia liczby komentarzy w projekcie i zwiększenia czytelności kodu. Dodatkowo Dart pozwala programistom na dostosowanie nazw zmiennych.
Rynek pracy dla programistów Dart jest dość stabilny. Co prawda w latach 2014-2015 nieznacznie spadł, ale obecnie wrócił do tego samego poziomu. Jego wyniki na rynku pracy przypominają wyniki Rust i Elixir. W przeciwieństwie do tych dwóch innych języków, Dart był stosunkowo stabilny. Pomimo tego, istnieje bardzo niewiele dużych firm używających Dart. Wśród nich można wymienić Google, Workiva, Adobe, Blossom. W związku z tym nie ma zbyt wielu ofert pracy dla programistów Dart.
Podobne tematy