Tygodnie pracy wykonane w 20 minut: twórca Redis mówi, że era ręcznego pisania kodu się skończyła

Autor tego artykułu, antirez, jest twórcą słynnej bazy danych in-memory Redis. Jego oprogramowanie obsługuje operacje dziesiątków milionów firm na całym świecie. antirez był kiedyś sceptykiem AI — napisał nawet powieść wyrażającą obawy przed automatyzacją zastępującą ludzi. Jego niedawne doświadczenia dowiodły jednak, że rzeczywistość programowania zmieniła się na zawsze. W testach antireza Claude Code wykazał epokową wydajność. Potrafi napisać 700 linii rygorystycznego, wysokowydajnego kodu C w 5 minut. Samodzielnie iteruje, by odtworzyć i naprawić niezwykle podstępne deadlocki i błędy timingowe w Redis. Nawet złożona przebudowa wnętrza Redis Streams zajęła zaledwie 20 minut. antirez uważa, że programiści powinni przestać koncentrować się na ręcznym pisaniu kodu linia po linii, ponieważ w większości przypadków nie jest to już racjonalny wybór. Zaleca każdemu, by nauczył się być świetnym współpracownikiem AI, kierując energię na definiowanie problemów i projektowanie rozwiązań. Zachęca każdego developera do rozpoczęcia nauki i głębokiego korzystania z Claude Code. Jak mówi antirez: nie przegap szansy na kształtowanie przyszłości, odmawiając stawienia czoła rzeczywistości. Poświęć kilka tygodni na testowanie tych nowych narzędzi i znajdź sposoby na zwielokrotnienie swojej produktywności. Najczystsza radość programowania to budowanie, a AI pozwoli ci budować więcej, lepiej i z większą przyjemnością.
Uwielbiam pisać oprogramowanie, linia po linii. Można powiedzieć, że cała moja kariera to dążenie do pisania czystego, eleganckiego, dobrego kodu. Szczerze mówiąc, nie chciałem, żeby AI wygrało ekonomicznie. Nie obchodzi mnie, czy obecny system gospodarczy zostanie zdestabilizowany przez AI — jeśli doprowadzi to do masowej redystrybucji bogactwa, byłbym nawet zadowolony. Ale świadome udawanie, że rzeczywistość nie istnieje, z powodu moich poglądów na oprogramowanie i społeczeństwo, byłoby zdradą własnego rozumu. Fakty to fakty. AI zmienia i trwale zmieni programowanie komputerowe.
W 2020 roku rzuciłem pracę, żeby napisać powieść. Była o AI, powszechnym dochodzie podstawowym i społeczeństwie adaptującym się do automatyzacji pracy wśród różnych wyzwań. Pod koniec 2024 roku uruchomiłem kanał poświęcony omawianiu AI, jej zastosowaniu w zadaniach programistycznych oraz możliwym skutkom, jakie może przynieść. Choć rozpoznałem te zmiany wcześnie, zawsze zakładałem, że mamy jeszcze kilka lat, zanim programowanie zostanie naprawdę przekształcone. Już tak nie sądzę. Dziś, dzięki najnowocześniejszym dużym modelom językowym, możesz podać jasny zestaw celów i zlecić modelowi ukończenie dużych podzadań — a nawet średnich projektów — prawie całkowicie samodzielnie, przy minimalnej pomocy człowieka. Jak dobrze to działa zależy od rodzaju programowania, które wykonujesz (im bardziej zadanie jest samodzielne i opisywalne tekstowo, tym lepiej — programowanie systemowe świetnie się do tego nadaje), oraz od twojej umiejętności jasnego przemyślenia problemu i dokładnego przekazania go modelowi. Ale ogólnie rzecz biorąc, teraz jest jasne: poza czysto hobbystycznym pisaniem kodu, ręczne pisanie kodu w większości projektów nie jest już najbardziej racjonalnym wyborem.
Przez ostatni tydzień głównie pisałem prompty,偶尔 przeglądałem kod i udzielałem wskazówek. W ciągu zaledwie kilku godzin zrealizowałem cztery poniższe rzeczy — prace, które wcześniej zajęłyby mi tygodnie.
Zmodyfikowałem moją bibliotekę linenoise, aby obsługiwała UTF-8. Zbudowałem też framework testowy do edycji linii z symulowanym terminalem, który raportuje zawartość każdej komórki znakowej. To coś, co zawsze chciałem zrobić. Trudno było jednak uzasadnić inwestowanie tyle wysiłku w mały podprojekt tylko do celów testowych. Teraz po prostu opisujesz, czego chcesz, i staje się to kodem. Sytuacja jest zupełnie inna.
Naprawiłem przerywające się awarie w testach Redis. Tego rodzaju praca jest niezwykle żmudna, obejmuje koordynację czasową, deadlocki TCP i podobne problemy. Claude Code iterował ciągle, poświęcając wystarczająco dużo czasu na odtworzenie problemu, inspekcję stanu każdego procesu, ustalenie, co się dzieje, a następnie naprawienie błędu.
Wczoraj chciałem czystej biblioteki C zdolnej do uruchamiania wnioskowania z modelami embeddingowymi w stylu BERT. Claude Code napisał ją w 5 minut. Wydajność wnioskowania biblioteki jest mniej więcej na poziomie PyTorch, wolniejsza o zaledwie 15%. Cała biblioteka to zaledwie 700 linii kodu C. Wygenerował nawet narzędzie Pythonowe do konwersji modelu GTE-small.
Przez ostatnie kilka tygodni modyfikowałem wnętrze Redis Streams. Napisałem dokument projektowy do tej pracy. Przekazałem dokument Claude Code, a ten w zasadzie wykonał całą moją pracę w ciągu około 20 minut. Części, które zajęły więcej czasu, to moje własne przeglądanie i potwierdzanie poleceń.
To, co się teraz dzieje, jest niemożliwe do zignorowania. W większości przypadków ludzie nie muszą już sami pisać kodu. Ciekawszą częścią stało się ustalanie, co zrobić i jak to zrobić. Na polu „jak to zrobić" duże modele są doskonałymi współpracownikami. To, czy firmy AI odzyskają swoje inwestycje, czy giełda się załamie, nie ma znaczenia w dłuższej perspektywie. To, co mówi CEO jednorożca, też nie ma znaczenia. Niezależnie od tego, programowanie zostało trwale zmienione.
Dla mnie fakt, że mój kod został użyty do trenowania dużych modeli, jest wspaniałą rzeczą. Widzę to jako kontynuację życiowego dążenia: demokratyzacji kodu, systemów i wiedzy. Duże modele językowe pomogą nam pisać lepsze oprogramowanie szybciej. Dadzą też małym zespołom możliwość konkurowania z dużymi korporacjami. Tak jak zrobiło to oprogramowanie open source w latach 90.
Jako programista chcę teraz pisać open source bardziej niż kiedykolwiek. Chcę wznowić prace nad repozytoriami, które odłożyłem z braku czasu i je udoskonalić. Chcę postawić wszystko na AI w moim własnym workflow Redis. Najpierw ulepszając implementację Vector Sets, a potem przechodząc do innych struktur danych, tak jak teraz robię ze Streams.
Ale martwię się o tych, którzy stracą pracę. Wciąż nie jest jasne, jakie dokładnie zmiany nastąpią. Firmy mogą chcieć więcej ludzi do więcej rzeczy. Albo może nastąpić coś odwrotnego: mniej, ale bardziej biegłych w AI programistów, aby obniżyć koszty wynagrodzeń. Martwię się też, że w wielu innych branżach ludzie mogą stać się prawie całkowicie zastępowalni.
Jeśli chodzi o to, jak programować. Mam dla ciebie jedną radę, przyjacielu. To, w co wierzysz jako „słuszne", nie może być kształtowane przez negowanie rzeczywistości. Nieużywanie AI nie przyniesie korzyści ani tobie, ani twojej karierze. Przemyśl to dokładnie. Wypróbuj te nowe narzędzia na poważnie. Poświęć kilka tygodni, nie pięć luźnych minut, by potwierdzić to, co już uważasz. Znajdź sposoby na zwielokrotnienie siebie. Jeśli nie znajdziesz właściwej drogi od razu, spróbuj ponownie za kilka miesięcy.
Możesz myśleć o tym, jak ciężko pracowałeś, by nauczyć się programować, a teraz maszyny piszą kod za ciebie. Ale ogień, który trzymał cię do późna w nocy, by zobaczyć, jak twój projekt ożywa — to była radość tworzenia. Jeśli znajdziesz właściwy sposób na skuteczne korzystanie z AI, będziesz tworzyć więcej i lepiej. Radość jest wciąż tu, w pełni nienaruszona.