Jak rozwijać umiejętności techniczne w erze sztucznej inteligencji: kompleksowy przewodnik

Narzędzia AI i „kodowanie wibracji” niosą ze sobą ukryte kompromisy. Oto, jak mądrze z nich korzystać i dlaczego oprogramowanie open source to potężna tajna broń.

Programowanie oparte na sztucznej inteligencji na stałe zagościło w naszym życiu. Narzędzia takie jak Kursor V0 i Lovable znacząco obniżyły barierę wejścia – tworzenie pulpitów nawigacyjnych, procesów i całych aplikacji można teraz wykonać w ułamku czasu.

Korzystam z tych narzędzi codziennie i zdecydowanie mnie przyspieszyły. Ale wraz ze wzrostem złożoności kodu, kompromisy stają się oczywiste: niejasne błędy, zawiła logika i godziny zmarnowane na debugowanie kodu, którego tak naprawdę nie rozumiem.

Narzędzia AI są świetne – zwłaszcza dla początkujących – ale wiążą się z ukrytymi kosztami. Im więcej zadań powierzasz sztucznej inteligencji, tym mniej masz okazji do doskonalenia swoich instynktów, które wynikają ze zmagań ze złożonością.
Owszem, sztuczna inteligencja przyspieszy Twój przepływ pracy, ale pominiesz etapy kształcenia, podczas których zdobywasz wiedzę techniczną.

„Kodowanie wibracji” – szybkie kompilowanie kodu przy minimalnym planowaniu – świetnie sprawdza się w przypadku dem i eksperymentów. Jednak w przypadku głębszego rozwoju technicznego lub tworzenia systemów o znaczącej złożoności, „kodowanie wibracji” nie wystarczy. Popularny wpis na Reddicie doskonale to podsumowuje: „kodowanie wibracji”, jeśli nie zostanie sprawdzone, stwarza więcej problemów niż rozwiązuje. Ta praktyka może być początkowo pomocna, ale nadmierne poleganie na niej utrudnia zdobycie dogłębnej wiedzy specjalistycznej niezbędnej do tworzenia solidnych i zrównoważonych rozwiązań programistycznych.

W tym artykule pokażę Ci, jak mądrzej korzystać z narzędzi opartych na sztucznej inteligencji – i dlaczego mogą się one przyczynić do... Otwarte źródło To najbardziej niedoceniany sposób na prawdziwy rozwój umiejętności technicznych. Udział w projektach open source wzbogaca praktyczne doświadczenie i znacząco pogłębia wiedzę techniczną.

 

Moje doświadczenia z wykorzystaniem automatycznego kodowania z kursorem

Podobnie jak wielu programistów, przeniosłem się z VS Code (z GitHub Copilot) na Cursor i obecnie jestem subskrybentem planu Pro Cursor (20 USD/miesiąc).

Funkcją, na której najbardziej polegam, jest wbudowany w Cursor czat oparty na sztucznej inteligencji, który pozwala mi na bezpośrednią interakcję z baza Cały kod. Jego agent może szybko przeszukiwać wiele plików, a nawet obsługiwać obrazy – co jest ogromną pomocą podczas nawigacji po dużych, nieznanych repozytoriach. Automatycznie wykrywa i poprawia błędy gramatyczne podczas edycji plików.

Na początku Cursor znacznie zwiększył moją produktywność, zwłaszcza w przypadku prostych zadań. Wydawał się potężny, wręcz magiczny. Jednak wraz ze wzrostem złożoności zauważyłem pewne problemy. Cursor czasami generował skomplikowany kod, mylił podobnie nazwane pliki w różnych katalogach, a czasami miał problemy z podążaniem za złożonymi ciągami logicznymi.

Zautomatyzowane kodowanie może wygenerować tysiące linii kodu w ciągu kilku minut – ale bez solidnego modelu mentalnego tego, co tworzysz, ryzykujesz, że skończysz z rozdętymi, przeprojektowanymi systemami. To właśnie eksperci nazywają „antywzorcem” w inżynierii oprogramowania.

Kursor całkiem dobrze zawęża obszar wyszukiwania podczas debugowania. Jednak umożliwienie mu wprowadzania niesprawdzonych zmian prowadzi do większej liczby błędów niż rozwiązań. Doświadczeni programiści powinni zawsze uważnie analizować zmiany sugerowane przez sztuczną inteligencję.

 

Poza standardową radą „pisz lepsze podpowiedzi”, jedną ze strategii, którą uznałem za szczególnie pomocną, jest polecenie Kursorowi, aby nie wprowadzał bezpośrednich zmian. (Jest w tej kwestii zaskakująco posłuszny!)

Zamiast tego, wyraźnie proszę go, aby najpierw zasugerował zmiany w interfejsie czatu. Następnie analizuję każdą sugestię, identyfikuję logiczne modyfikacje i selektywnie je wdrażam – ręcznie lub za pośrednictwem Cursora. W przeciwieństwie do ChatGPT, największą zaletą Cursora jest pełna świadomość kontekstowa całej bazy kodu oraz możliwość parsowania długich plików (ponad 5000 wierszy kodu) poprzez przetwarzanie ich na łatwe do zarządzania fragmenty. Ta funkcja czyni go potężnym narzędziem do poprawy wydajności programistów i redukcji potencjalnych błędów w kodzie.

Wkład w oprogramowanie typu open source

Jak więc zdobyć większą moc techniczną? Istnieją dwa główne sposoby: projekty poboczne i wkład w oprogramowanie open source.

Projekty poboczne to świetny sposób na zgłębianie nowych technologii lub zagłębianie się w coś, co Cię pasjonuje lub interesuje. Zastanawiasz się, jak działają agenci AI lub interesuje Cię MCP? Zbudowanie prostego projektu w weekend nauczy Cię o wiele więcej niż godziny tutoriali i dokumentacji. Dzięki oprogramowaniu open source narzędzia i zasoby są dostępne bezpłatnie, co tworzy równe szanse dla wszystkich. Współtworzenie oprogramowania open source to okazja do rozwoju umiejętności technicznych i zdobycia praktycznego doświadczenia w środowisku współpracy.

Ale projekty solowe mają swoje wady. Łatwo stracić motywację – wiele moich projektów pobocznych nigdy nie ujrzało światła dziennego. Wkład w open source jest często bardziej zrównoważony dzięki wspierającej społeczności i wspólnym celom.

 

Dodatkowo możesz znaleźć się w komorze echa: Twój kod działa, ale nie masz pewności, czy jest zgodny z najlepszymi praktykami lub standardami branżowymi. Jeśli jesteś na początku kariery i brakuje Ci wskazówek, skąd możesz wiedzieć, czy w ogóle jesteś na dobrej drodze?

Właśnie tutaj open source wypełnia tę lukę. Projekty open source nie są tylko dla programistów-magików; są dla każdego. Twoje ulubione biblioteki, takie jak Pandas, Matplotlib, TensorFlow i Keras, w dużej mierze opierają się na zaangażowaniu społeczności. Udział w społecznościach open source to doskonały sposób na rozwijanie umiejętności programistycznych i zdobywanie praktycznego doświadczenia w korzystaniu z ważnych narzędzi i technologii.

 

Po co zawracać sobie głowę tworzeniem oprogramowania typu open source?

Dzięki oprogramowaniu open source możesz mieć realny wpływ, z którego korzystają tysiące programistów – a nie tylko eksperymentalne projekty, które pozostają niezauważone. Zdobędziesz biegłość w kontroli wersji (witaj, GitHubie!), rozwiniesz swoje umiejętności poruszania się po złożonych bazach kodu, poznasz najlepsze praktyki i zbudujesz sieć osób, które mogą Ci zaufać w razie potrzeby. Te umiejętności są niezbędne w tworzeniu oprogramowania i zwiększają Twoje perspektywy zawodowe.

Istnieją również korzyści zawodowe. Wzbogacisz swoje portfolio i markę osobistą, a także przyspieszysz dołączanie do nowych zespołów. Udział w projektach open source świadczy o Twoim doświadczeniu praktycznym i umiejętności współpracy – dwóch cechach bardzo poszukiwanych na rynku pracy.

Ale wspieraj właściwe sprawy. Jeżeli Twoją jedyną motywacją jest zdobycie pracy, nie inwestuj! Open source nie jest przepustką do pracy – wymaga autentycznego zainteresowania i zaangażowania. Świadczy o pasji do tworzenia, a dla wielu startupów, które zaczynają od projektów open source, to właśnie w ten sposób znajdują pierwszych pracowników. Firmy poszukują pełnych pasji programistów i aktywnych członków społeczności open source.

Wybierz projekt open source, który Cię interesuje.

Rozpoczęcie może wydawać się zniechęcające. Wiele popularnych repozytoriów ma ogromne bazy danych, potencjalnie nieaktualną dokumentację lub setki nieokreślonych problemów. Jak więc dokonać wyboru?

Najpierw wybierz projekt. Naprawdę Ci na nim zależy. Może się to wydawać oczywiste, ale jest to kluczowe — i niedoceniane.

Wybierz coś Już z tego korzystasz, Niezależnie od tego, czy jesteś w pracy, czy robisz projekt poboczny, rzucanie się na nieznany projekt z nieznaną technologią jest po prostu mylące i szybko tracisz motywację.

Osobiście jestem wielkim użytkownikiem i fanem PostHog – platformy analityki produktów zaprojektowanej specjalnie dla programistów – więc zacząłem się tam udzielać. Ich dokumentacja była obszerna i dobrze zorganizowana, co czyniło ją świetnym miejscem na start. (I nie, nie zapłacili mi za to!)

 

Jak możemy pomóc?

tam Wiele Co możesz zrobić? Oto podejście, które okazało się pomocne.

  1. Znajdź potrzebną Ci funkcję lub ulepsz coś, z czego korzystasz.
    Skupienie się na funkcjach, które naprawdę Cię pasjonują, zapewnia przejrzystość i motywację. Najlepszy kod powstaje w wyniku rozwiązywania problemów, z którymi osobiście się borykasz.
  2. Skonfiguruj środowisko lokalne.
    Utwórz rozwidlenie projektu, sklonuj je lokalnie i uruchom. Dowiedz się, gdzie znajdują się logi i jak testować zmiany. Poznaj podstawową strukturę projektu i styl kodowania.
  3. Zacznij od małych rzeczy i ucz się poprzez działanie.
    Wiele repozytoriów oznacza zgłoszenia jako przyjazne dla początkujących (np. „dobry-pierwszy-zgłoszenie”). Wybierz te zgłoszenia, aby rozpocząć. Zrozum problem i iteruj; możesz śmiało skomentować, jeśli utkniesz. Otwierając żądanie ściągnięcia (PPR), upewnij się, że Twoje zmiany przejdą wszystkie walidacje i testy.

Nauka poruszania się po bazie kodu jest niezbędna. Nie musisz czytać każdego wiersza – to praktycznie niemożliwe. Gdy zrozumiesz składnię wysokiego poziomu, zacznij działać. Zacznij od małych kroków, aby przyzwyczaić się do procesu tworzenia, publikowania i przeglądania żądań ściągnięcia. Twórz jasne komunikaty i opisy zatwierdzania zmian. Sprawdź ostatnio scalone żądania ściągnięcia, aby znaleźć udane przykłady lub ciekawe dyskusje.

 

م

Wkład w oprogramowanie open source wymaga cierpliwości. Popularne repozytoria są ogromne, a nauka wymaga czasu. Stanie się wartościowym, konsekwentnym współtwórcą zajmuje co najmniej kilka miesięcy, więc nie zniechęcaj się początkowymi niepowodzeniami. Jeśli Twój pull request zostanie odrzucony lub utkniesz na złożonym błędzie, to całkowicie normalne; to część procesu uczenia się.

Jeśli jesteś nowy w świecie open source i chcesz porozmawiać, śmiało się ze mną skontaktuj. Chociaż nie zagłębiałem się tu w szczegóły techniczne (szybkie wyszukiwanie w Google lub ChatGPT może Ci w tym pomóc), mam nadzieję, że to da Ci ogólny obraz na początek. Open source było dla mnie satysfakcjonujące i mam nadzieję, że Tobie również będzie.

 

Możliwość dodawania komentarzy nie jest dostępna.