GitHub Copilot: Kodowanie AI

GitHub Copilot: Kodowanie AI

Jeśli jesteś programistą, istnieje duża szansa, że ​​zmęczyłeś się pisaniem długich programów (albo tak się stanie!) I prawdopodobnie zastanawiałeś się: „A gdyby ktoś siedział ze mną i pomagał mi tworzyć te programy ?"

Teraz masz GitHub Copilot, narzędzie sztucznej inteligencji, które pomaga efektywniej pisać skrypty. GitHub Copilot może sugerować wiersze kodu, a nawet uzupełniać Twoje funkcje.

W tym artykule dowiesz się więcej o GitHub CoPilot i o tym, co może dla Ciebie zrobić. Zacznijmy!

Co to jest GitHub CoPilot i jak to działa?

GitHub jest spółką zależną Microsoft , która nawiązała współpracę z OpenAI (startup badający sztuczną inteligencję) w celu opracowania GitHub Copilot. Możesz zainstalować Copilot jako rozszerzenie lub używać go online z GitHub Codespaces. Będzie również bezproblemowo współpracować z kodem Visual Studio.

Meet GitHub Copilot - your AI pair programmer. https://t.co/eWPueAXTFt pic.twitter.com/NPua5K2vFS

— GitHub (@github) June 29, 2021

Sztuczna inteligencja uczy się z miliardów kodów źródłowych dostępnych na otwartych platformach i repozytoriach GitHub, aby sugerować linię kodu, a czasem całe funkcje. Programiści zaprojektowali Copilot, aby uczyć się z programów programistów, aby z czasem poprawić jego dokładność i precyzję.

Copilot zasugeruje najbardziej odpowiedni kod dla Twojego programu na podstawie poprzednich wierszy, nazw funkcji i innych czynników. Możesz zaakceptować zalecenia Copilot, zbadać, jakie dodatkowe sugestie proponuje, wprowadzić modyfikacje w pozyskiwanym kodzie lub całkowicie go zignorować; to zależy od Ciebie.

GitHub Copilot: Kodowanie AI

Żeby było jasne, Copilot nie jest prostym programem do autouzupełniania i nie tworzy za Ciebie całego programu. Jest to bardziej narzędzie kontekstowe, które działa jak towarzysz, obserwując postęp pracy i oferując sugestie podczas kodowania.

Co zrobi dla ciebie drugi pilot?

Nie, CoPilot nie jest maszyną z przyszłości, która ma wszystkie odpowiedzi. Przyjrzy się kodowi, który piszesz, przypomni, czego nauczył się z miliardów innych programów, a następnie zaleci, co powinieneś napisać dalej.

CoPilot, według GitHub, rozumie i dobrze współpracuje z różnymi frameworkami i językami. Deweloperzy wyszkolili uczące się narzędzie AI, aby zrozumieć kilka frameworków i języków, a także kod źródłowy z repozytoriów GitHub.

GitHub Copilot: Kodowanie AI

Wersja techniczna pokazuje, że będzie Ci dobrze pomagać w językach Python, JavaScript, TypeScript, Ruby i Go.

Twój inteligentny wirtualny partner programistyczny narysuje kontekst z napisanego przez Ciebie kodu i stworzy porównywalny kod, korzystając z funkcji, których użyłeś w swoim programie. Stara się zrozumieć Twoją intencję i zasugerować najlepszy kod. Jednak sugestie mogą nie zawsze być najlepiej dopasowane.

Powiązane: Jak stworzyć swoje pierwsze repozytorium na Github

Na podstawie Twojej akceptacji i odrzucenia sugestii program uczy się od Ciebie i milionów innych programistów, aby lepiej dopasować się do Twojego stylu kodowania. Łączy różne fragmenty kodu na podstawie twojego opisu tego, co chcesz osiągnąć w danym programie. Automatycznie wypełnia kod, gdy masz powtarzające się frazy w swoim programie, co uchroni Cię przed wielokrotnym wpisywaniem tego samego kodu. Nie tylko to, ale może również zalecić testy oparte na prawdopodobnych błędach, które może spowodować twój program.

Ogłoszenie Copilot wywołało szum wśród programistów. Wielu z nich chce sięgnąć po narzędzie AI i zobaczyć, co ma do zaoferowania.

Co deweloperzy mówią o drugim pilocie?

Deweloperzy na całym świecie twierdzą, że Copilot ułatwi im pracę, zaoszczędzi mnóstwo czasu i pomoże skupić się na pracy.

Deweloperzy dzielą się swoimi doświadczeniami z nowym narzędziem AI na różnych platformach społecznościowych. Według programisty działającego w branży ochrony prywatności i bezpieczeństwa sugestie Copilota są trafne, co pozwala mu zaoszczędzić dużo czasu na oczywistym i powtarzalnym kodzie.

I've been testing #GitHubCopilot in Alpha for the past two weeks. Some of the code suggestions it comes up with are eerily good.

Here's a thread with some examples that I found surprising. Will update with new examples over time. https://t.co/lD5xYEV76Z

— Feross (@feross) June 30, 2021

„Copilot to jedna z trzech najważniejszych innowacji technologicznych lat 2020” — podzielił się w serii tweetów starszym badaczem Microsoft, który śledził rozwój GitHub i OpenAI Copilot.

So stoked to finally discuss Copilot!

I've used it inside MSR for months, watched it evolve, and discussed collabs.

[Disclaimer: the tech is by the amazing @github/@openai, I'm an informed observer.]

Not exaggerating, Copilot will be in top-3 tech developments of 2020s 🧵👇 https://t.co/aoQMfpSgtT

— Alex Polozov (@Skiminok) June 29, 2021

Deweloperzy uważają, że autouzupełnianie AI jest korzystne i pozostanie. Wątpią jednak, ile z ich pracy zrobią narzędzia sztucznej inteligencji, takie jak Copilot. Wśród deweloperów pozostaje również obawa, że ​​może w końcu ich zastąpić.

Czy drugi pilot zastąpi Cię jako programista?

Dyrektor generalny GitHub, Nat Friedman, mówi, że Copilot to narzędzie zwiększające produktywność, które zapewnia funkcjonalność uzupełniania kodu i pomysły do ​​wdrożenia w kodzie. Uważa, że ​​dzięki narzędziom AI, takim jak Copilot, tworzenie oprogramowania wkracza w kolejną fazę zmiany produktywności. Friedman wspomina, że ​​kompilatory, debugery, odśmiecacze i języki w przeszłości zwiększały produktywność programistów. Następnie programiści dzielili się pracą nad ulepszaniem swojego kodu. Teraz możesz używać sztucznej inteligencji do kodowania, ale opis problemu jest zawsze do rozwiązania przez ludzi.

GitHub Copilot: Kodowanie AI

Źródło obrazu: https://news.ycombinator.com/item?id=27677110

Sztuczna inteligencja może sugerować kod pasujący do wzorca na podstawie tego, co już napisałeś w swoim programie. Jednak, aby używać go skutecznie i skutecznie, będziesz musiał zrozumieć każdy wiersz swojego programu.

Twoim zadaniem jako programisty jest nie tylko tworzenie kodu, ale także tworzenie kodu dostosowanego do wymagań i specyfikacji problemu, który próbujesz rozwiązać. Narzędzia sztucznej inteligencji, takie jak Copilot, pomogą Ci opracować kod szybciej niż samodzielnie.

Ale będziesz musiał powiedzieć narzędziu AI, czego oczekujesz od swojego programu. Jako programista zawsze odpowiadasz za swój program. Jest to narzędzie podobne do poczty e-mail, komunikatorów, konwersacyjnej sztucznej inteligencji i wszystkich innych technologii, które ułatwiają nam życie.

Chociaż sztuczna inteligencja to przyszłość kodowania, czas, w którym sztuczna inteligencja całkowicie dominuje i samodzielnie projektuje programy, jest jeszcze daleko.

CoPilot pomoże programistom

Jako programista zawsze dotrzymujesz terminów, a co jest lepsze niż towarzysz kodowania, który sugeruje wiersze kodu i automatycznie wypełnia powtarzalny kod, aby wykonać pracę zgodnie z harmonogramem.

Copilot wykazuje początkową obietnicę na wczesnym etapie, ale nawet GitHub jest ostrożny, jeśli chodzi o jego zastosowanie. GitHub mówi, że czasami sugestie CoPilota mogą nie mieć sensu lub być korzystne dla Twojego programu. Zawsze należy sprawdzać, testować i przeglądać sugestie dotyczące kodowania, które otrzymujesz od Copilot lub dowolnego innego narzędzia AI.

GitHub Copilot: Kodowanie AI

Źródło obrazu: https://copilot.github.com/

Ponieważ nic nie jest bezbłędne, zawsze istnieje możliwość popełnienia błędu przez drugiego pilota. Jednak uczące się narzędzie AI znacznie ułatwi programistom kodowanie. Jest bardzo wcześnie, aby komentować, jak w dłuższej perspektywie wpłynie to na społeczność deweloperów. Czy to może być nawet niebezpieczne?


Jak obliczyć wartość nCr

Jak obliczyć wartość nCr

Kombinacja to pojęcie matematyczne. Odnosi się do ułożenia kilku przedmiotów, gdzie ich kolejność nie ma znaczenia. Podstawowa formuła opisuje liczbę prawidłowych kombinacji.

Jak napisać i skompilować swój pierwszy kod Solidity?

Jak napisać i skompilować swój pierwszy kod Solidity?

Solidity to język programowania używany przez inteligentne kontrakty na blockchainie Ethereum. Jest to statyczny, zorientowany obiektowo język programowania.

SQL kontra NoSQL: jaka jest najlepsza baza danych dla twojego następnego projektu?

SQL kontra NoSQL: jaka jest najlepsza baza danych dla twojego następnego projektu?

SQL kontra NoSQL: jaka jest najlepsza baza danych dla twojego następnego projektu?

Jak znaleźć N-cyfrowe idealne sześciany i kwadraty za pomocą Pythona, C++ i JavaScript

Jak znaleźć N-cyfrowe idealne sześciany i kwadraty za pomocą Pythona, C++ i JavaScript

Wielu programistów uwielbia rozwiązywać trudne problemy matematyczne za pomocą kodu. Pomaga wyostrzyć umysł i poprawić umiejętności rozwiązywania problemów. W tym artykule dowiesz się, jak znaleźć najmniejsze i największe n-cyfrowe idealne kwadraty i sześciany za pomocą Pythona, C++ i JavaScript. Każdy przykład zawiera również przykładowe dane wyjściowe dla kilku różnych wartości.

Jak używać Pythona jako kalkulatora wiersza poleceń

Jak używać Pythona jako kalkulatora wiersza poleceń

Chociaż możesz używać kalkulatora graficznego na swoim komputerze, interpreter języka programowania Python może pełnić funkcję kalkulatora biurkowego. Jest to tak popularny żart na temat biegania w społeczności Pythona, że ​​wspomniano o nim w oficjalnym samouczku. Oto, jak używać Pythona jako kalkulatora.

Jak osadzić tweety w swoich postach WordPress

Jak osadzić tweety w swoich postach WordPress

Umieszczanie usług stron trzecich w swoich postach WordPress to ekscytujący sposób na przyciągnięcie zainteresowania odwiedzających. Osadzone treści zawierają również wskazówki wizualne, które ułatwiają skanowanie. WordPress ułatwił dodawanie tego typu treści.

Rozpocznij pracę z notatnikiem Jupyter: samouczek

Rozpocznij pracę z notatnikiem Jupyter: samouczek

Jeśli jesteś początkującym naukowcem zajmującym się danymi, który pracuje z Pythonem lub R, musisz wiedzieć, jak korzystać z Jupyter Notebook. Jest to środowisko IDE typu open source i serwerowe do manipulowania danymi, udostępniania kodu na żywo, a także zarządzania przepływem pracy w nauce o danych.

Kodowanie nie jest dla wszystkich: 9 stanowisk technicznych, które można uzyskać bez niego

Kodowanie nie jest dla wszystkich: 9 stanowisk technicznych, które można uzyskać bez niego

Tech to bez wątpienia branża przyszłości. Jeśli jesteś jednym z milionów młodych dorosłych, którzy mają rozpocząć pierwszy etap swojej kariery, być może zastanawiasz się, co zrobić, jeśli nie lubisz kodować.

7 ważnych poleceń, które pomogą rozpocząć pracę z Pythonem dla początkujących

7 ważnych poleceń, które pomogą rozpocząć pracę z Pythonem dla początkujących

Nauka nowego języka programowania, takiego jak Python, staje się bezproblemowa, jeśli masz kompleksową mapę drogową, szczegółowo opisującą koncepcje, których należy się nauczyć jako początkujący i jak robić dalsze postępy, aby osiągnąć kolejny kamień milowy. Nawet średniozaawansowani programiści powinni często odświeżyć swoje podstawy, aby zbudować dla siebie solidną podstawę.

Twoja pierwsza aplikacja internetowa ASP.NET: jak zacząć

Twoja pierwsza aplikacja internetowa ASP.NET: jak zacząć

ASP.NET to bezpłatna wieloplatformowa platforma firmy Microsoft do tworzenia aplikacji i usług internetowych. Platforma ASP.NET jest rozszerzeniem .NET, platformy programistycznej narzędzi, języków programowania i bibliotek używanych do tworzenia różnych aplikacji.

9 najlepszych alternatyw dla platformy Docker do zarządzania kontenerami

9 najlepszych alternatyw dla platformy Docker do zarządzania kontenerami

Kontenery są bardzo przydatne przy opracowywaniu, wdrażaniu i zarządzaniu oprogramowaniem w środowisku wirtualnym. Docker jest przydatny w procesie konteneryzacji, ale nie jest jedyną platformą. Jeśli szukasz alternatyw dla Dockera, nie szukaj dalej. Ta lista przedstawia niektóre bogate w funkcje i wydajne alternatywy platformy Docker, które można wykorzystać w następnym projekcie.

Czy ARCore lub ARKit są lepsze do tworzenia doświadczeń w rozszerzonej rzeczywistości?

Czy ARCore lub ARKit są lepsze do tworzenia doświadczeń w rozszerzonej rzeczywistości?

Niektóre z najczęściej omawianych aplikacji mobilnych i doświadczeń w dzisiejszych czasach wykorzystują technologię rozszerzonej rzeczywistości. Podczas gdy niektóre z tych doświadczeń mogą działać na praktycznie każdym urządzeniu mobilnym, inne działają tylko na nowszych i droższych modelach. Tworzenie i używanie tych bardziej zaawansowanych środowisk wymaga ARCore i ARKit.

Jak stworzyć nową gałąź w Git

Jak stworzyć nową gałąź w Git

Gałęzie są kluczowe dla koncepcji kontroli wersji w programowaniu, aw szczególności w Git. W tym artykule startowym dowiesz się, czym jest gałąź i jak ją utworzyć przy użyciu wielu różnych narzędzi.

Jak używać instrukcji if w Pythonie?

Jak używać instrukcji if w Pythonie?

Instrukcja if jest siłą napędową programowania logicznego. W rezultacie lepsze zrozumienie Pythona jest znaczącym dodatkiem do twoich umiejętności programowania w Pythonie.

5 najlepszych odznak, które wzmocnią Twoje repozytorium GitHub

5 najlepszych odznak, które wzmocnią Twoje repozytorium GitHub

Odznaki GitHub mogą zwiększyć czytelność repozytorium, zapewniając użytkownikom szybki sposób przechwytywania metryk repozytorium. Plakietki mogą być osadzone w pliku README.md, aby wyjaśnić innym programistom znaczenie i konieczność Twojego projektu. W rezultacie czytelnicy bardzo szybko dowiadują się o repozytorium, sprawdzając dołączone identyfikatory.

Pierwsze kroki z Redis i PHP do szybkiego przechowywania danych

Pierwsze kroki z Redis i PHP do szybkiego przechowywania danych

Popularny silnik pamięci masowej Redis jest doskonałym i niezbędnym narzędziem w każdym arsenale programistów. Silnik pamięci masowej w pamięci umożliwia niezwykle szybkie przechowywanie i pobieranie danych, do imponujących 32 milionów zapytań na sekundę, co czyni go doskonałym uzupełnieniem każdego głównego silnika bazy danych.

Co to jest WYSIWYG?

Co to jest WYSIWYG?

Część magii tworzenia oprogramowania pojawia się, gdy wiersze kodu łączą się w coś więcej niż sumę ich części. Przekonasz się, że gdy próbujesz budować w ten sposób abstrakcyjnie, potrzebujesz trochę kreatywnej wizualizacji. Może to dotyczyć przetwarzania tekstu lub projektowania stron internetowych, podobnie jak w przypadku programowania.

Jak zainstalować .NET Framework w wersji 3.5 w systemie Windows 10?

Jak zainstalować .NET Framework w wersji 3.5 w systemie Windows 10?

Jako użytkownik systemu Windows prawdopodobnie przynajmniej raz natknąłeś się na słowa .NET Framework. Jest to platforma oprogramowania opracowana przez firmę Microsoft, która umożliwia tworzenie i uruchamianie programów w językach C#, C++, F# i Visual Basic. Najnowsza wersja platformy .NET to 4,8, ale Twój komputer może wymagać starszej wersji platformy .NET (np. .NET 3.5) do uruchamiania niektórych aplikacji.

WordPress kontra Wix: kluczowe różnice

WordPress kontra Wix: kluczowe różnice

Budując stronę internetową dla siebie lub swojej firmy często stajesz przed klasycznym dylematem. WordPress vs. Wix — który wybrać i jaki byłby dla Ciebie najlepszy?

10 najlepszych dystrybucji Linuksa dla programistów

10 najlepszych dystrybucji Linuksa dla programistów

Chociaż Linux może nie być ulubionym systemem operacyjnym dla zwykłych użytkowników, jest to wybór dla większości programistów i programistów. Linux jest bardziej praktycznym systemem operacyjnym, który został specjalnie zaprojektowany z myślą o programowaniu i programistach.

Jak obliczyć wartość nCr

Jak obliczyć wartość nCr

Kombinacja to pojęcie matematyczne. Odnosi się do ułożenia kilku przedmiotów, gdzie ich kolejność nie ma znaczenia. Podstawowa formuła opisuje liczbę prawidłowych kombinacji.

Jak napisać i skompilować swój pierwszy kod Solidity?

Jak napisać i skompilować swój pierwszy kod Solidity?

Solidity to język programowania używany przez inteligentne kontrakty na blockchainie Ethereum. Jest to statyczny, zorientowany obiektowo język programowania.

SQL kontra NoSQL: jaka jest najlepsza baza danych dla twojego następnego projektu?

SQL kontra NoSQL: jaka jest najlepsza baza danych dla twojego następnego projektu?

SQL kontra NoSQL: jaka jest najlepsza baza danych dla twojego następnego projektu?

Jak znaleźć N-cyfrowe idealne sześciany i kwadraty za pomocą Pythona, C++ i JavaScript

Jak znaleźć N-cyfrowe idealne sześciany i kwadraty za pomocą Pythona, C++ i JavaScript

Wielu programistów uwielbia rozwiązywać trudne problemy matematyczne za pomocą kodu. Pomaga wyostrzyć umysł i poprawić umiejętności rozwiązywania problemów. W tym artykule dowiesz się, jak znaleźć najmniejsze i największe n-cyfrowe idealne kwadraty i sześciany za pomocą Pythona, C++ i JavaScript. Każdy przykład zawiera również przykładowe dane wyjściowe dla kilku różnych wartości.

Jak używać Pythona jako kalkulatora wiersza poleceń

Jak używać Pythona jako kalkulatora wiersza poleceń

Chociaż możesz używać kalkulatora graficznego na swoim komputerze, interpreter języka programowania Python może pełnić funkcję kalkulatora biurkowego. Jest to tak popularny żart na temat biegania w społeczności Pythona, że ​​wspomniano o nim w oficjalnym samouczku. Oto, jak używać Pythona jako kalkulatora.

Jak osadzić tweety w swoich postach WordPress

Jak osadzić tweety w swoich postach WordPress

Umieszczanie usług stron trzecich w swoich postach WordPress to ekscytujący sposób na przyciągnięcie zainteresowania odwiedzających. Osadzone treści zawierają również wskazówki wizualne, które ułatwiają skanowanie. WordPress ułatwił dodawanie tego typu treści.

Rozpocznij pracę z notatnikiem Jupyter: samouczek

Rozpocznij pracę z notatnikiem Jupyter: samouczek

Jeśli jesteś początkującym naukowcem zajmującym się danymi, który pracuje z Pythonem lub R, musisz wiedzieć, jak korzystać z Jupyter Notebook. Jest to środowisko IDE typu open source i serwerowe do manipulowania danymi, udostępniania kodu na żywo, a także zarządzania przepływem pracy w nauce o danych.

Kodowanie nie jest dla wszystkich: 9 stanowisk technicznych, które można uzyskać bez niego

Kodowanie nie jest dla wszystkich: 9 stanowisk technicznych, które można uzyskać bez niego

Tech to bez wątpienia branża przyszłości. Jeśli jesteś jednym z milionów młodych dorosłych, którzy mają rozpocząć pierwszy etap swojej kariery, być może zastanawiasz się, co zrobić, jeśli nie lubisz kodować.

7 ważnych poleceń, które pomogą rozpocząć pracę z Pythonem dla początkujących

7 ważnych poleceń, które pomogą rozpocząć pracę z Pythonem dla początkujących

Nauka nowego języka programowania, takiego jak Python, staje się bezproblemowa, jeśli masz kompleksową mapę drogową, szczegółowo opisującą koncepcje, których należy się nauczyć jako początkujący i jak robić dalsze postępy, aby osiągnąć kolejny kamień milowy. Nawet średniozaawansowani programiści powinni często odświeżyć swoje podstawy, aby zbudować dla siebie solidną podstawę.

Twoja pierwsza aplikacja internetowa ASP.NET: jak zacząć

Twoja pierwsza aplikacja internetowa ASP.NET: jak zacząć

ASP.NET to bezpłatna wieloplatformowa platforma firmy Microsoft do tworzenia aplikacji i usług internetowych. Platforma ASP.NET jest rozszerzeniem .NET, platformy programistycznej narzędzi, języków programowania i bibliotek używanych do tworzenia różnych aplikacji.