Jak działa wyjaśnianie kodu
Mapa tego, co da się wyjaśnić, jeden temat jedna rozmowa i dokumenty, które zostają w projekcie.
Wyjaśnianie to odpowiedź na pytanie, którego nikt nie umie dobrze zadać: „co to za projekt i jak to działa?” Zamiast dopytywać w czacie, a potem szukać odpowiedzi w trzystulinijkowej rozmowie, dostajesz rozpis tematów i z każdego jeden dokument, do którego można wrócić.
Mapa tego, co da się wyjaśnić
Pierwsza rzecz, którą w zakładce Projekt → Wyjaśnienia zobaczysz, to zaproszenie do zestawienia mapy. Mapa to lista tego, co w tym projekcie warte jest wyjaśnienia — warstwy, moduły, przepływ danych, konkretne pliki. Zestawia ją Agent, bo tylko on wie, co w projekcie jest.
Zestawianie idzie w tle, a wynikiem nie jest wiadomość w rozmowie, ale plik w projekcie. Nie musisz przy tym być — mapa pojawi się w aplikacji sama, gdy tylko Agent ją zapisze.
W mapie tematy są w grupach. Pierwsza grupa jest ogólna: architektura, projekt, przepływ danych. To pytania, które można zadać, nie znając ani jednego pliku — dlatego są pierwsze. Konkretne części są pod nimi.
Projekt się zmienia, mapa nie. „Zestaw mapę ponownie” to zatem przycisk, którego używaj, kiedy projekt się przesunął — po większym refaktorze stara mapa raczej myli, niż pomaga.
Jeden temat, jedna rozmowa
Stuknięciem wybierasz jeden temat albo kilka i dajesz Wyjaśnij. Odpowiedź nie idzie do głównej Rozmowy, ale do własnej, nazwanej od tematu.
To zamiar, nie szczegół. Kto robi pracę, nie chce mieć czatu zalanego wykładem o architekturze; kto uczy się projektu, chce wracać do tematu, a nie łowić go w czacie. W tej rozmowie można ponadto dopytywać dalej — a pytania zostają przy temacie, do którego należą.
W toku i gotowe
Nad mapą są dwie sekcje. Tematy w toku to te, o których rozmowa już trwa. Gotowe wyjaśnienia to pliki w projekcie, w docs/explanations/ — jeden temat, jeden plik.
Różnica między nimi polega na tym, co przetrwa. Rozmowa należy do Serwera i po przełączeniu projektu albo porządkach znika. Plik w projekcie zostaje, idzie do gita i przeczyta go nawet kolega, który coden nie ma.
To, co już wyjaśnione, nie jest w mapie proponowane po raz drugi. Gdyby było, nie poznałbyś, czy kontynuujesz, czy zaczynasz od zera.
Do czego to jest dobre
- Nowy projekt. Zestawiasz mapę, wyjaśniasz sobie grupę ogólną i masz po dwudziestu minutach przegląd, który inaczej składałbyś dwa dni.
- Obcy kod. Właśnie ten plik, do którego szykujesz się sięgnąć, wyjaśniony ci wcześniej, niż do niego zapiszesz.
- Dokumentacja, która powstaje jako produkt uboczny. Pliki w
docs/explanations/są pisane do czytania, nie dla modelu — i zostają w projekcie. - Czytanie bez połączenia. Gotowe wyjaśnienia są w lustrze Dokumentów, więc otworzą się i offline.
Bez połączenia
Zlecić wyjaśnienie bez połączenia z Serwerem się nie da — po drugiej stronie ktoś musi pracować. Już zapisane czyta się dalej, a aplikacja mówi to od razu, zamiast pozwolić przyciskowi po prostu nie reagować.
Zacięło się gdzie indziej niż to, co tu jest? Napisz na support@coden-app.com.