BEGIN:VCALENDAR
PRODID:-//Google Inc//Google Calendar 70.9054//EN
VERSION:2.0
CALSCALE:GREGORIAN
METHOD:PUBLISH
X-WR-CALNAME:PHPUG Köln/Bonn
X-WR-TIMEZONE:Europe/Berlin
X-WR-CALDESC:Termine\, Treffen\, Vortragsthemen und alles hier
BEGIN:VTIMEZONE
TZID:Europe/Berlin
X-LIC-LOCATION:Europe/Berlin
BEGIN:DAYLIGHT
TZOFFSETFROM:+0100
TZOFFSETTO:+0200
TZNAME:CEST
DTSTART:19700329T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:+0200
TZOFFSETTO:+0100
TZNAME:CET
DTSTART:19701025T030000
RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20160812T190000
DTEND;TZID=Europe/Berlin:20160812T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
X-GOOGLE-CALENDAR-CONTENT-TITLE:
X-GOOGLE-CALENDAR-CONTENT-DISPLAY:CHIP
X-GOOGLE-CALENDAR-CONTENT-TYPE:image/gif
X-GOOGLE-CALENDAR-CONTENT-ICON:https://www.google.com/googlecalendar/icons/
 5.png
RECURRENCE-ID;TZID=Europe/Berlin:20160805T190000
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20160707T084751Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:1
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
CATEGORIES:http://schemas.google.com/g/2005#event
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20160513T190000
DTEND;TZID=Europe/Berlin:20160513T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
X-GOOGLE-CALENDAR-CONTENT-TITLE:
X-GOOGLE-CALENDAR-CONTENT-DISPLAY:CHIP
X-GOOGLE-CALENDAR-CONTENT-TYPE:image/gif
X-GOOGLE-CALENDAR-CONTENT-ICON:https://www.google.com/googlecalendar/icons/
 5.png
RECURRENCE-ID;TZID=Europe/Berlin:20160506T190000
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20160504T100135Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:1
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
CATEGORIES:http://schemas.google.com/g/2005#event
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20160212T190000
DTEND;TZID=Europe/Berlin:20160212T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
X-GOOGLE-CALENDAR-CONTENT-TITLE:
X-GOOGLE-CALENDAR-CONTENT-DISPLAY:CHIP
X-GOOGLE-CALENDAR-CONTENT-TYPE:image/gif
X-GOOGLE-CALENDAR-CONTENT-ICON:https://www.google.com/googlecalendar/icons/
 5.png
RECURRENCE-ID;TZID=Europe/Berlin:20160205T190000
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20160125T184644Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:1
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
CATEGORIES:http://schemas.google.com/g/2005#event
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20160108T190000
DTEND;TZID=Europe/Berlin:20160108T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
X-GOOGLE-CALENDAR-CONTENT-TITLE:
X-GOOGLE-CALENDAR-CONTENT-DISPLAY:CHIP
X-GOOGLE-CALENDAR-CONTENT-TYPE:image/gif
X-GOOGLE-CALENDAR-CONTENT-ICON:https://www.google.com/googlecalendar/icons/
 5.png
RECURRENCE-ID;TZID=Europe/Berlin:20160101T190000
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20151225T213144Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:1
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
CATEGORIES:http://schemas.google.com/g/2005#event
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20151204T190000
DTEND;TZID=Europe/Berlin:20151204T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
X-GOOGLE-CALENDAR-CONTENT-TITLE:
X-GOOGLE-CALENDAR-CONTENT-DISPLAY:CHIP
X-GOOGLE-CALENDAR-CONTENT-TYPE:image/gif
X-GOOGLE-CALENDAR-CONTENT-ICON:https://www.google.com/googlecalendar/icons/
 5.png
RECURRENCE-ID;TZID=Europe/Berlin:20151204T190000
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20151225T213138Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:2
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
CATEGORIES:http://schemas.google.com/g/2005#event
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20150710T190000
DTEND;TZID=Europe/Berlin:20150710T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
X-GOOGLE-CALENDAR-CONTENT-TITLE:
X-GOOGLE-CALENDAR-CONTENT-DISPLAY:CHIP
X-GOOGLE-CALENDAR-CONTENT-TYPE:image/gif
X-GOOGLE-CALENDAR-CONTENT-ICON:https://www.google.com/googlecalendar/icons/
 5.png
RECURRENCE-ID;TZID=Europe/Berlin:20150703T190000
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20150630T153325Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:1
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20150508T190000
DTEND;TZID=Europe/Berlin:20150508T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
X-GOOGLE-CALENDAR-CONTENT-TITLE:
X-GOOGLE-CALENDAR-CONTENT-DISPLAY:CHIP
X-GOOGLE-CALENDAR-CONTENT-TYPE:image/gif
X-GOOGLE-CALENDAR-CONTENT-ICON:https://www.google.com/googlecalendar/icons/
 5.png
RECURRENCE-ID;TZID=Europe/Berlin:20150501T190000
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20150430T200213Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:1
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20150410T190000
DTEND;TZID=Europe/Berlin:20150410T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
X-GOOGLE-CALENDAR-CONTENT-TITLE:
X-GOOGLE-CALENDAR-CONTENT-DISPLAY:CHIP
X-GOOGLE-CALENDAR-CONTENT-TYPE:image/gif
X-GOOGLE-CALENDAR-CONTENT-ICON:https://www.google.com/googlecalendar/icons/
 5.png
RECURRENCE-ID;TZID=Europe/Berlin:20150403T190000
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20150330T170956Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:1
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20150109T190000
DTEND;TZID=Europe/Berlin:20150109T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
X-GOOGLE-CALENDAR-CONTENT-TITLE:
X-GOOGLE-CALENDAR-CONTENT-DISPLAY:CHIP
X-GOOGLE-CALENDAR-CONTENT-TYPE:image/gif
X-GOOGLE-CALENDAR-CONTENT-ICON:https://www.google.com/googlecalendar/icons/
 5.png
RECURRENCE-ID;TZID=Europe/Berlin:20150102T190000
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20141229T161117Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:1
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20141010T190000
DTEND;TZID=Europe/Berlin:20141010T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
X-GOOGLE-CALENDAR-CONTENT-TITLE:
X-GOOGLE-CALENDAR-CONTENT-DISPLAY:CHIP
X-GOOGLE-CALENDAR-CONTENT-TYPE:image/gif
X-GOOGLE-CALENDAR-CONTENT-ICON:https://www.google.com/googlecalendar/icons/
 5.png
RECURRENCE-ID;TZID=Europe/Berlin:20141003T190000
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20141001T143603Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:1
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20140912T190000
DTEND;TZID=Europe/Berlin:20140912T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
X-GOOGLE-CALENDAR-CONTENT-TITLE:
X-GOOGLE-CALENDAR-CONTENT-DISPLAY:CHIP
X-GOOGLE-CALENDAR-CONTENT-TYPE:image/gif
X-GOOGLE-CALENDAR-CONTENT-ICON:https://www.google.com/googlecalendar/icons/
 5.png
RECURRENCE-ID;TZID=Europe/Berlin:20140905T190000
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20140903T213105Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:1
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20140509T190000
DTEND;TZID=Europe/Berlin:20140509T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
X-GOOGLE-CALENDAR-CONTENT-TITLE:
X-GOOGLE-CALENDAR-CONTENT-DISPLAY:CHIP
X-GOOGLE-CALENDAR-CONTENT-TYPE:image/gif
X-GOOGLE-CALENDAR-CONTENT-ICON:https://www.google.com/googlecalendar/icons/
 5.png
RECURRENCE-ID;TZID=Europe/Berlin:20140502T190000
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20140502T120555Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:1
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20131108T190000
DTEND;TZID=Europe/Berlin:20131108T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
X-GOOGLE-CALENDAR-CONTENT-TITLE:
X-GOOGLE-CALENDAR-CONTENT-DISPLAY:CHIP
X-GOOGLE-CALENDAR-CONTENT-TYPE:image/gif
X-GOOGLE-CALENDAR-CONTENT-ICON:https://www.google.com/googlecalendar/icons/
 5.png
RECURRENCE-ID;TZID=Europe/Berlin:20131101T190000
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20131025T085550Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:1
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20130510T190000
DTEND;TZID=Europe/Berlin:20130510T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
X-GOOGLE-CALENDAR-CONTENT-TITLE:
X-GOOGLE-CALENDAR-CONTENT-DISPLAY:CHIP
X-GOOGLE-CALENDAR-CONTENT-TYPE:image/gif
X-GOOGLE-CALENDAR-CONTENT-ICON:https://www.google.com/googlecalendar/icons/
 5.png
RECURRENCE-ID;TZID=Europe/Berlin:20130503T190000
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20130408T122046Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:1
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20121109T190000
DTEND;TZID=Europe/Berlin:20121109T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
X-GOOGLE-CALENDAR-CONTENT-TITLE:
X-GOOGLE-CALENDAR-CONTENT-DISPLAY:CHIP
X-GOOGLE-CALENDAR-CONTENT-TYPE:image/gif
X-GOOGLE-CALENDAR-CONTENT-ICON:https://www.google.com/googlecalendar/icons/
 5.png
RECURRENCE-ID;TZID=Europe/Berlin:20121102T190000
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20121031T172444Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:1
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20121005T190000
DTEND;TZID=Europe/Berlin:20121005T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
X-GOOGLE-CALENDAR-CONTENT-TITLE:
X-GOOGLE-CALENDAR-CONTENT-DISPLAY:CHIP
X-GOOGLE-CALENDAR-CONTENT-TYPE:image/gif
X-GOOGLE-CALENDAR-CONTENT-ICON:https://www.google.com/googlecalendar/icons/
 5.png
RECURRENCE-ID;TZID=Europe/Berlin:20121005T190000
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20121031T172438Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:2
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20120413T190000
DTEND;TZID=Europe/Berlin:20120413T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
X-GOOGLE-CALENDAR-CONTENT-TITLE:
X-GOOGLE-CALENDAR-CONTENT-DISPLAY:CHIP
X-GOOGLE-CALENDAR-CONTENT-TYPE:image/gif
X-GOOGLE-CALENDAR-CONTENT-ICON:https://www.google.com/googlecalendar/icons/
 5.png
RECURRENCE-ID;TZID=Europe/Berlin:20120406T190000
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20120329T143905Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:1
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20110610T190000
DTEND;TZID=Europe/Berlin:20110610T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
RECURRENCE-ID;TZID=Europe/Berlin:20110603T190000
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20111005T143807Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:1
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20110311T190000
DTEND;TZID=Europe/Berlin:20110311T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
RECURRENCE-ID;TZID=Europe/Berlin:20110304T190000
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20111005T143807Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:1
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20110211T190000
DTEND;TZID=Europe/Berlin:20110211T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
RECURRENCE-ID;TZID=Europe/Berlin:20110204T190000
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20111005T143807Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:1
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20110114T190000
DTEND;TZID=Europe/Berlin:20110114T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
RECURRENCE-ID;TZID=Europe/Berlin:20110107T190000
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20111005T143807Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20101008T190000
DTEND;TZID=Europe/Berlin:20101008T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
RECURRENCE-ID;TZID=Europe/Berlin:20101001T190000
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20111005T143807Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20100507T190000
DTEND;TZID=Europe/Berlin:20100507T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
RECURRENCE-ID;TZID=Europe/Berlin:20100507T190000
CREATED:20090126T100510Z
DESCRIPTION:Thomas Weinert mit "The Lumberjack: XPath"\n\nXPath ist die Abf
 ragesprache für XML. Häufig hört man das die Nutzung des DOM zum Verarbeite
 n von XML viel zu aufwändig ist. Mit XPath läßt sich dieser Aufwand jedoch 
 stark reduzieren\, da man mit einer einfachen Syntax Elemente aus einem DOM
 -Baum herausfiltern kann. Die Session gibt eine Einführung in die Syntax un
 d Fähigkeiten.\n\nSlides are at: http://www.slideshare.net/subjective/lumbe
 rjack-xpath-101
LAST-MODIFIED:20111005T143807Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20100409T190000
DTEND;TZID=Europe/Berlin:20100409T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
ATTENDEE;CUTYPE=INDIVIDUAL;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;X-NUM
 -GUESTS=0:mailto:rk1bjrfbd9tgdiutmhv3h1pmeg@group.calendar.google.com
RECURRENCE-ID;TZID=Europe/Berlin:20100402T190000
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20111005T143807Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:0
STATUS:TENTATIVE
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
CATEGORIES:http://schemas.google.com/g/2005#event
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20091106T190000
DTEND;TZID=Europe/Berlin:20091106T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
RECURRENCE-ID;TZID=Europe/Berlin:20091106T190000
CREATED:20090126T100510Z
DESCRIPTION:Jakob Westhoff:\n\nJavascript Unittesting mit js-test-driver\n=
 ========================================\n\nTest-Driven-Development und Agi
 le-Softwareentwicklung sind auf dem Vormarsch.\nViele Firmen haben diese Pr
 inzipien bereits für sich entdeckt und setzen Sie\nerfolgreich zur Produkti
 ons- und Effizienzsteigerung\, sowie zur\nQualitätssicherung ein. \n\nDurch
  die Verwendung moderner Konzepte des Web2.0 sind Applikationen im\nWebumfe
 ld deutlich mehr auf komplexe in Javascript geschriebene Frontends\nangewie
 sen als füher. Auch hier ist Qualitatssicherung nötig. \n\nDieser Vortrag w
 ird einen Überblick über das js-test-driver Framework geben\,\nwelches vers
 chiedene Aspekte des genannten Bereichs abdeckt. Von Unittests\,\nüber Code
 -Coverage-Berechnungen hin zu automatisierten Testläufen kann\njs-test-driv
 er mit vielen Funktionalitäten glänzen\, die sonst nur von TDD\nFrameworks 
 anderer Sprachen bekannt sind. js-test-driver's Architektur ist\nhierbei be
 sonders darauf ausgelegt die speziellen Widrigkeiten beim Testen von\nJavas
 cript zu umschiffen. Wie z.B. die unterschiedlichen Javascript-Engines der\
 nBrowser\, welche unterschiedliche Verhalten nach sich ziehen. \n\nFür den 
 Besuch sind keine besonderen Vorkenntnisse im Bereich Testen nötig. Wer\nne
 ugierig ist zu erfahren wie Javascript Applikationen elegant und effizient\
 ngetestet werden können ist in dieser Session richtig aufgehoben.
LAST-MODIFIED:20111005T143807Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20090904T190000
DTEND;TZID=Europe/Berlin:20090904T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
RECURRENCE-ID;TZID=Europe/Berlin:20090904T190000
CREATED:20090126T100510Z
DESCRIPTION:FluentDOM und TDD - wie eine Bibliothek entsteht\n\nThomas Wein
 ert und Bastian Feder
LAST-MODIFIED:20111005T143807Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20090807T190000
DTEND;TZID=Europe/Berlin:20090807T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
RECURRENCE-ID;TZID=Europe/Berlin:20090807T190000
CREATED:20090126T100510Z
DESCRIPTION:Sascha Kersken über fortgeschrittene Anwendungsmöglichkeiten (P
 erl-kompatibler) regulärer Ausdrücke.
LAST-MODIFIED:20111005T143807Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20090710T190000
DTEND;TZID=Europe/Berlin:20090710T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
RECURRENCE-ID;TZID=Europe/Berlin:20090703T190000
CREATED:20090126T100510Z
DESCRIPTION:Vortrag von Kore Nordmann über CouchDB:\n\nPHPillow & CouchDB &
  PHP\n\nApache CouchDB is a distributed\, fault-tolerant and schema-free\nd
 ocument-oriented database accessible via a RESTful HTTP/JSON API\, and\nPHP
 illow is a wrapper to easily access CouchDB from PHP. This talk will\nquick
 ly introduce CouchDB and the PHPillow API and then show you how the\nconcep
 ts of CouchDB and PHPillow can contribute to your application design and\nd
 evelopment.
LAST-MODIFIED:20111005T143807Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20090605T190000
DTEND;TZID=Europe/Berlin:20090605T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
RECURRENCE-ID;TZID=Europe/Berlin:20090605T190000
CREATED:20090126T100510Z
DESCRIPTION:Martin Kelm (papaya Software GmbH) über Geo Maps:\n\nDer Vortra
 g zu Geo Maps für papaya CMS befasst sich in erster Linie \nmit den zwei be
 kanntesten Karten-APIs von Google und Yahoo. \nWie und in welchem Umfang di
 ese Funktionen von der Applikation Geo Maps\nunterstützt werden und welche 
 weiteren Schnittstellen es zur Darstellung von\nKarten und geographischen P
 unkten gibt. Anschließend werden mehrere\nKomponenten und einige spezielle 
 Funktionen der Applikation vorgestellt.
LAST-MODIFIED:20111005T143807Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20090508T190000
DTEND;TZID=Europe/Berlin:20090508T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
RECURRENCE-ID;TZID=Europe/Berlin:20090501T190000
CREATED:20090126T100510Z
DESCRIPTION:Benjamin Eberlei hatdiesesmal einen Vortrag mit dem folgenden T
 hema vorbereitet:\n\nUnittest Code-Review - Wie gut oder schlecht ist dein 
 Framework?\n\nAuch für Unittests gelten Programmierpraktiken und -standards
 : Zumindest\, wenn\nSie wirklich vor Fehlern helfen sollen. Wie halten es O
 pen-Source Frameworks\nund Bibliotheken mit der Test-Qualität? Sollte man l
 ieber mal genauer\nhinschauen\, was wir da jeden Tag wie selbstverständlich
  für sehr gut getestet\nhalten? Wir werden eine interaktive Reise starten\,
  die lustig\, traurig und\ninformativ ein Auge dafür öffnen soll\, dass nic
 ht alles Gold ist wo Open-Source\ndrauf steht.
LAST-MODIFIED:20111005T143807Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20090403T190000
DTEND;TZID=Europe/Berlin:20090403T220000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
RECURRENCE-ID;TZID=Europe/Berlin:20090403T190000
CREATED:20090126T100510Z
DESCRIPTION:Diesen Monat werden Thomas und ich euch eine Einführung in die\
 nexclusiveren Mysterien der XSLT-Programmierung geben.\n\nIm Groben geht es
  darum wie man verschiedene Sprachen inclusive\nDatums- und Zahlen-Formatti
 erungen in einem Template unterstützt.\nDabei kommen verschiedene Techniken
  wie das Nachladen von Daten aus\nXML-Dateien und die Umwandlung von Templa
 tes in Funktionen mit EXSLT\nzur Sprache.
LAST-MODIFIED:20111005T143807Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART:20090306T180000Z
DTEND:20090306T210000Z
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
RECURRENCE-ID:20090306T180000Z
CREATED:20090126T100510Z
DESCRIPTION:Speaker: Kore Nordmann (http://kore-nordmann.de)\nTopic:  Seman
 tisches Netz\n\nDas "Semantische Netz" ist seit Jahren immer wieder ein zen
 trales Thema\, das Aufmerksamkeit auf sich zieht. Im Alltag hat sich nicht 
 viel getan - Suchmaschinen verhalten sich im Wesentlichen immernoch genauso
  wie vor 10 Jahren. Oder doch nicht? Ein Überblick über Technologien\, Konz
 epte und Einsatzmöglichkeiten.
LAST-MODIFIED:20111005T143807Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART:20090206T180000Z
DTEND:20090206T210000Z
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
RECURRENCE-ID:20090206T180000Z
CREATED:20090126T100510Z
DESCRIPTION:Ingo wird einen Vortrag über NetBeans halten:\n\n__NetBeans für
  PHP-Entwickler__\nSeit der Version 6.5\, die Ende 2008 erschienen ist\, un
 terstützt die NetBeans IDE nun neben Java\, C++ und vielen weiteren Program
 miersprachen auch PHP. Die in Java geschriebene Entwicklungsumgebung läuft 
 auf jedem Rechner der das Java Runtime Environment (JRE) installiert hat un
 d spricht somit alle PHP Entwickler an – egal auf welcher Plattform sie zu 
 hause sind.\nWir werden uns NetBeans aus dem Blickwinkel eines PHP-Entwickl
 ers nähern und zeigen wie Projekte angelegt und verwaltet werden. Mit welch
 en Funktionen uns NetBeans beim Code schreiben assistiert und die Zusammena
 rbeit im Team erleichtert. Gibt es Funktionen zum Debuggen und Dokumentiere
 n? Gerade die neuen Features der Entwicklungsversion sind einen zweiten Bli
 ck wert!
LAST-MODIFIED:20111005T143807Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=Europe/Berlin:20090206T190000
DTEND;TZID=Europe/Berlin:20090206T220000
RRULE:FREQ=MONTHLY;WKST=MO;BYDAY=1FR
EXDATE;TZID=Europe/Berlin:20170203T190000
EXDATE;TZID=Europe/Berlin:20170106T190000
EXDATE;TZID=Europe/Berlin:20161104T190000
EXDATE;TZID=Europe/Berlin:20160902T190000
EXDATE;TZID=Europe/Berlin:20140704T190000
DTSTAMP:20170303T095558Z
UID:vmuk8os8747d1ljib694dkq6sk@google.com
X-GOOGLE-CALENDAR-CONTENT-TITLE:
X-GOOGLE-CALENDAR-CONTENT-DISPLAY:CHIP
X-GOOGLE-CALENDAR-CONTENT-TYPE:image/gif
X-GOOGLE-CALENDAR-CONTENT-ICON:https://www.google.com/googlecalendar/icons/
 5.png
CREATED:20090126T100510Z
DESCRIPTION:
LAST-MODIFIED:20111005T143807Z
LOCATION:Mediapark 5\, 50670 Köln
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:PHPUG Köln/Bonn
TRANSP:OPAQUE
CATEGORIES:http://schemas.google.com/g/2005#event
END:VEVENT
END:VCALENDAR
