Co zrobić gdy się utknie na czymś?

Co zrobić gdy się utknie na czymś?
whiteman808
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 201
0

Co polecacie zrobić gdy utknę na etapie rozwiązywania danego problemu i nie mam pomysłu co dalej zrobić, a na forum/liście mailingowej danego projektu żadnych odpowiedzi nie dostaję? Pytam bo często zdarza mi się ślęczeć nad rozwiązaniem czegoś, a mam tak że nie lubię nie doprowadzać sprawy do końca. Kiedy jest sens próbować dalej a kiedy lepiej zmienić dane oprogramowanie, bibliotekę, narzędzie?

tBane
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Poznań
  • Postów: 524
3

Ja bym na Twoim miejscu zająłbym się czymś innym, by odpocząć i wrócić ze świeżym spojrzeniem. Ja gdy utknę z kodem to robię jakiś inny feature lub poprawiam już istniejący kod. W przypadku tworzenia Edytora gry zajmowałem się jeszcze grafiką i animacjami, lub po prostu dodawałem GameObjecty do Edytora,

YA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2384
5

Samo porozmawianie z kimś i próba wyjaśnienia problemu potrafi pomóc. Podobnie opisanie problemu.

Staram się stawiać pytania (samemu sobie)

  • dlaczego próbuję rozwiązać bieżący problem? Z czego on wynika? Czy da się zrobić coś inaczej, co sprawi, że nie będzie trzeba będzie rozwiązywać bieżącego problemu albo będzie to łatwiejsze?
  • czy problem nie jest zbyt duży? jak podzielić na mniejsze części? czego nie wiem? czego nie rozumiem? co mnie blokuje przed zabraniem się rozwiązania? kto mógłby mi pomóc?

Niekiedy rozpisuję plan pracy w punktach, robię notatki, czasem diagramy. Do tego przerwy i zajęcie umysłu czymś innym (np. idę pobiegać, spacer, posłucham muzyki - ale na zasadzie, że tylko słucham, a nie równolegle jem, idę, czy zerkam na telefon).

DE
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 594
1

Jeżeli to kwestia biblioteki (brak obsługi danego przypadku, brak integracji której potrzebujemy) to sprawdzić czy nie wisi już pull request w repo biblioteki. Zdarzało mi się że właśnie wisiał dosyć dligo. Można sobie ten kod pożyczyć do swojego forka, albo samemu napisać customizację i tymczasowo korzystać właśnie z tego forka.

Jeżeli kwestia pomysłu to pójście po herbatę, na spacer, albo do toalety powoduje dziwny przebłysk geniuszu który nie pojawia się siedząc przy kompie.

Jak podasz swoje konkretne przypadki to może łatwiej się będzie odnieść i przytoczyć osobiste historie. Chcesz?

obscurity
  • Rejestracja: dni
  • Ostatnio: dni
3

unrelatable, możesz podać jakiś konkretny przykład? Nigdy mi się nie zdarzyło żeby utknąć na amen, kilka razy musiałem schodzić poziom niżej, sięgać do źródeł biblioteki, nawet dezasemblować bibliotekę, albo robić jakiś monkey patching, ale nigdy nie było że nie wiedziałem co trzeba zrobić. Co najwyżej myślałem jak to zrobić prościej żeby się za bardzo nie narobić.
Jeśli problem jest na warstwie logiki biznesowej no to ktoś musi wiedzieć chociaż kto będzie wiedział, jak nikt nie wie jak coś ma działać to już nie twój problem, task wraca do backlogu do fazy pisania wymagań.

kimikini
  • Rejestracja: dni
  • Ostatnio: dni
2

odpalic chatGPT

I1
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 190
1
  1. Przespać się z tym, by mózg ułożył sobie w nocy dane w pamięci i zająć się następnego dnia.
  2. Wysypiać się. Jedna źle przespana noc i niektóre funkcje kognitywne masz obniżone przez kolejne 3 dni.

Kiedyś często zawalałem noce, ale przez stan bliski zawałowi i tę książkę przestałem:
https://lubimyczytac.pl/ksiazka/4873848/dlaczego-spimy-odkrywanie-potegi-snu-i-marzen-sennych

LukeJL
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 8487
0

Kiedy jest sens próbować dalej a kiedy lepiej zmienić dane oprogramowanie, bibliotekę, narzędzie?

Pomijając oczywistości (bugi w bibliotece, opuszczona biblioteka itp.), to warto spisać kryteria, które ma spełniać biblioteka. Być może potrzebujesz zrobić 8 rzeczy, dana biblioteka dostarczy ci 2 z nich (więc pozostałe 6 będziesz musiał pisać samemu), oraz 20 innych, których nie potrzebujesz, a które mogą wymagać pisania dodatkowego boilerplate'u. Czyli niewielka korzyść, dużo problemów.

Być może biblioteka opiera się na założeniach, które są dla ciebie nie do przyjęcia (np. czasem szukam czegoś w JS, co działa jednocześnie w przeglądarce jak i w Node.js. Wtedy natrafiam czasem na biblioteki, które odpalają się tylko w przeglądarce albo tylko w Node.js. Czyli nie do przyjęcia, bo jeśli nawet byłyby to dobre biblioteki, to nie wspierają platformy, na którą to piszę).

Więc warto popróbować kilka różnych bibliotek, żeby wybrać najbardziej dopasowaną.

Czasem warto więc stworzyć własne rozwiązanie. Czasem będzie lepiej zrobić coś od zera, niż próbować na siłę klajstrować do projektu jakąś słabo opisaną bibliotekę, a potem obchodzić jej ograniczenia.

Oczywiście tworzenie własnych rozwiązań też nie zawsze jest optymalne i też może generować problemy, ale to już inny temat.

SL
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1017
0

To jest idealne zadanie dla AI. AI bardzo dobrze przeszukuje internet i agreguje wyniki z różnych źródeł.

Polecam pytać o konkretne źródła, bo halucynacje, gdy coś naprawdę nie istnieje potrafią być duże

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.