Wie man Fragen richtig stellt

Status
Nicht offen für weitere Antworten.

Ebenius

Top Contributor
Vorab: Wenn ihr auf diesen Thread hingewiesen werdet, dann versteht das bitte rein sachlich, informativ und als Hilfe für die aktuelle Situation und die Zukunft (und keinesfalls als Vorwurf)!
Wenn ihr z.B. auf Punkt 5 hingewiesen werdet, nehmt das als freundliche Aufforderung, eure Fehlerbeschreibung um die dort genannten Informationen zu ergänzen. Analog für alle anderen Punkte.


Liebe Hilfesuchende,

die folgenden Hinweise und Tipps sind keine Schikane oder Gängelung, sondern sollen euch dabei helfen, eure Probleme so zu beschreiben und eure Fragen so zu stellen, dass ihr möglichst schnelle und gute Antworten bekommt.
Dies wird natürlich auch dadurch erreicht, dass ihr es - durch Berücksichtigung der folgenden Punkte - den Helfenden möglichst einfach macht zu helfen.
Außerdem ist es oft schneller, selbst eine Antwort zu finden, als eure Problem zu schildern und die Frage zu tippen, womit wir beim ersten Punkt sind:

1.1 Erst suchen und in die Doku schauen, dann posten
Es gibt einiges zu beachten, bevor Du eine Frage stellst:

  1. Schau in den FAQ
    Es gibt viele FAQ-Beiträge im Forum. Hier findest Du eine [thread=8431]Übersicht über alle Java-FAQ-Themen[/thread].

  2. Benutze die Forensuche
    Du hast die richtigen Worte gefunden? Benutze die Forensuche! Vielleicht ist Dein Problem schon gelöst. Vielleicht findest Du anhand von Hinweisen zu ähnlichen Problemen selbst die Lösung.

  3. Benutze Suchmaschinen
    Die Forensuche hat Dir nicht geholfen? Vielleicht findet eine Internetsuchmaschine mit den richtigen Begriffen hilfreiche Treffer. Schau Dir die Treffer sorgfältig an. Oft findet man die richtige Seite erst auf der zweiten oder dritten Ergebnisseite.

  4. Schlag im Handbuch bzw. der Dokumentation nach
    Sofern Du ein Handbuch zum Thema Deiner Frage hast: Schau nach! Oft sind genau die geschilderten Probleme schon im Handbuch erwähnt.

  5. Wähle die richtigen Worte
    Du willst eine Lösung für ein Problem herausfinden. Das setzt voraus, dass Du das Problem schildern kannst. Welche Begriffe gehören zu Deinem Problem? Welche Begriffe verschleiern das Problem nur? Wie kann man bessere Worte finden? Mit welchen Worten würden andere das gleiche Problem beschreiben?
Wenn eine Suche nach deutschen Stichworten erfolglos blieb, verwendet die entsprechenden englischen Begriffe.
Erstellt bitte nur dann ein neues Thema, wenn ihr keine Lösung mit den genannten und ggf. weiteren Suchmöglichkeiten findet. Bitte schlagt unbekannte Begriffe selbst nach. Und lest euch in neue Themen zunächst selbst gründlich ein.

1.2 Wenn Du fragst ...
Nur wenn die Suche nach einer Lösung erfolglos bleibt, stell eine Frage im Forum.

  1. Wähle einen aussagekräftigen Titel
    Der Titel fasst die Frage zusammen. Er sollte klarstellen, welches Problem in welchem Zusammenhang besteht. Schlecht: "Hilfe, das funktioniert nicht", besser: "JTable zeigt keine Spaltenüberschriften".

  2. Stell die richtige Frage
    Die falsche Frage erzeugt falsche Antworten. Wenn ein Button nicht benutzbar sein soll, dann frag nicht wie man ihn grau macht! Die Antworten unterscheiden sich.

  3. Frag im richtigen Forum
    Wähle das richtige Forum für Deine Frage aus. Bist Du im Java-Forum überhaupt richtig? Hast Du vielleicht eine [thread=5566]Frage zu JavaScript[/thread]? Wenn das Forum richtig ist: Hast Du das richtige Unterforum ausgewählt? Eine Frage zur Datenbankprogrammierung hat nichts im Forum für Netzwerkprogrammierung verloren. Oft lesen andere Mitglieder nur in bestimmten Foren. Wer sich mit Datenbanken auskennt bekommt die Frage woanders vielleicht nicht mit.

  4. Verzichte auf Prosa
    Verzichte auf komplizierte Sätze, Füllwörter und Wiederholungen! Halte Deine Sätze kurz! Benutze Fremdwörter nur, wenn sie schlecht übersetzbare Fachbegriffe darstellen! Verzichte auf Passivsätze und Substantivierungen!

  5. Stell Deine Frage sorgfältig
    Lies Deine Frage, nachdem Du sie formuliert hast! Versuch die Frage zu verstehen! Stell Dir vor, ein anderer muss den Inhalt Deiner Frage verstehen, ohne Dein Problem zu kennen!

  6. Wähle die Zusatzinformationen sinnvoll aus
    Überprüfe, welche Informationen für Dein Problem relevant sind. Du bist Anfänger? Das ist ein wichtiger Hinweis. Dein Problem taucht nur in bestimmten Umgebungen auf? Wichtig, aber welche Umgebungen sind es denn? Du erhältst eine Fehlermeldung? Nach welcher Aktion, wie lautet die Meldung, welche weiteren Informationen (zum Beispiel StackTrace) gehören dazu? Dein Problem bezieht sich auf einen Quelltext? Schreib den Quelltext in Dein Beispiel! Hänge bitte keinen Screenshot von deinem Code an sondern kopiere den Code, keiner hat viel Lust damit etwas abzutippen nur um zu helfen.

  7. Schildere Deine Lösungsversuche
    Was hast Du bereits unternommen um das Problem zu beheben? Welchen Effekt hast Du Dir davon erhofft? Auf welche Weise haben Deine Lösungsversuche nicht funktioniert. Damit verkleinerst Du den Aufwand derer die Dir helfen wollen. Gleichzeitig erkennt jeder, dass Du Dich mit dem Problem ernsthaft beschäftigt hast.

  8. Mach Deinen Beitrag lesbar
    Formatiere Deine Beiträge: Deine Beschreibung sollte auch optisch gut dargestellt werden. Verzichte auf bunte Farben! Benutze Zeichenformatierungen vorsichtig! Formatiere Quelltext und Verweise ([CODE=JAVA] //JAVA CODE [/CODE] oder </> im Editor)!

  9. Sinnvolle Linkname und Kommentare
    Bitte gebt für jeden Link einen aussagekräftigen Linknamen (das ist der angezeigte, klickbare Text) an! Also z.B. Java-API Object.toString() statt hier oder Object (Java Platform SE 7 ). Der Leser sollte anhand des Linknamens entscheiden können, ob der Link für ihn interessant ist, ohne den Link anklicken zu müssen. Reicht ein Linkname dafür alleine nicht, kommentiert den Link bitte zusätzlich.
    Bitte verwendet keine Kurz-URL-Dienste. Man muss der Url direkt ansehen können, wo man landet!

  10. Du bittest um Hilfe
    Denk daran, dass andere Mitglieder im Forum Dir helfen! Das schließt den Befehlston genauso aus wie ein Drängen auf schnellere Hilfe.


2. Nur ein Thema pro Thread
Wenn ihr eine Frage stellen wollt ...

  1. Neues Thema = neuer Thread
    Jedes eurer Themen gehört in einen eigenen Thread

  2. Nachfragen in den richtigen Thread
    Erstellt Nachfragen, welche nahtlos an euer Thema anknüpfen und noch zum Titel passen, im selben Thread
    Sollte die Nachfrage ein neues Thema anreißen oder gar in ein anderes Forum gehören, erstelle im passenden Forum einen neuen Thread

  3. Alte Threads ausgraben
    Verwende alte Threads nur wenn eure Frage nahtlos an das besprochene anknüpft
Das oberste Ziel ist, dass alle im Thread behandelten Punkte zum Titel des Threads passen.


3. Sparsam zitieren

Full Quotes (also das vollständige Wiederholen des/eines vorangegangenen Beitrags als Zitat) sind nicht erwünscht und werden gg. entfernt oder gekürzt
Zitiert wenn überhaupt möglichst immer nur genau den einen Satz(-teil), auf den ihr euch bezieht.
Insbesondere wenn euer Beitrag direkt auf den Beitrag folgt, auf den ihr euch bezieht, ist meistens gar kein Zitat nötig.
Kennzeichnet Zitate immer und ausschließlich mit [QUOTE]-Tags und zitiert keine Anrede- bzw. Grußformeln.


4. Verlang keine fertigen Lösungen
Das ist insbesondere der Fall, wenn einer oder mehrere der folgenden Punkte zutreffen:

  • Fragt nicht nach einem vollständigem Quellcode, der genau euer Problem löst
  • Gebt uns andersherum auch nicht längeren oder gar kompletten Quellcode und fragt wo der Fehler ist
  • Bittet nicht um Code-Reviews von längerem oder gar kompletten Quellcode.
  • Wir machen nicht eure (Haus-)aufgaben, leisten aber gerne jederzeit Hilfestellungen bei euren Problemen und bei der Fehlersuche.


5. Wälzt nicht eure Aufgaben auf uns ab

Wundert euch nicht, wenn es zum Teil sehr heftige Gegenreaktionen gibt, falls ihr doch nach fertigen Lösungen fragt oder anderweitig der Eindruck entsteht, dass ihr uns kostenlos für eure Aufgaben einspannen wollt.


6. Bitte keine kompletten Projekte anhängen

Bitte hängt nicht ungefragt bzw. unaufgefordert eurer komplettes Projekt (Projektmappe) an. Postet stattdessen nur den relevanten Code direkt im Beitrag.

Wenn ihr aufgefordert werdet, ein Projekt anzuhängen, dann verwendet möglichst immer ein minimales Beispielprojekt, also ein Projekt, das den Fehler zeigt, aber so klein wie möglich ist. Also ein Projekt nach dem Muster: short but complete.


7. Problem genau beschreiben - inkl. genauer Fehlermeldung - und konkrete Fragen stellen
Bitte beschreibt euer Problem immer möglichst konkret und möglichst genau:

  • Genaue Fehler- bzw. Exceptionmeldung (inkl. Fehlernummer CSxxxx bzw. inkl. Name der Exception und vollständigem StackTrace)
  • Codezeile, die den Fehler enthält bzw. die Exception auslöst
  • Codeauszug in dem der Fehler entsteht

TODO: Versucht Syntaxfehler unbedingt immer zu erst selbst zu lösen und geht dabei am besten wie in [Hinweis] Syntaxfehler selbst lösen (Compilerfehlermeldungen) beschrieben vor.

Wenn ihr keine Fehler- oder Exceptionmeldung bekommt, beschreibt das Fehlverhalten möglichst genau. Mit "funktioniert nicht" alleine ist uns leider nicht geholfen; genausowenig mit "verstehe ich nicht". Bitte schreibt genau, was ihr probiert habt; was ihr nicht versteht und stellt konkrete Fragen. Wenn etwas nicht funktioniert, beschreibt sowohl den IST- als auch den SOLL-Zustand.

Bitte schreibt und formuliert immer möglichst verständlich. Dafür kann es helfen, sich in die Lage der späteren Leser zu versetzen und den Beitrag vor dem Absenden selbst noch mal komplett durchzulesen.
Solltet ihr Klassen verwenden die nicht Teil des Java Frameworks sind nennt bitte die exakte Klasse und auch aus welcher Bibliothek ihr diese habt.

Wenn es das Verständnis fördert, verwendet Bilder (z.B. Screenshots) oder Videos (z.B. Screenrecodings), die Abläufe/Effekte zeigen. Dies ersetzt aber keinesfalls eine gute und vollständige textuelle Beschreibung. Fehlermeldungen sollten immer als Text kopiert werden.


8. Code in [code=java] und [/code] bzw. [CODE=(sprache)] und [/CODE] einschließen (</> im Editor)

Bitte verwendet bei Codebeispielen Code-Tags. Schließt dazu Java-Code in [code=java] und [/code] ein. Anderen Code (PHP, C++, Sql, Xml oder auch andere Sprachen) könnt ihr ebenfalls mit den Code-Tags darstellen
[code=(sprache/fileformat)] und [/code]
Bitte achtet auf korrekte Einrückung des Codes. Bitte seid sparsam mit Code (viele Leerzeilen hindern den Lesefluss und sind störend)

Bitte schreibt den Code unter Verwendung der genannten Tags immer direkt in den Beitrag. Nur so ist sichergestellt, dass der Code dauerhaft verfügbar ist. Bitte setzt keine Links auf externe Dienste wie pastebin.com.


9. Bilder als Dateianhang hochladen

Bitte keine Verweise auf externe Bildquellen einbinden, also bitte weder -Tags benutzen, noch Links auf Bildhoster einfügen. Bitte Bilder immer als Dateianhang hochladen. Natürlich nur, wenn ihr über die nötigen Rechte zur Veröffentlichung der Bilder verfügt.

Es gibt wichtige Gründe dafür, Bilder als Dateianhang hochzuladen:
  • Nur so ist sichergestellt, dass sie dauerhaft verfügbar sind. Wenn mit (oder ) verlinkte Bilder nicht mehr verfügbar sind, könnten Threads sonst unbrauchbar/unverständlich werden.
  • Wenn mit verlinkte Bilder zu groß sind, zerreißen sie das Layout. Bilder als Dateianhang werden dagegen bei Bedarf automatisch passend verkleinert.
  • Wenn Bilder als gepackte Datei (ZIP o..ä) angehängt werden, ist es für die Helfer unnötig aufwändig, den Dateianhang erst herunterzuladen und auszupacken, bevor die Bilder angezeigt werden können.


10. Nicht gleich pushen, nicht drängeln

Wenn ihr nach 30 Minuten noch keine Antwort bekommen habt, ist es zu früh zu pushen/spammen, einen Tag sollte man schon warten. Mit Antworten wie "Kann mir wirklich niemand helfen?" oder Zusätzen wie "Es ist DRINGEND" verärgert ihr nur die Leute, die euch helfen könnten.


11. Tut, worum man euch bittet

Wenn ihr einen schlechten Titel (s. 3.) gewählt oder die Code-Tags (s. 6.) vergessen habt, verwendet bitte "Beitrag editieren", um dass zu korrigieren. Wenn ihr vergessen habt, die genaue Fehlermeldung (s. 5.) anzugeben oder eurer Problem noch genauer beschreiben wollt, verwendet bitte "Antwort erstellen". Wenn ihr dazu aufgefordert werdet, das zu tun, erwarten wir, dass ihr der Bitte nachkommt.

Bitte beantwortet alle Nach- und Gegenfragen, die von den Helfern an euch gestellt werden ... selbst wenn ihr deren Sinn (noch) nicht erkennt.


12. Eigene Lösungen posten

Wenn ihr keine Antwort bekommt und später selber eine Lösung findet - oder wenn ihr später eine bessere Lösung als die geposteten findet -, postet diese Lösung bitte für alle, die in Zukunft das gleiche Problem haben. Bitte löscht auf keinen Fall eure Fragen (also den Text eurer Beiträge) und schreibt die Lösung auch nicht als Edit in die bestehenden Beiträge, sondern postet die Lösung bitte als neue Antwort ("Antwort erstellen").


13. Editieren mit Augenmaß

Geht beim Editieren von Beiträgen mit Augenmaß vor. Macht nie nachträglich aus schwarz weiß. Seid euch bewusst, dass beim Editieren der Thread für die anderen nicht wieder auf ungelesen gesetzt wird und auch keine Benachrichtigungsmails verschickt werden, wie das beim Erstellen eines Threads und beim Antworten der Fall ist. Tippfehler zu ändern, ist jederzeit ok. Löscht keinesfalls den gesamten Inhalt des ersten Beitrag eines Threads.

Die genannten 13 Punkte konkretisieren die Community-Regeln im Hinblick auf die gelebte Praxis.
 
Zuletzt bearbeitet von einem Moderator:
Status
Nicht offen für weitere Antworten.

Neue Themen


Oben