Author: erich

  • Awsome JS Editor in Netbeans


    Yeah, netbeans rocks that’s for sure. Look at this sophisticating autocoplete feature hitting netbeans in its new 6.1 release. Also have a look at the screencast of Roman Strobl explaining the key features of the new javascript editor.

  • Rezension: Spring im Einsatz

    Das Java-Framework Spring hat in den vergangenen Jahren einen außerordentlichen Zuspruch erfahren und sich als Basis für viele Java-basierte Unternehmensanwendungen etabliert. Spring im Einsatz zeigt einen umfangreichen Querschnitt der Möglichkeiten von Spring und kann als zuverlässiges Handbuch überzeugen. Dem Leser wird der Einstieg in das Framework so einfach gestaltet, dass auch weniger erfahrene Java-Entwickler Gefallen an Spring und an diesem Buch finden.
    (more…)

  • Zak McKracken Fan Adventure

    Zak McKracken ist neben Maniac Mansion das Ur-Gestein der LucasArts Adventures. 1988 erschienen ist es, und ist noch immer eines der Kult Spiele für Sammler und Kenner der Szene. Auch zu Zak gibt es einige Fan Adventure Ambitionen. Die bisher bekannteste war wohl “The new Adventures of Zak McKracken” von LucasFan, das leider unter Druck von LucasArts dicht machen musste und den Download vom Netz nahmen. War diese (inoffizielle) Fortsetzung im original Grafik-Stil gehalten geht “Zak McKracken – between time and space” neue Wege.

    Im aktuellen Comic-Stil präsentiert sich das frisch aus der Presse kommende Häpchen Nostalgie. Gratulation an das Team, das sich mit ihrem Projekt 7 sieben lange Jahre zeit gelassen hat. Knapp 2GB hat der Download und ist derzeit auf haufenweise Mirrors zum laden bereit.

  • Simple JSON-RPC Class

    JSON-RPC is a simple methode to transfer data without site refreshing from the server to the client. It’s an alternative to AJAX calls and used in many web applications, for example most of the google apps use it for their client-server communication. Here’s my simple implementation:

    The Class

    jsonRPC = function() {
       cbstore = new Object();
       var counter = 0;
       var base = "insert your base url here";
       var encode = encodeURIComponent;
    
       var cleanup = function(id, s) {
          delete this.cbstore[id];
          setTimeout(function() {
             document.body.removeChild(s);
          }, 0);
       }
       this.send = function(params, callback) {
          var id = "cb" + ++counter;
          var timeout = setTimeout(function() {
             cleanup(id, s);
             callback(null);
          }, 2000);
          cbstore[id] = function(data) {
             //cancelTimeout(timeout);
             cleanup(id, s);
             callback(data);
          };
          var s = document.createElement("script");
          document.body.appendChild(s);
          s.src = base + "?callback=cbstore." + id +
          "&" + (params);
       }
       this.call = function(params, callback) {
          this.send(params, function(data) {
             if (!data || data.Status.code != "200") {
                callback(null);
             } else {
                var c = data.pois;
                callback(c);
             }
          });
       }
    }
    

    The Serverside

    To trigger the clientside callback function you must insert it in your server-side response. The response must look like this:

    print (insert the callback function process from GET here + "({Status: { code: 200, request: \"getpois\" }, pois: [");
    
    
    //output of your data in JSON format
    
    print("]})");
    

    Usage

    mycall = new jsonRPC();
    mycall.call("insert some params here", function(json) {
    	if (!json || json == undefined || json == null)
    		return;
    
           //do something with the response data here
    
    
    
    });

    What’s next

    To be honest, this is a very ugly implmentation and I have to work over it quite soon. It’s now not possible to use the class for different requests. So I will add a constructor in a next version, allowing to pass a the base url when instancing the object. Also the response data object (pois) is not changeable via constructor variable -> need to be changed. (FYI: I used this class to load objects onto a visual map, therefore the name pointofinterst.) For now you can play with that code a litte bit an evaluate how it works for you as an AJAX alternative.

  • Oldschool

    dc10_12.JPG

    Da werden Erinnerungen wach: an eine Doppelstunde Informatik in der man mit Sage und Schreib mit 1 – 2K/s (1 ISDN Anschluss für ca. 15 Computer!) 2 MP3’s saugen konnte um sie dann in einer Box voll mit Floppys nach Hause beförderte. Und man hat sich trotzdem gefreut!

  • Android Tutorial

    Kürzlich hatte ich das Vergnügen mich 1 Tag mit Google Android beschäftigen zu können. Dazu passend gibt es ein kleines Howto um auch anderen da draußen den Einstieg zu erleichtern. Voraussetzung für das Tutorial sind eine fertig installierte Eclipse IDE und Java Kenntnisse. Eine kleine Einführung was Android eigentlich kann und ist hab ich hier geschrieben.

    (more…)

  • Rezension: Flash CS3, AJAX & PHP

    r185-addison-wesley-flash-cs3-ajax-php.jpgSpätestens seit YouTube ist allseits bekannt, dass man mit Flash nicht nur Animationen gestalten kann, sondern mit dieser Technologie ein umfassendes Hilfsmittel zur multimedialen Web-Entwicklung zur Verfügung hat. Mit Flash CS3, AJAX & PHP zeigt Uwe Mutz seinen Lesern die richtige Handhabe dieser Technik und führt sie gleichzeitig in eine Zwischenwelt des Webdesigns. Er zeigt wie sich mit Flash agile Anwendungen gestalten lassen, die dynamisch mit PHP-Skripten am Web-Server kommunizieren. Der Autor bringt zusätzlich auch noch AJAX (Asynchronous Javascript And XML) ins Spiel, das für noch mehr Dynamik in Flash-Anwendungen sorgt. Abgerundet wird das Buch durch zwei plakative Beispiele.

    (more…)