Autor |
Beitrag |
Perlsau
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Sa 02.05.15 17:09
Auf derart aggressive Replik antwortet man am besten – gar nicht ... 
Für diesen Beitrag haben gedankt: Mathematiker
|
|
Popov 
      
Beiträge: 1655
Erhaltene Danke: 13
WinXP Prof.
Bei Kleinigkeiten D3Pro, bei größeren Sachen D6Pro oder D7
|
Verfasst: Sa 02.05.15 17:15
Es geht nicht wie man antwortet, sondern um die Message.
_________________ Popov
|
|
Mathematiker
      
Beiträge: 2622
Erhaltene Danke: 1448
Win 7, 8.1, 10
Delphi 5, 7, 10.1
|
Verfasst: Sa 02.05.15 17:15
Hallo Popov,
Ich schlage mal vor, du beruhigst dich wieder. Langsam wird es unschön.
Eigentlich wollte ich still sein, aber dein letzter, langer Beitrag war doch etwas zu viel.
Zum Thema und zur Erinnerung:
Nini ist eine sehr gute und vor allem fleißige Schülerin; also relativ selten. Ich kenne sogar ihren richtigen Namen, den ich hier natürlich nicht nenne.
Ihre ursprüngliche Aufgabe war, in einem halben Jahr sich mit einer Programmieraufgabe zu beschäftigen und damit zu demonstrieren, dass sie nach 1 Jahr (wöchentlich 1 Stunde Programmierung) die Grundprinzipien verstanden hat und anwenden kann. Abzugeben waren ein lauffähiges Programm und eine mehrseitige Beschreibung der Aufgabe und Lösung.
Vorgegeben waren als Themen zur Auswahl das "Game of Life" oder ein "Wörterraten" (klassisch: "Galgenraten"). Sie hat sich für die schwierigere Aufgabe entschieden.
Andere lassen sich nun von Mutti/Vati, Schwester/Bruder, Oma/Opa oder irgendjemand sonst helfen. Sie hat eigene Arbeit und dieses Forum gewählt. Allein das ist schon positiv, da es in der EE leider ruhig geworden ist.
Ihre ursprüngliche Idee war die Verwendung von Stringgrid bzw. Drawgrid. Narses antwortete als Erster und führte sie Schritt für Schritt zu einem sehr guten Programm.
Ob er nun Shapes, Panels, Canvas oder sonst etwas mit ihr erarbeitete, ist völlig gleichgültig. Sie hat in den vielen Wochen so viel über Programmierung gelernt, wie vorher nicht. Und das ist wichtig! Das Ergebnis zählt und nur begrenzt die Methode. Ob du das "Lerneffekt" oder sonst wie nennst, ist egal.
Allein, dass sie erfahren hat, wie professionell an ein solches Problem herangegangen wird, ist viel wert.
Ob Nini nun Interesse und Spaß am Programmieren gefunden hat, kann ich nicht einschätzen.
Und bevor du mir unterstellst, ich hätte keine Ahnung vom Lehren, sei nur so viel gesagt, dass ich seit 1985(!) versuche, Schülern etwas Informatik und Programmierung beizubringen. Ganz so schlecht kann ich nicht gewesen sein, da einige meiner Schüler/innen mit einem Informatikthema Sieger bzw. Preisträger bei der Bundesrunde "Jugend forscht" waren.
Übrigens kenne ich auch das Ergebnis/die Note der Arbeit. Nini wird sehr zufrieden sein.
Beste Grüße
Mathematiker
_________________ Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein
|
|
Popov 
      
Beiträge: 1655
Erhaltene Danke: 13
WinXP Prof.
Bei Kleinigkeiten D3Pro, bei größeren Sachen D6Pro oder D7
|
Verfasst: Sa 02.05.15 18:35
Mathematiker, nun unterstellst du mir böse Absichten (indirekt). Gute Absichten selbst zählen wenig wenn der Weg und das ganze Drumherum falsch ist. Und sorry, ich wäre nie auf die Idee gekommen Game of Life z. B. mit TMemo oder TShapes oder gar TButton zu programmieren (auch wenn ich schon mal das Spiel Snake just4fun mit TMemo programmiert habe). Trotzdem, es ist Quatsch. Es ist ein Witz. Sowas macht man aus Spaß. Dafür ist die Komponente nicht gedacht. Jede Komponente hat einen bestimmten Sinn.
So nebenbei, die Version von Game of Life mit TMemo habe ich nicht programmiert um zu zeigen was ich drauf hab, sondern um die Absurdität dahinter zu zeigen. Das Problem mit solchen Witzen ist aber oft, dass sie nicht verstanden werden (sorry Persau).
Wenn einer mich fragt wie man Pixel auf einer Bitmap zeichnet, dann erkläre ich ihm nicht wie man 1x1 Pixel große Panele auf dem Formular platziert. Denn auch wenn das Ergebnis für den Anfang ähnlich wäre, müsste ich mir dann doch die berechtigte Frage stellen ob ich überhaupt weiß was der Unterschied zwischen einem Pixel und einem 1x1 Pixel großem Panel ist.
Mag sein, dass StringGrid nicht das optimale, aber seien wir mal ehrlich, spätesten mit DrawGrid hätte man die Aufgabe hundert mal einfacher lösen können. Irgendwie konnte ich mich selbst nie mit DrawGrid anfreunden, aber... soll ich es wirklich sagen? ...dem DrawGrid einfach die gleichen Abmessungen wie dem Array geben und dann nur noch mit paar Zeilen alles durchlaufen lassen. Fertig. So einfach kann man eine Aufgabe lösen. Für Anfänger optimal.
Ich hab Bitmap gewählt, weil ich es eleganter finde. Und nebenbei, im Grunde programmieren alle es über Grafik. Wenn ein Konzept am Anfang falsch war, dann zieht man die Reißleine und versucht es erneut. Etwas falsches zu lehren ist nichts was man bewundern kann. Hier zählt nicht die gute Ansicht.
_________________ Popov
|
|
Lelf
      
Beiträge: 42
Erhaltene Danke: 21
|
Verfasst: Sa 02.05.15 21:50
Hallo,
"Nebenbei, ich arbeite u. a. auch als Dozent. Ich hab gelernt wie man lehrt. All die Möchtegern-Dozenten die hier ständig etwas von Lerneffekten schwafeln,
die haben doch von Tuten und Blasen keine Ahnung"...
Diese Worte hat @Popov geschrieben.
Nun schlage ich vor, daß er der @Nini beibringt, wie man Game of Life mit DrawGrid programmiert.
Gruß
Lelf
|
|
Xion
      

Beiträge: 1952
Erhaltene Danke: 128
Windows XP
Delphi (2005, SmartInspect), SQL, Lua, Java (Eclipse), C++ (Visual Studio 2010, Qt Creator), Python (Blender), Prolog (SWIProlog), Haskell (ghci)
|
Verfasst: So 03.05.15 01:16
Wow, hier herrscht aber ein gut gelaunter Ton  Da wäre mein fieses Posting garnicht mal aufgefallen, dass ich ehrlich gesagt nur aus schlechter Laune heraus verfasst hatte, und mich dann doch eines besseren besonnen habe.
Also erstmal muss ich sagen, dass es auch eine Menge Dozenten gibt, die keine Ahnung haben...vielleicht mehr als man meint, denn immerhin sind sie Dozenten geworden, anstatt in der Wirtschaft tätig zu sein (das soll jetzt aber keine Verallgemeinerung/Unterstellung sein). Sich selbst als besonders schlau darzustellen ist in jedem Fall kein besonders kluger Schachzug, aber manchmal kochen vielleicht auch einfach die Emotionen etwas hoch.
Popov hat folgendes geschrieben : | Es geht nicht wie man antwortet, sondern um die Message. |
Dies ist ebenso eine sehr fragwürdige Aussage für einen Dozenten! Wozu bräuchte man dann Pädagogik?
Was Nini angeht, bin ich regelrecht begeistert. Denn sie scheint wirklich interessiert zu sein, und ich finde es toll, dass Narses sich die Zeit nimmt.  Ich bin mir auch ziemlich sicher, dass Narses weiß, warum er Shapes gewählt hat (eventuell steht das sogar irgendwo auf den vielen Seiten). Eigentlich ist es aber ganz egal, denn es ist nicht die Aufgabe, Game of Life zu erstellen. Denn "es ist Quatsch. Es ist ein Witz. Sowas macht man aus Spaß.". Wenn das die Aufgabe wäre, würde man eine fertige Lösung herunterladen. Die Aufgabe ist aber vielmehr, Interesse und ein grundlegendes Verständnis für die Informatik bei den Schülern zu wecken. Man könnte nun auch gleich schon hervorragend darüber diskutieren, ob Game of Life die beste Wahl dafür ist.
Und überhaupt (SCNR): Game of Life mit einem DrawGrid oder Shapes darzustellen ist Pfusch und nur Anfänger machen sowas! Igitt! Wenn man es ordentlich haben will, dann nimmt man OpenGL. Mit der richtigen Komponente geht das auch flott von der Hand...eventuell schneller als mit DrawGrid und garantiert viel hübscher und effizienter.
_________________ a broken heart is like a broken window - it'll never heal
In einem gut regierten Land ist Armut eine Schande, in einem schlecht regierten Reichtum. (Konfuzius)
|
|
mandras
      
Beiträge: 432
Erhaltene Danke: 107
Win 10
Delphi 6 Prof, Delphi 10.4 Prof
|
Verfasst: So 03.05.15 01:27
Ich habe mich hier bei ein oder zwei interessanten Fäden abseits gehalten.
Mir fiel aber auf, daß der "Ton" sich öfters in nicht so angenehme Richtungen entwickelt hat.
Das finde ich bedauernswert, gerade weil die Teilnahme hier nicht mehr so aktiv ist wie ich
es gerne hätte...
Die Beschäftigung mit dem GOL-Problem habe ich intensiv verfolgt.
Narses hat sich m.E. nach vorbildlich eingesetzt. Und meiner Meinung nach Nini motiviert. Auch in didaktischer Hinsicht.
Ich habe mich dort herausgehalten weil ich der Meinung war, daß es perfekt abläuft.
Das will ich auch so lassen.
Aber - Die Streiterei über die "beste didaktische Vorgehensweise" (incl. persönlicher Meckerei) - muß das sein?
|
|
Popov 
      
Beiträge: 1655
Erhaltene Danke: 13
WinXP Prof.
Bei Kleinigkeiten D3Pro, bei größeren Sachen D6Pro oder D7
|
Verfasst: So 03.05.15 03:14
Wir sollten an dieser Stelle eines klarstellen, denn anscheinend missversteht man meinen Beitrag (ob bewusst oder unbewusst): es geht hier weniger drum wie der lieben Nini bisher geholfen wurde. Ich hab weder Narses noch anderen in dem Thread didaktische Fähigkeiten abgesprochen. Ganz im Gegenteil - wie ihr geholfen wurde ist geradezu vorbildlich.
Was ich kritisiert habe war der allgemein gerne missbräuchlich genutzte Begriff "Lerneffekt", der i. d. R. von Leuten eingeworfen wird, die von Tuten und Blasen und Didaktik keine Ahnung haben. Was ich also geschrieben habe war, dass wir hier in einem Forum sind wo Antworten auf Fragen gewünscht sind. Keine Lerneffekte. Wer etwas lernen will der geht zur Schule oder holt sich ein Buch. Er fragt nicht Hinz und Kunz in der Hoffnung keine Hilfe zu bekommen, weil keine oder halbe Antwort schließlich den Lerneffekt unterstützt. So machen es die Lehrer in der Schule übrigens schon sein paar Hundert Jahren. Wenn jemand etwas fragt, dann kriegt er keine Antwort. Da ist der Lerneffekt größer. Das ist ja der Sinn der Schule und der Lehrer. Eben keine Antworten zu geben.
Foren sind keine Plattformen für Leute die glauben sich als Lehrer aufspielen zu können und auf Fragen wie: "wie kann ich ein Programm starten" zuerst auf den Lerneffekt verweisen und dann entweder auf die Suche, oder, wenn sie einen guten Tag haben, ein Schlagwort wie "ShellExecute" geben. Und dann überlassen sie sich den ratlosen TE sich selbst mit dem guten Gefühl kleinwenig Lerneffekt verstreut zu haben.
Also bitte noch mal meinen Beitrag lesen und mir nicht unterstellen ich habe Narses & Co. bezüglich ihre Hilfe kritisiert.
Was ich an dem anderen Thread zu kritisieren habe ist, dass man mit Kritik nicht klarkommt. Da wird eine alternative Möglichkeit schon mal in einen Extrathread ausgelagert. Auch kritisiere ich, dass das Konzept mehr aus fragwürdig ist. Lerneffekt? Wie wäre der Lerneffekt: man missbraucht Komponenten nicht dazu Daten zu speichern. Das ist das A und O der guten Programmierung. Man trennt Daten und Darstellung. Man speichert keine Information in einem Shapes. Wenn schon, dann nimmt man die Shapes für die Darstellung.
Zweitens, ich weiß nicht ob hier einer überhaupt weiß um was es bei Game of Life geht. Denn ich verstehe nicht wie man auf die Idee kommt, dass Shapes eine Möglichkeit der Darstellung sind?
_________________ Popov
|
|
Delphi-Laie
      
Beiträge: 1600
Erhaltene Danke: 232
Delphi 2 - RAD-Studio 10.1 Berlin
|
Verfasst: So 03.05.15 18:07
Popov hat folgendes geschrieben : | Denn ich verstehe nicht wie man auf die Idee kommt, dass Shapes eine Möglichkeit der Darstellung sind? |
Die Delphi(3)-Hilfe meint dazu (vom schlechten Deutsch einmal abgesehen):
Shape: "Ein Objekt zur Darstellung von geometrischen Figuren, wie Kreisen, Rechtecken und Quadraten mit verschiedenen Umriß- und Füllfarben. [...]"
|
|
Popov 
      
Beiträge: 1655
Erhaltene Danke: 13
WinXP Prof.
Bei Kleinigkeiten D3Pro, bei größeren Sachen D6Pro oder D7
|
Verfasst: So 03.05.15 22:58
@Delphi-Laie
Man sollte nie einen Satz aus dem Kontext nehmen.
_________________ Popov
|
|
Delphi-Laie
      
Beiträge: 1600
Erhaltene Danke: 232
Delphi 2 - RAD-Studio 10.1 Berlin
|
Verfasst: So 03.05.15 23:07
Popov hat folgendes geschrieben : | @Delphi-Laie
Man sollte nie einen Satz aus dem Kontext nehmen. |
Einen Kontext gab es nicht. Ich zitierte den ersten der beiden Sätze, den m.E. wichtigeren Satz nur, weil er Deiner Behauptung widerspricht. Solche unredlichen Mogeleien liegen mir fern. Über die (Un)Eignung von Shapes zu Lösung der Aufgabe kann ich mich nicht äußern, ich kannte diese zuvor nicht mal. Dir die alternative Hilfestellung in Ninis Diskussion in der Weise zu verwehren, daß Dein Beitrag und Deine Programmveröffentlichung dort hierher verbannt wurden, empfand ich allerdings auch nicht als die feine englische Art, das ist nicht Sinn eines Diskussionsforums.
|
|
Popov 
      
Beiträge: 1655
Erhaltene Danke: 13
WinXP Prof.
Bei Kleinigkeiten D3Pro, bei größeren Sachen D6Pro oder D7
|
Verfasst: Mi 06.05.15 23:13
Sorry, konnte mich nicht zurückhalten. Hab noch schnell ein Game of Life mit SpeedButtons programmiert. Wollte es zuerst mit ComboBoxen machen, aber die nehmen zu viel Platz weg.
Zitat: | Einen Kontext gab es nicht. Ich zitierte den ersten der beiden Sätze, den m.E. wichtigeren Satz nur, weil er Deiner Behauptung widerspricht. |
Evtl. hast du mich falsch verstanden. Ist aber inzwischen egal.
Einloggen, um Attachments anzusehen!
_________________ Popov
|
|
mandras
      
Beiträge: 432
Erhaltene Danke: 107
Win 10
Delphi 6 Prof, Delphi 10.4 Prof
|
Verfasst: Mi 06.05.15 23:22
Ich wäre an der Version mit dem Memo interessiert.
|
|
Mathematiker
      
Beiträge: 2622
Erhaltene Danke: 1448
Win 7, 8.1, 10
Delphi 5, 7, 10.1
|
Verfasst: Mi 06.05.15 23:28
Ich habe auch eine Variante, in Turbo Pascal mit Textausgabe:
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57:
| Program gameoflife; uses crt; var feld1,feld2 : array[0..21,0..21] of boolean; i,j:integer; taste:char;
procedure anfangswerte; begin for i:=0 to 21 do for j:=0 to 21 do begin feld1[i,j]:=false; feld2[i,j]:=false; end; {Ausgangssituation Fünfer-Gruppe} feld1[5,5]:=true; feld1[6,5]:=true; feld1[6,6]:=true; feld1[7,6]:=true; feld1[6,7]:=true; end;
procedure anzeige; begin for i:=1 to 20 do for j:=1 to 20 do begin gotoxy(i+30,j); if feld1[i,j]=true then write('*') else write(' '); end; end;
procedure neuegeneration; var nachbarn:integer; begin feld2:=feld1; for i:=1 to 20 do for j:=1 to 20 do begin nachbarn:=0; if feld2[i-1,j-1]=true then nachbarn:=nachbarn+1; if feld2[i,j-1]=true then nachbarn:=nachbarn+1; if feld2[i+1,j-1]=true then nachbarn:=nachbarn+1; if feld2[i-1,j]=true then nachbarn:=nachbarn+1; if feld2[i+1,j]=true then nachbarn:=nachbarn+1; if feld2[i,j+1]=true then nachbarn:=nachbarn+1; if feld2[i-1,j+1]=true then nachbarn:=nachbarn+1; if feld2[i+1,j+1]=true then nachbarn:=nachbarn+1; if nachbarn<2 then feld1[i,j]:=false; if nachbarn>3 then feld1[i,j]:=false; if nachbarn=3 then feld1[i,j]:=true; end; end;
begin clrscr; anfangswerte; repeat anzeige; repeat taste:=readkey; until taste in ['e',' ']; {Taste ‚e’ für Abbruch, Leertaste … neue Generation} neuegeneration; until taste='e'; end. |
Kann man bestimmt noch optimieren.
Beste Grüße
Mathematiker
_________________ Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein
|
|
mandras
      
Beiträge: 432
Erhaltene Danke: 107
Win 10
Delphi 6 Prof, Delphi 10.4 Prof
|
Verfasst: Mi 06.05.15 23:34
Also Mathematiker...
an meine Version in Assembler damals auf dem C64 würde ich gerne noch hinweisen!
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Mi 06.05.15 23:49
Moin! ich wollte zwar heute nix mehr schreiben, aber was soll´s - ist eh ein Insider-Joke *g*
Ich suche jetzt schon seit bestimmt 2 Tagen nach dem Silberpapier-Thermodrucker-Fetzen, auf dem meine ZX81-Version von damals steht...  verdammt, ich find´s einfach nicht mehr...  wenn das Ding noch auftaucht, scanne ich das ein und lade das hoch, das muss man einfach gesehen haben... Sinclair-Basic... das waren noch Zeiten...
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
Popov 
      
Beiträge: 1655
Erhaltene Danke: 13
WinXP Prof.
Bei Kleinigkeiten D3Pro, bei größeren Sachen D6Pro oder D7
|
Verfasst: Do 07.05.15 00:09
So langsam gehen mir die Ideen aus welche Version ich noch programmieren könne. Ich glaube ich programmiere als nächstes ein Game of Life mit TForm-Fenstern. Mal sehen ob das System 800 Fenster aushält.
_________________ Popov
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Do 07.05.15 00:13
Moin!
Popov hat folgendes geschrieben : | So langsam gehen mir die Ideen aus welche Version ich noch programmieren könne. |
Boah, und ich dachte schon...
Popov hat folgendes geschrieben : | Ich glaube ich programmiere als nächstes ein Game of Life mit TForm-Fenstern. Mal sehen ob das System 800 Fenster aushält. |
Man man man, auf das Naheliegendste ("einfacher Ansatz", du erinnerst dich sicher) kommst du erst jetzt?
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
Mathematiker
      
Beiträge: 2622
Erhaltene Danke: 1448
Win 7, 8.1, 10
Delphi 5, 7, 10.1
|
Verfasst: Do 07.05.15 00:14
Hallo,
ich kann es besser. Das schlägt keiner!
Eine Game of Life mit Menüeinträgen:
Mathematiker
Einloggen, um Attachments anzusehen!
_________________ Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein
Für diesen Beitrag haben gedankt: Narses
|
|
Delphi-Laie
      
Beiträge: 1600
Erhaltene Danke: 232
Delphi 2 - RAD-Studio 10.1 Berlin
|
Verfasst: Do 07.05.15 08:37
|
|
|