Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Node-Red
  5. Unterschied zwischen NodeRed und Blockly?

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.7k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.2k

Unterschied zwischen NodeRed und Blockly?

Geplant Angeheftet Gesperrt Verschoben Node-Red
25 Beiträge 8 Kommentatoren 9.1k Aufrufe 7 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • C claus1968

    @Atifan
    Ich habe vor einem Jahr angefangen und stand auch vor dieser Frage.
    Mit beiden kann man jeweils alles abbilden - zumindest im Großen und Ganzen.

    Ich selbst kann nicht programmieren und fand Blockly einfacher. Ich konnte
    damit schnelle Erfolge erzielen.

    Ich versuche aber auch noch in NodeRed mich einzuarbeiten, weil ich es
    einfach meinen Horizont erweitert.

    Geräte einbinden -> iobroker
    Geräte steuern (auch Technikübergreifend) -> Blockly

    J Offline
    J Offline
    Jan1
    schrieb am zuletzt editiert von Jan1
    #4

    @Atifan
    Node-Red setzt ein wenig mehr Grundwissen voraus und ist nicht so logisch aufgebaut wie Blockly.
    Blockly erklärt sich teils von alleine und führt somit für Anfänger wesentlich schneller zum ersten Erfolg. Mit Blockly kann man keine Geräte an Alexa anbinden, mit Node-Red geht das, wobei es da auch immer abhängig davon ist, was Amazon gerade wieder dreht und ob der Entwickler der entsprechenden Nodes das zeitnah anpasst.

    1 Antwort Letzte Antwort
    0
    • AtifanA Offline
      AtifanA Offline
      Atifan
      schrieb am zuletzt editiert von
      #5

      Ahso alles klar. Danke euch. Also ist beides ziemlich das selbe :)
      Ich muss sagen, ich habe in Blockly noch nichts gemacht und die Geräte soweit in NodeRed drin mittlerweile nach viel hin und her funktioniert es auch so wie ich es gerne möchte, bis auf paar Kleinigkeiten :)

      4b82d989-9ac5-4135-a480-67de6775a760-image.png

      HomoranH 1 Antwort Letzte Antwort
      0
      • AtifanA Atifan

        Ahso alles klar. Danke euch. Also ist beides ziemlich das selbe :)
        Ich muss sagen, ich habe in Blockly noch nichts gemacht und die Geräte soweit in NodeRed drin mittlerweile nach viel hin und her funktioniert es auch so wie ich es gerne möchte, bis auf paar Kleinigkeiten :)

        4b82d989-9ac5-4135-a480-67de6775a760-image.png

        HomoranH Nicht stören
        HomoranH Nicht stören
        Homoran
        Global Moderator Administrators
        schrieb am zuletzt editiert von
        #6

        @Atifan sagte in Unterschied zwischen NodeRed und Blockly?:

        Also ist beides ziemlich das selbe

        mit einem Unterschied:
        Blockly IST javascript - node-red ist eine eigenständige "Sprache"

        Wenn du js-Lernen willst kannst du dir immer den echten js-Code ansehen, der von Blockly erzeugt wurde

        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

        1 Antwort Letzte Antwort
        0
        • mickymM Offline
          mickymM Offline
          mickym
          Most Active
          schrieb am zuletzt editiert von
          #7

          Du kannst in Node-Red alle Funktionen in Javascript programmieren.

          Node-Red hat aber in meinen Augen einen immensen Vorteil was die Visualisierung der Flows betrifft und hilft Dir in meinen Augen wesentlich besser Logikfehler in den Flows zu entdecken.

          Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

          J 1 Antwort Letzte Antwort
          0
          • mickymM mickym

            Du kannst in Node-Red alle Funktionen in Javascript programmieren.

            Node-Red hat aber in meinen Augen einen immensen Vorteil was die Visualisierung der Flows betrifft und hilft Dir in meinen Augen wesentlich besser Logikfehler in den Flows zu entdecken.

            J Offline
            J Offline
            Jan1
            schrieb am zuletzt editiert von
            #8

            @mickym
            Dazu muss man aber erst mal die Logik der Flows verstehen, was mir bei Blockly wesentlich leichter fällt. Bei Node-Red ist für mich die Logik nicht sofort zu erkennen. Beispie, ich hab ne Funktion und sehe erst was die macht, wenn ich sie mir anschaue (öffne). Bei Blockly fällt das Öffnen weg und ist so leichter zu lesen.

            HomoranH mickymM 2 Antworten Letzte Antwort
            1
            • J Jan1

              @mickym
              Dazu muss man aber erst mal die Logik der Flows verstehen, was mir bei Blockly wesentlich leichter fällt. Bei Node-Red ist für mich die Logik nicht sofort zu erkennen. Beispie, ich hab ne Funktion und sehe erst was die macht, wenn ich sie mir anschaue (öffne). Bei Blockly fällt das Öffnen weg und ist so leichter zu lesen.

              HomoranH Nicht stören
              HomoranH Nicht stören
              Homoran
              Global Moderator Administrators
              schrieb am zuletzt editiert von
              #9

              @Jan1 sagte in Unterschied zwischen NodeRed und Blockly?:

              ich hab ne Funktion und sehe erst was die macht, wenn ich sie mir anschaue (öffne)

              und die enthält wiederum javascript.

              Also muss man bei node red sich sowieso mit js beschäftigen

              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

              1 Antwort Letzte Antwort
              0
              • J Jan1

                @mickym
                Dazu muss man aber erst mal die Logik der Flows verstehen, was mir bei Blockly wesentlich leichter fällt. Bei Node-Red ist für mich die Logik nicht sofort zu erkennen. Beispie, ich hab ne Funktion und sehe erst was die macht, wenn ich sie mir anschaue (öffne). Bei Blockly fällt das Öffnen weg und ist so leichter zu lesen.

                mickymM Offline
                mickymM Offline
                mickym
                Most Active
                schrieb am zuletzt editiert von mickym
                #10

                Ich wollte keinen Streit vom Zaun brechen. ;)

                Ich habe nur festgestellt je mehr man sich mit dem Programm beschäftigt, um so weniger Funktionen braucht man und kann alles über Nodes abbilden und dann ist es genial den Nachrichtenflow zu überwachen und brauche kein JS.

                Selbst if-then geht alles über switch nodes - die Flows werden halt etwas komplexer - aber es steht ja jedem frei, wieviel er über Funktionen in node-red abbildet. Bei mir werden es immer weniger. ;)
                Und dann ist das Debuggen wesentlich einfacher - als Funktionen zu debuggen.
                Ich behaupte mal - dass man die Funktionen aus Deinem Screenshot auch alle über einen Subflow abbilden kann. ;)

                Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                1 Antwort Letzte Antwort
                0
                • AtifanA Offline
                  AtifanA Offline
                  Atifan
                  schrieb am zuletzt editiert von
                  #11

                  Hat beides seine Vor und Nachteile :) Finde beide nice :)

                  1 Antwort Letzte Antwort
                  0
                  • L Offline
                    L Offline
                    loverz
                    schrieb am zuletzt editiert von
                    #12

                    Hab mich mittlerweile intensiv in Blockly eingearbeitet, ist ein bisschen wie Lego spielen :dog:
                    Wenn ich mir dieses Node-Red Bild da oben ansehe da sträuben sich mir die Nackenhaare xD Sieht ja furchtbar unübersichtlich aus.

                    J mickymM 2 Antworten Letzte Antwort
                    0
                    • L loverz

                      Hab mich mittlerweile intensiv in Blockly eingearbeitet, ist ein bisschen wie Lego spielen :dog:
                      Wenn ich mir dieses Node-Red Bild da oben ansehe da sträuben sich mir die Nackenhaare xD Sieht ja furchtbar unübersichtlich aus.

                      J Offline
                      J Offline
                      Jan1
                      schrieb am zuletzt editiert von
                      #13

                      @loverz
                      Das sage ich auch immer, wobei @mickym auch behauptet Node-Red wäre logischer. Das mag für Leute stimmen, die hier irgendwelche Vorkenntnisse in der Richtung haben, wenn ich mir so ein Flow ansehe und ich arbeite auch ein wenig mit Node-Red, dann dreht sich bei mir auch alles, weil das für mein Hirn nicht logisch ist. Mit Blockly habe ich deutlich weniger Probleme die Logik sofort zu verstehen und mir auch selber was aus dem Ärmel zu leiern, ohne vorher bei anderen abschauen zu müssen :-)

                      1 Antwort Letzte Antwort
                      0
                      • L loverz

                        Hab mich mittlerweile intensiv in Blockly eingearbeitet, ist ein bisschen wie Lego spielen :dog:
                        Wenn ich mir dieses Node-Red Bild da oben ansehe da sträuben sich mir die Nackenhaare xD Sieht ja furchtbar unübersichtlich aus.

                        mickymM Offline
                        mickymM Offline
                        mickym
                        Most Active
                        schrieb am zuletzt editiert von mickym
                        #14

                        @loverz Bevor Du das überhaupt vergleichen kannst, versuche mal diesen Flow im Blockly abzubilden und entsprechende Baumstukturen im Blockly zu schreiben.

                        1dc8f8b1-2447-46b3-b95d-707340965664-image.png

                        Du bekommst 6 Inputs und diese müssen alle im ioBroker als Baumstruktur abgebildet werden.

                        Wenn Du dies übersichtlich im Blockly hier auf einer Bildschirmseite abbilden kannst hast Du meinen Respekt - bevor Du diese Statements abgibst. Dieses Blockly würden gerne einige User hier im Forum nutzen und die Anerkennung vieler hier im Forum wäre Dir gewiss. Es gibt einige Threads, die JSON Strings oder Objekte gerne in Ihre einzelnen Datenpunkte zerlegt, im ioBroker nutzen würden. Musst nur mal die Suche bemühen.

                        Hier siehst DU meinen Input und was dann im ioBroker rauskommen soll - würde mich freuen, wenn Du Dich der Herausforderung stellst, bevor wir Deine Nackenhaare begutachten. ;) :yum:

                        https://forum.iobroker.net/topic/43856/json-string-oder-java-object-in-iobroker-struktur/2

                        Das heißt ich gebe Dir alle 6 Stings oder Objekte als Input und Dein Blockly erstellt mir die entsprechende Baumstruktur im ioBroker.

                        Auch das Bild unten, bei dem sich Deine Nackenhaare sträuben - müsste ich erst mal sehen, welche Größe Dein Blockly- Rechteck hat und wieviele Farben es mit der gleichen Funktionalität in Deinem Blockly hätte, um zu beurteilen ob das dann bei mir Augenkrebs erzeugen würde. Wahrscheinlich wären es 9 Blocklies für jedes Gerät bzw. Szene.

                        Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                        J 1 Antwort Letzte Antwort
                        0
                        • mickymM mickym

                          @loverz Bevor Du das überhaupt vergleichen kannst, versuche mal diesen Flow im Blockly abzubilden und entsprechende Baumstukturen im Blockly zu schreiben.

                          1dc8f8b1-2447-46b3-b95d-707340965664-image.png

                          Du bekommst 6 Inputs und diese müssen alle im ioBroker als Baumstruktur abgebildet werden.

                          Wenn Du dies übersichtlich im Blockly hier auf einer Bildschirmseite abbilden kannst hast Du meinen Respekt - bevor Du diese Statements abgibst. Dieses Blockly würden gerne einige User hier im Forum nutzen und die Anerkennung vieler hier im Forum wäre Dir gewiss. Es gibt einige Threads, die JSON Strings oder Objekte gerne in Ihre einzelnen Datenpunkte zerlegt, im ioBroker nutzen würden. Musst nur mal die Suche bemühen.

                          Hier siehst DU meinen Input und was dann im ioBroker rauskommen soll - würde mich freuen, wenn Du Dich der Herausforderung stellst, bevor wir Deine Nackenhaare begutachten. ;) :yum:

                          https://forum.iobroker.net/topic/43856/json-string-oder-java-object-in-iobroker-struktur/2

                          Das heißt ich gebe Dir alle 6 Stings oder Objekte als Input und Dein Blockly erstellt mir die entsprechende Baumstruktur im ioBroker.

                          Auch das Bild unten, bei dem sich Deine Nackenhaare sträuben - müsste ich erst mal sehen, welche Größe Dein Blockly- Rechteck hat und wieviele Farben es mit der gleichen Funktionalität in Deinem Blockly hätte, um zu beurteilen ob das dann bei mir Augenkrebs erzeugen würde. Wahrscheinlich wären es 9 Blocklies für jedes Gerät bzw. Szene.

                          J Offline
                          J Offline
                          Jan1
                          schrieb am zuletzt editiert von
                          #15

                          @mickym
                          Siehst, genau das meine ich. Ich schau mir das an und verstehe überhaupt nicht was da wo und wie passiert. Richtig, es ist übersichtlich, aber was bringt mir das, wenn ich es null verstehe? Das ist aber exakt der Punkt den ich angesprochen habe, wenn man das mal verstanden hat, oder eben schon einige Grundlagen mitbringt, ist es wohl so leichter, aber auch nur dann und somit ist Blockly für die meisten zwar nicht übersichtlicher, aber von der Logik schneller zu verstehen und genau um das gehts bei dem Vergleich hier, auch wenn's mal wieder Äpfel und Birnen sind ;)

                          R mickymM 2 Antworten Letzte Antwort
                          0
                          • J Jan1

                            @mickym
                            Siehst, genau das meine ich. Ich schau mir das an und verstehe überhaupt nicht was da wo und wie passiert. Richtig, es ist übersichtlich, aber was bringt mir das, wenn ich es null verstehe? Das ist aber exakt der Punkt den ich angesprochen habe, wenn man das mal verstanden hat, oder eben schon einige Grundlagen mitbringt, ist es wohl so leichter, aber auch nur dann und somit ist Blockly für die meisten zwar nicht übersichtlicher, aber von der Logik schneller zu verstehen und genau um das gehts bei dem Vergleich hier, auch wenn's mal wieder Äpfel und Birnen sind ;)

                            R Offline
                            R Offline
                            rewenode
                            schrieb am zuletzt editiert von
                            #16

                            Unübersichtlich kann man in jeder Sprache schreiben.
                            Übersichtlich aber auch ;-)
                            Liegt i.d.R. nicht an der Sprache

                            Unterschiede lassen sich schlecht festmachen, weil man fast alles auch in jeder Sprache programmieren kann.
                            Vergleichen kann ich nicht, das wäre unfair. Dazu mache ich zuwenig (fast nichts) mit Blockly.
                            Was sicher ein Argument für NR ist, ist die schier endlose Zahl an Nodes für alle möglichen und unmöglichen Anwendungsfälle. (manchmal auch ein Fluch)

                            Also i.d.R. überlege ich, was ich eigentlich erreichen will und danach suche ich mir ein Werkzeug (Sprache) das möglichst schnell zum Ziel führt. Und da ist "schnell" höchst individuell. Wer NR kann, kommt damit sicher schnelleres Ziel. Wem aber Blockly von der Hand geht, wird damit schneller sein.

                            1 Antwort Letzte Antwort
                            1
                            • J Jan1

                              @mickym
                              Siehst, genau das meine ich. Ich schau mir das an und verstehe überhaupt nicht was da wo und wie passiert. Richtig, es ist übersichtlich, aber was bringt mir das, wenn ich es null verstehe? Das ist aber exakt der Punkt den ich angesprochen habe, wenn man das mal verstanden hat, oder eben schon einige Grundlagen mitbringt, ist es wohl so leichter, aber auch nur dann und somit ist Blockly für die meisten zwar nicht übersichtlicher, aber von der Logik schneller zu verstehen und genau um das gehts bei dem Vergleich hier, auch wenn's mal wieder Äpfel und Birnen sind ;)

                              mickymM Offline
                              mickymM Offline
                              mickym
                              Most Active
                              schrieb am zuletzt editiert von mickym
                              #17

                              @jan1 Das ist doch der Punkt - ich habe in dem Fall auch nicht Dich angesprochen, sondern @loverz. Der sieht einen Screenshot und meint aufgrund dessen eine Einschätzung geben zu können basierend auf den Threadtitel.

                              Entweder lasse ich mich auf den Threadtitel ein, dann gehört aber etwas mehr dazu, als über seine Nackenhaare und Lego zu schreiben.
                              Wenn ich schon über Optik oder Übersichtlichkeit schreiben will, dann muss ich mir ein Ziel vornehmen und es dann mal auf beide Arten umsetzen und dann kann man anschließend darüber diskutieren.
                              Ggf. sollte man auch noch den gleichen Lösungsweg versuchen, um die Darstellung miteinander zu vergleichen.

                              Das wäre dann halbwegs objektiv. Ob es einem was gefällt oder nicht - ist dann immer noch subjektiv.

                              Das Blockly versucht halt durch die Form der Puzzleteilchen den Anwender dazu zu zwingen, immer ein bestimmtes Vorgehen- der Programmierlogik entsprechend - zu erzwingen. Das finde ich, der vielleicht schon mal programmiert hat eher lästig.
                              Blockly hat auch Vorteile, die Node Red nicht hat. Man kann zum Beispiel in einem Stück eine Variable umbenennen und es wird überall umbenannt usw.

                              NodeRed hat nicht nur eine wesentlich größere Auswahl an Nodes, die Du sonst halt erst Programmieren musst, die Vorgehensweise ergibt sich halt aus dem Programm-/Nachrichtenfluß und man muss nicht nach passenden Puzzleteilchen suchen. ;)

                              Wie gesagt:
                              Ich tu mir halt schwer die richtigen Puzzlestückchen zu finden -
                              Du weißt halt nicht, welche Nodes Du verwenden sollst.

                              Nur das Aussehen und den persönlichen Geschmack alleine als Grundlage zu nehmen, um eine "objektive" Meinung abzugeben, das hat noch nie funktioniert. Dann bleibt noch wieviel Wert man auf das Verhalten der Nackenhaare einzelner legt.

                              Ich habe mal zum Spaß eine Endlosschleife gebastelt, die eine payload immer um 1 erhöht. Ist natürlich nicht sinnvoll und legt das System nur lahm - aber es geht ja darum nicht Äpfel mit Birnen, sondern möglichst gleiches mit Gleichem zu vergleichen.

                              In Blockly würde das nach meiner bescheidenen Meinung so aussehen:

                              d73e6221-0454-4f07-babc-84b12c72018a-image.png

                              In NodeRed so:

                              16acc35e-ae5a-420f-8630-88ffef9e261a-image.png

                              Die Nodes sind nur so groß, weil ich die Namen so lange gewählt habe.
                              Nun sieht man eher einen Nachteil/Vorteil von NodeRed - es verbirgt nämlich das was programmtechnisch passiert. Lasse ich die Namen weg sieht es so aus:

                              d02d7d43-b37b-4f4e-8f79-b36999aed742-image.png

                              Der Nachteil gegenüber dem Blockly ist, dass man nicht sieht was in den Nodes passiert. Anhand der Symbole und Farben bekommt man mit, dass es sich um Inject, Change und Switch Nodes handelt, wenn man mit Node-Red schon länger arbeitet, ansonsten musst Du halt immer erst in die Nodes reinschauen, um zu sehen, was die macht.
                              Der Vorteil in komplexen Strukturen ist aber, dass dies die Übersichtlichkeit eher erhöht. Wenn ich also eine Change Node so benenne, dass dort die payload um 1 erhöht wird, dann interessiert es mich nicht mehr, wie die payload um 1 erhöht wird.
                              Im Prinzip kann man sich jede Node wie ein Unterprogramm vorstellen.

                              Die Übersichtlichkeit kann aber im Übrigen so weit getrieben werden kann, dass ich im Prinzip nach dem Trigger sämtliche Flows in EINER function Node verstecken kann. Damit schaut das Übersichtlich aus, aber ich erkenne erst recht nicht mehr, was wo passiert. Und das geht natürlich ebenfalls komplett am Sinn von Node Red vorbei, um mich auf die Logik zu konzentrieren und nicht auf das, wie diese umgesetzt wird. Deswegen bin ich auch ein Verfechter dafür function-Nodes, so sparsam wie möglich einzusetzen. Dazu brauche ich NodeRed nicht.
                              Wenn ich eine Logik komplett in Javascript umsetzen will, dann mache ich das im Javascript Adapter und schreibe keine function Nodes.

                              Der Riesenvorteil von NodeRed ist eben aufgrund der Riesencommunity die schier endlose Zahl an Nodes die es gibt (wie @rewenode schreibt) und gleichzeitig ein Fluch - aber man muss nicht alles nutzen. Letztlich sind diese Nodes etwas, was Dir Funktionen liefert, die dem Nachrichtenfluß verändert oder sie bilden eine Schnittstelle zu anderer Hardware und können deshalb mit Adaptern im iobroker gleich gesetzt werden. Gerade wenn man einen Adapter im iobroker vermisst, ist es doch toll, wenn man eine Node findet und dann im iobroker weiterverarbeiten kann.
                              Viele nutzen NodeRed - sowie Du - weil vielleicht der passende Adapter in iobroker nicht verfügbar ist (bestimmte Alexa Funktionen - keine Ahnung oder wie ich nun weil ich mit SNMP was machen will und der Adapter im iobroker halt nicht so funktioniert, wie ich es brauche und seit 2 Jahren nicht mehr gepflegt wird).
                              Und wie ich auch schon mal gesagt habe - man kann auch alles kombinieren. Das was Du aus Deinen Alexa Nodes rausholst - kannst ja alles in eigene Datenpunkte wegschreiben, musst Dir NULL Gedanken über einen Node Red Flow machen und bearbeitest dann mit Blockly weiter.

                              Es ist einfach im ioBroker Umfeld so unsinnig, NodeRed und Blockly gegeneinander auszuspielen - anstelle beides zu nutzen und hier sich wieder an der Integrationsfähigkeit des ioBrokers zu erfreuen. Ich bin NodeRed und ioBroker Fan - aber nicht Blockly Fan, weil ich ioBroker Fan bin. ;)

                              Deshalb, um zum Schluss zu kommen, habe ich angeregt, das Beispiel, was ich kürzlich in Node-Red umgesetzt habe, im Blockly zu machen. Das wäre für viele ein nützlicher Baustein, die sich scheuen auf Node-Red einzulassen und man vergleicht eben das Gleiche. Sprich ich bekomme das gleiche Ergebnis mit unterschiedlichen Mitteln und dann kann man sich mE ein Urteil erlauben.

                              Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                              R 1 Antwort Letzte Antwort
                              0
                              • mickymM mickym

                                @jan1 Das ist doch der Punkt - ich habe in dem Fall auch nicht Dich angesprochen, sondern @loverz. Der sieht einen Screenshot und meint aufgrund dessen eine Einschätzung geben zu können basierend auf den Threadtitel.

                                Entweder lasse ich mich auf den Threadtitel ein, dann gehört aber etwas mehr dazu, als über seine Nackenhaare und Lego zu schreiben.
                                Wenn ich schon über Optik oder Übersichtlichkeit schreiben will, dann muss ich mir ein Ziel vornehmen und es dann mal auf beide Arten umsetzen und dann kann man anschließend darüber diskutieren.
                                Ggf. sollte man auch noch den gleichen Lösungsweg versuchen, um die Darstellung miteinander zu vergleichen.

                                Das wäre dann halbwegs objektiv. Ob es einem was gefällt oder nicht - ist dann immer noch subjektiv.

                                Das Blockly versucht halt durch die Form der Puzzleteilchen den Anwender dazu zu zwingen, immer ein bestimmtes Vorgehen- der Programmierlogik entsprechend - zu erzwingen. Das finde ich, der vielleicht schon mal programmiert hat eher lästig.
                                Blockly hat auch Vorteile, die Node Red nicht hat. Man kann zum Beispiel in einem Stück eine Variable umbenennen und es wird überall umbenannt usw.

                                NodeRed hat nicht nur eine wesentlich größere Auswahl an Nodes, die Du sonst halt erst Programmieren musst, die Vorgehensweise ergibt sich halt aus dem Programm-/Nachrichtenfluß und man muss nicht nach passenden Puzzleteilchen suchen. ;)

                                Wie gesagt:
                                Ich tu mir halt schwer die richtigen Puzzlestückchen zu finden -
                                Du weißt halt nicht, welche Nodes Du verwenden sollst.

                                Nur das Aussehen und den persönlichen Geschmack alleine als Grundlage zu nehmen, um eine "objektive" Meinung abzugeben, das hat noch nie funktioniert. Dann bleibt noch wieviel Wert man auf das Verhalten der Nackenhaare einzelner legt.

                                Ich habe mal zum Spaß eine Endlosschleife gebastelt, die eine payload immer um 1 erhöht. Ist natürlich nicht sinnvoll und legt das System nur lahm - aber es geht ja darum nicht Äpfel mit Birnen, sondern möglichst gleiches mit Gleichem zu vergleichen.

                                In Blockly würde das nach meiner bescheidenen Meinung so aussehen:

                                d73e6221-0454-4f07-babc-84b12c72018a-image.png

                                In NodeRed so:

                                16acc35e-ae5a-420f-8630-88ffef9e261a-image.png

                                Die Nodes sind nur so groß, weil ich die Namen so lange gewählt habe.
                                Nun sieht man eher einen Nachteil/Vorteil von NodeRed - es verbirgt nämlich das was programmtechnisch passiert. Lasse ich die Namen weg sieht es so aus:

                                d02d7d43-b37b-4f4e-8f79-b36999aed742-image.png

                                Der Nachteil gegenüber dem Blockly ist, dass man nicht sieht was in den Nodes passiert. Anhand der Symbole und Farben bekommt man mit, dass es sich um Inject, Change und Switch Nodes handelt, wenn man mit Node-Red schon länger arbeitet, ansonsten musst Du halt immer erst in die Nodes reinschauen, um zu sehen, was die macht.
                                Der Vorteil in komplexen Strukturen ist aber, dass dies die Übersichtlichkeit eher erhöht. Wenn ich also eine Change Node so benenne, dass dort die payload um 1 erhöht wird, dann interessiert es mich nicht mehr, wie die payload um 1 erhöht wird.
                                Im Prinzip kann man sich jede Node wie ein Unterprogramm vorstellen.

                                Die Übersichtlichkeit kann aber im Übrigen so weit getrieben werden kann, dass ich im Prinzip nach dem Trigger sämtliche Flows in EINER function Node verstecken kann. Damit schaut das Übersichtlich aus, aber ich erkenne erst recht nicht mehr, was wo passiert. Und das geht natürlich ebenfalls komplett am Sinn von Node Red vorbei, um mich auf die Logik zu konzentrieren und nicht auf das, wie diese umgesetzt wird. Deswegen bin ich auch ein Verfechter dafür function-Nodes, so sparsam wie möglich einzusetzen. Dazu brauche ich NodeRed nicht.
                                Wenn ich eine Logik komplett in Javascript umsetzen will, dann mache ich das im Javascript Adapter und schreibe keine function Nodes.

                                Der Riesenvorteil von NodeRed ist eben aufgrund der Riesencommunity die schier endlose Zahl an Nodes die es gibt (wie @rewenode schreibt) und gleichzeitig ein Fluch - aber man muss nicht alles nutzen. Letztlich sind diese Nodes etwas, was Dir Funktionen liefert, die dem Nachrichtenfluß verändert oder sie bilden eine Schnittstelle zu anderer Hardware und können deshalb mit Adaptern im iobroker gleich gesetzt werden. Gerade wenn man einen Adapter im iobroker vermisst, ist es doch toll, wenn man eine Node findet und dann im iobroker weiterverarbeiten kann.
                                Viele nutzen NodeRed - sowie Du - weil vielleicht der passende Adapter in iobroker nicht verfügbar ist (bestimmte Alexa Funktionen - keine Ahnung oder wie ich nun weil ich mit SNMP was machen will und der Adapter im iobroker halt nicht so funktioniert, wie ich es brauche und seit 2 Jahren nicht mehr gepflegt wird).
                                Und wie ich auch schon mal gesagt habe - man kann auch alles kombinieren. Das was Du aus Deinen Alexa Nodes rausholst - kannst ja alles in eigene Datenpunkte wegschreiben, musst Dir NULL Gedanken über einen Node Red Flow machen und bearbeitest dann mit Blockly weiter.

                                Es ist einfach im ioBroker Umfeld so unsinnig, NodeRed und Blockly gegeneinander auszuspielen - anstelle beides zu nutzen und hier sich wieder an der Integrationsfähigkeit des ioBrokers zu erfreuen. Ich bin NodeRed und ioBroker Fan - aber nicht Blockly Fan, weil ich ioBroker Fan bin. ;)

                                Deshalb, um zum Schluss zu kommen, habe ich angeregt, das Beispiel, was ich kürzlich in Node-Red umgesetzt habe, im Blockly zu machen. Das wäre für viele ein nützlicher Baustein, die sich scheuen auf Node-Red einzulassen und man vergleicht eben das Gleiche. Sprich ich bekomme das gleiche Ergebnis mit unterschiedlichen Mitteln und dann kann man sich mE ein Urteil erlauben.

                                R Offline
                                R Offline
                                rewenode
                                schrieb am zuletzt editiert von rewenode
                                #18

                                @mickym Was für mich und sicher auch für Anfänger schwierig ist, sind so Sachen im Flow wie:
                                setze msg.payload ??? was ist msg.payload und auf was setzen? Klar kann man in die nodes gucken, aber das weis der Anfänger nicht unbedingt. Switch ?? was ist das und was macht das?

                                Aber es geht auch so:

                                2021-04-08_15-09-42.jpg

                                Und dann gibt es ja immer noch das Kommentar-node

                                mickymM 1 Antwort Letzte Antwort
                                0
                                • R rewenode

                                  @mickym Was für mich und sicher auch für Anfänger schwierig ist, sind so Sachen im Flow wie:
                                  setze msg.payload ??? was ist msg.payload und auf was setzen? Klar kann man in die nodes gucken, aber das weis der Anfänger nicht unbedingt. Switch ?? was ist das und was macht das?

                                  Aber es geht auch so:

                                  2021-04-08_15-09-42.jpg

                                  Und dann gibt es ja immer noch das Kommentar-node

                                  mickymM Offline
                                  mickymM Offline
                                  mickym
                                  Most Active
                                  schrieb am zuletzt editiert von mickym
                                  #19

                                  @rewenode Du bist von uns beiden der Entwickler-Guru ;) - Ich erinnere mich nur zu gerne an Deine function Node - mit der Du die socket.io Schnittstelle bestückst, auch wenn ich da erst mal nicht weitergemacht habe.

                                  Natürlich muss man als Anfänger - aber das gilt in meinen Augen sowohl für Blockly - als auch für NodeRed ein paar Anfangskenntnisse erwerben.

                                  Für die, die mit NodeRed arbeiten wollen und sich vor englisch-sprachigen Videos nicht fürchten, kann ich nur die Videos von Steve empfehlen - zumindest spricht der für mich auch ein Englisch, dass auch nicht "native speakers" verstehen. ;)

                                  https://www.youtube.com/playlist?list=PLk0D2S-fqJ7YvR1wrpl8A4mhtBbYOlsE4

                                  Für die, die sich damit eher schwer tun - finde ich gibt Matthias Kleine eigentlich eine tolle Einführung:

                                  https://haus-automatisierung.com/nodered-tutorial-reihe/

                                  Und klar mir hilft auch immer wieder zum Nachschlagen: https://www.w3schools.com/js/default.asp

                                  Und klar ich muss verstehen, was ein JAVA Objekt ist.

                                  c8f6142e-fb47-44f0-b420-88e0832c2fd2-image.png

                                  Dann verstehe ich, dass in Node-Red keine Autos, also car objecte, durch die Leitungen flutschen, sondern Nachrichten - also msg.objekte.

                                  Dann schaue ich mir mal ein so ein msg Objekt mal an und verstehe, dass
                                  45769fd7-ee29-44bd-bd8c-f10b0df29bc2-image.png

                                  es meist im Mimumum 2 Eigenschaften besitzt:

                                  1. eine _msgid
                                  2. eine payload

                                  Dann weiß ich ggf. noch, dass ich auf Objekteigenschaften über einen "." zugreife - und dass ich deshalb um auf die Eigenschaft 'payload' eines Nachrichtenobjekts zuzugreifen msg.payload schreiben muss.

                                  Wenn man mit dem Begriff payload nichts anfangen kann, der gibt ihn in den Google Translator ein und findet als deutsche Übersetzung "Nutzlast". Mit etwas Fantasie schafft man es dann sich vorzustellen, dass also in der payload die Nutzdaten durch die Flows geschickt werden.

                                  Und ich bin ehrlich gesagt schon froh, dass die deutsche Übersetzung nun "setze msg.payload" heißt und nicht mehr wie früher "festlegen msg.payload" - im Englischen heißt es halt "set msg.payload"

                                  Dann gibt es wie gesagt noch die Kommentar-Nodes um den Flow zu strukturieren und was auch viel zu wenig genutzt wird, ich kann jede einzelne Node ausführlich kommentieren und dokumentieren.

                                  Und um zu wissen, was die Nodes können oder nicht, finde ich zumindest für die Standardnodes diese ordentlich in der Hilfe und auch auf Deutsch beschrieben.

                                  60824029-1990-47c8-b575-6f8fab8ebea5-image.png

                                  660b8046-0552-4b99-9333-21735e3e4a0c-image.png

                                  Diese Beschreibung taucht dann in der Info des einzelnen Nodes auf - so dass man auch hier für sich oder andere, das was die Node macht oder warum man sie einsetzt super dokumentieren kann.

                                  screen.png

                                  Ach und wer behauptet Blockly=JavaScript und NodeRed ist es nicht, den muss ich enttäuschen. Jede einzelne Node ist genauso Javascript, wie so ein Puzzleteil im Blockly. Man muss sich nur mal den SourceCode einer einzelnen Node anschauen. Es gibt nur keine Möglichkeit einen Node-Red Flow in Javascript auszugeben, da das viel zu komplex wäre. Im Prinzip ist jede Node ein JS function, deren Verhalten über das Interface noch verändert werden kann.

                                  Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                  R 1 Antwort Letzte Antwort
                                  0
                                  • mickymM mickym

                                    @rewenode Du bist von uns beiden der Entwickler-Guru ;) - Ich erinnere mich nur zu gerne an Deine function Node - mit der Du die socket.io Schnittstelle bestückst, auch wenn ich da erst mal nicht weitergemacht habe.

                                    Natürlich muss man als Anfänger - aber das gilt in meinen Augen sowohl für Blockly - als auch für NodeRed ein paar Anfangskenntnisse erwerben.

                                    Für die, die mit NodeRed arbeiten wollen und sich vor englisch-sprachigen Videos nicht fürchten, kann ich nur die Videos von Steve empfehlen - zumindest spricht der für mich auch ein Englisch, dass auch nicht "native speakers" verstehen. ;)

                                    https://www.youtube.com/playlist?list=PLk0D2S-fqJ7YvR1wrpl8A4mhtBbYOlsE4

                                    Für die, die sich damit eher schwer tun - finde ich gibt Matthias Kleine eigentlich eine tolle Einführung:

                                    https://haus-automatisierung.com/nodered-tutorial-reihe/

                                    Und klar mir hilft auch immer wieder zum Nachschlagen: https://www.w3schools.com/js/default.asp

                                    Und klar ich muss verstehen, was ein JAVA Objekt ist.

                                    c8f6142e-fb47-44f0-b420-88e0832c2fd2-image.png

                                    Dann verstehe ich, dass in Node-Red keine Autos, also car objecte, durch die Leitungen flutschen, sondern Nachrichten - also msg.objekte.

                                    Dann schaue ich mir mal ein so ein msg Objekt mal an und verstehe, dass
                                    45769fd7-ee29-44bd-bd8c-f10b0df29bc2-image.png

                                    es meist im Mimumum 2 Eigenschaften besitzt:

                                    1. eine _msgid
                                    2. eine payload

                                    Dann weiß ich ggf. noch, dass ich auf Objekteigenschaften über einen "." zugreife - und dass ich deshalb um auf die Eigenschaft 'payload' eines Nachrichtenobjekts zuzugreifen msg.payload schreiben muss.

                                    Wenn man mit dem Begriff payload nichts anfangen kann, der gibt ihn in den Google Translator ein und findet als deutsche Übersetzung "Nutzlast". Mit etwas Fantasie schafft man es dann sich vorzustellen, dass also in der payload die Nutzdaten durch die Flows geschickt werden.

                                    Und ich bin ehrlich gesagt schon froh, dass die deutsche Übersetzung nun "setze msg.payload" heißt und nicht mehr wie früher "festlegen msg.payload" - im Englischen heißt es halt "set msg.payload"

                                    Dann gibt es wie gesagt noch die Kommentar-Nodes um den Flow zu strukturieren und was auch viel zu wenig genutzt wird, ich kann jede einzelne Node ausführlich kommentieren und dokumentieren.

                                    Und um zu wissen, was die Nodes können oder nicht, finde ich zumindest für die Standardnodes diese ordentlich in der Hilfe und auch auf Deutsch beschrieben.

                                    60824029-1990-47c8-b575-6f8fab8ebea5-image.png

                                    660b8046-0552-4b99-9333-21735e3e4a0c-image.png

                                    Diese Beschreibung taucht dann in der Info des einzelnen Nodes auf - so dass man auch hier für sich oder andere, das was die Node macht oder warum man sie einsetzt super dokumentieren kann.

                                    screen.png

                                    Ach und wer behauptet Blockly=JavaScript und NodeRed ist es nicht, den muss ich enttäuschen. Jede einzelne Node ist genauso Javascript, wie so ein Puzzleteil im Blockly. Man muss sich nur mal den SourceCode einer einzelnen Node anschauen. Es gibt nur keine Möglichkeit einen Node-Red Flow in Javascript auszugeben, da das viel zu komplex wäre. Im Prinzip ist jede Node ein JS function, deren Verhalten über das Interface noch verändert werden kann.

                                    R Offline
                                    R Offline
                                    rewenode
                                    schrieb am zuletzt editiert von
                                    #20

                                    @mickym Ja Einführungstutorials gibt es genug für Blockly und für NR

                                    Allerdings erwecken fatalerweise Beide erstmal den Eindruck, als könne man sich damit mal eben schnell und ohne Vorkenntnisse ein Programm zusammenklicken.
                                    Und genau das ist selten möglich;-)

                                    mickymM 1 Antwort Letzte Antwort
                                    0
                                    • R rewenode

                                      @mickym Ja Einführungstutorials gibt es genug für Blockly und für NR

                                      Allerdings erwecken fatalerweise Beide erstmal den Eindruck, als könne man sich damit mal eben schnell und ohne Vorkenntnisse ein Programm zusammenklicken.
                                      Und genau das ist selten möglich;-)

                                      mickymM Offline
                                      mickymM Offline
                                      mickym
                                      Most Active
                                      schrieb am zuletzt editiert von
                                      #21

                                      @rewenode Stimmt - aber nachdem wir ja in der ioBroker Umgebung sind - gibts für diese Leute ja den Szene-Adapter.

                                      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                      1 Antwort Letzte Antwort
                                      0
                                      • _ Offline
                                        _ Offline
                                        _R_A_L_F_
                                        schrieb am zuletzt editiert von
                                        #22

                                        Um beides miteinander zu verheiraten, würde es ja auch noch folgenden Node geben, mit dessen du Blockly in Node-red verwenden kannst ;)

                                        https://flows.nodered.org/node/node-red-contrib-blockly

                                        HomoranH 1 Antwort Letzte Antwort
                                        0
                                        • _ _R_A_L_F_

                                          Um beides miteinander zu verheiraten, würde es ja auch noch folgenden Node geben, mit dessen du Blockly in Node-red verwenden kannst ;)

                                          https://flows.nodered.org/node/node-red-contrib-blockly

                                          HomoranH Nicht stören
                                          HomoranH Nicht stören
                                          Homoran
                                          Global Moderator Administrators
                                          schrieb am zuletzt editiert von
                                          #23

                                          @_r_a_l_f_ sagte in Unterschied zwischen NodeRed und Blockly?:

                                          Um beides miteinander zu verheiraten, würde es ja auch noch folgenden Node geben, mit dessen du Blockly in Node-red verwenden kannst ;)

                                          https://flows.nodered.org/node/node-red-contrib-blockly

                                          coool

                                          Ganz am Anfang von ioBroker und lange bevor es Blockly gab hatte Bluefox mir ganz stolz node-red vorgestellt und gemeint, dass sei auch was für mich als absoluter javascript Legastheniker.
                                          Da habe ich dann tatsächlich auch vieles mit ans laufen gebracht. Bis ich dann an die Stelle kam, an der einiges nur noch mit function-nodes ging.
                                          Dort war dann wieder natives js gefragt, was ich immer noch nicht beherrsche.

                                          Diese nodes würden dann die Lücke schließen, aber dann kann ich doch auch bei Blockly bleiben

                                          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                          mickymM 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          823

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe