Gestern wurde das neue JSXGraph Release 0.71 (vgl. freshmeat und sourceforge) angekündigt.
Damit gibt es auch eine neue Version des MediaWiki-Plugins direkt auf der zugehörigen Seite und das WordPress-Plugin ist auch in aktueller Version zu haben.
Beim MediaWiki-Plugin gab es noch einen kleinen Securityfix: es darf die codebase nun nicht mehr als Parameter übergeben werden, da sonst beliebiger Code nachgeladen werden könnte, wie PD Dr. Alfred Wassermann bemerkt hat.
Schaut euch das Release auf jeden Fall mal an, es haben sich einige tolle Sachen geändert bzw. wurden hinzugefügt.
Soeben habe ich eine neue Version von JSXGraph hochgeladen (lokale Kopie, MediaWiki) und das Package für das JSXGraph WordPress Plugin fertiggestellt.
Mein Developeraccount bei WordPress ist angemeldet und wartet noch auf Freischaltung.
Mehr zu dem Plugin gibts dann direkt auf der WordPress JSXGraph Plugin Seite.
Bis dahin kann ich euch folgenden Artikel empfehlen, den ich im yuiblog gefunden habe:
Wie überschreibe ich alert() mit YUI Dialog?
Dem Googlebot wird nachgesagt alles zu parsen, sogar vor JavaScript und Flash soll er nicht halt machen.
Da hat mich interessiert, ob der Googlebot das wirklich kann.
Um herauszufinden, ob das klappt, habe ich kurzerhand ein kleines Testskript geschrieben, welches die Prototype JS-Library verwendet um einen einfachen Ajax.Request zu machen:
<script type="text/javascript" language="javascript" src="prototype.js"></script>
<script type="text/javascript" language="javascript">
var r = new Ajax.Request('searchtest.php?r=r', {method: 'get', onSuccess: function(t) {
document.body.innerHTML = t.responseText;
}});
</script>
Bei erfolgreichem Abfragen soll einfach der komplette HTML-Inhalt im “body” mit dem zurückgelieferten Inhalten ersetzt werden, die schlimmstenfalls zu 100% abweichen (wie in meinem Test).
Das Resultat ist, dass der Googlebot die Seiten schön indiziert und parst, allerdings eben genau diese Hürde nicht nimmt oder nicht schafft. Die Datei prototype.js hat er laut den Serverlogs nicht geladen und auch der “neue Inhalt” wird in der Suche nicht gefunden.
Das heißt, der Googlebot indiziert bei interaktiven Seiten den Quelltext und kann so mit anderen Inhalten manipuliert werden.
qed
Selten findet man wirklich Gutes im Netz, aus diesem Grund haben die Macher von Yigg die Kategorie “Gute Nachrichten” eingeführt.
Um fortzufahren kann ich die zwei Videos im Fontblog empfehlen: “Im Tarnanzug bei Ikea”
Hier wundere ich mich allerdings, dass diese Aktion nicht gleich als Marketinginstrument missbraucht verwendet haben.
Bei Dr. Web gibts heute auch einen Anleitung wie man ein Daumenkino mit jQuery realisiert. Die Idee ist an sich nicht schlecht, als JavaScript-Programmierer finde ich es ein wenig viel Aufwand, beziehungsweise nicht 100% elegant gelöst, aber für den Einstieg passabel. Schöner finde ich da ebenfalls bei Dr. Web den Artikel über Supersized. Schaut mal rein.
Zum Abschluss muss ich noch auf die wunderschönen Städtefotografien verweisen. Leider ist Hongkong – wo ich als nächstes hinreise – nicht dabei, darüber gibts allerdings bei Lufthansa einen super Guide: Hongkong – Travelworld
Das waren auch die besten Links für heute.
In diesem Artikel verlinke ich nur kurz auf andere Artike.
Jochen schreibt über Mein Space – 10 Tipps für das perfekte Xing-Profi die meiner Meinung nach auch bei allen anderen Plattformen in der Art umsetzbar sind.
Und Guy Kawaski schreibt mehr über The Art of Generating Buzz, Part II, wo auch schon Teil 1 interessant war.
Marcus hat noch einen Gastbeitrag zum Thema Inhouse Consulting: Karrieresprungbrett für den Beraternachwuchs.
Hier ist der erste funktionstüchtige Beiträg mit JSXGraph-Konstruktionen.
Einmal über JavaScript-Code:
und einmal mit der Übergabe eines Filestrings:
Damit zählt es als funktionstüchtig, auch wenn momentan noch pre-Tags um die JavaScript-Konstruktionen angegeben werden müssen. Hat dazu vielleicht jemand eine Idee?
Zur einfachen Projektverwaltung gerade bei mehreren Entwicklern ist es hilfreich einen zentralen Entwicklungsserver zu haben.
Dazu kommen als OpenSource-Beispiele eigentlich nur subversion (svn) und cvs in Frage, aber da die meisten IDEs wie Eclipse von Haus aus letzters mitbringen, haben wir uns an die Installation eines CVS-Servers gemacht.
Folgende Schritte sind dazu notwendig:
- CVS Distribution auf dem Server installieren
Zuerst muss CVS auf dem Server installiert werden, falls dies noch nicht geschehen ist. Die meisten Distributionen haben bereits übersetzte Pakete, wenn dies nicht der Fall ist, dann gibt es die Sourcen im GNU Softwareverzeichnis.
- Zentrales Repository einrichten
Wie man ein zentrales Repository einrichtet, steht im CVS Manual im Abschnitt 2.6 beschrieben.
- Unix-Benutzer einrichten
Für die sichere Authentifizierung und Dateizugriffssteuerung wird ein Unix-Benutzer benötigt, mit dessen Rechte CVS die Operationen durchführt. Es können auch mehre CVS-User über den gleichen UNIX-User arbeiten.
- CVS-Benutzer einrichten
Die Benutzereinrichtung steht im CVS Manual im Abschnitt 2.9.3.1 Setting up the server for password authentication. Dazu sollte noch der Abschnitt 2.9 zur Sicherheit gelesen werden.
- Registrierung des pserver-Dienstes
Die Anleitung dazu steht im CVS Manual im Abschnitt 2.9.3.1
- Port 2401 für die Verwendung freischalten
Soll der CVS-Server auch außerhalb des eigenen Subnetzes oder der Organisation verwendet werden, so ist die eventuell vorhandene Firewall zu berücksichtigen. Der Port 2401 muß dort für die Verwendung freigeschaltet werden. Lesen Sie dazu auch im CVS Manual den Abschnitt 2.9.3 Direct connection with password authentication.
- … und jetzt erfolgreich entwickeln.
Die Entwickler drüben bei Yahoo! stellen regelmäßig gute Talks ihres YUI Theaters online.
Einer davon ist “Design Fast Websites” von Nicole Sullivan.
Schaut auf jeden Fall mal rein:
Soeben habe ich im Blog der Firma Canonical (ein Ubuntu-Dienstleister rund um Server) folgenden Beitrag über eine Serverumfrage entdeckt.
Die Studie ist ganz interessant und kann hier eingesehen werden.
Für jeden der sich mit Serversystemen auseinandersetzt sollten gute Informationen enthalten sein.