eure Programmier-Anekdoten und -Geschichten
Also richtig scharf auf Basic wurde ich durch den Amiga 500
. Für
den Amiga 500 hatten wir sogar noch die Handbücher. In einem Hand-
buch standen Beispiele für den AmigaBasic. Diese habe ich dann in den
Amiga rein getippt und mir angesehen was da auf dem Bildschirm da so
entstand.
Mein Dad musste mir da ordentlich mit den englischen Befehlen helfen,
damit ich sie mir merken konnte
. Ich glaube, da war ich in der 2.
Klasse oder so als ich damit angefangen habe. Weiß, ist nicht gerade
gut für den Körper die ganze Zeit nur vorm PC zu sitzen aber in der
Klasse fand ich keine Freunde. Wurde immer nur ausgelacht und ver-
stoßen. Da sitzt man halt vorm Amiga, wenn man keine Freunde hat.

den Amiga 500 hatten wir sogar noch die Handbücher. In einem Hand-
buch standen Beispiele für den AmigaBasic. Diese habe ich dann in den
Amiga rein getippt und mir angesehen was da auf dem Bildschirm da so
entstand.
Mein Dad musste mir da ordentlich mit den englischen Befehlen helfen,
damit ich sie mir merken konnte

Klasse oder so als ich damit angefangen habe. Weiß, ist nicht gerade
gut für den Körper die ganze Zeit nur vorm PC zu sitzen aber in der
Klasse fand ich keine Freunde. Wurde immer nur ausgelacht und ver-
stoßen. Da sitzt man halt vorm Amiga, wenn man keine Freunde hat.
AmigaBasic-Zeiten
Hab eine Wochentags-Kalender-Funktion gecodet - ich hatte ja so eine Praktische Tabelle aus Zeitung - mit langen Zahlenreien für 1 Jahrhundert gefunden. Mein Listig war schon rieeesig - mit sehr vielen Data-Zeilen. und keine Ahnung was... bestimmt paar 1000 Zeilen...
Auf dem PC mit Internet-Anschluss hab ich dann eine Ein-Zeilen-Formel gefunden - die sogar für sich TAUSEND jahre gültig ist
QB-Zeiten
Ich brauchte in QBasic Mauszeiger... leider hatte es keine Native Funktion - so wie Amiga (!!!!!). Naja - und das obwohl AmigaBAsic auch von MS entw. wurde... Egal... ich hab damals stundenlang den Speicher-Ram analysiert und irgendwann katte ich diee peek-adresse gefunden - das grob die Mauskoord. liefern konnte (so 40x25 oder sowas)... naja hab sogar Malprogs damit geschaffen
Irgendwann bin ich auf QuickBasic umgestiegen. Die Mausroutinen gingen niergendwo mehr. Mein wunder!!! Diese Koordinaten die ich gefunden habe - waren quasi Mauskoord aus der IDE im Hintergrund (QBasic war ja interpreter) - und ich glaub änderungen an Adresse hat nix gebracht, weil in QB es native exen waren... naja lustig....
Hab eine Wochentags-Kalender-Funktion gecodet - ich hatte ja so eine Praktische Tabelle aus Zeitung - mit langen Zahlenreien für 1 Jahrhundert gefunden. Mein Listig war schon rieeesig - mit sehr vielen Data-Zeilen. und keine Ahnung was... bestimmt paar 1000 Zeilen...
Auf dem PC mit Internet-Anschluss hab ich dann eine Ein-Zeilen-Formel gefunden - die sogar für sich TAUSEND jahre gültig ist

QB-Zeiten
Ich brauchte in QBasic Mauszeiger... leider hatte es keine Native Funktion - so wie Amiga (!!!!!). Naja - und das obwohl AmigaBAsic auch von MS entw. wurde... Egal... ich hab damals stundenlang den Speicher-Ram analysiert und irgendwann katte ich diee peek-adresse gefunden - das grob die Mauskoord. liefern konnte (so 40x25 oder sowas)... naja hab sogar Malprogs damit geschaffen

Irgendwann bin ich auf QuickBasic umgestiegen. Die Mausroutinen gingen niergendwo mehr. Mein wunder!!! Diese Koordinaten die ich gefunden habe - waren quasi Mauskoord aus der IDE im Hintergrund (QBasic war ja interpreter) - und ich glaub änderungen an Adresse hat nix gebracht, weil in QB es native exen waren... naja lustig....
LOL sind ja schon einige interessante Beiträge gepostet worden 
Mir ist auch noch was eingefallen. Mein Onkel hatte mir damals auf meinem C64 was als Beispiel programmiert (übrigens war das der Tag, an dem ich dann begann, auch selbst zu programmieren, ich war aber auch erst 10 oder 11). Und zwar ein Programm, das meinen Namen schreibt, indem es jeden Buchstaben einzeln mit kurzer Verzögerung auf den Bildschirm bringt, also so 'ne Art "Schreibmaschinen-Effekt".
Als ich dann mal irgendwas programmieren wollte, wo eine kurze Warteschleife vorkommt, wußte ich leider überhaupt nicht, wie ich das anstellen soll, aber ich wußte ja, daß das "Name aufschreiben" eine Weile dauert, daher hab ich dann bei jeder Warteschleife einfach einen leeren String auf dem Bildschirm mit der "Schreibmaschinen"-Routine geschrieben
das sah dann so aus:
...wobei man korrekterweise das # durch ein Steuerzeichen für "Home" (sowas wie Locate 0,0) ersetzen müßte, was ich hier natürlich nicht kann. Und die 8 müßte durch die Zahl der Buchstaben ersetzt werden - in meinem Fall also wie lang die Warteschleife in etwa dauern soll 
Und ich mußte alles so zusammenquetschen, da eine Code-Zeile im C64-BASIC maximal 80 Zeichen haben durfte und meine Warteschleifen natürlich möglichst einzeilig sein sollten
Wie gesagt, das hab ich in meinen alten Programmen zigmal verwendet, bis ich dann irgendwann rausgefunden hab, daß mir das FORJ=1TO100:NEXT bereits vollkommen reichen würde

Mir ist auch noch was eingefallen. Mein Onkel hatte mir damals auf meinem C64 was als Beispiel programmiert (übrigens war das der Tag, an dem ich dann begann, auch selbst zu programmieren, ich war aber auch erst 10 oder 11). Und zwar ein Programm, das meinen Namen schreibt, indem es jeden Buchstaben einzeln mit kurzer Verzögerung auf den Bildschirm bringt, also so 'ne Art "Schreibmaschinen-Effekt".
Als ich dann mal irgendwas programmieren wollte, wo eine kurze Warteschleife vorkommt, wußte ich leider überhaupt nicht, wie ich das anstellen soll, aber ich wußte ja, daß das "Name aufschreiben" eine Weile dauert, daher hab ich dann bei jeder Warteschleife einfach einen leeren String auf dem Bildschirm mit der "Schreibmaschinen"-Routine geschrieben

Code: Alles auswählen
A$="":FORI=1TO8:PRINT"#":PRINT MID$(A$,1,I):FORJ=1TO100:NEXTJ:NEXTI

Und ich mußte alles so zusammenquetschen, da eine Code-Zeile im C64-BASIC maximal 80 Zeichen haben durfte und meine Warteschleifen natürlich möglichst einzeilig sein sollten

Wie gesagt, das hab ich in meinen alten Programmen zigmal verwendet, bis ich dann irgendwann rausgefunden hab, daß mir das FORJ=1TO100:NEXT bereits vollkommen reichen würde

Ich kann mich noch erinnern, dass ich immer tausende IF-Abfragen in QB geproggt habe.
Also immer:Irgendwie hatte ich damals nicht realisiert, dass man das auch mit Schleifen machen kann
Wenigstens konnte ich danach wieder meine Quelltexte kompilieren, das funktionierte nämlich nicht mehr, wenn sie > 64 kb wurde
Also immer:
Code: Alles auswählen
IF A = 1 THEN B = 10
IF A = 2 THEN B = 12
IF A = 3 THEN B = 14
IF A = 4 THEN B = 16
IF A = 5 THEN B = 18
...

Wenigstens konnte ich danach wieder meine Quelltexte kompilieren, das funktionierte nämlich nicht mehr, wenn sie > 64 kb wurde

Now these points of data make a beautiful line.
And we're out of beta. We're releasing on time.
And we're out of beta. We're releasing on time.
Jo ... ich hab mir damals auch ne eigene Val()-Funktion geschriebenLaurin hat geschrieben:Ich kann mich noch erinnern, dass ich immer tausende IF-Abfragen in QB geproggt habe.
Also immer:Irgendwie hatte ich damals nicht realisiert, dass man das auch mit Schleifen machen kannCode: Alles auswählen
IF A = 1 THEN B = 10 IF A = 2 THEN B = 12 IF A = 3 THEN B = 14 IF A = 4 THEN B = 16 IF A = 5 THEN B = 18 ...
![]()
Wenigstens konnte ich danach wieder meine Quelltexte kompilieren, das funktionierte nämlich nicht mehr, wenn sie > 64 kb wurde

Code: Alles auswählen
IF Text = 100 THEN Zahl = 100

Is scho interezant wie man sich immer behilft, wo man noch von kaum was ne ahnung hat. Und ich hatte damals nichts auser die QBasic 4.5 hilfe sammt der Interpreter und der IDE ... das erste was ich gemacht hab war der Play-Befehl auszuschöpfen. Ich hab von meinem damaligen Notenheft einige Lieder abgeschrieben

MFG PMV
Bei mir wars so - ich war wohl 8 und hatte nen Atari800XL (<-- immernoch Goil-find
) aber ohne jegliches Zubehör auser Netzteil und Monitor natürlich. Nun ich proggte und proggte ....
So manch kleines TextModeGame ist entstanden - ich dachte - das ists schon - wenn man den Computer ausschaltet isses halt weg. Kannte ja nix anderes. Also habe ich jedes mal wenn meine Eltern gerne mal wieder ein Spiel spielen wollten eins geproggt (manchmal über mehere Wochen) - dann hamwas gespielt - und mir war völlig klar das wenn ich den Computer abschalte das alles weg ist. War aber kein Problem - war ja normal für mich.
Als ich dann älter wurde - und nen Atari1024ST mit DISKETTENLAUFWERK unter den Fingern hatte - hatte ich mich rein psychisch immer noch nicht damit abgefunden tatsächlich auch mal etwas zu speichern! Ich hatte auch nie ne Diskette.
Ich glaube dabei habe ich irgendwie nen Dachschaden bekommen
- so daß ich mich fast immernoch sträube jetzt gleich hier unten den "Absenden"/Speichernbutton zu klicken. 

So manch kleines TextModeGame ist entstanden - ich dachte - das ists schon - wenn man den Computer ausschaltet isses halt weg. Kannte ja nix anderes. Also habe ich jedes mal wenn meine Eltern gerne mal wieder ein Spiel spielen wollten eins geproggt (manchmal über mehere Wochen) - dann hamwas gespielt - und mir war völlig klar das wenn ich den Computer abschalte das alles weg ist. War aber kein Problem - war ja normal für mich.

Als ich dann älter wurde - und nen Atari1024ST mit DISKETTENLAUFWERK unter den Fingern hatte - hatte ich mich rein psychisch immer noch nicht damit abgefunden tatsächlich auch mal etwas zu speichern! Ich hatte auch nie ne Diskette.

Ich glaube dabei habe ich irgendwie nen Dachschaden bekommen


Achtung: kein PB'ler - habt bitte erbarmen.



hallo,
Programmierfehler oder Programme die auf einmal nicht mehr laufen gehören woll dazu, hier meine Geschichte:
Wir haben zur damaligen Amiga Messe 1998 die Software für die Steuerung der Monitorwand für AMIGA programmiert. Die Software ist bei uns daheim in allen Varianten auf den Amigas perfekt gelaufen (Bis dahin gabs die Software nur für den PC). IOM ist mit der Software nach Köln gefahren und baut die Wand auf, und zu großen entsetzen lief die Software nicht mehr und keiner wußte warum. So haben wir uns hingesetzt und haben schnell eine neue Version der Software erstellt und diese per Expressboten nach Köln geschickt, und auch diese Variante lief nicht in Köln. So haben wir uns ins Auto gesetzt und sind auch mit unseren Amigas nach Köln. Als wir ankammen haben schon alle gewartet. Wir haben die Software neu installiert und schon gings.... Und bis heute weiß keiner warum es nicht gelaufen ist. Dannach lief die Software noch lange auf vielen Amiga-Events und lange zeit in Kinos zur Werbung.
Wenns Interessiert hier, der link zum damaligen Artikel im Amiga-Magazin: http://www.amiga-magazin.de/magazin/a01 ... ter98.html
mfg
Stefan
Programmierfehler oder Programme die auf einmal nicht mehr laufen gehören woll dazu, hier meine Geschichte:
Wir haben zur damaligen Amiga Messe 1998 die Software für die Steuerung der Monitorwand für AMIGA programmiert. Die Software ist bei uns daheim in allen Varianten auf den Amigas perfekt gelaufen (Bis dahin gabs die Software nur für den PC). IOM ist mit der Software nach Köln gefahren und baut die Wand auf, und zu großen entsetzen lief die Software nicht mehr und keiner wußte warum. So haben wir uns hingesetzt und haben schnell eine neue Version der Software erstellt und diese per Expressboten nach Köln geschickt, und auch diese Variante lief nicht in Köln. So haben wir uns ins Auto gesetzt und sind auch mit unseren Amigas nach Köln. Als wir ankammen haben schon alle gewartet. Wir haben die Software neu installiert und schon gings.... Und bis heute weiß keiner warum es nicht gelaufen ist. Dannach lief die Software noch lange auf vielen Amiga-Events und lange zeit in Kinos zur Werbung.
Wenns Interessiert hier, der link zum damaligen Artikel im Amiga-Magazin: http://www.amiga-magazin.de/magazin/a01 ... ter98.html
mfg
Stefan
Jaja, die Typischen Anektdoten *vorsichhinerinner*
Da hab ich einiges, was alle hier verstehen sollten, da ich mit PB angefangen hab und dabei geblieben bin und somit dabei alle Fehler gemacht habe.
1.)Der Variablen-Proceduren-Fehler
Preisfrage, was ist der Unterschied zwischen
und
?
Rüchtisch. Dat erste is ne variable, dat zweite ne Procedure. Ich wusste es auch, aber ich habe 5 Tage lang gesucht, bis ich gerallt hab, warum das in der If-abfrage auszuführende nicht ausgeführt wird.
2.)Die Bilddaten-kopier-Methode
Frage: Was ist quatsch?
Antwort : ALLES!
Denn:
1.) gibt es SetdiBits
2.) musste ich beim zurückeinfügen die 128 wieder hinzufügen
3.) hätte ich rein theoretisch die Daten auch gleich in Punkt() einlesen können ohne Farbe und Red(),Green(),Blue().
3.)Mein erster MP3-Player
Das Teil (Scratchup, ein Doppel-Mp3-Player mit 2 Abspielspuren und 10 per Knopfdruck auslösbaren Soundeffekten) war meine erste etwas umfangreichere Arbeit. Würde ich es heute Schreiben: 200 Zeilen
OriginaleCode: 1000 Zeilen.
Wenn ich ihn heute so sehe, kommen mir folgende Gedanken:
Procedure, was ist das?
Schleife, was ist das?
Parameter, Lokale Variablen, Konstanten zur Menu- und Gadgetbenennung, was ist das?
4.)Fehler im Reallife.exe
Die gab es bei mir auch ein Paar:
1.)In einer Englischklausur nen If-Satz mit EndIf beendet (hab´s zum Glück noch rechtzeitig bemerkt)
2.)Der Ständige Wunsch, Tafelbilder mit Strg+C zu kopieren
3.)Der hin und wieder auftretende Verlust jeglichen Zeitgefühls
4.)Die übernahme von PB-Syntax in andere Fächer:
Beispiel:
Physikklausur:
t=6,2Sekunden
Schwingungsdauer=2 Sekunden
Errechnen der Höhe der Schwingung bei t.
Mein erster Satz: t=t-6s
Ich glaub, ich hatte das Größte Fragezeichen der Klausur daneben stehen ^^
5.)Der Begin und End Fehler
Sorry, Delphi.
Test: Vorgegebene Klassen, musste nur den Quelltext in die Proceduren einsetzen.
Hab den Test "verhauen"(nur ne 1 minus), Grund: Hatte aus versehen nicht hinter, sondern vor dem Begin bei einer Procedure angefangen zu schreiben und so alles nach unten geschoben. Ich hab den Fehler 10 Minuten gesucht, aber nicht gefunden. Als ich´s dann auf dem Beamer sah, stach es direkt ins Auge.
6.)Fehler alleine Finden
Ich hab es sehr oft, dass ich einen Fehler partout nicht Finde. Sobald ich aber jemand anderem Mein Leid klage und ihm den Quelltext zeige, finde ich den Fehler, bevor der Andere ihn findet.
So, dat war´s
Hab am meisten
Da hab ich einiges, was alle hier verstehen sollten, da ich mit PB angefangen hab und dabei geblieben bin und somit dabei alle Fehler gemacht habe.
1.)Der Variablen-Proceduren-Fehler
Preisfrage, was ist der Unterschied zwischen
Code: Alles auswählen
if imfeld=1
Code: Alles auswählen
if imfeld()=1
Rüchtisch. Dat erste is ne variable, dat zweite ne Procedure. Ich wusste es auch, aber ich habe 5 Tage lang gesucht, bis ich gerallt hab, warum das in der If-abfrage auszuführende nicht ausgeführt wird.
2.)Die Bilddaten-kopier-Methode
Code: Alles auswählen
For lang=0 to bildlang
For hoch=0 to bildhoch
farbe.l=point(lang,hoch)
Punkt(hoch,lang)\red=red(farbe)-128
Punkt(hoch,lang)\green=green(farbe)-128
Punkt(hoch,lang)\blue=blue(farbe)-128
next
next
Antwort : ALLES!
Denn:
1.) gibt es SetdiBits
2.) musste ich beim zurückeinfügen die 128 wieder hinzufügen
3.) hätte ich rein theoretisch die Daten auch gleich in Punkt() einlesen können ohne Farbe und Red(),Green(),Blue().
3.)Mein erster MP3-Player
Das Teil (Scratchup, ein Doppel-Mp3-Player mit 2 Abspielspuren und 10 per Knopfdruck auslösbaren Soundeffekten) war meine erste etwas umfangreichere Arbeit. Würde ich es heute Schreiben: 200 Zeilen
OriginaleCode: 1000 Zeilen.
Wenn ich ihn heute so sehe, kommen mir folgende Gedanken:
Procedure, was ist das?
Schleife, was ist das?
Parameter, Lokale Variablen, Konstanten zur Menu- und Gadgetbenennung, was ist das?
4.)Fehler im Reallife.exe
Die gab es bei mir auch ein Paar:
1.)In einer Englischklausur nen If-Satz mit EndIf beendet (hab´s zum Glück noch rechtzeitig bemerkt)
2.)Der Ständige Wunsch, Tafelbilder mit Strg+C zu kopieren
3.)Der hin und wieder auftretende Verlust jeglichen Zeitgefühls
4.)Die übernahme von PB-Syntax in andere Fächer:
Beispiel:
Physikklausur:
t=6,2Sekunden
Schwingungsdauer=2 Sekunden
Errechnen der Höhe der Schwingung bei t.
Mein erster Satz: t=t-6s
Ich glaub, ich hatte das Größte Fragezeichen der Klausur daneben stehen ^^
5.)Der Begin und End Fehler
Sorry, Delphi.
Test: Vorgegebene Klassen, musste nur den Quelltext in die Proceduren einsetzen.
Hab den Test "verhauen"(nur ne 1 minus), Grund: Hatte aus versehen nicht hinter, sondern vor dem Begin bei einer Procedure angefangen zu schreiben und so alles nach unten geschoben. Ich hab den Fehler 10 Minuten gesucht, aber nicht gefunden. Als ich´s dann auf dem Beamer sah, stach es direkt ins Auge.
6.)Fehler alleine Finden
Ich hab es sehr oft, dass ich einen Fehler partout nicht Finde. Sobald ich aber jemand anderem Mein Leid klage und ihm den Quelltext zeige, finde ich den Fehler, bevor der Andere ihn findet.
So, dat war´s
Hab am meisten

Falsch zugeordnetes Zitat des Tages: "O'zapft is" - Edward Snowden 

Mein erstes "richtig" umfangreiches Programm (für meine Verhältnisse) war eine Video-Verwaltung für den Amiga. Programmiert in Blitz Basic. Nach diversen "Verbesserungen" hatte ich satte 5000 Zeilen Code zu überblicken (Spaghetti-Code par Excellence!). Was allerdings auch ein wenig Blitz Basic zu verantworten hatte. Denn mit neueren Versionen der Sprache wurden auch interessante, für mich nützliche Befehle eingeführt, wodurch ich den Code auf unter 3000 Zeilen verkürzen konnte - bei gleichem Funktionsumfang.
Dennoch würde ich heute anders an die Sache herangehen. Früher habe ich fast alle Unterroutinen per GOSUB angesprungen, heute würde ich es mit Procedures machen. Aber im Grunde habe ich mir bei dem Programm von Anfang an viele Gedanken gemacht und würde auch heute (nach sicher 5 Jahren) schnell wieder mit dem Code zurechtkommen.
Dennoch würde ich heute anders an die Sache herangehen. Früher habe ich fast alle Unterroutinen per GOSUB angesprungen, heute würde ich es mit Procedures machen. Aber im Grunde habe ich mir bei dem Programm von Anfang an viele Gedanken gemacht und würde auch heute (nach sicher 5 Jahren) schnell wieder mit dem Code zurechtkommen.