Mivel egyre gyakrabban fordul elő, hogy sok – felesleges – hozzászólás kerül a fórumba egy-egy egyszerű, csak rosszul kifejtett kérdés megválaszolásához, gondoltam összeírok néhány egyszerű alapszabályt, amellyel mindegyikünk – a kérdezők, a válaszolók és a moderátorok – életét megkönnyíthetnénk.
A formai és stiláris követelményekre itt most nem térnék ki, azt – sajnos láthatóan nem túl sok sikerrel – kifejtettük a Fórum etikett-ben.
Sokkal inkább a tartalmi részre szeretnék kitérni, hogy lehetőleg ne legyenek olyan kérdések többé, hogy "Nem megy az X program, miért?" vagy "A zöldhöz milyen szín illik?". Sajnos vannak hasonlók, bár logikusan végiggondolva a kérdező rájöhetne, hogy a válaszadás ennyi információ alapján meglehetősen nehéz.
Az első esetben egészítsük ki a kérdést: "Nem megy az Apache 2.0.55! Indításkor (apache -k start) a „Could not open document config file” hibaüzenetet írja ki.". Nem sokkal hosszabb, egy hibaüzenet és egy verziószám van benne, de azonnal tudnánk mondani, hogy a httpd.conf meglétét kellene ellenőrizni.
A második ugyanez elkövethező: "Zöld (#001600) háttérhez milyen szín illik?". Ismét két kulcsfontosságú dolgot írtunk bele: egy RGB kódot, és a háttér szót. Ezek alapján már nagyjából lehet sejteni, hogy szövegszínre gondolt, és a kérdés megválaszolható. (Most például #669966-ra mondanám, jól néz ki, és nagyjából olvasható.)
Gondolom már nagyjából jól sejthető, hogy mire gondolok: ha arra kell figyelnünk, hogy a problémát értelmezzük, jóval nehezebb megoldani. Sőt, tovább megyek: ha mindenki összeszedné a gondolatait így, valószínűleg máris meg tudná oldani a problémát. Ha esetleg mégsem, ott a Fórum, lehet kérdezni, és egy jól összeszedett problémát valószínűleg pillanatok alatt megoldunk!
Mostantól elsősorban a webfejlesztés témakörére összpontosítok – abból tudok kiindulni, grafikához nem sok közöm van. Azért szerintem a grafikai résznél is lehet egy ilyesmi szabálygyűjteményt összeszedni, betartani.
Mi legyen benne a hozzászólásban?
- Mi a probléma, röviden. Esetleg összefoglaló kérdésként.
- Van-e hibaüzenet, és ha van mi az.
- A lehető legpontosabb környezet-leírás (programok verziói, betöltött kiterjesztések, …)
- Eddigi próbálkozások, azok eredményei.
Ennél több lehet (jó, ha minél több infó van), kevesebb ne. Persze a ló túloldalára sem szabad átesni, a Háború és békét is kevesen olvasták ;) Ezek alapján egy jól felépített kérdés például így néz ki:
A következő kódom valamiért nem működik úgy, ahogy azt korábban tette és ahogy elvárnánk tőle, és nem értem miért.
$usernev = mysql_real_escape_string(trim($_POST['usernev'])); $sql = "INSERT INTO `felhasznalok`(`felhasznalonev`, `jelszo`) VALUES('" . $username . "', '" . $password . "'); mysql_query($sql); print "Felhasználó felvéve!"; |
A kódnak elvileg működnie kéne, eddig működött is, azonban a felhasználó nem kerül be az adatbázisba. Próbáltam mysql_error()-al megnézni a hibaüzenetet, a következő írta:
"Duplicate entry ‘32767’ for key 1"A táblám a következőképp néz ki:
CREATE TABLE `felhasznalok` ( `id` SMALLINT NOT NULL AUTO_INCREMENT , `felhasznalonev` VARCHAR( 32 ) NOT NULL , `jelszo` VARCHAR( 32 ) NOT NULL , PRIMARY KEY ( `id` ) , UNIQUE ( `felhasznalonev` ) );Előre is köszönöm a segítséget (…)
Ezek alapján már ránézésre megmondható az, amire valószínűleg nagyon hosszú idő után jöttünk volna rá: a SMALLINT mezőben több azonosító nem tárolható, a típusát le kell cserélni INT-re.
Persze, a példa valószerűtlen volt, ha valakinek egy 32 000-es felhasználói táború lapja van valószínűleg rájött volna erre, de szemléltetésre megteszi.
Ami a fontosabb: jól felépített (rövid kérdés), minden szükséges információt tartalmazott, de semmi – vagy nem sok – feleslegeset: a példa kedvéért írhattam volna ide egy 5 oldalas PHP felhasználó-kezelő kódot, de az a „Hogyan NE kérdezzünk” esete lenne. Őszintén, ki olvasna végig 5 oldalnyi kódot, csak azért, hogy segíthessen? A hibás részt (ahol a hiba keletkezik) és az előtte-utána álló 5-10 sor kiindulásnak elég, ha mégsem, akkor úgyis kérünk még plusz infókat.
Sorolhatnám még itt, hogy mit szabad, mit nem, mit kéne, miért és hogyan, de felesleges lenne, a lényeget – szerintem – leírtam: ha kérdezünk, minden szükséges információt adjunk meg!
Remélem azért valakinek segítettem ezzel a rövidke írással, és remélem megfogadjátok a tippemet, mindannyiunknak egyszerűbb lenne…