Motivation bei Privatprojekten (Split aus Diamond of Death)
-
Bitte den Thread zumachen, das macht so keinen Sinn.
-
Du hast hier doch viele nützliche Antworten bekommen. Gib (den Thread) doch nicht gleich auf, nur weil nun auch was drin steht, was nicht im Sinne des Erfinders ist.
-
Natürlich habe ich viele nützliche Antworten bekommen und dafür bin ich auch unendlich dankbar. Aber das gespamme hilft mir absolut nicht weiter, und wenn das nicht aufhört sehe ich keine andere Möglichkeit. Auch sehe ich nicht wirklich jemanden, der mir noch helfen möchte.
Mein Projekt wird weitergehen, egal ob mit oder ohne Thread.
-
Wenn du das Gespamme nicht hilfreich findest, dann hör auf selbst zu spammen bzw. Gespamme zu provozieren.
Ja, so einfach ist das.
-
Ich habe meinen Fortschritt präsentiert, mehr nicht. Warum ihr da gleich so nen Mist schreiben müsst, verstehe ich nicht.
-
Und warum hast du deinen Fortschirtt präsentiert?
(Die Frage ist ernst gemeint)
-
Ich war halt Stolz darauf, ist das denn ein Verbrechen?
-
314159265358979 schrieb:
Ich war halt Stolz darauf, ist das denn ein Verbrechen?
ErbrauchtAufmerksamkeit schrieb:
Aha.
314159265358979 schrieb:
Ja genau, ich suche mit einem nicht mal annähernd fertigen Projekt Aufmerksamkeit. Du hast mich durchschaut
-
Dass ich stolz bin, impliziert nicht, dass ich Aufmerksamkeit suche.
-
Wenn mans dann zeigt vieleicht irgendwie schon.
Find ich aber auch kein Bischen schlimm. Extrinsische Motivation ist ein starker Faktor und zusätzlich zu technischen Tipps kann Zuspruch genauso nützlich sein. Im Tricking-Forum (so eine Art Akrobatik), in dem ich sonst viel bin, postet man ständig Videos von seinen Sprüngen und bekommt dann gesagt, dass das, was man tut, super ist.
Wenn man beim Programmieren keinen Chef hat, der einem mal "Hey, gut gemacht, weiter so." sagt, ist so ein Forum dafür doch auch nicht schlecht, oder?
Selbst Programmierer sind Menschen.
-
314159265358979 schrieb:
Dass ich stolz bin, impliziert nicht, dass ich Aufmerksamkeit suche.
Richtig.
Dass du das herzeigst worauf du stolz bist impliziert allerdings dass du Aufmerksamkeit & Bestätigung suchst.Was ja nichts schlimmes ist.
Aber ist halt lustig, wenn du es dann so vehement bestreitest.
-
Ja, über etwas Zuspruch würde ich mich freuen. Aber ich wäre auch schon zufrieden, wenn solche unnötigen Posts nicht kämen und einfach zum Thema passend geantwortet würde.
Aber nun wieder was zum Design. Ich habe mich entschieden, die Kommunikation mit den Plugins nun doch über Sockets zu machen. Damit kann man Plugins auch in anderen Programmiersprachen schreiben, außerdem ist das Steuern eines shared memory komplizierter, als ich zuerst dachte. -> Lohnt nicht
Weiters können Plugins auch auf einem entfernten System laufen.Weiters werde ich die Nachrichten einfach ganz normal an die Plugins weiterreichen und nicht erst parsen, da die Nachrichten dann für die Plugin-Sockets nochmal serialisiert und deserialisiert werden müssten.
Eine entsprechende Plugin API muss dann natürlich auch noch her.
-
Dobi schrieb:
Selbst Programmierer sind Menschen.
Quelle?
-
David W schrieb:
Dobi schrieb:
Selbst Programmierer sind Menschen.
Quelle?
http://de.wikipedia.org/wiki/Programmierer schrieb:
Ein Programmierer ist eine Person, [...]
Allerdings:
http://de.wikipedia.org/wiki/Programmierer schrieb:
Dieser Artikel oder nachfolgende Abschnitt ist nicht hinreichend mit Belegen (bspw. Einzelnachweisen) ausgestattet.
Das sollte man genauer untersuchen.
-
314159265358979 schrieb:
Aber nun wieder was zum Design. Ich habe mich entschieden, die Kommunikation mit den Plugins nun doch über Sockets zu machen. Damit kann man Plugins auch in anderen Programmiersprachen schreiben, außerdem ist das Steuern eines shared memory komplizierter, als ich zuerst dachte. -> Lohnt nicht
Weiters können Plugins auch auf einem entfernten System laufen.Der *NIX-way-of-doing-it wäre einfach stdin/stdout zu verwenden.
-
Du meinst, ich soll mit den Plugins über deren cin und cout kommunizieren? Dann hätte ich ja wieder das Problem, das ich auch bei der Server-Konsole habe. Das möchte ich mir ehrlich gesagt sparen.
-
Öhm.
Muss stdin/stdout zwangsläufig std::cin/std::cout sein?Müsste doch auch anders gehen. Ich würd' mich mal umsehen was Boost.Iostreams anbietet, und ob man da nicht nen Filter/Wrapper/... basteln könnte den man dann von aussen "unterbrechen" kann.
(Der Wrapper müsste sich dann halt selbst darum kümmern die Sache threadsafe zu machen)EDIT:
Damit müsste es auch gehen:
http://www.boost.org/doc/libs/1_47_0/doc/html/boost_asio/reference/posix__stream_descriptor.htmlIch denke es müsste reichen wenn du so einem Teil einfach
_fileno(stdin)
bzw._fileno(stdout)
als "native handle" übergibst.Dann hast du nen ASIO Stream für stdin/stdout den du "ganz normal asynchron" verwenden kannst.
-
Ist halt die Frage, wie einfach man dann in anderen Sprachen darauf zugreifen kann. Klingt aber interessant, werde ich mir ansehen
Remote-Plugins scheiden dadurch komplett aus.Edit: Damit könnte ich doch vielleicht auch das Konsolen-Problem des Bots lösen, oder?
-
314159265358979 schrieb:
Ist halt die Frage, wie einfach man dann in anderen Sprachen darauf zugreifen kann.
Äh. GANZ einfach würde ich sagen. stdin/stdout geht überall. Sogar in Brainfuck.
Remote-Plugins scheiden dadurch komplett aus.
Wieso?
Denk mal, wenn das über stdin/stdout geht kannst du auch Shell-Scripts als Plugins bzw. "Wrapper" für Plugins verwenden.
Und wenn wir schon bei Shell-Scripts sind, denk einfach mal an SSH...Edit: Damit könnte ich doch vielleicht auch das Konsolen-Problem des Bots lösen, oder?
Klar könnte man das.
ps: dafür wie wenig du Windows leiden kannst, bist du mit dem "Unix-way-of-doing-it" nicht gerade sehr gut vertraut
ps2: dass ich als "Windows-only" Mensch dir das sage, grenz schon fast an Comdey
-
Plugins würde ich in der ersten Version auf jeden Fall weglassen.
Und dann würde ich über Plugins nachdenken, die durch Hinzufügen einer *.cpp-Datei geschehen. Vielleicht kann man Obervers absetzen? Befehlshandler natürlich. Überhaupt Handler für Nachrichtentypen.
Zu früh würde die Datenschnittstelle die Programmierschnittstelle dominieren, was zielstrebig zur Frickelcode in den Plugins führt, oder?