<?xml version="1.0" encoding="utf-8" ?>

<rss version="0.91" >
<channel>
<title>ThinkPHP /dev/blog</title>
<link>http://blog.thinkphp.de/</link>
<description>the php thinkers php sink</description>
<language>en</language>
<image>
        <url>http://blog.thinkphp.de/templates/mayflower/img/s9y_banner_small.png</url>
        <title>RSS: ThinkPHP /dev/blog - the php thinkers php sink</title>
        <link>http://blog.thinkphp.de/</link>
        <width>100</width>
        <height>21</height>
    </image>

<item>
    <title>Javascript best practises: debugging und logging Vortrag@Mayflower-München</title>
    <link>http://blog.thinkphp.de/archives/501-Javascript-best-practises-debugging-und-logging-VortragMayflower-Muenchen.html</link>

    <description>
        &lt;!-- s9ymdb:363 --&gt;&lt;img class=&quot;serendipity_image_left&quot; width=&quot;250&quot; height=&quot;200&quot; style=&quot;float: left; border: 0px; padding-left: 5px; padding-right: 15px;&quot; src=&quot;http://blog.thinkphp.de/uploads/jsdebug.jpg&quot; alt=&quot;&quot; /&gt;Am kommenden &lt;b&gt;Donnerstag, den 25.03.2010&lt;/b&gt; findet wieder ein öffentlicher Vortrag im Mayflower Büro in München statt (Mannhardtstraße 6, S-Bahn Isartor). &lt;br /&gt;Beginn ist um 18:00 Uhr, Thema des Vortrags ist &quot;&lt;b&gt;Javascript best practises: debugging und logging&lt;/b&gt;&quot;.&lt;br /&gt;&lt;br /&gt;

Lange Jahre wurde Javascript von vielen Entwicklern nicht so ernst genommen. Durch den vermehrten Einsatz von AJAX und der einfachen Handhabung von Javascript-Frameworks und Libraries ist die Akzeptanz gestiegen und Javascript ist aus der Webentwicklung nicht mehr wegzudenken. Unter dem Titel Best Practises- Debugging und Logging JS zeigt uns &lt;b&gt;Martin Ruprecht&lt;/b&gt;  Mittel und Wege, wie man effektiv die Fehlersuche mit Javascript betreibt.&lt;br /&gt;&lt;br /&gt;

Die &quot;Donnerstags-Vorträge&quot; werden sowohl in München als auch in Würzburg  gehalten. Bei Interesse einfach das Blog beobachten, um auf dem Laufenden zu bleiben! &lt;br /&gt; Wir freuen uns auf viele Teilnehmer!&lt;br /&gt;&lt;br /&gt;

&lt;a href=&quot;http://maps.google.de/maps?f=q&amp;source=s_q&amp;hl=de&amp;q=Mannhardtstra%C3%9Fe+6,+Altstadt-Lehel+80538+M%C3%BCnchen,+Bayern&amp;sll=51.151786,10.415039&amp;sspn=20.197186,57.084961&amp;ie=UTF8&amp;cd=3&amp;geocode=Fap73gIds8ewAA&amp;split=0&amp;z=16&amp;iwloc=A&quot;&gt;Euer Weg zu uns&lt;/a&gt; 
    </description>
</item>
<item>
    <title>Pimp Your Reports: dojox.charting - Vortrag@Mayflower-München</title>
    <link>http://blog.thinkphp.de/archives/500-Pimp-Your-Reports-dojox.charting-VortragMayflower-Muenchen.html</link>

    <description>
        Am kommenden &lt;b&gt;Donnerstag, den 18.03.2010&lt;/b&gt; findet wieder ein öffentlicher Vortrag im Mayflower Büro in München statt (Mannhardtstraße 6, S-Bahn Isartor). &lt;br /&gt;Beginn ist um 18:00 Uhr, Thema des Vortrags ist &quot;&lt;b&gt;Pimp Your Reports: dojox.charting&lt;/b&gt;&quot;.&lt;br /&gt;&lt;br /&gt;

Das Dojo Toolkit beinhaltet eine Charting Library, die es schnell und
einfach ermöglicht Charts zu generieren die nicht nur gut aussehen,
sondern auch ein hohes Maß an Dynamik und Interaktivität mitbringen.
Neben einer kurzen Einführung in dojox.charting beleuchtet &lt;b&gt;Jan Mergler&lt;/b&gt;
Kernfeatures wie Dynamisches Updating, Events und Animationen und stellt
deren Einsatzmöglichkeiten vor. &lt;br /&gt;&lt;br /&gt;

Die &quot;Donnerstags-Vorträge&quot; werden sowohl in Würzburg als auch in München gehalten. Bei Interesse einfach das Blog beobachten, um auf dem Laufenden zu bleiben!&lt;br /&gt; Wir freuen uns auf viele Teilnehmer!&lt;br /&gt;&lt;br /&gt; 
    </description>
</item>
<item>
    <title>Patterns for Effective Use Cases - Vortrag@Mayflower-Würzburg</title>
    <link>http://blog.thinkphp.de/archives/499-Patterns-for-Effective-Use-Cases-VortragMayflower-Wuerzburg.html</link>

    <description>
        Am kommenden &lt;b&gt;Donnerstag, den 18.03.2010&lt;/b&gt; findet wieder ein öffentlicher Vortrag im Mayflower Büro in Würzburg statt (Pleichertorstrasse 2, 97070 Würzburg, Straßenbahn und die Haltestelle Congress Centrum). &lt;br /&gt;Beginn ist um 18:00 Uhr, Thema des Vortrags ist &quot;&lt;b&gt;Patterns for Effective Use Cases&lt;/b&gt;&quot;.&lt;br /&gt;&lt;br /&gt;

Use Cases werden immer populärer und werden immer öfter für die Beschreibung des erwünschten Verhaltens einer Software eingesetzt. Doch wie umfangreich sollte die Beschreibung ausfallen? Wie viele Use Cases stecken das System ausreichend ab? Ist der Inhalt für den Leser verständlich?
&lt;b&gt;Maria Lekkou&lt;/b&gt; zeigt unter welchen Kriterien man Use Cases als gelungen bezeichnen kann und präsentiert Use Cases Patterns und Tools, welche die Arbeit mit Use Cases signifikant erleichtern. &lt;br /&gt;&lt;br /&gt;

Die &quot;Donnerstags-Vorträge&quot; werden sowohl in Würzburg als auch in München gehalten. Bei Interesse einfach das Blog beobachten, um auf dem Laufenden zu bleiben!&lt;br /&gt; Wir freuen uns auf viele Teilnehmer!&lt;br /&gt;&lt;br /&gt;

&lt;iframe width=&quot;425&quot; height=&quot;350&quot; frameborder=&quot;0&quot; scrolling=&quot;no&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; src=&quot;http://maps.google.de/maps?f=q&amp;amp;source=s_q&amp;amp;hl=de&amp;amp;geocode=&amp;amp;q=Pleichertorstrasse+2+97070+W%C3%BCrzburg&amp;amp;sll=51.151786,10.415039&amp;amp;sspn=20.064233,57.084961&amp;amp;ie=UTF8&amp;amp;ll=49.79678,9.926319&amp;amp;spn=0.009696,0.018239&amp;amp;z=15&amp;amp;output=embed&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;small&gt;&lt;a href=&quot;http://maps.google.de/maps?f=q&amp;amp;source=embed&amp;amp;hl=de&amp;amp;geocode=&amp;amp;q=Pleichertorstrasse+2+97070+W%C3%BCrzburg&amp;amp;sll=51.151786,10.415039&amp;amp;sspn=20.064233,57.084961&amp;amp;ie=UTF8&amp;amp;ll=49.79678,9.926319&amp;amp;spn=0.009696,0.018239&amp;amp;z=15&quot; style=&quot;color:#0000FF;text-align:left&quot;&gt;Größere Kartenansicht&lt;/a&gt;&lt;/small&gt; 
    </description>
</item>
<item>
    <title>PHProjekt V6 kicks out of the door on March 18th</title>
    <link>http://blog.thinkphp.de/archives/498-PHProjekt-V6-kicks-out-of-the-door-on-March-18th.html</link>

    <description>
        &lt;p&gt;
&lt;!-- s9ymdb:362 --&gt;&lt;a href=&quot;http://www.phprojekt.com/&quot;&gt;&lt;img class=&quot;serendipity_image_right&quot; width=&quot;80&quot; height=&quot;99&quot; style=&quot;float: right; border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.thinkphp.de/uploads/visuals/biene_web.png&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;
PHProjekt V6, our little &lt;del&gt;beast&lt;/del&gt;bee and Open Source project management software, kicks out of the door on March 18th as GA. It&#039;s a complete rewrite (and thus, a major version update was needed) with &lt;a href=&quot;http://framework.zend.com/&quot;&gt;Zend Framework&lt;/a&gt; and &lt;a href=&quot;http://dojotoolkit.org&quot;&gt;dojo&lt;/a&gt; and now licensed under &lt;a href=&quot;http://blog.phprojekt.com/archives/29-Licence-switch-from-GPL-to-LGPL.html&quot; target=&quot;_blank&quot;&gt;LGPL&lt;/a&gt; (earlier versions were licensed under GPL). You may ask what you want to do until March 18th? Well, besides eating popcorn for Film@11:
&lt;/p&gt;
&lt;p&gt;&amp;#160;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;follow the little bee &lt;a href=&quot;http://twitter.com/phprojekt6&quot; title=&quot;Follow PHProjekt on twitter&quot; target=&quot;_blank&quot;&gt;@phprojekt6&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;get social with PHProjekt at its &lt;a href=&quot;http://www.facebook.com/pages/PHProjekt/41182872373&quot; title=&quot;Fanpage of PHProjekt&quot; target=&quot;_blank&quot;&gt;Facebook fanpage&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;visit the &lt;a href=&quot;http://blog.phprojekt.com/&quot; title=&quot;PHProjekt V6 blog&quot; target=&quot;_blank&quot;&gt;PHProjekt blog&lt;/a&gt; for regular updates&lt;/li&gt;
&lt;li&gt;check out the &lt;a href=&quot;http://github.com/mayflowergmbh/PHProjekt&quot; title=&quot;PHProjekt V6 code at Github&quot; target=&quot;_blank&quot;&gt;code at github&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;want to talk to the developers or contribute? /join #phprojekt on freenode (irc.freenode.org)&lt;/li&gt;
&lt;li&gt;... and, finally, try out the demo at &lt;a href=&quot;http://p6.phprojekt.com&quot; target=&quot;_blank&quot;&gt;p6.phprojekt.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;#160;&lt;/p&gt;
&lt;p&gt;
The bee is watching you!
&lt;/p&gt; 
    </description>
</item>
<item>
    <title>MySQLDumper: Praktische Anwendung Vortrag@Mayflower München</title>
    <link>http://blog.thinkphp.de/archives/497-MySQLDumper-Praktische-Anwendung-VortragMayflower-Muenchen.html</link>

    <description>
        &lt;!-- s9ymdb:361 --&gt;&lt;img class=&quot;serendipity_image_right&quot; width=&quot;150&quot; height=&quot;185&quot; style=&quot;float: right; border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.thinkphp.de/uploads/backup.jpg&quot; alt=&quot;&quot; /&gt;
Am kommenden &lt;b&gt;Donnerstag, den 11.03.2010&lt;/b&gt; findet wieder ein öffentlicher Vortrag im Mayflower Büro in München statt (Mannhardtstraße 6, S-Bahn Isartor). &lt;br /&gt;Beginn ist um 18:00 Uhr, Thema des Vortrags ist &quot;&lt;b&gt;MySQLDumper: Praktische Anwendung&lt;/b&gt;&quot;.&lt;br /&gt;&lt;br /&gt;



Intelligentes Backup-Management bei MySQL-Datenbanken? Kein Problem, denn mit dem MySQLDumper kann jeder Sicherungskopien seiner wichtiger Datenbestände erstellen - und bei Bedarf auch kinderleicht wieder herstellen. &lt;b&gt;Daniel Schlichtholz&lt;/b&gt; zeigt wie MySQLDumper einem das Leben erleichtert. Frei nach dem Motto: back it up the easy way...&lt;br /&gt;&lt;br /&gt;

Die &quot;Donnerstags-Vorträge&quot; werden sowohl in München als auch in Würzburg  gehalten. Bei Interesse einfach das Blog beobachten, um auf dem Laufenden zu bleiben!&lt;br /&gt; Wir freuen uns auf viele Teilnehmer!&lt;br /&gt;&lt;br /&gt; 
    </description>
</item>
<item>
    <title>Mobile Apps: Welches SDK ist das Richtige für mich? - Vortrag@Mayflower-Würzburg</title>
    <link>http://blog.thinkphp.de/archives/496-Mobile-Apps-Welches-SDK-ist-das-Richtige-fuer-mich-VortragMayflower-Wuerzburg.html</link>

    <description>
        Am kommenden &lt;b&gt;Donnerstag, den 11.03.2010&lt;/b&gt; findet wieder ein öffentlicher Vortrag im Mayflower Büro in Würzburg statt (Pleichertorstrasse 2, 97070 Würzburg, Straßenbahn und die Haltestelle Congress Centrum). &lt;br /&gt;Beginn ist um 18:00 Uhr, Thema des Vortrags ist &quot;&lt;b&gt;Mobile Apps: Welches SDK ist das Richtige für mich?&lt;/b&gt;&quot;.&lt;br /&gt;&lt;br /&gt;

Tobias Schlüter geht in seinem Vortrag auf die verschiedenen mobilen Plattformen (Android, Symbian, iPhone OS usw.) ein und beschreibt, wie man mit Cross-Plattform-SDKs eine App für mehrere Plattformen schreiben kann.&lt;br /&gt;&lt;br /&gt;

Die &quot;Donnerstags-Vorträge&quot; werden sowohl in Würzburg als auch in München gehalten. Bei Interesse einfach das Blog beobachten, um auf dem Laufenden zu bleiben!&lt;br /&gt; Wir freuen uns auf viele Teilnehmer!&lt;br /&gt;&lt;br /&gt;

&lt;iframe width=&quot;425&quot; height=&quot;350&quot; frameborder=&quot;0&quot; scrolling=&quot;no&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; src=&quot;http://maps.google.de/maps?f=q&amp;amp;source=s_q&amp;amp;hl=de&amp;amp;geocode=&amp;amp;q=Pleichertorstrasse+2+97070+W%C3%BCrzburg&amp;amp;sll=51.151786,10.415039&amp;amp;sspn=20.064233,57.084961&amp;amp;ie=UTF8&amp;amp;ll=49.79678,9.926319&amp;amp;spn=0.009696,0.018239&amp;amp;z=15&amp;amp;output=embed&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;small&gt;&lt;a href=&quot;http://maps.google.de/maps?f=q&amp;amp;source=embed&amp;amp;hl=de&amp;amp;geocode=&amp;amp;q=Pleichertorstrasse+2+97070+W%C3%BCrzburg&amp;amp;sll=51.151786,10.415039&amp;amp;sspn=20.064233,57.084961&amp;amp;ie=UTF8&amp;amp;ll=49.79678,9.926319&amp;amp;spn=0.009696,0.018239&amp;amp;z=15&quot; style=&quot;color:#0000FF;text-align:left&quot;&gt;Größere Kartenansicht&lt;/a&gt;&lt;/small&gt; 
    </description>
</item>
<item>
    <title>A comet over PHProjekt 6</title>
    <link>http://blog.thinkphp.de/archives/495-A-comet-over-PHProjekt-6.html</link>

    <description>
        So far PHProjekt 6 (P6, see &lt;a href=&quot;http://phprojekt.com&quot; title=&quot;PHProject 6&quot;&gt;http://phprojekt.com&lt;/a&gt;) is already enhanced with nice AJAX workflows and snappy user-experience. Nevertheless, we discussed a way to provide synchronous communication and direct information within the application.
&lt;br /&gt;&lt;br /&gt;
Everybody knows GoogleMail with its easy to use frontend. Maybe you use it for your daily work. In GoogleMail, there is no need to refresh the page to receive a new mail, Google informs you automatically whenever a new mail is available. But how is this possible? The answer to this question is really simple: The server triggers a signal informing that a new mail is available. This technology is called Comet and describes a way how the server communicates with the client [see &lt;a href=&quot;http://en.wikipedia.org/wiki/Comet_(programming)&quot; title=&quot;Comet&quot;&gt;http://en.wikipedia.org/wiki/Comet_(programming)&lt;/a&gt; ].
&lt;br /&gt;&lt;br /&gt;
Is there a way to use Comet for P6? As P6 works with a lot of users, it is important for me as a user to be informed when somebody has changed something in my projects or has added an urgent todo. The list where a notification could be triggered is long, but at the moment, only email notifications are sent immediately. So, what we need in P6 are real-time notifications. With real-time notifications, for example, every time somebody changes something in my project, I receive a message in form of a highlighted info box. This looks like a typical use case for using Comet. And yes, Comet would be great for realizing this kind of real-time notification! But since the users love the handy system requirements (Apache Server and MySQL) and the ease of installation, something different is needed than a real Comet architecture, because all the Comet magic is based on a so called application server, e.g. Jetty, Persevere. Therefore, I decide to implement another (Comet-) technology, called Long Polling. You can find the name AJAX Polling for this technology, too.
&lt;br /&gt;&lt;br /&gt;
The technology behind Long Polling is to open a connection from the client to the server and not to close this connection immediately. Ok, that´s fine, but how to open a connection and &quot;hold&quot; it? Opening a connection to the server is easy, a simple AJAX will do the trick. P6 uses the Dojo Toolkit for all its AJAX, so in this case I used the Dojo.xhrPost.
&lt;br /&gt;&lt;br /&gt;
&lt;code&gt;        dojo.xhrPost({
            url:   myUrl,
            error: function(error, handle) {
                handleError(myUrl, error);
            },
            load: function(response) {
                if (false != response.data) {
                    showToaster(response.data);
                }
            },
            handleAs: &#039;json&#039;
        });&lt;/code&gt;
&lt;br /&gt;&lt;br /&gt;
Since the HTTP protocoll is connection-based, at the server-side, a process is also needed that holds the connection and does not return . So, what I do to hold this connection open is to set a simple timeout during the execution of the server-side script, in my case I use sleep(). This is the basic idea of long polling, but the gimmick of this approach is to return earlier if something happens on the server-side. In other words, I open a connection to the server and check whether there are any changes, if not, the connection stays open for the maximum polling time. If yes, the response will be returned to the client immediately. 
&lt;br /&gt;&lt;!-- s9ymdb:359 --&gt;&lt;img class=&quot;serendipity_image_center&quot; width=&quot;526&quot; height=&quot;514&quot; style=&quot;border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.thinkphp.de/uploads/phprojekt/workflowajaxrequestlongpolling.png&quot; alt=&quot;&quot; /&gt;
&lt;br /&gt;
This diagram shows the basic workflow, and the lines below show the possible solution in PHP:
&lt;br /&gt;&lt;br /&gt;&lt;code&gt;        $counter  = 0;
        $maxLoops = 4;
        $data     = array();

        while ($counter != $maxLoops) {
            $counter++;
            $data = $this-&gt;getMessage($userId); // get data from database
            if (false === empty($data)) {
                return $data; // there is something new, return immediately
            }
            sleep(5); // nothing is new, sleep for 5 sec.
        }

        return $data; // return the empty array &lt;/code&gt;
&lt;br /&gt;&lt;br /&gt;
For P6 this means that I always save the following: the person who triggers an event, the event itself (e.g. somebody adds a new note), the item, the project, the creation time, the time until this message is valid, and the persons who should receive a frontend message from the database. The long polling loop checks whether there is anything new. If yes, it returns the data. If not, the polling loop starts again. Every event is saved in the database for a maximum of two minutes, except events in the future. Itis real-time  so itis possible to miss a message  ;-) 
&lt;br /&gt;&lt;br /&gt;
One word about the Dojo Toolkit. The AJAX API of Dojo provides several functions to communicate with the server. The easiest way is to use dojo.xhrGet or dojo.xhrPost.  I decided to use the Post version. Although the function has a property setTimeout, which allows you to set the time to wait for a response from the server, this is not needed, because of the sleep loops at the server side.
&lt;br /&gt;&lt;br /&gt;
Now, lets look at the downsides of the long polling approach. Yes, I partly agree with everybody who says that the permanent polling to the server causes massive traffic and server load, especially with an increasing number of users. But in the special case of P6 this is OK, because the number of users is manageable and in most cases, P6 runs in a local network. In addition, the frontend messages are configurable, You can set the polling loop and the number of requests to the database. 
&lt;br /&gt;&lt;br /&gt;
Considering all the facts and keeping in mind that P6 is designed to be a lightweight open source groupware, I am positive to say that the Long Polling technology is the right choice for P6.
 
    </description>
</item>
<item>
    <title>Strategische Vorgehensmodelle für Web Security Vortrag@Mayflower-München</title>
    <link>http://blog.thinkphp.de/archives/493-Strategische-Vorgehensmodelle-fuer-Web-Security-VortragMayflower-Muenchen.html</link>

    <description>
        &lt;!-- s9ymdb:356 --&gt;&lt;img class=&quot;serendipity_image_left&quot; width=&quot;340&quot; height=&quot;250&quot; style=&quot;float: left; border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.thinkphp.de/uploads/keys.jpg&quot; alt=&quot;&quot; /&gt;
&lt;p style=&quot;color:red;font-size:16pt&quot;&gt;Achtung! Neuer Termin: 04. März 2010&lt;/p&gt; &lt;br /&gt;&lt;br /&gt;Am kommenden &lt;b&gt;Donnerstag, den 04.03.2010&lt;/b&gt; findet wieder ein öffentlicher Vortrag im Mayflower Büro in München statt (Mannhardtstraße 6, S-Bahn Isartor). &lt;br /&gt;Beginn ist um 18:00 Uhr, Thema des Vortrags ist &quot;&lt;b&gt;Strategische Vorgehensmodelle für Web Security&lt;/b&gt;&quot;.&lt;br /&gt;&lt;br /&gt;

Web Security rückt zunehmend in den Mittelpunkt aktueller Businessanwendungen. Dabei gibt es einige strategische Vorgehensmodelle, wie Web Security für Lösungen in Unternehmen realisiert werden kann. &lt;b&gt;Johann-Peter Hartmann&lt;/b&gt; gibt einen Überblick.&lt;br /&gt;&lt;br /&gt;

Die &quot;Donnerstags-Vorträge&quot; werden sowohl in München als auch in Würzburg  gehalten. Bei Interesse einfach das Blog beobachten, um auf dem Laufenden zu bleiben!&lt;br /&gt; Wir freuen uns auf viele Teilnehmer!&lt;br /&gt;&lt;br /&gt;

&lt;I&gt;Foto: ntr23 (flickr)&lt;/I&gt; 
    </description>
</item>
<item>
    <title>Deployment, aber richtig - Vortrag@Mayflower-Würzburg</title>
    <link>http://blog.thinkphp.de/archives/494-Deployment,-aber-richtig-VortragMayflower-Wuerzburg.html</link>

    <description>
        Am kommenden &lt;b&gt;Donnerstag, den 04.03.2010&lt;/b&gt; findet wieder ein öffentlicher Vortrag im Mayflower Büro in Würzburg statt (Pleichertorstrasse 2, 97070 Würzburg, Straßenbahn und die Haltestelle Congress Centrum). &lt;br /&gt;Beginn ist um 18:00 Uhr, Thema des Vortrags ist &quot;&lt;b&gt;Deployment, aber richtig&lt;/b&gt;&quot;.&lt;br /&gt;&lt;br /&gt;

Deployment ist ein wichtiger Bestandteil der Software Entwicklung. In diesem Vortrag stellt Michael Krieg Ansätze und Tools vor, die den Deploymentprozess weitestgehend automatisieren. Schwerpunkte: Softwareverteilung auf mehrere Hosts, Datenbank Migration, Maintenance Pages und Rollback. Wie immer runden Best-Practises den Vortrag ab.&lt;br /&gt;&lt;br /&gt;

Die &quot;Donnerstags-Vorträge&quot; werden sowohl in Würzburg als auch in München gehalten. Bei Interesse einfach das Blog beobachten, um auf dem Laufenden zu bleiben!&lt;br /&gt; Wir freuen uns auf viele Teilnehmer!&lt;br /&gt;&lt;br /&gt;

&lt;iframe width=&quot;425&quot; height=&quot;350&quot; frameborder=&quot;0&quot; scrolling=&quot;no&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; src=&quot;http://maps.google.de/maps?f=q&amp;amp;source=s_q&amp;amp;hl=de&amp;amp;geocode=&amp;amp;q=Pleichertorstrasse+2+97070+W%C3%BCrzburg&amp;amp;sll=51.151786,10.415039&amp;amp;sspn=20.064233,57.084961&amp;amp;ie=UTF8&amp;amp;ll=49.79678,9.926319&amp;amp;spn=0.009696,0.018239&amp;amp;z=15&amp;amp;output=embed&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;small&gt;&lt;a href=&quot;http://maps.google.de/maps?f=q&amp;amp;source=embed&amp;amp;hl=de&amp;amp;geocode=&amp;amp;q=Pleichertorstrasse+2+97070+W%C3%BCrzburg&amp;amp;sll=51.151786,10.415039&amp;amp;sspn=20.064233,57.084961&amp;amp;ie=UTF8&amp;amp;ll=49.79678,9.926319&amp;amp;spn=0.009696,0.018239&amp;amp;z=15&quot; style=&quot;color:#0000FF;text-align:left&quot;&gt;Größere Kartenansicht&lt;/a&gt;&lt;/small&gt; 
    </description>
</item>
<item>
    <title>Mobile Apps mit PhoneGap, Vortrag@Mayflower-Würzburg</title>
    <link>http://blog.thinkphp.de/archives/492-Mobile-Apps-mit-PhoneGap,-VortragMayflower-Wuerzburg.html</link>

    <description>
        Am kommenden &lt;b&gt;Donnerstag, den 25.02.2010&lt;/b&gt; findet wieder ein öffentlicher Vortrag im Mayflower Büro in Würzburg statt (Pleichertorstrasse 2, 97070 Würzburg, Straßenbahn und die Haltestelle Congress Centrum). &lt;br /&gt;Beginn ist um 18:00 Uhr, Thema des Vortrags ist &quot;&lt;b&gt;Mobile Apps mit PhoneGap&lt;/b&gt;&quot;.&lt;br /&gt;&lt;br /&gt;

&lt;b&gt;Thorsten Rinne&lt;/b&gt; zeigt, wie man mit Webtechnologien (Html, Css, JavaScript) mobile Apps für iPhone, Android, Blackberry und Co. entwickeln kann und weist auf die Unterschiede zwischen PhoneGap, Titanium Developer und anderen ähnlichen Plattformen hin.&lt;br /&gt;&lt;br /&gt;

Die &quot;Donnerstags-Vorträge&quot; werden sowohl in Würzburg als auch in München gehalten. Bei Interesse einfach das Blog beobachten, um auf dem Laufenden zu bleiben!&lt;br /&gt; Wir freuen uns auf viele Teilnehmer!&lt;br /&gt;&lt;br /&gt;

&lt;iframe width=&quot;425&quot; height=&quot;350&quot; frameborder=&quot;0&quot; scrolling=&quot;no&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; src=&quot;http://maps.google.de/maps?f=q&amp;amp;source=s_q&amp;amp;hl=de&amp;amp;geocode=&amp;amp;q=Pleichertorstrasse+2+97070+W%C3%BCrzburg&amp;amp;sll=51.151786,10.415039&amp;amp;sspn=20.064233,57.084961&amp;amp;ie=UTF8&amp;amp;ll=49.79678,9.926319&amp;amp;spn=0.009696,0.018239&amp;amp;z=15&amp;amp;output=embed&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;small&gt;&lt;a href=&quot;http://maps.google.de/maps?f=q&amp;amp;source=embed&amp;amp;hl=de&amp;amp;geocode=&amp;amp;q=Pleichertorstrasse+2+97070+W%C3%BCrzburg&amp;amp;sll=51.151786,10.415039&amp;amp;sspn=20.064233,57.084961&amp;amp;ie=UTF8&amp;amp;ll=49.79678,9.926319&amp;amp;spn=0.009696,0.018239&amp;amp;z=15&quot; style=&quot;color:#0000FF;text-align:left&quot;&gt;Größere Kartenansicht&lt;/a&gt;&lt;/small&gt;Mobile Apps mit PhoneGap, Vortrag@Mayflower-Würzburg
 
    </description>
</item>
<item>
    <title>Mobile Apps: Welches SDK ist das Richtige für mich? Vortrag@Mayflower-München</title>
    <link>http://blog.thinkphp.de/archives/491-Mobile-Apps-Welches-SDK-ist-das-Richtige-fuer-mich-VortragMayflower-Muenchen.html</link>

    <description>
        &lt;!-- s9ymdb:355 --&gt;&lt;img class=&quot;serendipity_image_left&quot; width=&quot;330&quot; height=&quot;180&quot; style=&quot;float: left; border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.thinkphp.de/uploads/mobile_apps.jpg&quot; alt=&quot;&quot; /&gt;Am kommenden &lt;b&gt;Donnerstag, den 18.02.2010&lt;/b&gt; findet wieder ein öffentlicher Vortrag im Mayflower Büro in München statt (Mannhardtstraße 6, S-Bahn Isartor). &lt;br /&gt;Beginn ist um 18:00 Uhr, Thema des Vortrags ist &quot;&lt;b&gt;Mobile Apps: Welches SDK ist das Richtige für mich?&lt;/b&gt;&quot;.&lt;br /&gt;&lt;br /&gt;

&lt;b&gt;Tobias Schlüter&lt;/b&gt; geht in seinem Vortrag auf die verschiedenen mobilen Plattformen (Android, Symbian, iPhone OS usw.) ein und beschreibt, wie man mit Cross-Plattform-SDKs eine App für mehrere Plattformen schreiben kann.&lt;br /&gt;&lt;br /&gt;

Die &quot;Donnerstags-Vorträge&quot; werden sowohl in München als auch in Würzburg  gehalten. Bei Interesse einfach das Blog beobachten, um auf dem Laufenden zu bleiben!&lt;br /&gt; Wir freuen uns auf viele Teilnehmer!&lt;br /&gt;&lt;br /&gt; 
    </description>
</item>
<item>
    <title>Developing PHP Internals on Windows, Vortrag@Mayflower-Würzburg</title>
    <link>http://blog.thinkphp.de/archives/490-Developing-PHP-Internals-on-Windows,-VortragMayflower-Wuerzburg.html</link>

    <description>
        Am kommenden &lt;b&gt;Donnerstag, den 18.02.2010&lt;/b&gt; findet wieder ein öffentlicher Vortrag im Mayflower Büro in Würzburg statt (Pleichertorstrasse 2, 97070 Würzburg, Straßenbahn und die Haltestelle Congress Centrum). &lt;br /&gt;Beginn ist um 18:00 Uhr, Thema des Vortrags ist &quot;&lt;b&gt;Developing PHP Internals on Windows&lt;/b&gt;&quot;.&lt;br /&gt;&lt;br /&gt;

Pierre Joye zeigt wie man Extensions für PHP in Windows entwickeln kann (development environment setup, configuration, compiling php, extensions writting, debugging, testing usw.)&lt;br /&gt;&lt;br /&gt;

Die &quot;Donnerstags-Vorträge&quot; werden sowohl in Würzburg als auch in München gehalten. Bei Interesse einfach das Blog beobachten, um auf dem Laufenden zu bleiben!&lt;br /&gt; Wir freuen uns auf viele Teilnehmer!&lt;br /&gt;&lt;br /&gt;

&lt;iframe width=&quot;425&quot; height=&quot;350&quot; frameborder=&quot;0&quot; scrolling=&quot;no&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; src=&quot;http://maps.google.de/maps?f=q&amp;amp;source=s_q&amp;amp;hl=de&amp;amp;geocode=&amp;amp;q=Pleichertorstrasse+2+97070+W%C3%BCrzburg&amp;amp;sll=51.151786,10.415039&amp;amp;sspn=20.064233,57.084961&amp;amp;ie=UTF8&amp;amp;ll=49.79678,9.926319&amp;amp;spn=0.009696,0.018239&amp;amp;z=15&amp;amp;output=embed&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;small&gt;&lt;a href=&quot;http://maps.google.de/maps?f=q&amp;amp;source=embed&amp;amp;hl=de&amp;amp;geocode=&amp;amp;q=Pleichertorstrasse+2+97070+W%C3%BCrzburg&amp;amp;sll=51.151786,10.415039&amp;amp;sspn=20.064233,57.084961&amp;amp;ie=UTF8&amp;amp;ll=49.79678,9.926319&amp;amp;spn=0.009696,0.018239&amp;amp;z=15&quot; style=&quot;color:#0000FF;text-align:left&quot;&gt;Größere Kartenansicht&lt;/a&gt;&lt;/small&gt; 
    </description>
</item>
<item>
    <title>Praktische Anwendung von MySQLDumper, Vortrag@Mayflower-Würzburg</title>
    <link>http://blog.thinkphp.de/archives/489-Praktische-Anwendung-von-MySQLDumper,-VortragMayflower-Wuerzburg.html</link>

    <description>
        &lt;!-- s9ymdb:354 --&gt;&lt;img class=&quot;serendipity_image_left&quot; width=&quot;350&quot; height=&quot;57&quot; style=&quot;float: left; border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.thinkphp.de/uploads/logo-truck.png&quot; alt=&quot;&quot; /&gt;
Am kommenden &lt;b&gt;Donnerstag, den 11.02.2010&lt;/b&gt; findet wieder ein öffentlicher Vortrag im Mayflower Büro in Würzburg statt (Pleichertorstrasse 2, 97070 Würzburg, Straßenbahn und die Haltestelle Congress Centrum). &lt;br /&gt;Beginn ist um 18:00 Uhr, Thema des Vortrags ist &quot;&lt;b&gt;Praktische Anwendung von MySQLDumper&lt;/b&gt;&quot;.&lt;br /&gt;&lt;br /&gt;

Intelligentes Backup-Management bei MySQL-Datenbanken? Kein Problem, denn mit dem MySQLDumper kann jeder Sicherungskopien seiner wichtiger Datenbestände erstellen - und bei Bedarf auch kinderleicht wieder herstellen. &lt;b&gt;Daniel Schlichtholz&lt;/b&gt; zeigt wie MySQLDumper einem das Leben erleichtert. Frei nach dem Motto: back it up the easy way...&lt;br /&gt;&lt;br /&gt;

Die &quot;Donnerstags-Vorträge&quot; werden sowohl in Würzburg als auch in München gehalten. Bei Interesse einfach das Blog beobachten, um auf dem Laufenden zu bleiben!&lt;br /&gt; Wir freuen uns auf viele Teilnehmer!&lt;br /&gt;&lt;br /&gt;

&lt;iframe width=&quot;425&quot; height=&quot;350&quot; frameborder=&quot;0&quot; scrolling=&quot;no&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; src=&quot;http://maps.google.de/maps?f=q&amp;amp;source=s_q&amp;amp;hl=de&amp;amp;geocode=&amp;amp;q=Pleichertorstrasse+2+97070+W%C3%BCrzburg&amp;amp;sll=51.151786,10.415039&amp;amp;sspn=20.064233,57.084961&amp;amp;ie=UTF8&amp;amp;ll=49.79678,9.926319&amp;amp;spn=0.009696,0.018239&amp;amp;z=15&amp;amp;output=embed&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;small&gt;&lt;a href=&quot;http://maps.google.de/maps?f=q&amp;amp;source=embed&amp;amp;hl=de&amp;amp;geocode=&amp;amp;q=Pleichertorstrasse+2+97070+W%C3%BCrzburg&amp;amp;sll=51.151786,10.415039&amp;amp;sspn=20.064233,57.084961&amp;amp;ie=UTF8&amp;amp;ll=49.79678,9.926319&amp;amp;spn=0.009696,0.018239&amp;amp;z=15&quot; style=&quot;color:#0000FF;text-align:left&quot;&gt;Größere Kartenansicht&lt;/a&gt;&lt;/small&gt; 
    </description>
</item>
<item>
    <title>Continuous Integration und Cruise Control im Projekteinsatz -&gt; Vortrag@Mayflower-München</title>
    <link>http://blog.thinkphp.de/archives/488-Continuous-Integration-und-Cruise-Control-im-Projekteinsatz-VortragMayflower-Muenchen.html</link>

    <description>
        &lt;!-- s9ymdb:353 --&gt;&lt;img class=&quot;serendipity_image_left&quot; width=&quot;250&quot; height=&quot;223&quot; style=&quot;float: left; border: 0px; padding-left: 5px; padding-right: 5px;&quot; src=&quot;http://blog.thinkphp.de/uploads/cruise2.jpg&quot; alt=&quot;&quot; /&gt;Am kommenden &lt;b&gt;Donnerstag, den 11.02.2010&lt;/b&gt; findet wieder ein öffentlicher Vortrag im Mayflower Büro in München statt (Mannhardtstraße 6, S-Bahn Isartor). &lt;br /&gt;Beginn ist um 18:00 Uhr, Thema des Vortrags ist &quot;&lt;b&gt;Continuous Integration und Cruise Control im Projekteinsatz&lt;/b&gt;&quot; &lt;br /&gt;&lt;br /&gt;

&lt;b&gt;Sebastian Springer&lt;/b&gt; zeigt wie man Continuous Integration in PHP-basierten Entwicklungsprozessen einsetzen kann, insbesondere mit dem CruiseControl Framework.&lt;br /&gt;&lt;br /&gt;

Die &quot;Donnerstags-Vorträge&quot; werden sowohl in München als auch in Würzburg  gehalten. Bei Interesse einfach das Blog beobachten, um auf dem Laufenden zu bleiben!&lt;br /&gt; Wir freuen uns auf viele Teilnehmer!&lt;br /&gt;&lt;br /&gt; 
    </description>
</item>
<item>
    <title>Live exploiting aus Angreifersicht (XSS / CSRF), Vortrag@Mayflower-Würzburg</title>
    <link>http://blog.thinkphp.de/archives/463-Live-exploiting-aus-Angreifersicht-XSS-CSRF,-VortragMayflower-Wuerzburg.html</link>

    <description>
        Am kommenden &lt;b&gt;Donnerstag, den 04.02.2010&lt;/b&gt; findet wieder ein öffentlicher Vortrag im Mayflower Büro in Würzburg statt (Pleichertorstrasse 2, 97070 Würzburg, Straßenbahn und die Haltestelle Congress Centrum). &lt;br /&gt;Beginn ist um 18:00 Uhr, Thema des Vortrags ist &quot;&lt;b&gt;Live exploiting aus Angreifersicht (XSS / CSRF)&lt;/b&gt;&quot;.&lt;br /&gt;&lt;br /&gt;


Anhand von interaktiven Beispielen erklärt &lt;b&gt;Frank Ruske&lt;/b&gt; die Sicherheitsprobleme XSS (Cross-Site Scripting)  &amp;amp; CSRF (Cross-Site Request Forgery). Welche Gefahren gibt es und wie werden diese Lücken ausgenutzt - ist das zentrale Thema dieses Vortrages?.&lt;br /&gt;&lt;br /&gt;

Die &quot;Donnerstags-Vorträge&quot; werden sowohl in Würzburg als auch in München gehalten. Bei Interesse einfach das Blog beobachten, um auf dem Laufenden zu bleiben!&lt;br /&gt; Wir freuen uns auf viele Teilnehmer!&lt;br /&gt;&lt;br /&gt;

&lt;iframe width=&quot;425&quot; height=&quot;350&quot; frameborder=&quot;0&quot; scrolling=&quot;no&quot; marginheight=&quot;0&quot; marginwidth=&quot;0&quot; src=&quot;http://maps.google.de/maps?f=q&amp;amp;source=s_q&amp;amp;hl=de&amp;amp;geocode=&amp;amp;q=Pleichertorstrasse+2+97070+W%C3%BCrzburg&amp;amp;sll=51.151786,10.415039&amp;amp;sspn=20.064233,57.084961&amp;amp;ie=UTF8&amp;amp;ll=49.79678,9.926319&amp;amp;spn=0.009696,0.018239&amp;amp;z=15&amp;amp;output=embed&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;small&gt;&lt;a href=&quot;http://maps.google.de/maps?f=q&amp;amp;source=embed&amp;amp;hl=de&amp;amp;geocode=&amp;amp;q=Pleichertorstrasse+2+97070+W%C3%BCrzburg&amp;amp;sll=51.151786,10.415039&amp;amp;sspn=20.064233,57.084961&amp;amp;ie=UTF8&amp;amp;ll=49.79678,9.926319&amp;amp;spn=0.009696,0.018239&amp;amp;z=15&quot; style=&quot;color:#0000FF;text-align:left&quot;&gt;Größere Kartenansicht&lt;/a&gt;&lt;/small&gt; 
    </description>
</item>

</channel>
</rss>
