Hello, Guest the thread was called137k times and contains 3676 replays

last post from crsc at the

Der MEGA65-Laber-Stammtisch

  • Targas Ich wollte damit keinesfalls ausdruecken, dass ich den MEGA65 (oder jeden anderen 8-bit-Computer mit BASIC) dafuer nicht geeignet finde. Ich glaube nur nicht, dass er irgendwie nennenswert breit dafuer zum Einsatz kommen wird.

  • Mag sein, aber ich denke um jemanden an einen Computer heranzuführen ist der MEGA65 nicht verkehrt. Einschalten und loslegen, mit Basic ohne irgendwelchen compiler quatsch den 10 jährige lernen, ausführen, aktualisieren müssen innerhalb von Sekunden erste Erfolge programmieren.

    Es geht darum das Logikverständnis zu trainieren und früh anzufangen. Just my 2 cents.

    Das kann sich natürlich jeder schönreden wie er will. Aber es wird heute kaum noch einen ernsthaften Lehrer geben der mit so einer Maschine anfangen wird. Da gibts besseres und moderneres und vor allem billigeres dafür. Und einen Pi kann man sich auch so vorkonfigurieren dass er auch direkt in eine Anwendung bootet um den ganzen OS Kram erstmal aussen vor zu lassen.


    Sicher wäre der MEGA65 dafür geeignet, aber bleiben wir realistisch. Es wird ihn niemand dafür in Betracht ziehen.

    [External Media: https://youtu.be/nnjg3G2gkok]

    Und was beweist das Video? Das vor 30 Jahren die Leute mit BASIC gestartet haben und erfolgreich waren? Ja, das war ja auch damals aktuelle Technologie. Heutige 10-Jährige werden mit Sicherheit nicht mit sowas herangeführt.

  • Nun, ich versuche es mal einfach zu erklären. Früher hat man versucht mit wenigen Mitteln viel zu erreichen. Man musste nachdenken, um Lösungen selbst zu finden.

    Es gab nicht hunderte von Libraries die Leute schon vor einem kreiert haben und so einem das Denken abnahmen. Die grundlegenden Logikfunktionen sind in Basic vorhanden. Es ist nicht ideal, aber das soll es auch nicht sein. Die Herausforderung ist es sich zu trainieren.

    Wenn Maschinen einem Arbeit abnehmen und man verlernt zu denken, werden die Menschen dümmer. Es ist wie beim Sport, wenn man einen Muskel nicht trainiert baut er ab.

    Es geht in dem Video nicht darum das erfolgreiche Leute programmiert haben, sondern das sie in jungen Jahren leicht an Aufgaben herangeführt wurden, und gelernt haben Herausforderungen auf unterschiedliche Arten durch nachdenken zu meistern.

  • Um Programmieren zu lernen gibts bessere Sprachen als BASIC. Und um einen Computer zu verstehen ebenfalls. Da würde ich eher C nehmen oder sogar Assembler.


    Man kann mit besseren Programmiersprachen (z.B. Python oder Ruby) alles machen was man auch in BASIC machen kann. Auch Spaghetticode schreiben, wenn man anfängt und erstmal grundlegendes ausprobieren will. Kann man auch direkt verwenden, so wie eben BASIC. Befehl eintippen und sofort das Ergebniss sehen wenn man es direkt in der Shell aufruft. Und da hat man den Vorteil dass man etwas lernt dass auch tatsächlich noch benutzt wird.


    Aus heitiger Sicht, sehe ich keine besonders grossen Vorteile mit einem alten 8-Bit BASIC anzufangen.

  • Auch hier habe ich wieder Libraries die mir die Arbeit abnehmen.

    Das machen gute BASIC-Interpreter doch auch. Der vom C64 vielleicht nicht, der hat hoechstens ein paar Mathe-Funktionen, aber der vom MEGA65 oder von anderen moderneren Commodore-Rechnern haben doch alle auch schon Grafik-Befehle und Sprite-Befehle an Bord, die teilweise per Interrupt irgendwas im Hintergrund schaufeln. Da wird Dir doch auch Arbeit abgenommen. Verstehe nicht, warum das da ok ist aber bei moderneren Sprachen nicht.

  • Das machen gute BASIC-Interpreter doch auch. Der vom C64 vielleicht nicht, der hat hoechstens ein paar Mathe-Funktionen, aber der vom MEGA65 oder von anderen moderneren Commodore-Rechnern haben doch alle auch schon Grafik-Befehle und Sprite-Befehle an Bord, die teilweise per Interrupt irgendwas im Hintergrund schaufeln. Da wird Dir doch auch Arbeit abgenommen. Verstehe nicht, warum das da ok ist aber bei moderneren Sprachen nicht.

    Vor allem, wenn ich das jetzt lehren würde, dann würde ich ja keine Bibliotheken verwenden (je nachdem was man als Lernziel anstrebt).

    Wir mussten z.B. in der Schule eine Taschenrechner programmieren der mit 20 Stellen umgehen konnte. Gibt ja auch Mathelibraries die mit beliebig langen Zahlen umgehen können, aber die Vorgabe war halt dass wir das selbst machen müssen und nur die C Standardfunktionen verwenden dürfen. Sonst wäre ja kein Lerneffekt. ;)


    Und wie du ja sagst, ein DRAW, CIRCLE, PRINT, etc. ist auch nichts anderes als eine Bibliotheksfunktion. Nur nennt man die in BASIC halt nicht so. Dafür gabs dann z.B. Simons BASIC oder andere die solche Bibliotheken waren.

  • Eben, man faengt doch in jeder Sprache bei den "Basics" an ;)


    Und nochmal: Klar kann man jemanden auch an einem C64, MEGA65, VC20, oder was auch immer an die Programmierung heranfuehren. Und je nachdem wer das macht oder wie man es macht oder was derjenige, der lernen moechte, fuer Vorlieben hat, kann das auch durchaus toll sein und einen netten Einstieg liefern. Trotzdem sehe ich keine wirklich nennenswerte Wahrscheinlichkeit/Chance dafuer, dass der MEGA65 fuer diesen Zweck in irgendwelchen Klassenzimmern zum Einsatz kommen wird. Wenn es da deutschlandweit 2 Lehrer gibt, die einen MEGA65 haben und den mal mitbringen, dann ist das schon viel. Aber dass massenhaft Schulen damit ausgestattet werden? Das wird niemals passieren. Dazu ist der MEGA allein schon viel zu teuer, selbst wenn er nur die Haelfte kosten wuerde. Und der Preis ist gewiss nicht der Hauptgrund dafuer.

  • Libraries nehmen viel Arbeit ab,werden meist aber ohne Nacdenken nach dem Prinzip Viel-Hilft-Viel eingesetzt und führen zu inperformantem aufgeblähtem und nicht nachvolziehbar wartbarem Code. Nachhaltig ist das nicht. Warum brauchen wir immer mehr CPU -Power,Speicher und Netz-Bandbreite ? Weil die Apps aufgeblasener Mist sind. Es ist erwiesen, dass gerne 80...90 % der zusammencompilierten Libraries brachliegen. Und die supertollen Entwickler sind permanent im supertollsten Netz am codieren. Nur in def Realität mit Funklöchern, weniger Bandbreite etc. funktioniert das alles nicht mehr wie gedacht und mit jedem Update wird's schlimmer oder noch besser,wenn ich mal schnell eine App brauche, zwingt sie mich zum Update, nur weil ich die Frechheit hatte, mich zweieinhalb Tage nicht mit ihr zu beschäftigen. Der Mensch im Mittelpunkt,das war einmal. Die KI übernimmt uns bald , umprogrammiert werden wir schon..

  • Du wirfst hier ziemlich viele Dinge in den Raum, die teilweise nichts miteinander zu tun haben und auch keine Begruendung fuer den Einsatz von BASIC sind.


    Oder wuerdest Du dem hier zustimmen:

    Libraries werden inflationaer eingesetzt, Coder koennen nur noch mit Internetanbindung coden, Updates kommen unentwegt, und die KI erobert uns bald, UND DESHALB sollte man Programmieren mithilfe von CBM-BASIC lernen, wo es Zeilennummern und Spaghetti-Code gibt und Variablen nur 2 Buchstaben haben duerfen und man nichtmal Leerzeichen zwischen den einzelnen Tokens machen muss, und welches obendrein auf einem 40 Jahre alten Rechner laeuft und mit praxis- oder industrie-orientierter Softwareentwicklung ueberhaupt gar nichts zu tun hat.

  • Libraries nehmen viel Arbeit ab,werden meist aber ohne Nacdenken nach dem Prinzip Viel-Hilft-Viel eingesetzt und führen zu inperformantem aufgeblähtem und nicht nachvolziehbar wartbarem Code. ..

    Das kommt drauf an was man macht. In meinem Job machen wir regelmäßig Performancetests. Ist Teil unseres Buildsystems. Bibliotheken werden durchaus (in Grenzen) darauf untersucht ob sie eine gute Performance liefern und auch schon mal ausgetauscht. Übrigens ist der kompakteste Code nicht immer auch der schnellste (Stichwort: Loop unroling). ;) Als Anfänger erzeugt man mit Sicherheit aufgeblähteren Code, aber die Compiler schmeissen einen grossen Teil davon einfach weg. Kannst du leicht mit gcc nachprüfen. Schreib ein paar Funktionen die nicht aufgerufen werden und sie werden einfach elminiert wenn der Compiler beweisen kann dass sie nicht benötigt werden. Heutige Optimizer sind extrem agressiv was das angeht. Wenn ich Performancetests auf spezielle Funktionen mache, dann muss ich den Compiler teilweise austricksen damit genau das nicht passiert. :D


    Allerdings merke ich auch bei mir selbst dass ich heute anders Programmiere als Früher. Mein C128 Sprite Editor geht relativ verschwenderisch mit dem Speicher um. Warum? Es ist ein grosser zusätzlicher Aufwand das zu minimieren, der in keinem Verhältnis zum Erfolg liegt. Der Sprite Editor braucht sowieso nicht soviel Platz dass ich mir selbst auf dem C64 deshalb Sorgen machen müsste, daher wäre es unsinnig allzuviel Zeit darauf zu verschwenden den kleiner zu machen. Einähnliches Prinzip gilt halt umso mehr auch für Firmen. Die stecken logischerweise keine zusätzliche Arbeitskraft in einen Prozess der nur sehr wenig Benefit bringt, aber dafür umso mehr kostet.


    Quote

    Und die supertollen Entwickler sind permanent im supertollsten Netz am codieren. Nur in def Realität mit Funklöchern, weniger Bandbreite etc. funktioniert das alles nicht mehr wie gedacht und mit jedem Update wird's schlimmer

    Bei uns ist es Standard dass wir z.B. das Googletest Framework verwenden. Ein grosser Teil meiner Arbeit besteht darin dass ich mir Testcases ausdenke die solche Edgecases abhandeln, damit sowas nicht passiert. z.B: LowMemory Test oder ähnliches. Allerdings stimmt es durchaus dass das in vielen Firmen sehr blauäugig gehandhabt wird.


    Quote

    oder noch besser,wenn ich mal schnell eine App brauche, zwingt sie mich zum Update, nur weil ich die Frechheit hatte, mich zweieinhalb Tage nicht mit ihr zu beschäftigen. Der Mensch im Mittelpunkt,das war einmal. Die KI übernimmt uns bald , umprogrammiert werden wir schon

    Da stimme ich die allerdings zu. :)

  • Eventuell sollte man bei dieser Betrachtung auch nicht ganz ausser acht lassen, dass BASIC ungefaehr 1000x langsamer ist als Assembler ;)

    Also wenn man hier schon anfaengt zu sagen, heute waere alles so aufgeblaeht und langsam und verschwenderisch, wie kann man dann damit fuer die Verwendung von BASIC argumentieren ?(

  • Heutige 10-Jährige werden mit Sicherheit nicht mit sowas herangeführt.

    Ach, das geht schon noch ... :)


    Mein ältester Sohn schaut mir immer wieder mal zu, wenn ich "auf den alten Kisten" rumtippe und neuerdings halt auch auf dem Nexys-Board, wenn ich für den MEGA65 was ausprobiere. Er ist total fasziniert davon, dass er zum Beispiel mit einem simplen BORDER x die Rahmenfarbe ändern kann. Paar Buchstaben tippen und eine andere Farbe ist "drumrum". Und das einfach so nach dem Einschalten. Keine App öffnen, nix anklicken. Einfach lostippen und man kann mit "dem Computer reden".


    Der Junge kann schneller mit dem Smartphone umgehen als ich, kennt auch schon Spiele mit "perfekter 3D-Grafik" und baut in modernen SimCity-Simulationen Städte, da blicke ich nicht mehr durch, was da alles zusammenhängt. Ja, er lebt mit der Zeit, ist halt so.


    Aber trotzdem - oder vielleicht auch gerade deswegen - ist er so fasziniert davon, dass er hier bei "Papas alten Kisten" einfach "direkt am Computer ist". Einschalten und der Computer ist sofort "für ihn da" und hört seinen Befehlen zu.


    DAS ist das Erlebnis, was kein "moderner" Power-Computer vermitteln kann: Den "direkten Dialog" mit der Maschine. Und das ist auch genau das, was MICH damalstm schon so an diesen Computern fasziniert hat. Eines meiner ersten "Programme" war auf dem Sinclair ZX80, den ein Onkel von mir hatte war in etwa:

    Code
    1. 10 PRINT "WIE HEISST DU?"
    2. 20 INPUT N$
    3. 30 PRINT "HALLO, ";N$

    DAS hat mich regelrecht weggebeamt, das hat eine komplett neue Welt für mich eröffnet. Ich konnte einem Gerät "sagen", was es tun soll. Ich muss ihm nur sagen, wie! Und das war's dann auch für mich. DAS war mein Hobby und später mein Beruf. Als mein Onkel sich den ZX81 gekauft hat, hat der ZX80 bei mir sein Zuhause gefunden (er hat ihn mir geschenkt, weil ich so oft bei ihm getippt habe) und ab da war ich "am Computer". ;)


    Klar, wird der MEGA65 niemals an Schulen was zu melden haben. Wenn ich nur daran denke, was ich mir den Mund fusslig geredet habe, dass sich die Schule paar Raspis 400 für 70 EUR das Stück anschaffen könnte. Einige haben kaum Geld für "paar Netzteile", an Preisregionen vom MEGA65 denken die gar nicht. :/ Und selbst wenn, das ist nicht die Technik "von heute für morgen".


    Das ist ein super Mittel, einen allerersten Kontakt herzustellen und die Faszination vom "einfachsten Programmieren" zu wecken. Aber ansonsten wird man selbst mit dem tollen BASIC 65 in Schulen keinen Blumentopf mehr gewinnen. :)

  • Mag sein, aber ich denke um jemanden an einen Computer heranzuführen ist der MEGA65 nicht verkehrt. Einschalten und loslegen, mit Basic ohne irgendwelchen compiler quatsch den 10 jährige lernen, ausführen, aktualisieren müssen innerhalb von Sekunden erste Erfolge programmieren.

    Es geht darum das Logikverständnis zu trainieren und früh anzufangen. Just my 2 cents.


    Wer als 10 jährige ein C++ Studium hinlegen möchte, bitteschön. Halte ich aber nicht für realistisch.

    Grundsätzlich magst du da recht haben, aber die (Anschaffungs-) Kosten sind schon hoch. Insbesondere im Vergleich zu einem Raspberry Pi, den man seinen Eltern relativ leicht aus dem Kreuz leiern können dürfte, um bei Interesse auch abseits der Schule tiefer in die Materie einzudringen. Bring mal deinen Eltern bei, einen 800€ MEGA65 anzuschaffen, mit dem man ja "im richtigen Leben" nicht sooo viel anfangen kann...

    Und mit Compilern muss man sich auch beim RPi nicht (zwangsläufig) rumschlagen. Ich halte Scratch für einen einfachen Einstieg, der auch schon jüngere Kinder anspricht und später kann man mit Python ebenso einfach in eine Interpretersprache einsteigen, wie wir das damals mit den 8-Bittern konnten.


    Ich wünschte, meine Kinder wären heute noch so jung, dass ich ihnen einen RPi 400 ins Zimmer stellen könnte um mit ihnen mit Scratch das Programmieren näher zu bringen.


    Für mich ist der MEGA65 definitiv eine Nische für (wenige) Retro-Enthusiasten.

  • Wenn der MEGA65 gut ankommt, wird er vielleicht als CLASSROOM Edition als billige Massenversion produziert. Hängt halt davon ab, ob er sich wie ein VC20 (Volkscomputer) verkaufen kann, weil Anwender ‚mal eben schnell für ihre alltäglichen Bedürfnisse‘ ohne grosses Wissen ein Programm AdHoc schreiben können. Damals wurde der c64 ja für alle möglichen Anwendungen verwendet. Und 100x schneller sollte den meisten Anwendern ausreichen. Wir werden sehen.


    Dann würde ich aber auch gerne eine Laptop Version mit LED Bildschirm und Powerbank sehen. 🙂

  • Auf der Kickstarter-Seite für den ZX Spectrum Next gab es gestern ein längeres Update zum Status.


    The Late Update: An FPGA Saga


    Dort beschreiben die Verantwortlichen u.a., welche Schwierigkeiten sie die letzten Wochen hatten. Zum Beispiel konnten sie einfach weit und breit keine Spartan 6-Boards mehr auftreiben. Das Teil kostete lange Zeit um die 10 US$ und Lagerbestände wurden aufgrund des Lieferstopps teilweise für 170 US$ zum Kauf angeboten, wenn überhaupt einer verkauft. Das sprengte jedes Budget.


    Letzten Endes haben die Entwickler das Board des Next umdesignt, dass es nun mit dem A7 läuft, dem Teil, das auch der MEGA65 in seiner FPGA hat.


    Vielleicht gibt es ja dann auch mal einen MEGA65-Core für den Spectrum Next? Wer weiß, was die Zeit noch alles für Überraschungen parat hat? :)