Wieso ich auf manche Fragen antworte, auf viele aber auch nicht


Es gibt bereits Texte, in denen beschrieben wird, wie man ordentliche Fragen in einem technischen Forum stellt. Aber offensichtlich kapieren Neulinge immer noch nicht, weshalb es bestimmte Regeln gibt. Ich selbst habe nichts gegen Neulinge und Einsteiger in der Programmierung, war ich ja selber mal und bin es in nicht wenigen Sprachen heute noch. Aber es gibt so ein paar Punkte, die mir immer wieder unterkommen und mir die Hutschnur aufgehen lassen.
Daher hier mal mein Versuch, das Ganze anhand von Beispielen zu beleuchten. Der Bezug ist ein Forum, in dem es u.a. um Programmierung geht. F sind so typische Fragestellungen, die da immer wieder auftauchen, R meine gedankliche Reaktion darauf.


F: "Ich habe ein Problem und habe schon bei Google, in den FAQs, in verschiedenen Foren etc. gesucht, aber nichts gefunden."

R: Wer sich wirklich etwas näher mit Programmierung beschäftigt, für den sind Onlinehilfen wie das MSDN und Googlesuchen zur zweiten Natur geworden. Ob du wirklich bei Google gesucht hast oder nicht, lässt sich innerhalb von 2-10 Sekunden herausfinden. Wenn ich dann feststelle, dass du einfach nur zu faul warst, um dir selber was rauszusuchen, dann bekommst du auch keine Antwort. Ich hasse es, wenn ich ungefragt die Arbeit für jemand anderen machen soll.
Andererseits ist mir vollkommen klar, dass insbesondere Anfänger oftmals gar nicht wissen, nach welchen Suchbegriffen sie schauen sollen. Diese gebe ich dann an, manchmal zusammen mit passenden Links.

F: "Kann mir mal jemand einen Source geben, der XYZ macht?"

R: Könnte ich. Werde ich aber nicht. Erstens hast du nicht "bitte" gesagt. Zweitens bringt dir im allgemeinen ein Source, den du eh nicht kapierst, gar nichts. Du machst ein Copy & Paste, ohne auch nur die Grundlagen des Sources zu verstehen, den du gerade kopierst und nervst mich dann noch anschließend mit zig Folgefragen, weil du zu blöd zum Implementieren der geklauten Idee bist. Danke, da habe ich keinen Bock drauf.
Eine Ausnahme ist hier für mich, wenn mir jemand von Anfang an glaubhaft verständlich machen kann, weshalb er nur den Source braucht ohne ihn zu kapieren. Gegeben war dies z.B. bei einer Freundin, die lt. ihrem Prof "mal schnell in Basic" einen Algorithmus für eine Permutation basteln sollte. Die Gute studiert Chemie, nicht Informatik oder Mathematik. Und den Algorithmus hat sie genau ein einziges Mal gebraucht, danach nie wieder. Alleine dafür Basic zu lernen wäre schon etwas hart, also hat sie von mir ein passendes Programm bekommen.

F: "Ich habe als Hausaufgabe XYZ. Kann mir die jemand machen?"

R: Wo warst du, als ich mich mit meinen verdammten Französisch-Hausaufgaben herumschlagen musste? Wieso hast du nicht für mich Lateinvokabeln gebüffelt? Nein, im Ernst: Hausaufgaben sind zum Lernen da. Entweder du lernst, wie du sie selber machst, oder du lernst, wie du die Arbeit anderer klaust bzw. wie du deine Arbeit auf andere abwälzt (was imho eine praxisnahe Vorbereitung auf eine Managerkarriere ist).
Aber für lau mache ich nicht die Arbeit anderer, solange ich im Gegenzug für jede Dienstleistung was zahlen soll. Gleiches Recht für alle sage ich da.

F: "Das Programm soll Folgendes machen: (blabla). [Code-Snippet]."

R: Toll. Interessiert mich nur einen Scheiß. Wenn du ein konkretes Problem hast, dann sag's. Ich habe weder Zeit noch Lust, dir deine Frage aus der Nase zu ziehen. Wenn ich auf so etwas stehen würde, wäre ich Grundschullehrer geworden.

F: "Ein Freund von mir hat ein Problem mit folgendem Programm: [Code-Snippet, ziemlich lang]. Das Programm soll machen: [Liste mit sehr komplexen Funktionen, die eindeutig auf Studien- / Ausbildungsaufgabe hinweisen]. Jetzt funktionieren aber die Methoden X, Y, Z nicht fehlerfrei. Wo liegt der Fehler?"

R: Das sage ich dir nicht, weil ich das starke Gefühl habe, dass du mich anlügst. Das ist deine Aufgabe, nicht die deines Freundes. Und du bist zu faul, sie selber zu lösen und suchst einen Dummen, der die Arbeit für dich macht. Was, in Gottes weiter Welt, macht dich glauben, ich wäre zwar intelligent genug, dir bei deinem Problem zu helfen, aber gleichzeitig naiv und strohdumm genug, um nicht zu erkennen, dass du mich verarschst?
Lerne Ehrlichkeit und Verantwortung, dann können wir evtl. wieder miteinander reden.

F: "Ich mache eine Ausbildung zum [IT-Beruf]. Jetzt haben wir Programmieraufgaben gekriegt und ich habe keine Ahnung davon/keinen Bock drauf. Kann mir jemand helfen?"

R: Mit dem Programm sicher nicht, aber einen Tip hätte ich für dich: Brich die Ausbildung ab und mach was anderes, was dir mehr liegt. Wenn du keine Lust auf Lernen und Entdecken hast, dann ist die Ausbildung zum [IT-Kaufmann-ähnlicher-Beruf] für dich definitiv das Falsche. Am Ende werden wir Arbeitskollegen und ich muss mir täglich von dir anhören, wie scheisse doch die ganze Programmiererei ist. Nein, danke.

F: "Ich kann mit den Tutorials nichts anfangen, mein Englisch ist nicht so gut."

R: Tu dir selbst einen Gefallen: Leg die Programmiererei auf Eis und lern erstmal Englisch, da es einfach eine der wichtigsten Sprachen ist (Stichwort Globalisierung). Du kannst nicht erwarten, dass später fachspezifische Literatur immer genau in deiner Landessprache vorgekaut auf deinem Tisch liegt. Wenn du richtig Pech hast und in die Entwicklung gehst, dann kann es sein, dass du die Lösung für ein Problem auf einem holländischen, tschechischen, polnischen oder russischen Board findest. Und dann? Willst du dann auch sagen: "Ich habe zwar die Lösung gefunden, kann aber nichts damit anfangen, weil sie nicht auf Deutsch ist"? Und nein, das ist nicht fiktiv. Genau das ist mir selbst schon mehrfach passiert, nur dass ich mir dann anhand von Code, den dazu gehörenden Forenbeiträgen und u.a. meiner Englischkenntnisse dann das wichtigste entsprechend zusammenreimen konnte, ohne dass ich gleich selber Holländisch, Tschechisch, Polnisch oder Russisch sprechen können muss.

F: "hilfe!!! ich hab ein problem!"

R: Werd erwachsen und hoffe, dass es dann weg geht.

F: "hilfe!!! ich hab wirklich n prob un zwar mit nem prog mit dem ich n save verendern will"

R: undichhabenichtdieallerleisestelustmirdeinenschwachsinnigenzusammengestueckeltenscheisstextreinzuziehen
dasnenneichdassmirjemandseinenmistvordiefuessekotzt
unddaraufhabeichschlichtundergreifendnureineantwort:
Werd erwachsen!
Wem meine Reaktion zu schwer zu lesen war: Exakt so geht es mir mit solchen Beiträgen ohne Orthographie. Wollt ihr jede Reaktion von mir so lesen wie die da oben? Nein? Dachte ich mir. Und auch ich habe keine Lust, mir solche Buchstabensuppen anzuschauen.

F: "bist du n rechtschreibnazi oder was? ich chatte imma so und hatte da noch nie stress mid. du bis der erste, der sich druber aufregt."

R: Dann geh wieder chatten und lass das mit dem Programmieren. Denn sonst werde ich sicher nicht der Letzte sein der meckert. Ich kann dir auch ganz genau sagen, wer sich gleich nach mir tierisch über dein "German simplified" aufregen wird: Dein Compiler. Und weisst du warum?

procedure WasWeissIch;
var
  einWert: Integer;
begin
  einWert := 1;
  einwert := einWert + 1;
end;

In Delphi bzw. Pascal mag das noch durchgehen.

void LeckMich(void)
{
  int einWert;
  einwert = 1;
}

Hier kriegst du vom jeweiligen C- oder C++-Compiler eine aufs Maul.

$einWert = 1;
$einwert = $einWert + 1;

Und in Perl geschehen dann richtig lustige Sachen, z.B. dass du dann zwei Variablen hast, die eine mit 1 und die andere mit 2 belegt. Und du müsstest schon einen Blick auf die Compilerrückmeldungen werfen (nix IDE mit dicken blinkenden Fehlerfenstern), um da drauf hingewiesen zu werden.
Wenn du also zu faul bist, ordentlich zu schreiben, dann wirst du nie programmieren können. Also warum soll ich meine Zeit mit deiner Frage verschwenden? Lern erstmal "German Traditional".

F: "Betreff: Ich habe ein Problem."

R: Soll ich dich bemitleiden? Kauf dir ein Eis. Egal, nächster Post.

F: "Ich habe ein GAAANZ, GAAANZ DRINGENDES Problem und brauche SOFORTIGE Hilfe!!!!!einseinself"

R: Das kann mein Chef besser. Live. In natura. Und dann klingt das auch beeindruckender. Aber nach spätestens 2 Jahren im Job weisst du: Jedes Problem ist das dringendste und wichtigste und der Fortbestand der menschlichen Zivilisation hängt von der Lösung ab. Und am Ende war es doch nur wieder ein Bildschirmschoner, der nicht richtig konfiguriert war. Ehrlich, man stumpft mit der Zeit ab. Mag sein, dass das Problem für dich gerade die reinste Katastrophe darstellt, mir persönlich ist es reichlich egal. Also spar dir die Effekthascherei, die bringt nichts. Benutze die Zeit und Energie lieber, um deine Frage zu präzisieren.
F: "Ich benutze die Bibliothek [habe-ich-noch-nie-gehört] und daraus die Komponente [kyrillischer-Name]. Bei der Methode [schiess-mich-tot] kommt der Fehler [alles-im-Arsch]. Was mache ich falsch?"

R: Keine Reaktion. Und weisst du warum? Weil ich keine Ahnung habe, was du da benutzt. Ich halte mich da an Dieter Nuhr: "Wenn man mal keine Ahnung hat - einfach Fresse halten." Oder soll ich ein "ich weiss nicht wovon du redest, aber poste mal, damit du dich nicht allein fühlst" schreiben? Wenn das noch ein bis zwei Dutzend andere Programmierer machen, dann siehst du eine eventuelle Antwort gar nicht mehr vor lauter Beileidsbekundungen. Und was hast du dann davon? Genau. Nichts.

F: "Kann ich dir mein Problem und den Source mailen?"

R: Nein, kannst du nicht. Ist nichts persönliches, aber ich habe keine Ahnung, ob du meine Adresse nicht bei einem Spammer einträgst, wenn die Lösung nicht 100% nach deinem Geschmack ist. Ausserdem sind Problem und Lösung für alle interessant. Wenn ich schon Tips gebe, dann soll auch jeder davon profitieren können. Für Privatunterricht verlange ich entsprechendes Honorar. Ich bin ja keine VHS für lau.

F: "Mit welchem Programm/Trick kann ich einen Mailserver knacken?"

R: Da gibt es sicher ein paar Kniffe (abhängig vom Mailserver). Aber ich werde dir unter Garantie nicht einmal mit dem kleinsten Link auch nur eine Andeutung geben, da dich die Post anderer einen feuchten Scheiß angeht. Ich bin mir ziemlich sicher, dass du weder etwas von entsprechender Moral oder Ethik und auch noch nie etwas von "The Mentor" gehört hast. Ebensowenig wie ich einem Dreijährigen, der die Folgen nicht abschätzen kann, einen Chemiebaukasten mit gefährlichen Stoffen in die Hand geben würde - ebenso wenig bekommst du irgendwelche Informationen von mir.

F: "Kannst du mir die Problemlösung via ICQ schicken?"

R: Nein. Nochmals: Die Problemlösung ist für alle gedacht. Ausserdem willst ja du etwas von mir und nicht umgekehrt. Also wirst du dich mit den Kanälen zufrieden geben müssen, die ich als angemessen erachte. Das passt dir nicht? Dann such dir jemand anderen, der dir bei deinem Problem hilft. Zu deinen Konditionen versteht sich.

F: "Ich will ein Spiel á la Half-Life 3 machen. Kannst du mir helfen?"

R: Rein theoretisch ja. Praktisch werde ich den Teufel tun. Der Abspann von Half-Life 2 beinhaltet mehrere Dutzend Leute. Rate mal warum. Sicher nicht, weil die alle zu blöd sind, sich selber die Schuhe zuzubinden und so unfähig, dass sie es nur in einem so großen Team geschafft haben, irgendwas auf die Beine zu stellen. Und du bist nicht der neue Super-Überprogrammierer und -künstler, der mit seinen Fähigkeiten den Rest der Menschheit in den Schatten stellt und so ein Riesenprojekt mal nebenbei alleine stemmt.
Mach ein ordentliches Open Source-Projekt draus und evtl. trete ich der Entwickler-Crew bei. Aber zu zweit oder dritt? Vergiß es. Ich habe in meinem Leben noch was anderes vor, als mir nur für dich den Arsch abzucoden.

F: [3x nach jeweils 20 Minuten] "Wieso antwortet keiner?"

R: Get a life. Im Gegensatz zu dir habe ich noch was anderes zu tun, z.B. arbeiten. Wer quengelt steht bei mir vor der Tür und kratzt an's Holz. Daher: Nächster Thread.

F: "Ich habe mal in das Tutorial in deinem Link geschaut, aber das ist mir zu kompliziert. Kannst du mir das nicht nochmal zusammengefasst sagen?"

R: Am Arsch. Wenn ich ein Tutorial raussuche und den Link poste, dann ist das zu 99% ein verständliches Teil. Ich bin selber Programmierer und kann ganz gut abschätzen, was ein einfaches Tutorial ist und was eine geistige Onanie, bei der sich irgendein IT-Wichtigtuer mit seinen zigtausend Fachbegriffen ausgetobt hat. Was glaubst du, weshalb das Tutorial im Netz steht? Genau damit ich eben nicht die gleiche Thematik 20mal runtertippen muss. Wenn du also zu faul zum Lesen und Lernen bist, dann lass das mit dem Programmieren. Denn dann bist du auch zu faul, irgendwelche Handbücher oder Onlinehilfen zu lesen und ich habe dich permanent an der Backe. Aber so leicht lasse ich mir meine Zeit nicht stehlen, von daher erfolgt keine Reaktion mehr von mir.


Vieles davon mag harsch und/oder arrogant klingen, doch das ist mir wirklich egal. Denn ich habe meine Art und Reaktion auf klassische Fragen zum Besten gegeben. Und zum Glück ist ja nicht jeder so. Aber für mich gilt grundsätzlich:
Ich bin zufrieden und friedlich am arbeiten. Auf einmal will jemand anderes etwas von mir. Ich soll also für jemand anderen Zeit und Energie erübrigen. Gratis versteht sich. Das mache ich gerne, solange der andere sich in einer ordentlichen Form äussert und mir nicht mehr Zeit wegnimmt, als notwendig. Wem also die simplen Regeln der einfachen Fragestellung zu schwer und anstrengend sind, dem wünsche ich viel Glück bei der Problemlösung - an der ich sicher nicht teilhaben werde.
Die Faulheit und Beqeumlichkeit anderer unterstütze ich in keinem Fall!