Adi K.: Selfcode-Codec!

Wollte rasch ein bisschen "perlen"....

Mit diesem kleinen Programm kann man Selfcodes erstellen und decodieren:
http://adi.kousz.ch/scodec/selfcode.cgi

ie:{ br:> fl:| va:) ls:> n4:( de:] ss:| js:| mo:} zu:|

  1. Lieber Adi,

    http://adi.kousz.ch/scodec/selfcode.cgi

    cool! Jetzt habe ich auch so einen Zeichensalat in meiner Signatur. Ob mich das nun zum besseren Selfer macht...?

    Sehr nützliches Script, wenn man bei anderen Selfern wissen möchte, was das alles bedeutet! Und ob man hier im Forum solchen Kauderwelsch nicht am Besten auch gleich auf dieses Script zum Dekodieren verlinkt...? Aber das geht ja nicht, weil Dein Script offensichtlich nur POST-Anfragen bearbeitet. Sonst hätte ich meinen Zeichensalat gleich verlinken können, damit andere Gelangweilte ausversehen sich das mal eben erklären lassen könnten. *g*

    Liebe Grüße aus Ellwangen,

    Felix Riesterer.

    --
    ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)
    1. Hi Felix,

      Und ob man hier im Forum solchen Kauderwelsch nicht am Besten auch gleich auf dieses Script zum Dekodieren verlinkt...?

      Guck mal in meiner Signatur unten ;-) Btw: Du kannst ] im Link-Titel durch \ escapen.

      Viele Grüße aus Kanada,
        ~ Dennis.

      1. Salü Dennis

        Guck mal in meiner Signatur unten ;-)

        Auch ein schönes Script! Vor allem stimmt bei dir die Reihenfolge... Da  ich mit Hashes gearbeitet habe, wurde die Reihenfolge von Perl verstümmelt: http://perldoc.perl.org/perlrun.html#PERL_HASH_SEED-PERL_HASH_SEED
        Ich werde das in einer nächsten Version beheben.

        Ich habe schon mal ein Encoder gefunden und deiner ist ja ein Decoder. Ein Script, das beides kann habe ich allerdings noch nicht gesehen (ausser meins ;).

        1. ... und wo kann ich als Neuling im Forum nachlesen, was Selfcode-Codec! ist, was es bedeutet, wozu es dient?
          Grüße

          1. Hi,

            ... und wo kann ich als Neuling im Forum nachlesen, was Selfcode-Codec! ist, was es bedeutet, wozu es dient?

            Forums-Hilfe > Sonstiges > Self-Code

            Cheatah

            --
            X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
            X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
            X-Will-Answer-Email: No
            X-Please-Search-Archive-First: Absolutely Yes
    2. Hallo Felix

      Aber das geht ja nicht, weil Dein Script offensichtlich nur
      POST-Anfragen bearbeitet.

      Das Script bearbeitet auch GETs! Nur intern wird über POST gearbeitet. Du kannst es also problemlos verlinken. ;-)

      Gruss
      Adi K.

    3. Hallo,

      http://adi.kousz.ch/scodec/selfcode.cgi

      cool! Jetzt habe ich auch so einen Zeichensalat in meiner Signatur.

      ^^^^^^^^
      http://community.de.selfhtml.org/fanprojekte/selfcode.htm : <meta name="SELF.Firstdate" content="2004-08-27T21:20+01:00">

      Grüße
      Thomas

  2. hallo,

    Mit diesem kleinen Programm kann man Selfcodes erstellen und decodieren:
    http://adi.kousz.ch/scodec/selfcode.cgi

    Mich würde dein Code interessieren - also das Perl-Script. Und außerdem: der Selfcode war ursprünglich nichst anderes als ein bißchen lustiges Herumspielen und ist es immer noch. Da er aber sehr viel Resonanz gefunden hat (ich verwende ihn ja auch), müßte man ihn eigentlich mal überarbeiten. Es gibt ein paar Dinge, die zur Zeit nicht drinstehen, und ein paar Dinge, die drinstehen, aber bedeutungslos sind.

    Grüße aus Berlin

    Christoph S.

    --
    Visitenkarte
    ss:| zu:) ls:& fo:) va:) sh:| rl:|
    1. Hallo,

      <I>

      Grüße
      Jeena Paradies

      --
      Mikroformate nutzen aus Sicht des Benutzers | Jlog | Gourmetica Mentiri
      1. Ich werde heute Abend der Quellcode zur Verfügung stellen. Jetzt habe ich noch keine Zeit...

      2. hallo Jeena,

        <I>

        Hm, wofür denn? Script schreiben könnte ich auch selber, das ist schon wahr, ich wollte aber eher die Gelegenheit nutzen, um eine "Überarbeitung" anzuregen.

        Ursprünglich war das mal eine Idee von emu, der sie unter der Adresse http://emmanuel.dammerer.at/selfcode.html zur Verfügung stellte. Sie kam so gut an, daß mittlerweile eine "offizielle" Fassung existiert: SELFCode. Das war dem OP eventuell nicht bekannt. Und ich denke, daß man mal überlegen könnte, welche Elemente mit welcher Aussage eventuell gestrichen oder neu aufgenommen werden könnten.

        Die Schwierigkeit daran ist, daß ja sehr viele den SELFCode verwenden. Eine Revision darf dann die bereits bestehenden Signaturen, die es ja auch im Archiv gibt, nicht verfälschen oder unverständlich machen.

        Grüße aus Berlin

        Christoph S.

        --
        Visitenkarte
        ss:| zu:) ls:& fo:) va:) sh:| rl:|
        1. Hallo,

          <I>
          Hm, wofür denn?
          Und ich denke, daß man mal überlegen könnte, welche Elemente mit welcher Aussage eventuell gestrichen oder neu aufgenommen werden könnten.

          Jo, eben dafür, du sollst dir mal gedanken machen und das neue Konzept vorstellen, dann bearbeiten wir das zusammen noch etwas und schon ist ein neuer SELFCode fertig ;-)

          Die Schwierigkeit daran ist, daß ja sehr viele den SELFCode verwenden. Eine Revision darf dann die bereits bestehenden Signaturen, die es ja auch im Archiv gibt, nicht verfälschen oder unverständlich machen.

          Und genau das ist deine selbst gestelle Aufgabe ;-)

          Grüße
          Jeena Paradies

          1. boahhh, eyy, Jeena,

            Und ich denke, daß man mal überlegen könnte, welche Elemente mit welcher Aussage eventuell gestrichen oder neu aufgenommen werden könnten.
            Jo, eben dafür, du sollst dir mal gedanken machen und das neue Konzept vorstellen, dann bearbeiten wir das zusammen noch etwas und schon ist ein neuer SELFCode fertig ;-)

            Da drückst du mir aber ein ziemlich sehr dickes <I> auf. Und was heißt "dann bearbeiten wir das zusammen"? Sollte ich einen Entwurf hier im Forum vorstellen zur gemeinsamen Entwicklung?

            Wir werden es _hier_ ja immer einmal wieder mit Leuten wie Adi K. zu tun haben, die sich im _positiven_ Sinn als Trittbrettfahrer darstellen: er hat schließlich die Idee gut gefunden und sich davon anregen lassen, selber was zu basteln. Das ist erwünscht und entspricht dem SELF-Gedanken. Aber wie es scheint hatte er keine Ahnung davon, was es zum Thema bereits alles gibt, daß es da eine "offizielle" Version gibt, und vor allem: er hat wohl ein bißchen Perl geübt und bei seiner Bastelei auch was gelernt. Aber an mehreren Stellen heftig danebengehauen. Und nun braucht es eine Menge Diplomatie, ihm zu erklären, daß seine Arbeit im öffentlichen Sinn eigentlich "fürn A..." ist, ihn selber aber vorangebracht haben könnte, was Perl-Programmierung angeht. Grob gesagt muß man ihn dafür loben, daß er sich eigentlich eine überflüssige Arbeit selber auferlegt hat.
            Schade - weil die Idee, daß man den SELFCode mal revidieren sollte, grundsätzlich richtig ist, Adi K. aber anscheinend nicht über genügend Grundlagenwissen zur Geschichte des SELFCodes verfügte. Ich habe dieses "Grundlagenwissen" allerdings. Und bin daher lange nicht so unbefangen wie er.

            Die Schwierigkeit daran ist, daß ja sehr viele den SELFCode verwenden. Eine Revision darf dann die bereits bestehenden Signaturen, die es ja auch im Archiv gibt, nicht verfälschen oder unverständlich machen.
            Und genau das ist deine selbst gestelle Aufgabe ;-)

            Weißtu was? Du lädst mich ganz einfach zur Beerenernte (natürlich für einen excellenten Wein) im kommenden Herbst in deine skandinavischen Wälder ein und bezahlst Reise- und Unterkunftskosten. Dann reden wir beim Beerensammeln nochmal gründlich darüber.

            SCNR

            Grüße aus Berlin

            Christoph S.

            --
            Visitenkarte
            ss:| zu:) ls:& fo:) va:) sh:| rl:|
            1. Aber wie es scheint hatte er keine Ahnung davon, was es zum Thema
              bereits alles gibt, daß es da eine "offizielle" Version gibt, und
              vor allem: er hat wohl ein bißchen Perl geübt und bei seiner
              Bastelei auch was gelernt.

              Naja, das einzige, was ich gelernt habe war, dass das cgi-lib veraltet ist... Es war purer Spass und eine gute Ablenkung von meinem CMS-Projekt, das leider nicht immer so spassig ist...
              Ausserdem ist mir sehr wohl klar, dass es eine offizielle Version gibt. Ich habe mir die offizielle Spec http://community.de.selfhtml.org/fanprojekte/selfcode.htm per Regex in einen Hash abgefüllt. Die beiden Links zum De- und Encoder habe ich auch gesehen. Trotzdem habe ich gefunden, dass meine umsetzung besser würde. (Die Reihenfolge der Smileys wird in einer nächsten Version korrigiert.)

              Aber an mehreren Stellen heftig danebengehauen.

              Also da würde ich jetzt schon mal gerne wissen weshalb? Ist es nicht sauber gecodet?

              Und nun braucht es eine Menge Diplomatie, ihm zu erklären, daß
              seine Arbeit im öffentlichen Sinn eigentlich "fürn A..." ist

              Wie gesagt, ganz ehrlich und offen, finde ich meinen Codec besser, da er 1. De- und Encodieren kann, 2. Usability viel besser ist und 3. etwas schöner aussieht.
              Falls der Selfcode bald revidiert würde, wäre das auch nicht so schlimm, man kann die neuen Codes ja einfach implementieren.

              Adi K. aber anscheinend nicht über genügend Grundlagenwissen zur
              Geschichte des SELFCodes verfügte.

              Absolut richtig. Ich nehme gerne etwas Nachhilfeunterricht... ;-)

              Liebe Grüsse
              Adi

              1. hallo Adi,

                er hat wohl ein bißchen Perl geübt und bei seiner
                Bastelei auch was gelernt.
                Naja, das einzige, was ich gelernt habe war, dass das cgi-lib veraltet ist...

                Das hast du aus dem Thread übernommen, das war mein Hinweis - den ich dich weiterhin ernstzunehmen bitte.

                Es war purer Spass und eine gute Ablenkung von meinem CMS-Projekt, das leider nicht immer so spassig ist...

                Sowas kennen wir alle. Wenn man mit einem "Projekt" irgendwo in eine Sackgasse geraten ist, macht man halt mal kurz Puause und bastelt zur Erholung irgendwas andres. Das ist völlig normal. Und man muß ja eh immer mal wieder ein Perl-Script basteln, allein schon, um in Übung zu bleiben.

                Aber an mehreren Stellen heftig danebengehauen.
                Also da würde ich jetzt schon mal gerne wissen weshalb? Ist es nicht sauber gecodet?

                Ähm ... "sauber" ... es ist zumindest schlüssig. Und mit sehr wenigen Korrekturen auch ohne cgi-lib.pl lauffähig. Die Grundidee ist richtig, und sie ist auch durchgehalten. Aber du setzt eben das CGI-Modul ein, ohne dessen Fähigkeiten wirklich zu nutzen. Es gibt bei Perl-Scripts (wie übrigens auch bei PHP-Scripts) nicht nur die Frage, ob der Code "sauber" ist. Sondern vor allem die Frage, wie weit die Scriptlogik "stimmt". Und _da_ hängt es meiner Ansicht nach bei deinem Script an ein paar Stellen. Daß es funktioniert, steht außer Zweifel, aber du weißt selber, daß das nicht das entscheidende Kriterium ist.

                Wie gesagt, ganz ehrlich und offen, finde ich meinen Codec besser, da er 1. De- und Encodieren kann, 2. Usability viel besser ist und 3. etwas schöner aussieht.

                Wäre ja schlimm, wenn wir hier nicht "ganz ehrlich und offen" miteinander umgehen wollten ;-) Selbstverständlich findest du deinen Code besser. Aber mit welchem hast du ihn denn verglichen?

                Ich nehme gerne etwas Nachhilfeunterricht... ;-)

                Naja, Nachhilfeuntericht in Sachen Geschichte des SELFCode bietet dir das Archiv. Die Schwierigkeiten, die ich bei einer eventuellen Modernisierung sehe, habe ich ja bereits zu benennen versucht: das Ding wird von sehr vielen Leuten in ihrer Signatur verwendet (ich hab ihn ja auch drinstehen), weil der gedankliche Ansatz ganz einfach lustig und gleichzeitig überzeugend ist - und sowas wie die Mitgliedschaft in einem "Geheimbund" suggeriert. Dadurch haben wir aber im Archiv etliche tausend Einträge, unter denen es eben SELFCode gibt - und der darf durch eine eventuelle Revision nicht so verändert werden, daß er unverständlich wird oder gar was andres aussagt, als diejenigen, die ihn einsetzen, ursprünglich gemeint haben. Man kann also der Signatur "rl:|" nicht einfach eine neue Bedeutung geben wollen. Zu überlegen wäre, ob es nicht auch "neue" Kategorien geben dürfte, die dann aber auf denselben Prinzipien beruhen müßten - beispielsweise erfaßt der SELFCode bisher Opera überhaupt nicht.

                Grüße aus Berlin

                Christoph S.

                PS: Perl ist cool - PHP aber auch ;-)

                --
                Visitenkarte
                ss:| zu:) ls:& fo:) va:) sh:| rl:|
                1. Hi Christoph,

                  [...] Dadurch haben wir aber im Archiv etliche tausend Einträge, unter denen es eben SELFCode gibt - und der darf durch eine eventuelle Revision nicht so verändert werden, daß er unverständlich wird oder gar was andres aussagt, als diejenigen, die ihn einsetzen, ursprünglich gemeint haben. [...]

                  ist es nicht sowieso der Fall, dass die alten Selfcodes heute anders wirken, als sie damals gemeint waren? Wenn damals jemand gesagt hat: Netscpae 4: "Ich muss ihn gelegentlich benutzen, weil er immer noch besser als IE ist. Die Webmaster kann ich zwar verstehen, aber nett finde ich es nicht", dann mag das damals ernst gemeint gewesen sein. Wenn jemand das aber heute noch in seinem SelfCode hat, will er damit seine Coolness, Ignoranz oder seinen Humor hervorheben - oder er ist wirklich vergreist. ;-)

                  Gruß
                  Def

    2. [Selfcode]
      müßte man ihn eigentlich mal überarbeiten

      Um Himmels Willen! – das fehlte noch.

  3. Hallo,

    Wie zu sehen ist hab ich jetzt auch einen Selfcodec.
    Allerdings, wenn man ihn decodiert, bricht er nach ie:% ab.
    Aber nur wenn man br: hat also Opera als Lieblingsbrowser.

    MfG

    --
    SELF forever
    Mein Selfcode: ie:% br: fl:{ va:{ ls:& fo:| rl:( n4:( de:> ss:{ ch:? js:{ mo:| sh:( zu:{
  4. Mit diesem kleinen Programm kann man Selfcodes erstellen und
    decodieren:
    http://adi.kousz.ch/scodec/selfcode.cgi

    So, da ich jetzt nun den Codec allgemein verfügbar gemacht habe (inkl. Source), habe ich den Code noch etwas überarbeitet. Auch der Opera-Bug ist behoben. (Da finde ich die offiziellen Specs sehr inkonsequent!)
    Ziel war: Bei ändernden Specs sollte man nur die beiden Hashes anpassen müssen...

    Gruss
    Adi K.

    1. hallo,

      http://adi.kousz.ch/scodec/selfcode.cgi
      So, da ich jetzt nun den Codec allgemein verfügbar gemacht habe (inkl. Source)

      Hm. Dein Code kann wegen "require 'cgi-lib.pl';" bei mir nicht funktionieren. Was ist das für eine Datei, die du da für erforderlich hältst?

      Grüße aus Berlin

      Christoph S.

      --
      Visitenkarte
      ss:| zu:) ls:& fo:) va:) sh:| rl:|
      1. Was ist das für eine Datei, die du da für erforderlich hältst?

        http://cgi-lib.berkeley.edu/

        Grüsse
        Adi K.

        1. hallo,

          Was ist das für eine Datei, die du da für erforderlich hältst?
          http://cgi-lib.berkeley.edu/

          Auweia. Genau das habe ich befürchtet. Du hast auch schonmal auf das Datum der von dir verlinkten Seite geschaut?

          Es ist einfach unsinnig, sowohl "use CGI" wie auch dieses "require cgi-lib.pl" einzusetzen. Das CGI-Modul hat die cgi-lib.pl bereits vor Jahren abgelöst.

          Nun spielt das bei deinem Script noch keine _sehr_ große Rolle, weil es relativ einfach gehalten ist. Aber schau dir doch einfach nochmal etwas genauer perldoc CGI an.

          Für CGI-Programmierung ist "cgi-lib.pl" jedenfalls schon eine Weile "deprecated". Es macht auch keinen Sinn, das alte Teil extra noch einmal hervorzukramen und zusaätzlich zu installieren, da jede einigermaßen aktuelle Perl-Installation über das CGI-Modul verfügt.

          Grüße aus Berlin

          Christoph S.

          --
          Visitenkarte
          ss:| zu:) ls:& fo:) va:) sh:| rl:|