Beiträge von VincentLP

    Es gibt gute Neuigkeiten!


    Die Prüfung durch Google schreitet voran. Es war noch einiges an Anpassungen nötig. Das wurde nun alles durch Google abgesegnet und morgen werde ich dem Team eine Kopie von batch zum Testen schicken.


    Zudem gab es den Fehler, dass Konten nicht richtig hinzugefügt werden konnten. Dieses Problem habe ich eben noch behoben. Außerdem hatte YouTube das Format wie Videoinformationen ausgespielt werden geändert. Diese Änderungen habe ich jetzt in batch übernommen.


    Das Update geht raus, sobald von Google grünes Licht kommt.


    Ich sehe Licht am Ende des Tunnels :)


    Liebe Grüße und bleibt gesund!

    Benni

    Hallo ihr Lieben,


    Ich habe eine Email vom Google Team erhalten. Um batch wieder zum Laufen zu bekommen, muss ich die Verbindung der App zu YouTube vorübergehend komplett schließen. Erst dann können sie den Vorgang fortsetzen.


    Zitat
    Dear Developer,

    Thank you for your response.

    It appears your project aerial-grid-92722 contains one or more testing URLs and/or development clients. Since development apps are ineligible for verification, please create separate OAuth projects for your development/testing and production clients.

    • Display_name: Webclient 1, client_id: 309823856580-p9hpi91dv15cskh5gnshih3jqr8n6jcq.apps.googleusercontent.com

    Please reply to this email once you have migrated your development client to a separate project so that we may continue with the verification process.

    Also bitte nicht wundern.


    Liebste Grüße

    Benni

    hallo ihr Lieben,


    Es gibt neues von der batch-Front. Für alle, die dieses Video noch nicht gesehen haben, verlinke ich das mal fix hier:

    [Externes Medium: https://youtu.be/vPyZ3yrfolw]


    Google hat nun alles, was sie brauchen, um batch wieder frei zu schalten und Steam ist informiert, dass sie batch auf "kostenlos" stellen sollen. Es geht endlich weiter.


    Liebster Gruß

    Benni

    Hallo ihr Lieben,


    Ich dachte ich gebe mal Bescheid, wo wir in der Entwicklung gerade sind.


    Aktuell laufen zwei Entwicklungen parallel. Einerseits bin ich an den Arbeiten in batch dran, andererseits programmiere ich die Server-Anwendung. Die Server-Anwendung ist jetzt so weit, dass sie Programmteile ausliefern kann und batch ist soweit, dass es diese herunterladen und installieren kann. Aktuell bin ich dabei Routinen zuschreiben, die Plugins automatisiert herunterladen und Abhängigkeiten zu anderen Plugins auflöst. Ein Beispiel:

    Das Plugin zum hinzufügen eines neuen YouTube-Accounts macht keinen Sinn, wenn wir keine Seite haben, dieses Plugin anzeigt. Also muss zu dem erwähnten Plugin die Seite mit installiert werden.


    Die Arbeit an der erwähnten Funktion ist gerade ein wenig anstrengend, weil das alles in allem recht komplexe Materie ist. Aber ich gehe voran.


    Liebster Gruß

    Benni

    Gerade mal in die Nutzungsbedingungen geschaut, für mich liest es sich so, dass Verkauf verboten ist, spenden lese ich da nicht so direkt...

    Jap. Nicht so direkt. Ist wunderbares Juristen-Englisch.

    Also dann wieder kostenlos, man könnte statt Premium-Plugins doch gleich eine eigene Währung einführen, "Batch-Punkte", Upload ist kostenlos aber Premium-Features kosten Punkte, 1000 Punkte für'n 10er verkaufen und man ist wie bei Candy-Crush schnell in der Gewinnzone wenn ein Template zu erstellen 100 Punkte kostet, ein Video auf Twitter veröffentlichen? 10 Punkte!


    Warum alles verschenken... wer vorher 20€ für das ganze bezahlt hat bekommt eben 2000 Punkte gratis... ;)


    PS: Da oben ist auch ein wenig Ironie zu finden...

    Ach ja... Das Ding mit der eigenen Kryptowährung hatte ich noch vergessen 🤣

    Natürlich schürt Batch auf euren Computern noch Bitcoin, aber nur, wenn ihr nicht bezahlt. NICHT!



    Nun mir pers. tut das für Batch bezahlte Geld nicht weh, ich habe es gerne bezahlt weil es ein Tool ist das ich nutze.

    Ich freue mich sicherlich wenn ich dafür nun irgendwann andere Funktionen nutzen kann, aber das wäre für mich sekundär.


    Ich bin gespannt wie es weitergeht, ist auf alle Fälle eine große Umwälzung!

    Jap. Das ist es. Weil es gerade alles auf den Kopf stellt. Aber irgendwie bieten sich dadurch ganz neue Lösungen, und ich habe eine gute Portion "jetzt erst recht" im Blut.


    Gerade stellt sich durch Corona mein ganzes Leben ein wenig auf den Kopf, weil mir als Künstler alle Aufträge dieses Jahr weg gebrochen sind.


    Ich habe sehr kurzfristig jetzt einen komplett anderen Job bekommen, der mir aber die Freiheit lässt mich intensiv weiter um die Software zu kümmern. Die Entwicklung wird sich dennoch etwas verlangsamen.


    Für Interessierte möchte ich aber so bald wie möglich erste Alpha Builds veröffentlichen. Irgendwie fühle ich mich in die Zeit von vor 3 Jahren zurück versetzt 🙈


    Mein Gott! Dieses Projekt läuft schon sehr lang.


    Liebsten Gruß

    Benni

    Hallo ihr Lieben,


    Die Kommunikation funktioniert im Moment nicht so, wie sie soll. Ich gelobe Besserung. Das Wichtigste vorweg:


    Batch kehrt zurück! :)


    Google hat sich vor kurzem, zwar nicht direkt, aber indirekt geäußert - und auch nicht auf irgendeine Anfrage bezüglich, dass die die API abgeschaltet haben, sondern zu einer Kontigent-Erhöhung, die ich vor Urzeiten beantragt hatte. Klingt verwirrend ist es auch. Was ich nun darüber rausgefunden habe ist Folgendes:

    Google stört sich daran, dass batch verkauft wird. Tief in ihren Verträgen steht, dass eine API nicht "direkt oder indirekt" verkauft werden darf. Mir dies mit zu teilen, war aber dann offenbar ein Problem. Wie dem auch sei...


    Dass hatte mich dann ein wenig in eine kleine Krise über das "Wie kommen wir da wieder raus?" gestürzt. Ich habe viel nach gedacht und mich dann wieder an die Arbeit gemacht. Hier kommt die Lösung:


    batch wird kostenlos!


    Ja. Aber was wird aus all den Leuten, die bereits dafür bezahlt oder gespendet haben? Und wo stehen wir jetzt eigentlich?


    Ich bin gerade dabei den Plugin-Store zu basteln. Ich hatte euch ja vor längerer Zeit von der neuen Programm-Struktur geschrieben, die ich bei batch einführe. Ein guter Teil der Plugins ist fertig oder fast fertig. Es liegt jedoch, ich will ehrlich sein, noch eine Strecke vor mir. Aber warum ist das so wichtig? In batch selbst sind überhaupt keine Funktionen vorgesehen, diese Software aktuell zu halten - das hat ja Steam für mich übernommen.


    Da kommen wir zum nächsten Punkt: batch wird den Steam-Store verlassen und eigene Wege gehen.


    Weiterhin baue ich gerade einen Cloud-Dienst auf, der allen, die Geld investiert haben, offen steht. Mit diesem Dienst lassen sich dann auch endlich so gewünschte Dinge, wie Tweets absetzen umsetzen. Es wird also Premium Features geben. Das braucht noch ein wenig Zeit und ist hoffentlich im Sommer startklar.


    Die Priorität liegt gerade wie folgt:

    - Plugin-Store fertig bekommen

    - Plugins fertig bekommen

    - Update-Funktionen aufbauen

    - Testen

    - Offene Beta

    - batch 2.0 veröffentlichen


    Die Diskussion ist eröffnet, mit dem heiligen Versprechen, wieder mehr hier zu sein.


    Ich ziehe mich in mein Labor zurück.


    Liebe Grüße

    Benni

    So. Ich habe @Foxhunter mal eine aktualisierte Version geschickt. Sollte das funktionieren, wäre das einerseits für mich unglaublich peinlich, andererseits wundervoll.


    Ein habe ein kleines Update zur kommenden Version:
    Plugins sind nun so weit implementiert. Darauf möchte ich nun etwas genauer eingehen. Plugins können als Pakete verteilt werden. Das ist ein simpler ZIP komprimierter Ordner mit allen nötigen Dateien. Plugins können für den Main- und den Renderer-Prozess erstellt werden. Das geht super simple und das möchte ich an dieser Stelle zeigen.
    Im Renderer-Prozess, kann ich ein normales Plugin erstellen, dass einfach zusätzliche Funktionen bietet oder eine neue Seite. Grundsätzlich hat ein Plugin folgende Verzeichnisstruktur:

    Code
    meinPlugin
    \package.json
    \index.js




    package.json enthält die Konfiguration und index.js in der Einstiegspunkt für das Plugin. Der Pfad zum Einstiegspunkt kann aber auch in der Konfiguration fest gelegt werden.
    Hier ein kleines Beispiel für ein Plugin. Es handelt sich um einen "Button Dialog". Zuerst die Konfiguration in package.json

    Hier fallen zwei Dinge auf: context und addTo.
    context legt fest, ob das Plugin beispielsweise in den Vorlagen oder wie in diesem Fall auf den Seiten "elements" und "test-page" eingebunden werden soll. addTo bestimmt, dass es im Standard Container "plugins" zur Verfügung gestellt werden soll. Diese Container nehmen alle Plugins auf und zeigen sie an einer festgelegten Stelle an.


    Hier nun das Plugin an sich:


    Hier werden vordefinierte Komponenten eingebunden und angezeigt. cButtonDialog ist eine von mir erstellte Komponente, die einen runden Button mit einem Symbol anzeigt. Bei einem Klick auf den Button, wird ein kleines Dialogfenster angezeigt. Akzeptiert der Benutzer den Dialog, dann wird accept ausgeführt, ansonsten dismiss. Dieses Skript wird kurz durch VueJS kompiliert and schon, ist das Plugin fertig.


    Möchte ich eine komplett neue Seite für batch erstellen verändert sich die Konfiguration minimal:

    context wird auf global gestellt. Das Plugin ist also immer verfügbar. Die addRoute Direktive sagt batch, dass dieses Plugin in der oberen Navigationsleiste angezeigt werden soll. Und schließlich definiert das Plugin noch seinen eigenen Kontext oder überschreibt einen bestehenden.


    Nun können wir die Seite an sich schreiben.



    Diese Seite zeigt einen Button an und erstellt einen Plugin-Container, in den es selbst wiederum Plugins aufnehmen kann. Wurde die Seite aufgerufen, fragt das Plugin nach allen gespeicherten Accounts und schreibt diese in die Konsole. Nach einem kurzen Kompilieren steht eine neue Seite in batch zur Verfügung.


    Ich hoffe ihr mögt, was ihr seht und habt vielleicht noch ein paar Ideen. Das ist der aktuelle Stand der Dinge.


    Liebste Grüße
    Benni / Vincent

    Danke für den Hinweis. Ich werde das umgehend ausprobieren..


    Liebste Grüße
    Benni/Vincent

    Ich warte ja auch nach wie vor auf eine API Freigabe seitens Google, ich kann da nur zustimmen, insgesamt ist das einfach sehr ernüchternd. Es scheint mir fast als wollten sie gar nicht, dass kleinere Entwickler die API nutzen, ich Frage mich warum sie das überhaupt öffentlich anbieten, wenn sie das so stark reglementieren...


    Nachdem sie erst nach weiteren Information bzw Screencast gefragt haben, die man sehr schnell liefern müsste kommt jetzt erstmal lange nichts. Musstest Du auch Screencast liefern?

    Musste ich. Alles fristgerecht eingereicht. 3 Wochen später trat der "Bug" auf, weshalb das jetzt alles über ein neues Projekt in der API läuft. Das alte Projekt, wie auch das Neue, läuft nach wie vor unter "wird geprüft". Am 7.12. habe ich das neue Projekt eingereicht. Das heißt die 6 Wochen Prüfung seitens Google laufen bald ab. Es bleibt spannend.

    Um Geld zu verdienen... einzige Möglichkeit: Jeder der die Software nutzt, MUSS sich einen eigenen API-Key erstellen und im Programm dann eingeben, somit "umgeht" man diese Regel von YouTube da jeder quasi seine "eigene" App nutzt und man nicht mehr mit ALLEN am selben Limit "lutscht" was natürlich bei 10-20 Nutzern zeitgleich sehr schnell aufgebraucht ist... (ich komme am Tag mit meinem PHP-Script ja gerade mal auf 100-200 "Credits" was die API-Abfragen angeht... wenn das nicht nur ich benutzen würde, sehe das deutlich anders aus...

    Ja. Interessantes Konzept, das leider alle User ausschließt, die technisch nicht so versiert sind. batch richtet sich eben auch vor allem nicht an Power-User. Das war mir von Anfang an wichtig. Power-User kommen mit der kommenden Version auf ihre Kosten, wo sie eben alles selbst machen können, wenn sie wollen.


    About this:
    Heute kam ein kleiner Durchbruch, der allerdings viel bewirkt. Gerade bin ich ja dabei die Software von Grund auf neu zu konzipieren. Der Pluginbetrieb ist nun sowohl im Rendererprozess (da war es einfach) als auch im Main-Prozess möglich. (es folgt Technikkram)
    Ich wollte es schaffen, das Plugins ganze Programmbereiche ersetzen können. Ein kleines Beispiel:
    Ich mag nicht, wie das Erstellen von Vorlagen funktioniert. Also erstelle ich mir ein Plugin, dass das eben auf "meine" Art übernimmt. Soweit der Plan. Jetzt habe ich heute die Möglichkeit geschaffen, das ein Plugin zum einem die Daten auf nimmt (Renderer) und zum anderen verarbeitet (Main). Das Plugin kann in beiden Prozessen mit einander kommunizieren und auf ein Toolset, das batch eben bietet, zum Speichern oder Löschen der Daten zurück greifen. Dabei wird verhindert, daß ein Plugin zu viele Berechtigungen hat. JavaScript ist nun mal konzipiert, wie es konzipiert ist, weshalb das alles ein bisschen Recherche in Anspruch genommen hat. Nun ist es so weit. Ein Plugin darf nichts, was ich explizit erlaube, ist aber dennoch einfach zu erstellen.


    Auf dieser Grundlage gibt es zusätzliche Pläne, die Alex oder ich zur gegebenen Zeit veröffentlichen werden. Ab morgen geht es weiter darum, diese Funktionen aus zu bauen.


    Bis jetzt habe ich für das neue batch ca. 16500 Zeilen neuen Code geschrieben (das alte batch hat so um die 25000 Zeilen - es wird sich einiges ändern :D) und es macht weiterhin Spaß.


    Ich werde hoffentlich in den nächsten Tagen einen etwas tieferen Einblick in die aktuelle Arbeit veröffentlichen.


    Liebe Grüße
    Benni

    Hey @sem,


    Ja. Von Googles "Don't be evil" bleibt für Entwickler relativ wenig übrig.


    Der Ansatz, den du beschreibst wird hier und da auch genutzt. Zum Beispiel um sich extra Funktionen zu "erschleichen". Die Software MyTube zum Beispiel verwendet diese Art von Vorgehen. Auch YouPloader hat das gemacht. Dies führte aber dazu, das zum Beispiel der YouPloader nach und nach "gestorben" ist. Sobald auf YouTube im UI nur eine Kleinigkeit geändert wird, kann es dazu führen, dass Dinge nicht mehr funktionieren. Der Aufwand für die Pflege der Software steigt also sehr an.


    Der zweite Punkt ist, dass ich damit gegen die Nutzungsbedingungen von Google verstoßen würde. Google könnte mir im Extremfall den Account dicht machen, mit dem Ergebnis, dass gar nichts mehr ginge.


    Ich muss aktuell einfach hoffen, dass wir ganz schnell wieder zur Normalität zurückkehren.

    :)


    Liebe Grüße
    Benni

    Hi Benni,


    wie sieht es denn allgemein aus? Wäre einfach schön, wenn man das Programm mal wieder nutzen könnte

    :/

    Ich verstehe nicht wieso es so lange dauert, die API von Google freigeschaltet zu bekommen. Die Update-News sind alle toll und nett, aber das hilft irgendwie auch nicht, wenn das Programm einfach nicht funktioniert.

    Ich verstehe den Ärger. Auch ich bin nicht glücklich (ich bin alles andere - aber nicht glücklich - gleich dazu einen Nachtrag) über die Situation. Der Status aktuell steht bei "wird überprüft". Und das seit dem 7.12.2019. Es hat sich seitens Google an dieser Stelle nichts getan. Offenbar geht Google mit Nutzern außerhalb Deutschlands freundlicher um, denn die können die Software nutzen. Einen Versuch, den du unternehmen kannst ist, Accounts.db zu löschen und deinen Account erneut zu verbinden. Manchmal kann das helfen.


    Mein Nachtrag.
    Ich versuche so entspannt, wie möglich damit um zu gehen. Was bleibt mir? Im Grunde zerstört Google mit seinem Verhalten oder nennen wir es freundlich "Bug" die Arbeit mehrerer Jahre, vernichtet alle Reputation, die aufgebaut habe und streicht alle Einnahmen, die ich hatte auf Null zusammen. Der Schaden ist viel beträchtlicher, als dass mancher Nutzer dafür bezahlt! hat, die Software nicht nutzen kann. (um Gottes Willen nicht falsch verstehen - dieser Gedanke lässt mich durch drehen) Google stellt gerade alles auf die Probe. Ich bekomme leider keinerlei Hilfestellung seitens YouTube oder Google. Ich bin zur Geduld verdammt. Ich war im Dezember sehr nahe am hinschmeißen, weil ich mich so machtlos gefühlt habe. Damit wäre ich, in dieser Phase der Schwäche rein niemanden in irgendeiner Weise gerecht geworden. Vor allem (klingt pathetisch) mir selbst nicht.


    Also mache ich weiter. Unabhängig von "wird überprüft" und versuche diese Zeit als Zeit zu sehen, in der ich alles neu denken darf, weil der impact gerade zu auf Null geht (etwas Schlechteres, als das aktuelle kann ich euch nicht bieten). Gerade tue ich niemanden weh, wenn ich grundsätzliche Strukturen umbaue. Lakonisch gesprochen: merken, würde es keiner.


    Deshalb meine scheinbare Ruhe, was das Thema betrifft. Ich kann nicht anders. Sei dir sicher: wenn es Neuigkeiten in dieser Richtung gibt, seid ihr die ersten, die es erfahren.


    Liebe Grüße
    Benni

    Halli hallo.


    Ich wollte ja eigentlich die letzten Tage wieder was gepostet haben... Ich wollte mir ja eigentlich auch den Januar frei halten - hat super geklappt. Ab morgen bin ich in Nürnberg. Aber sei es drum.


    Ich habe weiter an den verschiedenen Komponenten und am Plugin-System gearbeitet. Da war einiges an Aufräumarbeiten zu tun, um den Code sauber zu bekommen.


    Ich habe allen Code durch dokumentiert und bin gerade dabei Plugins auch in den Hauptprozess zu implementieren.


    Wie es gerade aussieht wird die kommende Version von batch eher eine Art (Achtung! Ich benutze ein kluges Wort) Service-Provider, den ich nach belieben erweitern kann. Mein Plan ist, dass man durch Plugins auch einen Hauptteil des Programms überschreiben kann und durch eigene Sachen ersetzen.


    Für den normalen Nutzer ändert sich nichts, außer, dass die Stabilität besser wird (beta phase ausgeschlossen :D)


    Du willst deine Templates anders organisieren, als es aktuell der Fall ist? Dann kannst du dir das selbst basteln. So ist aktuell der Plan. Das heißt auch für mich, das ich wohl alle Programmteile als eigenständige Module ausliefern werde. Das wird die Pflege des Programms auch für mich vereinfachen.


    Ich habe durch meine Arbeit ein Problem lösen können, das seit der ersten Version besteht. Kleine Bildschirme werden endlich voll unterstützt und der angezeigte Inhalt verschwindet nicht einfach. Außerdem kann jede Komponente, die ich programmiert habe ab jetzt nach belieben erweitert werden.


    So. Ich bin also dran. Jetzt bin ich erstmal ein paar Tage wieder raus. Ab nächster Woche geht es weiter.


    Liebe Grüße
    Benni

    Der Button scheint einen weg zu haben. Ich kümmere mich darum, dass das wieder möglich ist.


    Dann stellt sich dir auch die Frage mit den Videodateien nicht mehr.

    :)


    Liebe Grüße
    Benni

    Ich verstehe schon was du meinst.

    ;)

    So etwas wäre fix hinzugefügt. Wenn du automatisierte Titel verwendest, kannst du es natürlich am Titel sehen.


    Nur zum Verständnis: warum ist dir das wichtig? Also, wie passt es zu deinem Workflow?


    Liebe Grüße
    Benni

    Es gibt neues aus dem Forschungslabor.


    Ich habe die letzten Tage mit der Implementierung von Plugins verbracht und habe dazu auch eine Frage an euch.


    Die größte Sorge, die ich hatte, war, dass ich Plugins entsprechend sicher bekomme. Dieses Problem ist gelöst. Jedes Plugin läuft komplett von batch abgetrennt. Ein Plugin hat keinen Zugriff auf die internen Daten oder Programmcode von batch. Außerdem kann es keine Bibliotheken nachladen oder gefährlichen Code ausführen. Es kann über eine noch zu implementierende Schnittstelle Daten anfordern oder auf Ereignisse warten (Z.B. das aktuelle Template wurde geändert)


    Das Erstellen von Plugins ist dazu extrem einfach. Wer schon mal mit VueJS gearbeitet hat, findet sich sehr schnell zurecht.


    Dieses kleine Beispiel bindet einen Button mit einem Pluszeichen in batch ein. (Wo und wie wird in einer kleinen Datei gesteuert) Wenn jemand drauf klickt wird "Button clicked" in die Konsole geschrieben. Nach einem kurzen kompilieren seitens Vue ist das Plugin einsatzbereit.


    Ein detaillierteres Beispiel stelle ich morgen rein (programmieren auf dem Handy macht keinen Spaß) . Plugins können als commonJS Modul oder als Coffeescript vorliegen. All das wird möglich durch ein JavaScript Modul, dass auf den Namen "vm2" hört.


    Mit den Plugins wird es möglich sein komplett neue Programmabschnitte zu programmieren.



    Hier die Frage(n):
    Wo würdet ihr Plugins gern einsetzen? Was sollten sie können dürfen (und was nicht). Wo gäbe es einen Mehrwert von Plugins?


    Liebe Grüße
    Benni aka Vincent

    Hey Andreas,


    Vielen Dank für das Feedback. Der Button wird gefixt.

    :)

    und um die Thumbnails kümmere ich mich auch.


    "Automatische Überwachung" hält die Warteschlange dauerhaft aktiv. Sobald ein neuer Eintrag kommt, wird die Warteschlange automatisch gestartet.


    Wunderbar, dass dir das Tool gefällt. Ich bin auch weiterhin kräftig am Werkeln (im Entwicklerblog dazu mehr).


    Vielen Dank für das Feedback.


    Liebster Gruß
    Benni aka Vincent

    Achtung - Technikeintrag - vielleicht langweilig.


    Es ist mal wieder Zeit fürs Entwickeln da. Da Google sich noch nicht regt, kann ich mich um andere Dinge kümmern.


    Ich habe angefangen an einem neuen Major-Update zu arbeiten. Dabei habe ich die angeregten PlugIns im Blick.


    Here we go.
    Ich hatte im letzten Eintrag geschrieben, dass ich batch so weit stabilisiert habe, dass da eigentlich nichts unerwartetes mehr auftauchen sollte - so Google will.


    Also habe ich mich hin gesetzt und gefragt, was die eigentlich Baustelle im Code ist.


    Unter der Haube arbeitet batch mit dem Framework VueJS. Damit lassen sich herrlich einfach und fix (quick and dirty) Komponenten für die Oberfläche erstellen. Das habe ich mit Wonne getan ohne aber die Vorteile die dieses Frameworks aus zuspielen. Der Vorteil ist: Man kann eine Menge Code zusammenfassen und wiederverwendbar machen. Hier harkt es bei batch. Ich habe also angefangen die gesamte Oberfläche in kleinste Komponenten zu zerlegen.


    Welchen Vorteil hat das?


    Nun. Wie gesagt. Am Ende spart man sehr viel Zeit, weil nicht alles immer wieder von neuem geschrieben werden muss. Wir bekommen kleine Codeblöcke, die sich mit einer kleinen Sache beschäftigen, dafür aber überall auftauchen. Für mich bedeutet das, dass ich nur immer diesen einen Codeblock pflegen muss, wenn es in batch ein Problem gibt, und ich dabei alle Stellen in denen dieser Block zum Einsatz kommt mit korrigiere. So weit so klar. Nun kommt aber der weitere Schritt: wenn wir wollen, dass Menschen PlugIns schreiben, wollen sie das auf eine einfache Art tun. Diese Menschen sind dann in der Lage auf all diese Komponenten zu zugreifen und zu nutzen. Damit erhalten wir vor allem auch ein konsistentes Erscheinungsbild und wir können steuern, was eine Plugin darf und was nicht.


    Um PlugIns sicher zu machen, habe ich Vorkehrungen getroffen, dass Daten nicht einfach abfließen können. Hierfür habe ich einen Mechanismus eingebaut, der genau regelt, an welche Server Daten geschickt werden können oder von welchen sie empfangen werden dürfen. Das macht das Entwickeln für mich ein bisschen komplizierter, schafft aber zusätzliche Sicherheit.


    Der Zugriff auf Daten durch Plugins wird innerhalb von batch auch beschränkt werden. Hierfür habe ich den "Main Prozess" (dieser hat hohe Berechtigungen) stark vom "Render Prozess" (hat geringe Berechtigungen) entkoppelt. Aktuell haben diese Prozesse in batch etwa gleichwertige Berechtigungen. Dies wird potenzielle Szenarien gegenüber denen batch aktuell noch anfällig sein könnte, ausschließen. Vor allem die Gefahr durch präparierte Eingaben wird dann ins Leere laufen.
    Der Rendererprozess muss nun aber alle Änderungen im Main Prozess quasi anfragen. Da ist aber noch ein wenig zu tun.


    Auch darf der Render-Prozess nicht mehr so einfach auf das Dateisystem zugreifen. Hier gibt es aber noch ein bisschen Arbeit, weil es sich nicht hundert prozentig verhindern lässt, potentiell unsichere Dinge zu zulassen. Das liegt jedoch an dem Tool "Webpack" um das ich so einfach nicht drumherum komme. Da gab es aber heute einen großen Fortschritt. Das bekomme ich noch einigermaßen dicht oder kann es einfach einem Angreifer sehr schwer machen.


    Aktuell bin ich gerade also dabei all die Komponenten zu schreiben. Optisch verändert sich wenig. Eher Detailkram. Aber die Komponenten funktionieren viel besser und vor allem zuverlässiger. Ich muss viel weniger hacking betreiben, damit sich alles so verhält, wie es soll. Zudem lasse ich alle Komponenten automatisch durch dokumentieren, damit eventuelle Plugin-Schreiber eine Chance haben.


    Ich werde zu gegebener Zeit neue Screenshots veröffentlichen. Das dauert gerade einfach, weil ich batch quasi neu schreibe. Funktionieren tut da noch nichts, aber es ist jeden Tag ein kleiner Fortschritt sichtbar und ich kann alte Designfehler im Code korrigieren.


    batch ist mir eine Herzensangelegenheit und wird es wohl auch noch lange bleiben.


    The evolution of batch

    ;)


    Liebe Grüße
    Benni

    Hallo ihr Lieben!


    Nach langer langer Zeit, bin ich wieder da. Ich habe ein paar Neuigkeiten und natürlich einiges zu schreiben.


    Die letzten Monate waren ein ziemlicher Ritt. Das war auch der Grund, warum ich hier nicht online sein konnte. Alex hat mich aber sehr lieb vertreten und ich möchte mich dafür bei ihm sehr bedanken.


    Ich werde wie häufiger einen persönlich bis privaten Teil hier in den Thread schreiben und danach einen der nur batch betrifft.


    Was war los?


    Traditionell ist die Winterzeit in meinem Gewerbe die stressigste. Deswegen hatte ich über den Herbst versucht batch "winterfest" zumachen. Das ist mir eigentlich auch gelungen. Dazu aber später mehr. In den letzten Monaten habe ich en suit 2 bis 3 Vorstellungen am Tag gespielt. Das geht ziemlich an die Kräfte. Da können die heimischen Treppenstufen schon sehr zu einem Hindernis werden. Außerdem entleert diese Zeit den Kopf komplett. Mir war es leider nicht mehr möglich mich hier im Forum zu kümmern. Alex hatte mir angeboten, so gut es geht für euch da zu sein. Das hat mich sehr dankbar gemacht. Hinzu kamen noch mehr Dinge

    :D

    Ihr kennt das wahrscheinlich: Wenn es dick kommt, dann aber richtig. Ich bin seit zweieinhalb Jahren krank gewesen, ohne zu wissen was es war. Bis Dezember war es dann so weit, dass ich meinen Job nur noch durch viele Tricksereien ausüben konnte. Dann kam endlich die Erkenntnis, dass es mit dem Essen zu tun hat. Jetzt geht es mir wieder sehr prächtig, nur leider habe ich durch die ganze Umstellung plus der Anstrengung am Theater auch noch recht viel Gewicht verloren (ein Wonneproppen war ich ja nie - da fällt das etwas mehr ins - ha ha - Gewicht). Aber es gab auch ein paar schöne private Veränderungen...


    Den Januar habe ich mir nun frei geschaufelt und kann mich wieder viel besser um batch kümmern, was mich zu meinen nächsten Thema führt.


    Was ist mit batch los?


    Ich habe viel recherchiert und vorsorglich einige Dinge im Dezember vorbereitet. Das Ergebnis meiner Recherche ist ernüchternd und unglaublich zugleich. Es handelt sich hier um einen Bug in den Zugriffsberechtigungen in der YouTube-API. Das eigentlich schlimme daran: Man kann es so nicht beheben, außer: Man erstellt ein neues API-Projekt bei Google.
    Das habe ich Anfang Dezember kurz nach dem bekannt wurde, dass es Probleme gibt, bereits getan. Die Zugriffsschlüssel liegen alle schon bei euch auf den Rechnern. Das ist auch der Grund, warum es bei dem einen oder anderen geht. Die Beschränkungen sind gerade noch sehr hoch. Das ändert sich erst, wenn Google das Projekt frei gibt. Das sollte in diesem Monat geschehen. Aktuell dürfen sich maximal 100 Benutzer über die Software anmelden. Ich hoffe jetzt einfach, dass Google sich beeilt. Mehr kann ich gerade nicht tun. Ich werde aber diesen Monat daran arbeiten die Zugriffe auf die API noch mal deutlich zu reduzieren und weniger Informationen zu buffern. Das sollte den Start von batch noch einmal deutlich beschleunigen.


    So viel erstmal von meiner Seite. Bei Fragen gerne her damit.

    :)


    Liebe Grüße
    Vincent aka Benni

    Okay. Das kriege ich offenbar so schnell jetzt alles nicht geregelt. Ja. Ich kann den Fehler nach voll ziehen. batch sei ein nicht autorisierter Client. Ich mache morgen weiter.


    Es tut mir leid.


    Liebe Grüße
    Benjamin