Kako postavljati dobra pitanja kao programeru

Slika Camylla Battani | Unsplash

Znati postaviti pitanja na pravi način ključna je vještina za život općenito. Dobro strukturirano pitanje češće će donijeti koristan i izravan odgovor.

Kad je u pitanju kodiranje, postoje neki koraci koje možete poduzeti kako biste povećali šanse za dobar odgovor.

Dakle, jedna od vještina koju pokušavam poboljšati sa svojim učenicima u razredu jest kako postavljati dobra pitanja kad naiđu na problem.

Evo glavnih točaka kojima ih podučavam:

Bavite se osnovama

Prve stavke vašeg dobrog pitanja-upita-upita () su osnove.

U ranim lekcijama osobnog tečaja instruktor će vam možda govoriti kroz rješenje dok popravlja svoj kôd. Ali u velikom lošem svijetu internetskih zajednica, ne baviti se barem osnovama često je poput bika crvene zastave.

Provjerite uređivač koda radi pogrešaka u upisivanju i sintaksi

Isticanje sintakse moćan je saveznik prilikom uočavanja jednostavnih pogrešaka pri upisu.

Posebno za sve Britance vani:

U ranim će danima većina vaših pogrešaka biti pogrešaka pri upisu i sintaksi. To bi trebalo brzo popraviti uz pomoć pouzdanog uređivača koda.

Provjerite pisane pogreške

Ako jezik koji pišete sadrži pisane pogreške, provjerite konzolu / zapisnike. Pročitajte pogrešku da biste vidjeli što i gdje je pogreška.

Pokušajte shvatiti što se događa

Nakon što započnete osnove, bit ćete malo više informirani o tome što može biti problem.

Sada je vrijeme da pročitate kod po liniju. Upotrijebite sve alate za uklanjanje pogrešaka koji su dostupni za jezik i istražite problem.

Odvojite vrijeme ovdje. Što dublje razumijevate problem, više hipoteza možete stvoriti. To će zauzvrat dovesti do jasnijeg pitanja.

Ako je u pitanju korisničko sučelje (korisničko sučelje), koristite alate za razvojne programere preglednika. Uključite i uključite stilove i pogledajte koji drugi prepisuju.

U suprotnom, upotrijebite ispravljanje pogrešaka i provjerite vrijednosti varijabli. Jesu li oni što ste očekivali? Nešto se prikazuje kao nedefinirano kada očekujete da ima vrijednost?

Ako je potrebno, komentirajte blokove koda da biste ih uneli na mjesto gdje je problem.

Obavite nekoliko Google pretraga

Do sad biste barem trebali imati razumijevanja za problem. To znači da biste trebali moći strukturirati usredotočeno pitanje. Prije nego što tražite bilo koga drugog za pomoć, uputite se na Google kako biste pretražili.

Google je najbolji prijatelj programera. Čak i iskusni programeri redovito moraju Googleu izlaziti iz problema. Dobri programeri također su, vrlo često, dobri Googleovi zaposlenici.

Osnovni način strukturiranja pristojnog Google upita je sljedeći:

navedite jezik, biblioteku ili okvir, a zatim dodajte pitanje izgovorene riječi ILI poruku o pogrešci

Evo nekoliko primjera postavljenih pitanja koja slijede nakon ove strukture:

Obavezno izvršite nekoliko različitih pretraživanja. Pročitajte sve rezultate koji se čine prikladnim za vaš problem. Uz malo sreće, netko prije vas imao bi isti problem i morao je riješiti njihov problem.

Ponovno stvorite problem izvan projekta

Ako još uvijek niste riješili problem, pokušajte ponovo stvoriti problem iz projekta. To je posebno korisno ako se suočite s nekim čudnim CSS problemom. U tom se slučaju možete uputiti negdje poput CodePen-a i podijeliti svoj isječak slomljenog koda.

Mogućnost odvajanja vašeg pokvarenog koda od ostatka vašeg projekta ima nekoliko prednosti:

  • To će vam pomoći da se usredotočite na problem
  • To će pomoći svima koji se uključe u rješavanje problema brže

To se vraća cijenjenju vremena drugih ljudi. Trebat će im manje vremena da prođu kroz sažetak isječka koda od cijele baze podataka.

Pripremite se za dijeljenje koda

U redu, pa niste mogli sami ispraviti problem. Bez brige! Sve što ste do sada učinili postavilo je temelj za postavljanje velikog pitanja.

No, prije nego što dovedete nekoga drugog da vam pomogne, treba učiniti nekoliko stvari:

1) Provjerite je li kôd dobro oblikovan

Ako ste disciplinirani programer, koji ima dobro formatiran kôd, onda visok-pet

Ako niste, sada je vrijeme da vaš kôd izgleda netaknut .

Razmislite o korištenju lintera. Linteri provode dobre prakse izdavanjem upozorenja / pogreške za loše oblikovani kôd. Možete čak i tako napraviti da ne možete gurati kôd s greškama u povezivanju.

U najmanju ruku, dodajte Prettier u svoj urednik i ostavite ga da oblikuje za vas.

Dno crta je: nitko ne želi riješiti oblikovanje vašeg koda prije nego što vam uopće može početi pomagati.

2) Provjerite je li kôd koji dijelite ponavlja grešku

Prije dijeljenja koda, provjerite je li ponovo u njemu problem koji imate. To bi trebalo biti jasno, ali biti će vam izuzetno teško ako kôd koji dijelite ne stvori pogrešku.

Ako za kôd trebate nekoliko koraka za pokretanje i pokretanje, obavezno uključite te korake kada dijelite kôd.

Pokažite napore koje ste uložili kako biste riješili problem

U ovom trenutku morate podići ruku u učionici ili se uputiti negdje poput StackOverflow ili Slack kanala da biste dobili odgovor putem interneta.

Kad tražite, ključno je proći korake koje ste poduzeli do sada kako biste riješili svoj problem. Pružite svima koji bi vam mogli pomoći s što više informacija kako bi razjasnili svoj problem.

Evo nekih informacija koje biste trebali dijeliti:

  • Vaše razumijevanje problema. Do sada bi to moglo biti nekoliko različitih hipoteza. Važno je da artikulirate ono što mislite da bi mogao biti problem i što ste učinili kako biste pokušali to riješiti.
  • Snimke zaslona vašeg problema / pogreške. Ako je problem s korisničkim sučeljem, dodajte sliku zaslonu kako biste istaknuli problem.
  • Kôd (po mogućnosti u okruženju pijeska) koji ponovno stvara problem.

Pročitajte i ponovno pročitajte svoje pitanje ako objavljujete na mreži. Budite sigurni da pružate što više pojedinosti kako biste pomogli drugima da vam pomognu.

Nejasno je pitanje odgovoriti više vremena nego na internetu nego osobno.

Obavještavajte sve

Ako ste pitanje postavili na mreži, možete riješiti svoj problem prije nego što itko ima vremena za odgovor na njega. Ako je to slučaj, obavezno pošaljite svoj odgovor na svoje pitanje.

Može se činiti čudnim odgovoriti na vaše vlastito pitanje putem interneta. Ali, ljudi to rade stalno i to bi moglo pomoći nekome drugom u budućnosti.

Hvala svima koji su vam pokušali pomoći

Ovaj. Je. Presudno.

Hvala svima koji su vam pokušali pomoći. Čak i ako vam zapravo nisu pomogli u rješavanju vašeg problema. Oni će im oduzeti vrijeme da pomognu u popravljanju vašeg pokvarenog koda. Pokažite

Imate li neke savjete ili trikove o postavljanju dobrih pitanja koja želite dodati? Molimo vas da ih napišete u komentarima.

Želite reći pozdrav? Slijedite i cvrkutajte me @frontendmentor na Twitteru.