Passwort vergessen?


Der One-Stop-Shop für mehr als 420 Magazine, Bücher und Ausgaben der Digitalbuchreihe shortcuts!

Finden Sie Ihr Thema direkt in unserem großen Archiv!

Von Machine Learning bis Domain Driven Design. Jetzt registrieren und sofort über 100 Seiten Expertenwissen erhalten.

Lesen Sie mit unserem neuen Premiumservice mehr als 420 Magazine, Bücher und shortcuts online. Mit dem entwickler.kiosk-Abonnement greifen Sie ab 9,90 Euro im Monat auf das gesamte Sortiment im entwickler.kiosk zu. Bestehende Abonnenten lesen in unserem entwickler.kiosk ihre abonnierten Magazine kostenfrei.


  • Mit Absenden der Registrierung bestätigen Sie unsere AGB und Datenschutzbestimmungen.

Direkt bestellen


Bestehendes Abonnement zum entwickler.kiosk-Zugang erweitern

Bitte wählen Sie Ihr bestehendes Abonnement:


Ihre Suchergebnisse für:

JavaScript Kompendiu...

Entwickler Magazin 6.17

Windows Developer 1...

Java Magazin 11.17

International PHP Conference 2016

23. bis 27. Oktober 2016
Holiday Inn Munich City Centre Hochstraße 3
81669, München - DE

Sunday - 23. October 2016

10:00 bis 18:00
Neue Techniken und Herausforderungen für Responsive Design

Responsive Design wird heutzutage als Standard bei Webprojekten vorausgesetzt, doch es stehen bereits neue Herausforderungen vor der Tür. Und diese Herausforderungen sind weit größer als nur der Umgang mit alten Webbrowsern. In einer Welt, in der Apps und Seiten aus Web Components zusammengesetzt werden, stoßen herkömmliche Responsive-Techniken an ihre Grenzen. Gleichzeitig wollen immer mehr Grafiken mit immer höherer Geschwindigkeit übertragen werden. Für diese und andere Herausforderungen gibt es einige neue Webstandards (z. B. für Responsive Images), einige schwammige Ideen (z. B. Container Queries als @media-Ergänzung) und oft genug noch gar nichts Konkretes. Dieser Workshop zeigt die Probleme des Responsive Webdesigns von morgen auf und diskutiert mit den Teilnehmern die verschiedenen neuen Webstandards und Ideen, die diese Probleme zu lösen versuchen.

Keine Slides vorhanden
PHP 7 Day

When PHP turned 20 last year, the core developers presented us with a really nice birthday present: version 7, released in December 2015. Less than a year later, PHP 7 is being used in production by a growing number of companies. This day will get you ready for PHP 7, in all aspects. Sebastian Bergmann, creator of PHPUnit, will take you on a tour through the history of the PHP project. Find out where PHP originates from, and how it became one of the most widely used programming languages in the world. Why is there no PHP 6, and which crucial role did Facebook play? You will also take a look under the hood of PHP to better understand why PHP 7 can offer better performance and lower resource usage than PHP 5, and how this will affect the future of PHP. You will learn about the new language features introduced in PHP 7.0 and PHP 7.1. Arne Blankerts, security and infrastructure expert, will go in-depth about the installation and deployment of the PHP software stack. He will make the point why LAMP is no longer en vogue, and introduce you to some state-of-the-art alternatives. You will learn how to better scale PHP 7 and find out how you can smoothly transition from PHP 5 to PHP 7 from a sytem architect’s point of view. Stefan Priebsch, a leading PHP consultant and coach, will show you how to get your codebase ready for PHP 7. How can you leverage new features in legacy projects without having to rewrite everything from scratch? To prepare you for the big migration, common pitfalls will be covered, and you will get to know pragmatic solutions. He will also look at the business impact of PHP 7. The day is rounded up with a Q+A session where no question will go unanswered, and we will open up the room for discussions.

CouchDB and PouchDB — Multi-Master Databases between Cluster and Browser

CouchDB is a NoSQL database, that perfectly fits the requirements of web applications. It provides a HTTP Interface to query the JSON document it stores. The equivalent of „SQL queries“ in the CouchDB ecosystem are map reduce functions, that are written in Javascript. CouchDB has a riot-proof replication protocol that allows multi-master-replication setups. PouchDB adds the final touch to the CouchDB ecosystem. PouchDB runs in your browser, and can actually replicate with CouchDB, and is the perfect foundation for Offline First architectures.

Monday - 24. October 2016

09:00 bis 09:30
Conference Opening & Welcome

Sebastian Meyen, Chief Content Officer at Software & Support Media, and Tom Wiesseckel, editor for PHP Magazin welcome you and give you an introduction into the program. 

Keine Slides vorhanden
09:45 bis 10:45
Silo-based Architectures for high availability Applications

High availability is becoming a de-facto requirement of today’s applications. Customer-facing IT failures mean directly losing customer revenue and trust, as users have grown accustomed to easily switching service providers for more reliable ones. Thus, it is critical to have a healthy, performant, resilient IT structure serving as a backbone of conducting your business. But there are no textbook solutions to achieving five 9s availability. Data redundancy, computing clusters, load balancing, fail-over mechanisms, each of these individually addresses one potential issue, but none treats systems in your organisation holistically for maximising business revenue. Silos are a clever method of grouping servers in such a way that they can be scaled both horizontally and vertically, depending on the actual application needs. Most importantly, it frees you from over-optimizing the architecture upfront, by allowing fine adjustments easy to integrate in your Agile workflow.

Testing: the more you do it, the more you’ll like it

Though we "believe" in testing and "know" it helps deliver better quality code, many of us struggle to incorporate testing into our daily work. Why? And how do we get both technical and non-technical stakeholders not only on the same page with regards to delivering quality software but also actively involved in the process? In this session, Sebastian Bergmann, creator of PHPUnit, and Jeffrey A. "jam" McGuire, Evangelist, Developer Relations at Acquia, discuss how adopting and consistently applying testing to software development delivers better results at a lower overall cost and how the benefits of testing accrue over time.

SPA-Framework-Ratatouille: Angular, React und Co. im gleichen Projekt

Single Page Applications sind aktuell der Toptrend in der webbasierten Anwendungsentwicklung. Doch die notwendige Entscheidung für ein konkretes SPA-Framework bedeutet auch, dass sich alle Entwicklerteams eines Projekts zwingend nur noch in dieser Frameworkdomäne bewegen können. Vorhandenes Wissen zu anderen Frameworks bleibt ungenutzt und spätere Frameworkwechsel oder Versionsupdates sind faktisch unmöglich. Oder doch nicht? Manuel Rauber und Marco Frodl mögen die Gleichberechtigung und präsentieren einen Weg, der den Traum von unterschiedlichen SPA-Frameworks und Frameworkversionen auch in größeren Softwareprojekten Realität werden lässt.

Querschnitt durch die Web-App-Security

In dieser Einführung werden verschiedene Securityaspekte von Webapplikationen praktisch betrachtet und erlebt. Mit den folgenden möglichen Themen werden Sie sensibilisiert: Dass fremder SQL-Code in einem Request etwas ganz anderes auslöst, als der Entwickler dachte. Sind Read-only Attribute wirklich Read-only? Weshalb die Kreditkartennummern trotz https mitlesbar sind? Unverhoffte Update-/Delete-Operationen? Wie mit Passwörter umgehen? Eine kleine Einleitung stimmt uns auf dieses Thema ein. Danach werden exemplarisch Securityprobleme anhand von Livedemos demonstriert, und ich erläutere, was man dagegen machen kann. Das Ziel ist, sich mit diesen Erfahrungen im Rucksack in das Thema Security vertiefen zu können.

11:15 bis 12:15
Keep your Users up to date in Real-Time with WebSockets!

Live document collaboration, playing cooperative and competitive games, updating sports scores, booking seats. Stateless and belated nature of HTTP requests is not a perfect match for these and other similar use cases. WebSockets offer immediate delivery of messages in two-way communication between the client and the server. Instead of periodic polling for new messages, they are pushed to the receiver over TCP/IP connection. Implementing WebSockets is not limited to technologies like Node.js but has also been possible in PHP for quite some time with impressive results. In this talk, I will introduce this technology and tell the audience how to successfully adopt it in their PHP applications while avoiding problems and pitfalls.

Machine Intelligence at Google Scale

What is Neural Network? Why is Deep Learning so important? What are the challenges for introducing those technologies to production services? In this session, we will look at the answers for those questions and how Google has been successfully deploying large scale neural network on services such as Google Photos, Android and Google Search. Also, we will introduce the new Google Cloud products such as Cloud Vision API, Speech API, TensorFlow and Cloud ML that allows developers to take advantage of the power of Google’s machine intelligence with scalable and fully managed services.

Legacy-PHP-Projekte - sanieren oder ablösen?

Jeder von uns kennt sie - die alten PHP-Projekte, die vor vielen Jahren entstanden und heute noch eine wichtige Funktion im Unternehmen erfüllen. Und es gibt ebenso viele Ratschläge, mit diesen Applikationen umzugehen: Tests und Continuous Deployment einführen. Kompatibel zu Symfony2 machen oder gleich dahin portieren - oder doch lieber Laravel? Domain-driven Design und Microservices nutzen, durch Node.js, Go, Rust ersetzen. Der Talk zeigt, welche Optionen man hat, welche Probleme sie jeweils mit sich bringen und wie man sich entscheiden kann.

Auf Nachtwache mit der QS

Webseiten kontinuierlich zu testen, ist eine Aufgabe, die keiner gerne macht. Der Mensch versucht seit Generationen unliebsame und repetitive Aufgaben zu automatisieren. Mit Unit-Tests kann der Quelltext mittlerweile kontinuierlich getestet werden, das Problem ist weitestgehend gelöst. Das Frontend/UI wird eher nachlässig behandelt, obwohl seit Langem Werkzeuge wie Selenium oder das Dickschiff HP UFT existieren. Mit Nightwatch.js existiert ein umfangreiches JavaScript-Framework zur Erstellung und Ausführung von Frontend-Tests im Web. Diese Session zeigt, warum automatisierte Frontend-Tests wichtig sind, wie wir Tests automatisiert haben und wie Nightwatch.js den Schmerz von automatisierten Frontend-Tests lindern konnte.

13:30 bis 14:00
PHP 7 - One Year After

Decembre 2015 marked a milestone in over 20 years of PHP development: with the release of PHP 7 everything changed. Let’s have a look at what happened in the first 12 months after its release. Spoiler alert: You will be surprised!

Keine Slides vorhanden
14:15 bis 15:15
Angular 2: Getting Started

AngularJS ist eines der derzeit am meisten verwendeten Frameworks für Single-Page-Webandwendunge. Zurecht, vereint es doch viele bereits seit Jahren in der Native-Richt-Client Entwicklung etablierte Techniken wie Dependency Injection und Data-Binding. Doch auch AngularJS hat seine Schwächen und eine steile Lernkurve. Um diese Situation zu verbessern, wird derzeit an Angular 2 gearbeitet. Eine Beta Version ist bereits verfügbar. Was bietet sich da mehr an, als gemeinsam die ersten Schritte zu wagen. In diesem Talk wird anhand einer Demo-Anwendung der Aufbau einer Angular-2-Anwendung gezeigt und auf die Unterschiede zu AngularJS 1.x eingegangen.

Universal Rendering with React, Redux, and Flow

Single-page applications (SPAs) are clearly superior to classic web applications in terms of user experience and offline support. However, they might be a little behind when it comes to SEO and speed of first page impressions. Universal web applications can render both on the server and on the client using mostly identical code. They can thus combine the benefits of single-page applications and classic web applications. In this talk I will show how to build a universal web application using React and Redux. As a special extra I will share my experience of what impact the introduction of flow ( had to the sample React/Redux App.

Escaping Dependency Hell

Dependencies are at the core of every complex software system. We will never be able to get rid of them, but identifying and managing them in the right way, leads to clean architecture and more testable code. Michael wrote dePHPend ( as a tool to pick up the work where pdepend left off and bring dependency analysis and visualization to PHP 5 and 7. In this session we’ll discuss questions like “Are we doing MVC right?”, “Why does Class X always break?” or “Where do I start refactoring?” and we’ll have a look at how dePHPend can be used to back up the answers with facts.

Silent Migration of PHP 4 to PHP 7 Stateless Restful API with React Frontend

I show how we managed to make a relaunch of an existing PHP 4 Application without a Big Bang. The new App should fulfill the common -ables and for sure run quite well on mobile devices. To be asynchronous in some areas we also use some Node.js Microservices which are helping us to make a smart backend for the React/Redux Frontend. I will show how we designed the API to be able to generate status information of all kind of actions for different purposes like statistics dashboard or just notification. Testing all this might be interesting, too.

15:45 bis 16:45
HTTP Caching with Varnish

Mit dem Varnish Cache Proxy werden Webseiten richtig schnell. Der Einsatz von Varnish ist simpel, wenn man die Cacheregeln von HTTP verstanden hat. Zum Einstieg schauen wir uns deshalb HTTP und die Varnish-Konfiguration an. Der Hauptgang ist das Integrieren des FOSHttpCacheBundle in ein Symfony-2-Projekt. Wir schauen uns Caching-Regeln, Cache-Tagging, Integrationstests und andere leckere Funktionen an. Zur Nachspeise gibt es eine Einführung in Edge Side Includes (ESI).

Kommunizieren mit JavaScript: Was aktuelle Browser können

Kommunikation mit JavaScript war lange Zeit sehr überschaubar: HTTP-Anfragen waren dank Ajax möglich, aber auch nur an den Ursprungsserver und mit weiteren Einschränkungen. Dies hat sich mittlerweile geändert: JavaScript-Code kann jetzt auch mit fremden Browsertabs und Servern reden, sofern diese mögen; ebenfalls ist eine bidirektionale Kommunikation anstelle des altbackenen Pull-Modells möglich. Auch Zugriff auf Kamera und Mikrofon sind (nach Nutzerbestätigung) möglich. Diese Session zeigt zahlreiche bekannte und weniger bekannte Kommunikationsmöglichkeiten mit JavaScript und HTML5 auf und beleuchtet Vor- und Nachteile aus dem Projektalltag.

Keine Slides vorhanden
Single Sign-on – You’re probably doing it wrong

Granted, having multiple services that share a common login without re-authenticating for every request may seem like a rather complex task. One that seemingly can only be solved by rather complex solutions like OAuth or SAML. Luckily it doesn’t necessarily have to be your only choice: this talk will demonstrate how easy it can be to setup an SSO-Service proxy with nginx, some simple LUA scripting and PHP.

Software Design in PHP 7

This talk covers the lessons learned on my journey of developing large-scale PHP applications for the past ten years. I will cover the core areas of software design (OOD) and programming (OOP) that are important to consider when building your own software applications, with a focus on building them in PHP 7.

Keine Slides vorhanden
17:00 bis 18:00
Grids und Glory

Gestaltungsraster kennt jeder Designer, und Grid-Layouts sind seit 960 gs auch keine Neuigkeit mehr für Frontend-Entwickler. Trotzdem ist es nicht immer leicht nachzuvollziehen, wie Grid-Systeme funktionieren, gerade im Responsive Webdesign. Sven Wolfermann zeigt in seiner Session, wie man von einem Bootstrap Grid zum eigenen individuellen Grid kommt und wie Entwickler in Zukunft die neuen Features von CSS Grids nutzen können.

Content Strategy for Developers

Long gone are the times where we could get away with creating websites which were pixel-perfect replications of a printed brochure. But publishing to multiple channels, multiple devices, multiple audiences not only creates challenges on the editorial side: how should developers approach content and create content types which support the purpose of the website? What's a modern approach to CMS-based projects? This session starts with a 101 of content modelling and then walks you through an actual content-driven implementation of a website based on Neos CMS.

JavaScript Frameworks for Single Page Applications

Single Page Applications (SPAs) let your applications run in the browser using JavaScript. They can thus be an alternative to classic server rendered applications – in particular if you need more interactivity or the programming model of a classic web application just does not cut it. In this talk I will explain what makes SPAs different from classic web applications and give you a quick overview over the most popular SPA frameworks Angular 1 and 2, React, and Web Components. I will also compare them based on features that might be relevant in your project.

Don’t fear the Walking Dead – How we get rid of our Monolith

Legacy software can be like a zombie: it somehow still works, but nobody would consider it alive and well anymore and the thought of having to touch it makes you want to run away. So what can you do to get rid of it? We are currently replacing our monolithic e-commerce platform with a shiny new custom-tailored solution and want to show you what we do and what we have already learned.

Tuesday - 25. October 2016

09:00 bis 10:00
Deployment without the Hassle

The new feature is finally ready! All that’s left now is getting it to production. But who will have to get up at 3 am this time? Hopefully a downtime of one hour will be enough, but if anything goes wrong it might even take us two to get everything working again. If that sounds familiar, we have good news for you: it doesn’t have to be this way! With the right tools at your hand automating any kind of deployment will be as easy as pushing a button. No matter if you want to update your linux distribution, roll out your own application or make configuration changes – your operation system’s package management will empower you to manage even the most complex environment with ease.

Testing your Node Application

Testing your node application is as easy as testing any JavaScript application. We will take a look at various possibilities to test Node applications, such as Jasmine or SuperTest.

Jenseits von REST-Maturitätsleveln: Erkenntnisse aus einem REST-API-Projekt

Für REST-APIs braucht es nicht (nur) sauber designte URLs für die Ressourcen. Ich spreche über den Software-Engineering-Aspekt beim Bau eines Daten-API. Ich zeige konkrete Beispiele aus einem Projekt, bei dem wir aus dutzenden von Quellen Daten aggregieren und für Echtzeitanfragen aufbereiten. Der Technologiestack ist Symfony, Elasticsearch und Varnish. Im Talk zeige ich Rezepte für die Datenaggregation, die Serialisierung mit Symfony, und für den Gebrauch von Elasticsearch und Varnish.


PostCSS - schon wieder ein neues CSS-Framework? Nein! Gestartet 2013 als Postprozessor, also gedacht als Prozess nach dem Erstellen von CSS-Code, hat sich PostCSS mittlerweile zum nützlichen Universaltool für die Manipulierung von CSS entwickelt. PostCSS ist für CSS, was Babel für JavaScript ist - es hilft Webworkern bei der täglichen Arbeit im Einsatz von modernen Features. Eines der bekanntesten PostCSS-Plug-ins ist Autoprefixer, das anhand von vorgegebener Browserunterstützung die noch notwendigen Vendor-Präfixe zu CSS-Eigenschaften hinzufügt. Aktuell gibt es bereits mehr als hundert Plug-ins für unterschiedlichste Aufgaben, wie z.B. CSS-Lint, Komprimierung, Asset-Handling bis hin zum Umwandeln zukünftiger CSS-Eigenschaften mit cssnext. Sven zeigt im Vortrag eine Reihe von nützlichen PostCSS-Plug-ins, wie man PostCSS in die Entwicklungsumgebung einbindet und wie man sein eigenes Plug-in mithilfe von Node.js schreibt.

10:45 bis 11:45
Designing nutzerzentrierter UI-Animationen

UI-Animationen sind ein Hotspot bei der Gestaltung von interaktiven und modernen Webinterfaces. Für eine positive User Experience können kontextbezogene UI-Animationen einen echten Mehrwert bieten. Das kann einzelne Elemente betreffen oder auch ganze Applikationen umfassen. Der Talk beantwortet, welche Konzept- und Designentscheidungen für ein interaktives Interface zu treffen sind. Wie können einfache und vor allem komplexe Animationen im Frontend umgesetzt werden? Der Prozess für die Gestaltung eines kontextsensitiven und interaktiven Interface unterscheidet sich von der herkömmlichen und klassischen Arbeitsweise. Wer komplexe Animationen designt, begibt sich in den Bereich des Motion Designs. Neben einer inspirierenden UI-Animationsreise wird der Prozess schrittweise abgebildet.


Most projects these days expose or consume some kind of JSON based API, usually working in a RESTful manner. So while the combination of JSON as a data transport format and REST as a means of exposing actions on data seems fairly widely adopted, all these APIs are slightly different. Trivial decisions about implementation details with respect to the exact JSON structure, naming of REST endpoints etc. are repeated over and over with every team coming to different conclusions, resulting in slightly different APIs. Not only does that result in centuries of man-years being wasted in bikeshedding discussions but also is a massive impediment for code reuse across projects. This talk introduces the json:api spec, explains what it defines and why it does it and points out how everyone profits from adopting it.

Always on, oder?

Always on! So wird es immer wieder suggeriert. Wer schon einmal mit der Bahn durch Deutschland gefahren ist, wird wissen, dass das nicht immer gegeben ist. Funklöcher, Netzausfälle und andere Widrigkeiten sorgen dafür, dass man eben nicht „Always on“ ist. Eine Webseite bzw. Web-App kann dem Benutzer nützlichen Mehrwert liefern, auch wenn er nicht online ist. War der App-Cache noch ein schwer zu beherrschendes Konstrukt, stehen mit Service Workers leistungsfähige APIs zur Verfügung, die Offlineerlebnisse deutlich verbessern. Service Workers bieten auch dann einen Mehrwert, wenn man online ist. Diese Session lädt zu einer Reise in die Anfänge der offlinefähigen Web-Apps ein und zeigt, wo wir heute stehen, um auch bei nicht vorhandenem Netz ein bestmögliches Benutzererlebnis zu gewährleisten.

API-Security – Wird die Sicherheit vernachlässigt oder ist API-Sicherheit einfach zu kompliziert?

Immer mehr Unternehmen öffnen sich aus verschiedensten Gründen und bieten private oder öffentliche APIs an. Doch wie sieht es mit der Sicherheit aus? OAuth 1.0, Oauth 2.0, OpenID Connect, HMAC Token, JWE, JWT , Quota, Throttling ... was ist das richtige? Woher kommen die Probleme? Zu viele verschiedene teilweise noch nicht ratifizierte Standards, fehlendes Bewusstsein, Kosten- und Innovationsdruck? Was sind die Probleme und Herausforderungen? Welche Lösungen gibt es. Wir werfen einen Blick auf den Markt und schauen, wie es um das Thema API-Sicherheit steht.

A practical Introduction to Kubernetes

Kubernetes is an open source system for automating deployment, operations, and scaling of containerized applications. It’s one of the promising options you have for deploying your container-based applications to the Internet. In this session we’ll take a look at the concepts of Kubernetes and then go trough all steps necessary to launch and maintain a real-world PHP application in your own Kubernetes cluster.

12:00 bis 13:00
Dockerizing your CI Pipeline

This talk is intermediate level and should have a bit of something for everyone whether you’re building a standard pipeline (non-docker) or already have a pipeline and looking to see how docker will make it even stronger. I will demonstrate how building pipelines with Docker differs from traditional pipelines, what steps are involved in migrating from traditional pipelines to docker ones. I will share my experiences, tips and tricks, lessons learned on my journey into docker land.

Keine Slides vorhanden
Content Security Policy: Tod dem Cross-site Scripting!

Cross-site Scripting (XSS) ist seit Bestehen der OWASP Top Ten immer auf einem der drei vorderen Plätze vertreten gewesen. Nach über einem Jahrzehnt voller furchtbarer Angriffe und Probleme gibt es endlich Hoffnung. Mit Content Security Policy (CSP) gibt es einen aktuellen Standard, der von den meisten Browsern umgesetzt wird und XSS Einhalt gebieten kann – wenn man weiß, wie. Doch nicht jede Website kann von CSP profitieren, teilweise sind erhebliche Umbauarbeiten notwendig. In dieser Session werfen wir einen kurzen Blick auf den aktuellen Stand von XSS und analysieren dann alle wichtigen Aspekte von CSP, inklusive Features, Beschränkungen, Einsatzmöglichkeiten und Browserunterstützung.

Besiege den inneren Schweinehund: Warum SEO deine eigene Aufgabe ist

SEO ist Aufgabe der Experten, dafür gibt es Agenturen, die einzig und allein darauf spezialisiert sind. So oder so ähnlich ist das allgemeine Verständnis von Suchmaschinenoptimierung. Kein Wunder, denn immerhin haben wir Experten knapp zwei Jahrzehnte lang SEO als Wunderwaffe im Performancemarketing aufgebaut und damit geworben, dass wir die Einzigen sind, die die Geheimnisse der Suchalgorithmen entschlüsseln können. Mittlerweile allerdings sind diese Algorithmen so komplex, dass selbst ihre Entwickler sie nicht mehr verstehen. Was also tun? Ganz einfach: alle müssen alles richtig machen, um erfolgreich sein zu können! Wie das geht und welche Hausaufgaben wir alle – egal ob Entwickler, Marketer, Designer – zu machen haben, zeigt diese Session.

Einen Sack Flöhe hüten – Choose your own Technology bei der Entwicklung modularer Webanwendungen

Moderne Webframeworks wie AngularJS, Vue.js, Meteor oder React ermöglichen hoch interaktive und benutzerfreundliche Web-Frontends. Gleichzeitig macht die Entwicklung mit solchen Frameworks Spaß und geht anfangs leicht von der Hand. Aber wie lassen sich diese Möglichkeiten auf große Unternehmensanwendungen oder Enterprise-Portale mit vielen integrierten Anwendungen übertragen? Auf eine Welt, in der Bausteine vieler interner und externer Entwicklergruppen flexibel zu einer funktionierenden Gesamtlösung kombiniert werden müssen? Der Vortrag stellt konkrete Lösungen mit dem Open-Source-Projekt LaxarJS ( vor, einem Framework, welches sich auf die Integration modularer Webanwendungen konzentriert – unabhängig von den eingesetzten Webframeworks.

State of APIs – früher, heute und in Zukunft

APIs spielen eine zunehmend größere Rolle in Digitalisierungsprojekten. Immer neue API-basierende Services entstehen. Wurden APIs früher ausschließlich als technische Lösung betrachtet, sind diese inzwischen zu wichtigen Bestandteilen einer Digitalisierungsstrategie geworden. Aber wo stehen wir eigentlich? Reicht es heute, nur APIs zu erzeugen, oder müssen APIs ganzheitlich und Ende zu Ende betrachtet werden? Was brauche ich für einen Hackathon und was bringt mir das?

Containing Chaos with Kubernetes

Okay, you’ve made the move to containers and can now write Dockerfiles for everything. How do you manage all of those containers? Have you found that you traded managing individual machines for managing individual containers? Kubernetes, an open source container orchestration engine, can be your answer. We’ll explore Kubernetes and see how you can use it to run massive collections of containers that fix their own problems and allow you to move your setup wherever you need to be.

14:30 bis 15:00
API First Transformation at Etsy

At Etsy we have been doing some pioneering work with our web APIs. We switched to API-first design, have experimented with concurrency handling in our composition layer, introduced strong typing into our API design, experimented with code generation, and built distributed tracing tools for the API as part of this project. We faced a common challenge: much of our logic was implemented twice. All of the code that was built for the website then had to be rebuilt in our API to be used by our iOS and Android apps. We wanted an approach where we built everything on reusable API components that could be shared between the web and API. Unfortunately, our existing API framework couldn't support this shared approach. The solution we settled on was to abandon the existing framework and rebuild it from scratch. Follow along this case study of building an API First architecture. Hear what problems prompted this drastic change. Learn which new tools we had to build to be able to work with the new system and what mistakes we made along the way. Finally, how did it end? How did the team adopt the new system and have we succeeded in our goals of API First? From our learnings, can we make the adoption of new systems and ideas easier for everyone?

15:15 bis 16:15
Cross-Device Experience Design mit HTML-Prototypen

Anwender nutzen verschiedene Devices zu unterschiedliche Tageszeiten. Typische Sequentially-Screening-Aktivitäten sind zum Beispiel, wenn der Anwender auf einem Gerät beginnt und seine Tätigkeit auf einem anderen fortführt. Dabei nimmt der Content eine zentrale Stellung ein. Eine nachhaltige Cross-Device Experience im Kontext von Responsive Webdesign adressiert Coherence, Fluidity und Adaptability. Der Content soll sich dabei dem jeweiligen Endgerät anpassen und den Nutzungskontext adressieren. Wie können Konzept, Design und Entwicklung die Verhaltensmuster der Nutzer effektiv testen und dem Device-Agnostic Approach gerecht werden? Der Talk zeigt, welche Vorteile HTML-Prototypen habenund wie diese mit anderen Prototyping-Techniken effektiv kombiniert werden können.

Keine Slides vorhanden
Automating all the Things

As your company is growing, it is important to have an environment that scales. So spinning up dev environments, updating test systems, ensuring your code quality, running all your tests and releasing your software continuously won’t distract you from developing great applications. In this talk I will show you how to automate repetitive tasks and how to combine great automation tools like Jenkins, Ant and Ansible and make use of some handy PHP libraries, so you can focus on the things that matter: Writing great software.

Architektur von Angular-2-Applikationen

Angular steht für umfangreiche Webapplikationen, aber auch für Herausforderungen beim Einstieg und der Umsetzung. Diese Session soll Ihnen einen Einblick in die wichtigsten Features des Frameworks geben und einige der häufigsten Problemstellungen in der Entwicklung und deren Lösung geben. Sie erfahren, wie Sie Ihre Applikation aufbauen, damit Sie auch für zukünftige Anforderungen gerüstet sind.

Keine Slides vorhanden
Is your Webserver secure?

TLS, HSTS, CSP, XSS, HPKP and nginx or just WTF? This talk will help you to take your webserver setup to the next level: learn what all those acronyms actually mean, why you should care and how to tweak your nginx configuration to make use of all those important security features to protect your environment as well as your users.

REST, the new SQL?

A few years ago, we built rather monolithic, database-centric systems with thin clients, and did not even feel uncomfortable with them. Then, thanks to the rise of JavaScript, clients became thicker and thicker. And when microservices came along the way, our software became more and more distributed. Somewhere along that road, pretty much everything on the server side turned into a REST API. Has REST become the new SQL? A controversial discussion from an archiectural point of view.

Deployment Chains zu Ende gedacht

DevOps betrachtet ofmtals nur die Kette der Software/Entwicklung bis zur Applikation auf einer vorhandenen Server-Infrastruktur. Nach dem diesem Punkt oder Event ist für Entwickler “der Apparat dahinter” eine Blackbox. Ebenso hat ein Operations-Team selten Einblicke in den Code und die angedachte Funktionsweise einer Applikation. Eine Soll-Bruchstelle ist damit vorprogrammiert; doch wie überwindet man diese? Unsere These: Tools sind nutzlos, wenn kein gemeinsames Verständnis von Dev zu Ops und andersherum herrscht. In dem Talk werden wir die These konkrektisieren und unser Verständnis für ein produktives als auch funktionierendes Deployment aufzeigen.

17:00 bis 18:00
Running PHP in Containers on Google Cloud Platform

App Engine is a container-based, auto-scaling hosting environment (PaaS really), running PHP 5 in Google’s Cloud. It let’s you get off the ground quickly, for FREE - then grow to a much, much larger scale with very little effort. All maintained for you by Google. In 2015, PHP got an SLA, free and commercial support. I'll talk about Scaling and Performance options for your application, data storage, Databases, Background processing, Task queues, Crons, Memcache, Full text search, communication in and out of App Engine. A little on modules and how to use the provided SDK to build and develop locally. And we’ll look forward to what’s coming - PHP7 and Docker support! I’ll try and point out some of the pitfalls too. You should leave the talk knowing if App Engine is likely to help you save time and worth adding to your bulging toolkit!

Website-Relaunch: Der Tanz auf dem Drahtseil

Verzögerungen, Rankingeinbrüche, Traffic- und Umsatzrückgänge, endlose Nachbesserungen, … – Wer einmal einen Relaunch erlebt hat, kann fast endlos von seinen Horrorgeschichten und Albträumen berichten. Trotz langer Vorbereitung, sorgfältiger Planung und detailgenauer Umsetzung ist mit dem Go-Live der neuen Website plötzlich alles anders als erwartet. Dabei sind Relaunches doch eigentlich alltäglich. Wie kann dabei also so viel schief gehen? Jedes Unternehmen steht in mehr oder weniger regelmäßigen Abständen vor der Herausforderung eines Relaunches. Diese Session zeigt, wie ein Relaunch aus SEO-Sicht richtig geplant und umgesetzt werden kann und wie sich die Auswirkungen kontrollieren lassen!

Performante Applikationen mit JavaScript

Critical Rendering Path, Memory Leaks und Profiling sind zwar Themen, die Sie interessieren, aber Sie haben noch nie so wirklich die Zeit gefunden, sich eingehender damit zu beschäftigen? Dann sind Sie hier genau richtig. Mit dieser Session erhalten Sie einen Einstieg in die Analyse und Optimierung der Performance Ihrer JavaScript-Applikation. Neben einigen grundlegenden Konzepten wird auch der Einsatz von Werkzeugen an konkreten Beispielen gezeigt. Sind die Probleme gefunden, geht es auch gleich an deren Beseitigung.

Serving 30,000,000 Requests an Hour in the Cloud

You’ve written an application and now the worst thing that can happen to you has come about – People are using it! You now have load spikes to deal with. You can scale up to deal with the excess traffic, but what do you do when your load is variable? How do you do that, and stay on budget? Google App Engine is a service that allows for scaling not just up, but down. It’s built to handle wildly alternating load, to allow you to not have to deal with infrastructure, and it has a fantastic PHP implementation for both the original version of App engine and the new flexible runtime option. This session will help you determine if App engine can be a tool that can help you.

19:00 bis 19:30
Late Talk: Web Security - Lessons learned?!

There’s no week without a successful attack against a well-known website or application. The problem isn’t only, that there are old vulnerabilities, but there are also new and enhanced methods to harm a web application. This talk highlights numerous current events as well as some classics from the past. Along the way we are talking about the most relevant attacks - and countermeasures, of course.

Keine Slides vorhanden

Wednesday - 26. October 2016

09:00 bis 10:00
Mastering git - Insights & Tips & Tricks

Git is a powerful source code management system and became the de facto standard for open source projects over the last couple of years. A lot of us are using it every day but are only scratching the surface of its potential. During this talk I will show you some git best practices, demystify some of its power features and share some tips and tricks from beginner to expert level.

Wettbewerbsvorteile durch den richtigen Umgang mit technischen Schulden

Täglich berät der Kreditvergleich tausende Kunden. Dabei werden Schulden und deren Zinsen, mögliche Umschuldungen und die Finanzierbarkeit neuer Kredite analysiert. Da liegt es nahe, auch die technischen Schulden der eigenen IT verstehen und optimieren zu wollen.Diese Session richtet sich gleichermaßen an Entwickler und Nichtentwickler. Nach einem generellen Überblick geht es zur Sache: Wo viele Entwickler, Architekten, Product Owner etc. aufgrund ihres natürlichen Dranges zur Vermeidung von Schulden versuchen, auch ihre technischen Schulden so gering wie möglich zu halten, eröffnet ein tiefergehendes Verständnis neue Möglichkeiten: Warum nicht Transparenz über die Schulden von Systemen und vermeintlichen Entwicklerrockstars schaffen? Oder die Cost of Delay den technischen Schulden gegenüberstellen und vom Leverage-Effekt profitieren? Oder gar die Systemlandschaft als ein Investmentportfolio gestalten, in dem neue Systeme finanziert und alte abgeschrieben werden?

Keine Slides vorhanden
Vom Entwicklerbaukasten zur Enterprise-Plattform

50 bis 80 Prozent aller Webseiten setzen PHP ein – dazu gehören einige der Größten der Welt. Warum ist das der Fall, und wie kann man PHP in großen Set-ups einsetzen? Wir werfen gemeinsam einen Blick auf die architekturalen Eigenschaften von PHP, und stellen übliche Architekturmuster der PHP-Welt vor, um zu zeigen, wie sich damit auch die größten Webapplikationen betreiben und skalieren lassen. Nach diesem Vortrag werden Sie wissen, wann und wie sich PHP im Enterprise-Umfeld einsetzen lässt.

Terraform: Config Management for Cloud Services

Hashicorp’s Terraform provides a declarative notation (like Puppet) to describe various Cloud resources. It is an open-source tool, provider-independent, and thus able to combine resources from multiple cloud platforms and to be extended through plugins. The talk demonstrates how to describe web application infrastructure with Terraform, showing how easily all related components can be started, updated, and stopped. It also shows how to organize larger projects using modules and gives an introduction to writing plugins for one’s own services.

Das agile Unternehmen – Digitale Transformation im Praxiseinsatz

Das Buzzword „digitale Transformation“ ist in aller Munde und wird aller Voraussicht nach die größte industrielle Revolution seit über hundert Jahren auslösen. Doch was bedeutet das ganz konkret? Wie müssen sich Unternehmen verändern, um in der Digitalisierung Schritt halten zu können? Wir schauen uns nicht nur die zehn Dimensionen des „Digital Maturity Level Models“ an, das angibt, wie digitalisiert ein Unternehmen ist, sondern wir gehen auch konkret und stets praxisbezogen auf Methoden und Prozesse der digitalen Transformation ein, wie Scrum, Kanban, Design Thinking, Lean Startup, LEGO SERIOUS PLAY, OKR und viele weitere. Am Ende der Transformation steht eine neue, gewandelte Unternehmensform – das agile Unternehmen.

Keine Slides vorhanden
10:45 bis 11:45
Take the "RISC!" - HTML5 im Bereich operativ genutzter Geschäftsanwendungen

Weg mit nativen Clients auf dem Frontend! Klingt so einfach, wird aber zunehmend schwieriger, wenn man sich in Bereiche traut, in denen das System operativ genutzt wird: ein Sachbearbeiter hat hinsichtlich seiner Tools schließlich die gleichen Ansprüche an Bedienkomfort und -geschwindigkeit wie wir Entwickler sie von Eclipse&Co. selbst abfordern... RISC-HTML ist eine neue Methode, die maßgeschneidert für diese Szenarien ist - und bei uns umfangreiche Java-Swing und JavaFX Implementierungen innerhalb eines halben Jahres abgelöst hat. RISC-HTML ist anders als "normale" Web Frameworks - und stellt bei der Nutzung des Browsers einiges auf den Kopf. Das Ergebnis aber heißt: Dialoge mit einer langfristigen Browser-Kompatibilität, mit einer enormen Gestaltungsfreiheit und - darüber waren wir am meisten überrascht... - mit einer ausgzeichneten Performance. Im Vortrag wird die Methode vorgestellt und eingeordnet, unterstützt durch zahlreiche Live-Demos: vom kleinen Szenario bis hin zur komplexen Anwendung.

How to automate Architecture Constraint Checks

Static code analysis has proven to guard coding style, code complexity and other means of a source code basis. But can we apply similar approaches to guard architecture level decisions and constraints in our project? This talk presents our approach to this challenge in a pragmatical way and discusses the pitfalls and drawbacks we experienced.

Von Null auf Web Scale: Automatisierung von digitalem Wachstum mit SaltStack

SaltStack eignet sich aufgrund seiner Flexibilität hervorragend für schnell wachsende Unternehmen. In diesem Vortrag lernen Sie, warum ein StartUp vor drei Jahren SaltStack zur Automatisierung ausgewählt hat. Außerdem wird vorgestellt welchen Gewinn und welche Herausforderungen die Anpassung von Prozessen und Technologien über die Zeit gebracht haben. Auch werden Schlüsselelemente einer vollständig automatisierten Realisierung der Cloud Orchestrierung vorgestellt sowie tiefe Einblicke in die Reise eines StartUp gegeben.

Polymer – das Web Components Framework

Verschiedene Web-App-Frameworks haben unterschiedliche Ansätze zum Aufbau von Webanwendungen. Alle ähneln sich jedoch im Versuch, Applikationen durch Komponenten modularer zu gestalten. Polymer setzt hierbei auf eine Familie von Webstandards, die zusammenfassend als Web Components bezeichnet wird. In dieser Session werden Web Components vorgestellt und anhand eines Beispiels gezeigt, wie man mittels Polymer eine Anwendung aus einzelnen Komponenten aufbauen kann.

12:00 bis 12:30
Microservices – The Building Blocks for a Digital Future

SAP Hybris understood the potential of microservices. It is more than just agile innovators accelerating growth through microservices. We are entering an era where software has become the key differentiator. Industries and organizations are disrupted by digital transformation. Developers are starting to answer questions that were never asked before and microservice architectures are becoming a better alternative for enterprise applications. In this session we’ll explore the structural and business impact of a microservice architecture.

14:00 bis 15:00
Angular 2 Live-Coding

AngularJS ist eines der derzeit am meisten verwendeten Frameworks für Single-Page-Webandwendungen. Zurecht, vereint es doch viele bereits seit Jahren in der Native-Richt-Client Entwicklung etablierte Techniken wie Dependency Injection und Data-Binding. Doch auch AngularJS hat seine Schwächen und eine steile Lernkurve. Um diese Situation zu verbessern, wird derzeit an Angular 2 gearbeitet. Eine Beta Version ist bereits verfügbar. Was bietet sich da mehr an, als gemeinsam anhand von Code anzuschauen was da auf uns zukommt!? In diesem Talk wird anhand eines Live-Codings der Aufbau einer Angular-2-Anwendung gezeigt, die neuen Konzepte vorgestellt und auf die Unterschiede zu AngularJS 1.x eingegangen.

Datenanalyse mit Elasticsearch und Kibana

In Zeiten von Big Data und Predictive Analytics wird immer deutlicher, wie wertvoll es ist, erhobene Daten nicht einfach nur aufzubewahren, sondern mittels Analysen daraus einen nutzbaren Mehrwert zu generieren. Kibana ist ein Open-Source-Analyse- und Visualisierungs-Frontend für Elasticsearch. Als „K“ im weit verbreiteten ELK Stack wird es vor allem zur Analyse von Log-Daten eingesetzt. Doch Kibana kann viel mehr. In diesem Vortrag lernen Sie, wie vorhandene Datensätze, wie Geschäftstransaktionen oder Benutzerinteraktionen, aus relationalen Datenbanken verarbeitet und als Dokumente nach Elasticsearch transferiert werden können. Mit Kibana erstellen wir auf Grundlage dieser Daten mit nur wenigen Klicks attraktive und interaktive Analysen sowie übersichtliche Dashboards.

Agil und Konzern – Das kannste schon so machen, aber …?

Wenn man ehrlich ist, vertragen sich Agilität und Konzern nicht immer so ganz: feste Strukturen, Prozesse, Verantwortlichkeiten, Wasserfälle, Betriebsräte – Hürden gibt es zur Genüge. Wie also kann man seiner Agilität freien Lauf lassen? Erfahrungsberichte und lustige Anekdoten aus „Konzerneinsätzen“, abgerundet mit Ideen aus erster Hand, wie man vielleicht doch einen agilen Schritt nach dem anderen machen kann.

Continuous Performance Profiling with Blackfire

Server-side performance is critical to any good web UX. When a page or an API call is slow, developers resort to performance analysis tools like to diagnose the bottleneck. Blackfire started two years ago as a typical PHP profiler, then added continuous integration support to help fill the gap: performance is a feature of your apps, and like all features, it deserves a C.I. around it to spot any regressions before they go to prod. In this talk, we’ll practice profiling. We’ll also see the unique features of Blackfire that enable continuous performance profiling: what are performance tests, how to write them and their related metrics, playing scenarios, etc.

Event Sourcing: the Good, the Bad and the Complicated

Event Sourcing can look like an attractive solution for any of your applications, but does it actually pay off? What if it is all just buzzwords and no gain? We’ll look at how we implemented event sourcing in our own app, what made us fast, what made us super slow and what made us cry? This talk will give you a good idea of what kind of challenges you will encounter when approaching event sourcing for the first time.

Keine Slides vorhanden
15:30 bis 16:30
Die ganze Welt mit Ansible automatisieren

Die Automatisierung wiederkehrender Prozesse ist ein wichtiger Bestandteil jedes Entwicklungsprojekts. Sie hilft dabei, Fehler in wiederkehrenden Tasks zu vermeiden und bildet die essenzielle Basis für Skalierung. Dieser Talk bietet einen praktischen Einstieg in Ansible, ein pragmatisches Tool zur Automatisierung und Orchstrierung. Anhand von Codebeispielen aus der echten Welt wird gezeigt, wie einfach Ansible für Server-Set-ups und Applikations-Deployment verwendet werden kann.

Mit Maintenance umgehen können – fixt du noch Bugs oder lieferst du schon neue Features?

Nach dem erfolgreichen Launch einer Software gibt es immer das gleiche Dilemma: Neue Features konkurrieren mit Bugs und Anpassungen an der bestehenden Software, die aus dem operativen Betrieb kommen. Und die Gretchenfrage nach dem dringenden und dem wichtigsten stellt sich kontinuierlich, und es braucht einen Mechanismus, um diese zu balancieren. Ich möchte die Auswirkungen von Maintenance parallel zur Produktentwicklung aufzeigen, die Folgeprobleme benennen und Strategien vorstellen, um dieses Dilemma zu umgehen.

Der widerspenstigen Zähmung: WebGL von Kopf bis Fuß

WebGL bietet Webentwicklern die Möglichkeit, interaktive dreidimensionale Inhalte ohne die Verwendung zusätzlicher Plug-ins im Web anzubieten. Egal ob für einen Produktkonfigurator, eine Visualisierung oder eine vollwertige 2-D- oder 3-D-Grafikanwendung: WebGL bietet den nötigen Zugriff auf die GPU-Pipeline, mit der dies möglich wird. Wer bislang vor dem umfangreichen API und dem Jargon zurückgeschreckt ist, bekommt in dieser Session eine Einführung und das nötige Handwerkszeug, um WebGL-Anwendungen zu entwickeln, die Nutzer vor dem Bildschirm fesseln und in virtuelle Welten entführen können.

Refactoring towards Design Patterns

Extensive use of Design Patterns is not something you should overengineer into your applications from the start. Practicing selective refactorings towards design patterns is a much better approach instead. In this session we will take a piece of real-world code and refactor it using three of the most important design patterns. The speaker will discuss the steps and the implications with the audience along the road.

Thursday - 27. October 2016

09:00 bis 17:00
JavaScript Testing in der Praxis

FizzBuzz und ähnliche Coding Katas kennt mittlerweile jeder. Wie geht man aber in einem Test mit Anfragen zum Server um? Wie strukturiert man seine Tests so, dass sie über längere Zeit wartbar bleiben? Was macht man, wenn man HTML-Strukturen für einen Test benötigt? Auf diese und viele weitere Fragen erhalten Sie in diesem Workshop eine Antwort. Sie lernen an konkreten praktischen Beispielen, wie Sie sowohl in neuen als auch in bestehenden Applikationen sinnvolle Tests schreiben. Das Ziel dieses Workshops ist es, dass Sie die verfügbaren Werkzeuge kennenlernen, sodass das Testen von Applikationen keine Strafarbeit mehr sein muss.

Keine Slides vorhanden
Agiles Adventure-Spiel

In diesem Workshop erfährst du alles, was es zur Entwicklung eines Softwareprodukts braucht. Damit die Methoden wie Story Mapping, gute Priorisierung, Entwickeln einer Produktvision und Ähnliches gut erlebbar werden, entwickelst du in einer Kleingruppe ein eigenes Brettspiel. Wir unterteilen den Tag in mehrere Iterationen (Sprints), die du teilweise unter Zeitdruck bestehen musst. Denn am Ende des Tages wollen wir alle ein funktionierendes, erlebbares Brettspiel sehen. Du wirst in deinem Team gemeinsam Retrospektiven abhalten, um dich schrittweise innerhalb des Tages zu verbessern. Entwickle im Team gemeinsam Ideen für Features im Spiel, teste die Ideen auf ihre Umsetz- und Spielbarkeit. Dein Nutzen: Die Gewissheit, mit anderen ein Spielunikat entwickelt, agile Produktentwicklung inklusive Impediments erlebt und eine ganze Menge Wissen nebenbei mitgenommen zu haben. Sodass du mit weiteren Ideen nach Hause gehst, wie du deine Softwareprojekte zukünftig besser im Team umsetzen kannst.

Keine Slides vorhanden
Symfony2 – von 0 auf 100 in wenigen Stunden

Das Symfony-Framework ist erwachsen geworden und die Basis vieler Webseiten und -anwendungen. Das Framework bedient sich bewährter Methoden und Architekturen, auch von anderen Plattformen beziehungsweise Sprachen. Der Workshop behandelt im ersten Teil die wichtigsten Schlüsselkonzepte von Symfony: Installation, Architektur, Bundles, MVC, Twig-Templates. Im zweiten Teil werden fortgeschrittene Themen angeschnitten. Dazu gehören unter anderem Datenbankzugriffe mit Doctrine 2, Formulare, Dependency Injection, HTTP Caching. Die Einführung erfolgt anhand eines konkreten Beispiels und zeigt, wie in kurzer Zeit eine Webanwendung mit Symfony gebaut werden kann.

- Gib Deinen Standort ein -
- or -