Ist es schädlich, mit BASIC anzufangen? (Diskussion aus "Commodore Rechner auf galaktischer Bildungsmission...")

  • "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration." Edsger Dijkstra 1975

    Teilweise stimmt das. Ich habe in der Schule Basic gelernt, danach an der FH Pascal.

    Probleme hatte ich damit keine. Andere Komilitonen hatten auch zuvor schon Basic gelernt, die kamen, angefangen mit den fehlenden Zeilennummern, absolut nicht damit zurecht.

  • Es soll ja auch ein 8-Bit Basic (auf einem CBM 3032) eingesetzt werden.

    Richtig, so ist es und natürlich werden 5 jährige daran das moderne Programmieren erlenen - und zwar in Vollzeitkursen... =O8o


    SCHERZ!!! NEIN, NEIN und nochmals NEIN. Bitte interpretiert da nicht mehr rein, als ich Euch an Informationen gegeben habe.


    Die PET's dienen als Sidekick, um den Jugendlichen (und nicht Kleinkindern) zu zeigen, was für die meisten von uns früher einmal Computerei bedeutete. Wie begrenzt die Möglichkeiten waren, wie rudimentär vieles war. Hierzu werden die Jugendlichen ein paar ASCII Bilder drucken, ein bis zwei kleine Listings abtippen - vornehmlich ein kleines Spiel oder so und das dann spielen, that's it. Dann geht's über zum eigentlich Teil des Projekts, dem Astro Pi.


    Dennoch würde ich diesen Sidekick nicht als lustig oder gar unwichtig betrachten - Geschichte ist ein Teil der Gegenwart. Wenn ich nicht ganz fehlinformiert bin, ist das auch so ein wenig der Grundsatz des VzEkC und so mancher öffentlich besuchbaren Ausstellung?!?!


    Der Atro Pi ist das eigentliche Objekt, auf dem der Fokus liegt und hier wird dann schlussendlich - eben im Rahmen dieser Challenge - das Interesse für die MINIT Fächer geweckt.


    Keiner hat ernsthaft vor, auf einem PET modernes Programmieren zu vermitteln. Ein Schelm, wer so etwas denkt ;)

  • ich habe auch mit Basic begonnen und denke trotzdem heute in OOP-Pattern. Die Devise heisst doch eher sowohl als auch statt entweder oder. Ich kann nur jedem Hochsprachen-Guru empfehlen, ein rekursives Quicksort mal in Assembler zu implementieren. Dann weiss er, wozu Stacks, Stackpointer, Rücksprungadressen und Heaps gut sind und was Compiler und Laufzeitlibs zu leisten haben 😉

    Und wie soll jemand Java oder Smalltalk wirklich zu schätzen wissen, wenn er zuvor nicht durch die GOTO-Hölle von Basic musste:wand:

  • ich habe auch mit Basic begonnen und denke trotzdem heute in OOP-Pattern. Die Devise heisst doch eher sowohl als auch statt entweder oder. Ich kann nur jedem Hochsprachen-Guru empfehlen, ein rekursives Quicksort mal in Assembler zu implementieren. Dann weiss er, wozu Stacks, Stackpointer, Rücksprungadressen und Heaps gut sind und was Compiler und Laufzeitlibs zu leisten haben 😉

    Ersteres ist für mich täglich Brot (im eigentlichen Sinne der Wortes) und zweiteres eine nette Übung, aber für Softwareentwickler nicht mehr wirklich relevant. Mit den Sprachen mit denen ich beruflich unterwegs bin, bin ich soweit von realer Hardware entfernt, dass das einfach keine Bedeutung mehr hat. Meine Typescript-Programme werden nach Javascript übersetzt und von einer Javascript-Engine in einem Browser abgearbeitet. In .NET ist es nicht viel anders.


    Ich habe auch mit Basic begonnen und habe das viel zu lange (5 Jahre) gemacht. Danach C und Turbo Pascal. Es hat lange gedauert und auch einige Überwindung gekostet, auf objektorientierte Programmierung umzustellen. Erst ein konkretes Projekt, wo es einfach nicht mehr anders ging, hat schließlich den Umstieg bewirkt. Solche Hürden sollten man Programmieranfängern nicht in den Weg legen.



    Ich habe meine Kinder zum Programmieren angeleitet und wir sind direkt mit Objekten eingestiegen. Und das war überhaupt kein Problem mit dem klassischen Auto-Beispiel mit Eigenschaften und Methoden. Dass ein Auto eine Farbe hat und auf Kommando vorwärts fährt, das leuchtet jedem Kind ein. Und das wird nicht von aussen gefahren. Das fährt selbst. In typischem Basic kann man sowas überhaupt nicht abbilden, vielleicht annähernd simulieren. Mit vielen Klimmzügen.


    In Scratch ist es die Katze oder ein anderes Objekt. Das sind keine Marjonetten, die von aussen gesteuern werden, wie man das in nicht objektorientierten Sprachen funktional programmieren würden. In Scratch "lebt" die Katze, hat ihr eigenes Programm, reagiert selbstständig auf Events und Kollisionen.

    Wenn ich zwei Katzen haben will, dann erzeuge ich zwei Instanzen, die sich autark und unabhängig voneinander bewegen. Dagegen ist Basic-Programmierung einfach nur Krampf. ;)


    Das sind jetzt Beispiele für Kinder. In einem Buchhaltungsprogramm setzt man Objekte natürlich anders ein. :mrgreen:

    • Official Post

    Die Diskussion läuft eigentlich am Ziel vorbei, oder?

    Wenn ich die Intention des CBM Museum Wuppertal richtig verstanden habe, geht es darum den Kids unsere alten Computer zu zeigen (und hoffentlich Begeisterung für die Thematik zu wecken!)

    Auch gehts vielleicht darum, den Kids zu zeigen 1.) Wie ein Computer funktioniert, in welche Bestandteile er zerfällt und 2.) was ein Computerprogramm ist, bzw in ein paar Stunden zu vermitteln was Programmieren ist.


    Da könnte ich mir kaum einen besseren Ansatz vorstellen als Basic an einem 8 Bitter.


    Die ganze andere Diskussion hier zielt mir eher auf das professionelle / akademische Umfeld .

  • Ich seh das folgendermaßen:


    Als ich Basic gelernt habe ( CBM ) in der Schule (1983 ? ), da gabs nix anderes für Schüler und es gab keine modernen Sprachkonzepte wie heute in der Schule ( Objektiorientierung, etc.).

    Andere Sprachen der damaligen Zeit waren eher wissenschaftlich bzw. für angehende Akademiker ( Fortran, Pascal ).

    Wer in der Wirtschaft gearbeitet hat , machte oft Cobol.

    Ich spreche da so von der Zeit Ende der 1980er.

    Ich habe dann Ende der 80er Assembler auf IBM Großrechnern gelernt und dann später Cobol für alles wo es nicht auf Tempo ankommt.

    Ab Mitte der 90er kamen dann die Änderungen vor allem wegen der grafischen Oberflächen ( Oracle Forms, Visual Basic, Visual C#,...).


    Würde ich heute als Kind oder Jugendlicher anfangen, würde ich es von Ziel abhängig machen. Wenn ich nur was zum spielen brauche um schnell Ergebnisse zu haben, dann vielleicht Swift im Playground ? Oder wenn Windows, dann sowas wie C# ?

    Wenn ich beruflich als Jugendlicher reinschnuppern möchte, dann eher moderne Sprachen aus der Web Technologie wie Javascript oder Python.

  • Na, im Endeffekt geht es schon um die "Challenge". Letztlich ist es also schon Ziel, daß man was baut, was dann auch wirklich eine Chance hat auf der ISS in den Pi gespielt zu werden. Dafür ist natürlich nicht nur die Programmiererei wichtig - viel spannender ist wahrscheinlich erstmal eine ziemlich coole Idee. Kommt ja auch bißchen drauf an, wieviel Leute/Gruppen da überhaupt mitmachen bzw. das Teil kennen.


    Die Geschichte mit dem PET ist ja quasi sowas wie die "Vorübung" an "echter historischer Hardware". Und er hat ja auch geschrieben, daß sie das auf jeden Fall so machen werden, schon weil es jetzt so angemeldet und abgenickt ist. Außerdem ist es ja schon auch eine sehr schöne Sache.


    Nur: Davon unbenommen ist eben BASIC sowas von dermaßen old-school, daß es eben schon 1982 Leute zu solch krassen Kommentaren animiert hat ... "... students that have had a prior exposure to BASIC: as potential programmers they are
    mentally mutilated beyond hope of regeneration." Also da steht nicht "no hope" oder "hopeless" sondern "beyond hope" ... und "der Typ" war ein "Sprachenfetischist". :)


    Ich glaube auch er meint evtl. gar nicht so die Worte oder Zeilennummern oder so, sondern wirklich das, was hier ja auch viele wirklich schön an der Sprache finden. Eben genau dieses Einschalten - Los gehts - keinerlei Vorüberlegung - keinerlei Strukturierung - keine Datenmodelle (wozu auch, das ergibt sich eh erst unterwegs) - zu seiner Zeit auch keine Funktionen und Rekursion geht auch nur so lala - von OOP hat da noch keiner geredet, aber sowas wie structs konnte man zumindest schon bauen. Und genau diese Art des Herangehens ist es, die man da "kaputtmacht". Das ist OK, soweit es um 64kB Shooter geht und man das Level nie verlassen will, bei mathematischen Sachen wird das schon problematisch, sobald man die (kleinen) Angebote der Sprache verläßt. Nicht, daß das jetzt wirklich oft gebraucht wird ...


    Außerdem - man sollte es natürlich bestimmt auch nicht überbewerten (das Zitat). Heute würde man sowas wahrscheinlich einfach einen "Rant" nennen und die Leute würde sich daran erfreuen.




    Von den modernen Sachen gefällt mir Scratch für kleinere Kinder auch ganz gut. Das habe ich auch schon mal live bei so einer Museumsveranstaltung gesehen, und das schafft es auch völlig unvobelastete Kinder abzuholen und zu animieren, selbst was damit auszuprobieren. Die Katze kann schon wirklich was.

    Ein Logo würde es wahrscheinlich da auch gut tun. Halt nicht so komplex - nur wer will heute schon Strichgrafiken haben ?


    Als echte Einstiegs"sprache" habe ich neulich mal in einem Podcast das Java Script als recht ungewöhnliche Empfehlung gehört. Das macht aber schon überaus Sinn, ist ziemlich "komplett" und kann v.a. quasi überall(!) laufen.



    Letztlich ist es eh' wohl mehr von den Problemen und dem Zeitbudget abhängig, was da überhaupt gemacht wird/werden kann. Damit das im Weltall dann aber auch schön durchläuft, sind so ein paar Sachen schon wichtig - siehe das schöne Beispiel mit dem "A0" vs. "AO" oben.


    Apropos BASIC. In QBasic gibt es sogar sowas wie eine echte Eventbehandlung, quasi als Sprachstandard. Benutzt hat das aber bestimmt höchselten mal jemand. Dabei ist das schon auch ein ziemlich witziger "new-school" Ansatz. Das sonst sehr gute BBC Basic kann DAS z.B. so einfach auch nicht. Und Threading (Nebenläufigkeit) könnte auch schwierig werden - dann aber bei beiden.

    -- 1982 gab es keinen Raspberry Pi , aber Pi und Raspberries

    Edited once, last by ThoralfAsmussen: typos ().

  • zur Erheiterung schlage ich mal diese Lektüre vor: Real Programmers don't use Pascal. Dieser Artikel ist Kult und spricht mir 100% aus dem Herzen.


    Ich selbst habe 1977 Fortran und Assembler gelernt (auf einer Univac 9200 !). Fortran habe ich nie gebraucht, vom Assembler zehre ich noch heute. Computersprachen kommen und gehen - ein echter Programmierer braucht einen guten Macro-Assembler - sonst nichts ;)


    btw: bei uns im Technikum29 werden die alten Computer in ACT-V, RPG-II und APL programmiert, oder wie unsere Tabelliermaschine gleich mit dutzenden Patchkabeln auf dem Steckbrett. Wer die Hölle mitgemacht hat lächelt nur über Basic-Spaghetticode !


    Roland

  • Die Diskussion läuft eigentlich am Ziel vorbei, oder?

    Wenn ich die Intention des CBM Museum Wuppertal richtig verstanden habe, geht es darum den Kids unsere alten Computer zu zeigen (und hoffentlich Begeisterung für die Thematik zu wecken!)

    Ja, genau, exakt so und keinen Deut anders ist das zu verstehen, habe ich ja ein paar Posts vorher auch noch mal etwas (wenn auch übertrieben albern) verdeutlicht.

    Auch gehts vielleicht darum, den Kids zu zeigen 1.) Wie ein Computer funktioniert, in welche Bestandteile er zerfällt und 2.) was ein Computerprogramm ist, bzw in ein paar Stunden zu vermitteln was Programmieren ist.

    Korrekt, das ist der pädagogisch, praktische Teil hinter dem Vintage Computer Teil. Dieser Teil macht 10-15 % maximal vom Gesamtprojekt "Astro Pi" aus.

    Da könnte ich mir kaum einen besseren Ansatz vorstellen als Basic an einem 8 Bitter.

    So sehen das alle Beteiligten des Projekts ebenfalls - und da sich das Ganze in einem wissenschaftlichen Rahmen, ähnlich Jugend forscht bewegt, müssen das einfach Standesgemäß PET's und keine Homecomputer ala C64 sein. Außerdem hinterlässt allein das Gehäuse eines PET's einen Eindruck, den ein flacher C64 mit viel SID Getöse nicht so vermittelt, wie es eben ein stummer PET mit seinem riesen Floppylaufwerk tut.

    Die ganze andere Diskussion hier zielt mir eher auf das professionelle / akademische Umfeld .

    Vor allem größtenteils aus der Sicht von Vollblut Berufsentwicklern geführt. Dass ein waschechter Berufsprogrammierer seine eigenen Kinder ganz anders zu motivieren weiß, sich mit dem Programmieren auseinander zu setzen, setze ich voraus.


    Das kann man aber doch bitte nicht auf die Allgemeinheit beziehen. In Zeiten von DIY Selbstüberschätzungsvideos auf Youtube einerseits und der Generation ahnungslos, die nicht mal mehr weiß, dass Smartphones sogar einen Ausschaltknopf haben andererseits, kann es nicht verkehrt sein gerade den Minimalismus unserer Generation (wir reden hier schließlich nicht von "Omas und Opas Kriegszeiten") in solche Bildungsprojekte mit einzubinden.


    Und ja, auch wenn es viele für unmöglich halten, das Interesse und die Neugier ist rege, keiner der Jugendlichen muss an seinen Stühlen festgebunden werden.

  • Basic --> warum nicht. Es ist einfach, schnell zu erlernen und die ersten Erfolge stellen sich schnell ein.


    Mein Anfang war ein Sharp PC-1401 mit dem ich Basic gelernt habe.

    Und dieser Grundstein besteht bis heute.

    Ich habe später Fräsmaschinen programmiert und heutzutage eine CMM Maschine.

    Der Unterschied zu Basic ist marginal und schnell adaptierbar.


    Die Grundlage ist reinstes Basic mit Sonderbefehlen für die Maschinen. Ob eine IF Then Schleife auch ein ElseIF hat, ist schnell erfass- und anwendbar.

    Später habe ich mit VBA und VB2015 eigene (auch OOP) Programme geschrieben, dessen Grundlage ebenso Basic ist. Das Objektorientierte Programmieren ist dann schon ein Sprung, aber nur wenn es nötig ist. Kleine Programme (früher auch Spiele usw) sind locker in Basic schreibbar.


    Wie in anderen Beiträge bereits geschrieben verwende ich auch heute noch die kleinen 8-bit Sharps PC-E500S, PC-G850V, PC-1475 mit Erfolg auf Arbeit.

    Programme für sich ständig wiederholte Berechnungen lassen sich damit rasend schnell schreiben und anwenden. Die neuen grafischen TR sind selten brauchbar und können hier nicht mithalten. Handys gleich gar nicht (auch wenn es Basic für Handys gibt).


    Zu den Sharps (Casio's) gibt es noch richtige Bedienungsanleitungen, die einen die wenigen Basic Befehle erklären. Aber eben auch umfangreiche mathematische Befehle, so das alle Berechnungen gemacht werden können. Vorgefertigte Prg gibt es außerdem zu Hauf, an denen man lernen und stibitzen kann.


    Zudem wird man am Anfang nicht mit Befehlen überschüttet. Grafikausgaben kann man als 1. Ausbaustufe betrachten. Auch einen Drucker ansteuern ist dann cool. Wer dann noch Lust hat, für den steht die OOP für größere Projekte offen Doch dann mus man schon etwas Erfahrung haben.


    Ob man mit einem Commodore oder Sharp oder sonstwas anfängt ist völlig egal. Ich finde BASIC ist ein guter Anfang und Erfolge sind oft wichtiger als das Beherschen einer komplexen PrgSprache.


    In diesem Sinne -- einfach anfangen ... ::pc::

    ... aus der Matrix :arrow: Peter

  • btw: bei uns im Technikum29 werden die alten Computer in ACT-V, RPG-II und APL programmiert, oder wie unsere Tabelliermaschine gleich mit dutzenden Patchkabeln auf dem Steckbrett. Wer die Hölle mitgemacht hat lächelt nur über Basic-Spaghetticode !

    In der Tat, ihr seid da noch einmal auf einem ganz anderen Level unterwegs und wisst trotzdem Schulgruppen damit zu begeistern. Ist es Eure Intention, den Kindern mittels Lochkarten ernsthaft programmieren beizubringen? Ich denke nicht. ;)

  • ...

    In der Tat, ihr seid da noch einmal auf einem ganz anderen Level unterwegs und wisst Schulgruppen damit zu begeistern, korrekt? Ist es Eure Intention, den Kindern mittels Lochkarten programmieren beizubringen? ;)

    Zurück zum Ernst: Heribert Müller hat den Kids C beigebracht auf einem Arduino, hat mit Processing experimentiert und hat sie Lego-Mindstorms programmieren lassen. Die Lochkarten kamen m.W, nur zur Texterfassung und zum Musikmachen dran.

    Auf unseren PETs und CBMs wurde auf Kindergeburtstagsfeiern im technikum29 nur gespielt.


    Im Augenblick ruhen die Aktivitäten mit Kindern wg. anderer Prioritäten (und Corona)


    Roland

  • Die Probleme bei nicht deklarierten Variablennamen kommen erst später, bei der Ausführung. Da läuft so ein Programm im täglichen Einsatz problemlos bis mal ein Programmzweig durchlaufen wird in dem ein Tippfehler ist wie z.B. Ao anstatt A0 und dann knallt es. Vorzugsweise dann wenn was wichtiges/zeitkritisches damit gemacht werden soll.

    Das passiert aber nicht nur in BASIC. Sowas passiert eher, wenn die Software nicht anständig getestet wird. Idealerweise sollte der Programmierer einen Satz Testdaten erzeugen, die jeden Zweig mindestens ein Mal durchlaufen. Sonst kann ein Programm, das 2 Jahre fehlerfrei läuft, mit einem Syntax Error abbrechen - so passiert in der Bank in der ich 12 Jahre gearbeitet habe. Und die haben nicht in BASIC programmiert...


    Ich habe PASCAL und BASIC etwa zeitgleich gelernt - PASCAL im Informatikunterricht, BASIC in meiner Freizeit. Viele Konzepte von PASCAL lassen sich

    in Basic zumindest nachbilden:

    - Unterprogramme (GoSUB)

    - until mit if-goto ersetzen

    - Variablendeklaration in REM-Zeilen (am besten mit Erklärung, wofür die Variable genutzt wird)

    - Einrücken von Schleifenstrukturen

    - und das ganze Programm sauber strukturieren und mit REM Zeilen dokumentieren


    Und nachdem ich dann einige Jahre in Basic programmiert habe, habe ich an der Uni wieder als Tutor PASCAL Programme bewertet und korrigiert. Niemand hat mir vorgeworfen, mein STIL sei versaut. Die Profs waren eher froh, wenn jemand überhaupt programmieren konnte, In den späten 1980ern war das nämlich nicht weit verbreitet.


    Gruß, Jochen

  • Die Diskussion hat sich ja längst verselbstständigt. ;)

    In dem Kontext fällt mir jetzt gerade überhaupt erst mal der Titel für diesen ausgekoppelten Thread auf, der erinnert mich an ähnliche Diskussionen der 80er und 90er - tragen Homecomputer zur Volksverdummung bei? Sorgt das Daddeln für Vereinsamung der Jugend? hach, herrlich:)

  • Jeder so, wie er kann oder mag. Ich glaube wir können hier zumachen…


    xesrjb

    "Der Wein mit der Pille ist im Becher mit dem Fächer. Im Pokal mit dem Portal ist der Wein gut und fein

  • Die Probleme bei nicht deklarierten Variablennamen kommen erst später, bei der Ausführung. Da läuft so ein Programm im täglichen Einsatz problemlos bis mal ein Programmzweig durchlaufen wird in dem ein Tippfehler ist wie z.B. Ao anstatt A0 und dann knallt es. Vorzugsweise dann wenn was wichtiges/zeitkritisches damit gemacht werden soll.

    Das passiert aber nicht nur in BASIC. Sowas passiert eher, wenn die Software nicht anständig getestet wird. Idealerweise sollte der Programmierer einen Satz Testdaten erzeugen, die jeden Zweig mindestens ein Mal durchlaufen. Sonst kann ein Programm, das 2 Jahre fehlerfrei läuft, mit einem Syntax Error abbrechen - so passiert in der Bank in der ich 12 Jahre gearbeitet habe.

    Sowas passiert nur, wenn man Interpreter verwendet, die erst zur Laufzeit die Syntax prüfen. ;)

    Das mit dem "jeden Zweig einmal durch laufen" ist akademische Theorie. Kann in der Praxis niemand bezahlen. Kann sein, dass die NASA ihre Flight-Computer so programmiert hat. ;)

  • Kann sein, dass die NASA ihre Flight-Computer so programmiert hat. ;)

    womit wir dann zur Apollo Mission kommen, die wiederum von der Sternwarte Bochum mitgehört wurde und schon sind wir wieder beim Astro Pi - könnte ein schöner Kreislauf über sieben Ecken draus werden 8o

  • Ich habe PASCAL und BASIC etwa zeitgleich gelernt - PASCAL im Informatikunterricht, BASIC in meiner Freizeit. Viele Konzepte von PASCAL lassen sich

    in Basic zumindest nachbilden:

    - Unterprogramme (GoSUB)

    - until mit if-goto ersetzen

    - Variablendeklaration in REM-Zeilen (am besten mit Erklärung, wofür die Variable genutzt wird)

    <X


    Macht das denn Spaß, strukturierte Programmierung immer nur nachzubilden? Warum nimmt man dann nicht gleich eine Sprache, die das richtig kann?


  • Ich verdiene seit ca. 15 Jahren mein Geld mit BASIC-Programmierung, in diesem Fall für die Testanlagen für den Fertigungsendtest bei uns. Die technische Grundlage des Systems liegt halt in den 70ern/80ern und wird Stück für Stück umgestellt - in ein paar Jahren wird alles durch C# ersetzt sein...


    Ich würde nicht sagen das ich durch BASIC versaut währe, ich fühle mich in C, Assembler und VBA genauso heimisch.

    Ja, BASIC ist aus heutiger Sicht ziemlich eingeschränkt, aber genau darum programmiere ich darin auch so gerne...


    ... und Variablendeklaration kann ich in unserem Dialekt erzwingen und tue das auch.

  • Kann sein, dass die NASA ihre Flight-Computer so programmiert hat. ;)

    womit wir dann zur Apollo Mission kommen, die wiederum von der Sternwarte Bochum mitgehört wurde und schon sind wir wieder beim Astro Pi - könnte ein schöner Kreislauf über sieben Ecken draus werden 8o


    Kleiner Sidekick zur Erheiterung und hat sogar im weitesten Sinne etwas mit Programmieren zutun:


    Ohne dieses Gerät wäre es nämlich nicht möglich gewesen, die Antenne absolut synchron zur Apollo Umlaufbahn zu programmieren...


    Wer errät, um was es sich dabei handelt?


    funkenzupfer darf nicht mit raten, der müsste es noch wissen. ;)



  • Macht das denn Spaß, strukturierte Programmierung immer nur nachzubilden? Warum nimmt man dann nicht gleich eine Sprache, die das richtig kann?

    Zeige mir einen Homecomputer, der sich ohne Floppylaufwerk in Pascal o.ä. programmieren lässt! Und selbst mit Floppylaufwerk muss man den Pascal-Compiler erst mal haben...legal natürlich, ich kann ja schlecht mit Raubkopien an Jugend forscht oder so was teilnehmen.

  • Auch wenn es sich hier nicht mehr um den Thread handelt, in dem ich um Unterstützung bat und Eure Diskussion um das Für und Wieder in punkto Basic legitim ist, so möchte ich noch einmal unterschwellig auf den Ursprung aufmerksam machen und für jenen werben.


    Uns ist bewusst, dass es einigen nicht behagt, welche Rechner zum Einsatz kommen sollen und ich habe leider auch zur Kenntnis nehmen müssen, dass einige den Vintage Part dieses Projekts entweder unter- oder überbewerten - hier kann ich nur noch einmal appellieren, die Infos in Gänze zu lesen, gerne auch die einzelnen Links anzuklicken, einfach um den Sinn des Ganzen besser zu verstehen.

    Es ist schade, dass einige zwar ellenlange Abfolgen über die Sinnhaftigkeit von Basic schreiben können, es aber leider nicht schaffen, sich die Informationen korrekt und in Gänze zu verinnerlichen.


    Dennoch hoffe ich, dass sich einige Leute finden werden, die die Chance sehen, unsere Hobbygemeinschaft bei genau solchen Projekten standesgemäß zu vertreten. Und nochmals: Wir suchen selbstverständlich nicht alles rein auf Spendenbasis - um das schmale Budget aber nicht zu sehr zu strapazieren, wäre ein gewisses Erbarmen sehr sehr lieb...

  • Zeige mir einen Homecomputer, der sich ohne Floppylaufwerk in Pascal o.ä. programmieren lässt!


    G-Pascal kann das


    http://plus4world.powweb.com/software/G-pascal


    https://www.youtube.com/watch?v=ITsBeW2Z1Nk



    und für die Archimedes Acorns gab es den Pascal Compiler von der Firma selbst mal irgendwo kostenlos zum Download und später auch auf einer Zeitungsdiskette. Und der ist wirklich gut. Die Sache hatte nur einen Haken: Man benötigt die normale komplette Entwicklungsumgebung für C, mußte also das große C Paket haben, was zu der Zeit irgendwas um 700DM gekostet haben mag. Der Compiler ist halt nur das Programm - ohne alles. Da sich aber für Linker etc. irgenwann auch freie Nachahmervarianten gefunden haben und es auch eine alternative Systemlibrary gab (für die Systemaufrufe im ROM/Module) konnte man das tatsächlich auch "händisch" benutzten - der Komfort war aber unterirdisch und man brauchte zumindest ein Modul aus dem C-Paket doch noch. Dafür war der Compiler gut und die Sprache vollständig, was bei G-Pascal nicht so ist. Ohne Laufwerk geht dann einfach darum, weil es ja eine RAMdisk gibt. ;)

    -- 1982 gab es keinen Raspberry Pi , aber Pi und Raspberries

    Edited 2 times, last by ThoralfAsmussen ().

  • Ich seh das folgendermaßen:


    Als ich Basic gelernt habe ( CBM ) in der Schule (1983 ? ), da gabs nix anderes für Schüler und es gab keine modernen Sprachkonzepte wie heute in der Schule ( Objektiorientierung, etc.).

    ..

    Pardon - muss ich doch heftig widersprechen. Smalltalk-80 war zu der Zeit heftig angesagt. Mehr OOP geht kaum und die Konzepte waren seit Simula-67 (1967!!) wohlbekannt. Auf Micros war Smalltalk 1983 mangel RAM aber noch nicht verfügbar, meine ich zumindest!?

  • Wenn man jemandem wirklich Programmieren beibringen will (also erwartet, dass der zehn Jahre später seine Brötchen damit verdienen kann und will), dann gebe ich Herrn Dijkstra und allen, die bei ihm sind, vollkommen recht. BASIC ist nicht mehr geeignet, jemandem nahezubringen, wie der Beruf eines Informatikers heute aussieht. Und natürlich hat Herr Dijkstra "professionelle Programmierer" gemeint, als er den Satz formuliert hat - Er war schließlich Uni-Professor.


    Wiill man aber Kindern und Jugendlichen nahebringen, was es eigentlich bedeutet, einen Computer zu programmieren (also einen Schritt vor dem obigen), gibt es meiner Ansicht nach nix besseres als einen Computer ohne Webbrowser und Internetzugang, der sonst keine "Ablenkungen" bietet, und einen einfachen Zugang zu einem BASIC-Interpreter hat. Kinder müssen erstmal verstehen, was Programmieren eigentlich bedeutet - Wenn sie dann feststellen, dass es sie reizt, der Maschine zu sagen, was sie tun soll und sie die ersten Erfolgserlebnisse mit einfachen Programmen erfahren haben, kann man sie immer noch auf eine "richtige" Plattform heben. Und die, die keinen Spaß dran gefunden haben, haben wenigstens einen ungefähren Begriff davon, was einen Computer eigentlich im Innersten antreibt.


    Unter diesem Blickwinkel finde ich es geradezu zwingend, so anzufangen - Und die Retro-Plattform had dazu noch den unschätzbaren Vorteil, dass alle auf demselben Level anfangen (diejenigen, die zuhause einen Computer haben, haben keinen Vorsprung vor den anderen, was manchmal, vor allem für Mädchen, ziemlich demotivierend sein kann), es gibt keine "Ablenkungen" wie Patience und Minesweeper auf der Retro-Maschine, und auch keine "ich lad' mir das aus dem Internet runter"-Abkürzungen - Alles, was man da macht, hat man selbst gemacht.

  • Macht das denn Spaß, strukturierte Programmierung immer nur nachzubilden? Warum nimmt man dann nicht gleich eine Sprache, die das richtig kann?

    Zeige mir einen Homecomputer, der sich ohne Floppylaufwerk in Pascal o.ä. programmieren lässt! Und selbst mit Floppylaufwerk muss man den Pascal-Compiler erst mal haben...legal natürlich, ich kann ja schlecht mit Raubkopien an Jugend forscht oder so was teilnehmen.

    Das ist wieder aus dem Kontext gerissen. Es ging da um strukturierte Programmierung im allgemeinen. Nicht auf einem C64 oder CBM.