Content-Management-Systeme dürfen keine Datensilos mehr sein. Lese- und Schreibzugriff für andere Applikationen, idealerweise über eine saubere REST-Schnittstelle, sollten eine Grundanforderung bei der Auswahl des CMS sein. Das Symfony-Content-Management-Framework bietet Abstraktionen auf mehreren Ebenen: Das Content Repository nach dem JCR-Standard bietet sehr viel mehr Funktionalität als eine Datenbank. Mit dem CmfResourceRestBundle können Inhalte des Content Repository generell über ein REST-API bearbeitet werden. Die neu aufgebauten REST-Endpunkte des CmfContentBundle können darüber hinaus auf Applikationsebene Inhalte und URLs anlegen.
O documento apresenta uma análise de riscos para as etapas de uma obra de construção de uma passagem inferior, identificando riscos como quedas, atropelamentos, descargas elétricas e propondo medidas de controle como equipamentos de proteção, treinamentos, sinalização e organização do canteiro.
1) O documento descreve os requisitos e especificações técnicas para andaimes suspensos pesados, incluindo materiais permitidos, distâncias máximas, equipamentos de segurança necessários e inspeções regulares.
2) Deve ser elaborado um projeto detalhado para a montagem dos andaimes e obtida aprovação do SESMT, incluindo ART dos equipamentos e treinamento dos trabalhadores.
3) É necessária manutenção periódica dos cabos e substituição caso haja sinais de desgaste como fios rompidos
This document provides tips for exam preparation and writing answer papers. It recommends conditioning camps to adapt to exam conditions and maintain physical and mental readiness. Proper sleep, exercise and time management are emphasized. Mental preparation includes avoiding confusion and maintaining focus. Mock exams should be taken under exam conditions. Revision techniques include visualization, use of cards, explaining concepts to others, charts and micro notes. It also gives advice for the exam day and writing answer papers, such as reading questions carefully and leaving space between answers. Answer papers should be checked for completeness before finishing.
O documento apresenta uma análise de riscos para as etapas de uma obra de construção de uma passagem inferior, identificando riscos como quedas, atropelamentos, descargas elétricas e propondo medidas de controle como equipamentos de proteção, treinamentos, sinalização e organização do canteiro.
1) O documento descreve os requisitos e especificações técnicas para andaimes suspensos pesados, incluindo materiais permitidos, distâncias máximas, equipamentos de segurança necessários e inspeções regulares.
2) Deve ser elaborado um projeto detalhado para a montagem dos andaimes e obtida aprovação do SESMT, incluindo ART dos equipamentos e treinamento dos trabalhadores.
3) É necessária manutenção periódica dos cabos e substituição caso haja sinais de desgaste como fios rompidos
This document provides tips for exam preparation and writing answer papers. It recommends conditioning camps to adapt to exam conditions and maintain physical and mental readiness. Proper sleep, exercise and time management are emphasized. Mental preparation includes avoiding confusion and maintaining focus. Mock exams should be taken under exam conditions. Revision techniques include visualization, use of cards, explaining concepts to others, charts and micro notes. It also gives advice for the exam day and writing answer papers, such as reading questions carefully and leaving space between answers. Answer papers should be checked for completeness before finishing.
This document discusses methods for improving crop yields through agriculture. It outlines the kharif and rabi crop seasons in India and the crops typically grown in each. There are three stages of farming practices to improve crop yields: choosing high quality seeds, nurturing the crops as they grow, and protecting mature and harvested crops. Crop yields can also be increased through crop variety improvement using hybridization, genetic manipulation, and nutrient management. Proper irrigation, cropping patterns, and pest, disease, and weed control further help maximize agricultural production.
Este documento descreve os riscos e medidas de controle associados à construção de bueiros, incluindo escavação, carga e descarga de tubos, encaixe de tubos e reaterro. Os riscos principais incluem atropelamento, batida, queda e exposição a materiais perigosos. Medidas como treinamento, EPIs, sinalização e planejamento são propostas para controlar os riscos.
O documento discute a modelagem computacional aplicada para avaliar a eficiência na circulação de pessoas em edifícios complexos. A modelagem computacional pode simular o movimento de usuários em evacuações e avaliar métricas como tempo total de abandono. Os resultados podem auxiliar no aprimoramento dos planos de abandono e na identificação de melhorias na infraestrutura ou operação para tornar a circulação de pessoas mais eficiente.
Este documento fornece uma análise de riscos e planos de ação para controlar os riscos associados à tarefa de passagem de gado. As etapas da atividade incluem limpeza do terreno, marcação topográfica, escavações mecânicas, armação de ferro e beneficiamento de formas de madeira. Riscos como atropelamento, quedas, cortes e exposição a intempéries são avaliados e medidas de controle são propostas.
O documento apresenta uma análise de riscos das principais tarefas em um canteiro de obra, incluindo limpeza do terreno, marcação topográfica, escavação manual, armação de ferro, beneficiamento de formas de madeira e concretagem. Para cada tarefa, são listados os principais riscos e definidas ações de controle para garantir a segurança dos trabalhadores.
The document is a copyright notice repeated over 18 pages belonging to the Jnana Prabodhini Educational Resource Centre. It does not contain any other substantive information beyond asserting the copyright ownership of the organization on each page.
Meetup Openstack : At the heart of IT revolutionLaurent Grangeau
The document discusses OpenStack, an open-source cloud computing platform. It is made up of over 25 modules that provide infrastructure as a service capabilities like compute, networking, storage, and orchestration. Example modules discussed in more detail include Nova for compute, Neutron for networking, Glance for image storage, Horizon for the dashboard, Ceilometer for metering, Heat for orchestration, and Magnum for container services. The meetup aims to be open to all and discuss cutting edge technologies like OpenStack and their potential benefits for companies.
La Unión Europea ha acordado un embargo petrolero contra Rusia en respuesta a su invasión de Ucrania. El embargo prohibirá la mayoría de las importaciones de petróleo ruso a la UE y se implementará de manera gradual durante los próximos seis meses. La medida es la sanción económica más dura contra Rusia hasta la fecha y tiene como objetivo aumentar la presión sobre el gobierno de Putin para que ponga fin a la guerra.
Webservices - was ist das und wie programmiert man sieClaus Brell
Webservices zu programmieren kann ganz einfach sein. Und hat viele Vorteile gegenüber dem Programmieren "dicker" Programmpakete. Ohne Webservices wäre keine moderne Microservice-Architektur möglich. Welche Vorteile Webservices haben und wie man Webservices programmieren kann, zeigen diese Folien am Beispiel eines kleinen BMI-Rechners. BMI (Body Mass Index) ist eine Maßzahl aus dem eigenen Gewicht und der eigenen Körperlänge. BMI sagt etwas darüber aus, ob man normalgewichtig oder adipös ist.
Ein Beispiel eine Webservice-Architektur zu "nachprogrammieren" finden Sie bei dem Naturschutzprojekt:
https://cbrell.de/naturwatch/picam-einfaches-system-fuer-den-ersten-test-einer-webbasierten-raspberry-pi-kamera-naturwatch-lite/
Die Folien sind als Power Point downloadbar und dürfen "raub"kopiert werden. Wenn die eine oder andere Folie hilfreich ist, würde ich mich über feedback freuen.
Description in english:
Programming web services can be very easy. And has many advantages over programming "thicker" packages. Without web services, no modern microservice architecture would be possible. The advantages of web services and how to program web services are shown in these slides using the example of a small BMI computer. BMI (Body Mass Index) is a measure of your own weight and your own body length. BMI says something about being a normal weight or being obese.
An example of "reprogramming" a web service architecture can be found in the nature conservation project:
https://cbrell.de/naturwatch/picam-einfaches-system-fuer-den-ersten-test-einer-webbasierten-raspberry-pi-kamera-naturwatch-lite/
The slides are downloadable as Power Point and may be copied "robbery".
This document discusses methods for improving crop yields through agriculture. It outlines the kharif and rabi crop seasons in India and the crops typically grown in each. There are three stages of farming practices to improve crop yields: choosing high quality seeds, nurturing the crops as they grow, and protecting mature and harvested crops. Crop yields can also be increased through crop variety improvement using hybridization, genetic manipulation, and nutrient management. Proper irrigation, cropping patterns, and pest, disease, and weed control further help maximize agricultural production.
Este documento descreve os riscos e medidas de controle associados à construção de bueiros, incluindo escavação, carga e descarga de tubos, encaixe de tubos e reaterro. Os riscos principais incluem atropelamento, batida, queda e exposição a materiais perigosos. Medidas como treinamento, EPIs, sinalização e planejamento são propostas para controlar os riscos.
O documento discute a modelagem computacional aplicada para avaliar a eficiência na circulação de pessoas em edifícios complexos. A modelagem computacional pode simular o movimento de usuários em evacuações e avaliar métricas como tempo total de abandono. Os resultados podem auxiliar no aprimoramento dos planos de abandono e na identificação de melhorias na infraestrutura ou operação para tornar a circulação de pessoas mais eficiente.
Este documento fornece uma análise de riscos e planos de ação para controlar os riscos associados à tarefa de passagem de gado. As etapas da atividade incluem limpeza do terreno, marcação topográfica, escavações mecânicas, armação de ferro e beneficiamento de formas de madeira. Riscos como atropelamento, quedas, cortes e exposição a intempéries são avaliados e medidas de controle são propostas.
O documento apresenta uma análise de riscos das principais tarefas em um canteiro de obra, incluindo limpeza do terreno, marcação topográfica, escavação manual, armação de ferro, beneficiamento de formas de madeira e concretagem. Para cada tarefa, são listados os principais riscos e definidas ações de controle para garantir a segurança dos trabalhadores.
The document is a copyright notice repeated over 18 pages belonging to the Jnana Prabodhini Educational Resource Centre. It does not contain any other substantive information beyond asserting the copyright ownership of the organization on each page.
Meetup Openstack : At the heart of IT revolutionLaurent Grangeau
The document discusses OpenStack, an open-source cloud computing platform. It is made up of over 25 modules that provide infrastructure as a service capabilities like compute, networking, storage, and orchestration. Example modules discussed in more detail include Nova for compute, Neutron for networking, Glance for image storage, Horizon for the dashboard, Ceilometer for metering, Heat for orchestration, and Magnum for container services. The meetup aims to be open to all and discuss cutting edge technologies like OpenStack and their potential benefits for companies.
La Unión Europea ha acordado un embargo petrolero contra Rusia en respuesta a su invasión de Ucrania. El embargo prohibirá la mayoría de las importaciones de petróleo ruso a la UE y se implementará de manera gradual durante los próximos seis meses. La medida es la sanción económica más dura contra Rusia hasta la fecha y tiene como objetivo aumentar la presión sobre el gobierno de Putin para que ponga fin a la guerra.
Webservices - was ist das und wie programmiert man sieClaus Brell
Webservices zu programmieren kann ganz einfach sein. Und hat viele Vorteile gegenüber dem Programmieren "dicker" Programmpakete. Ohne Webservices wäre keine moderne Microservice-Architektur möglich. Welche Vorteile Webservices haben und wie man Webservices programmieren kann, zeigen diese Folien am Beispiel eines kleinen BMI-Rechners. BMI (Body Mass Index) ist eine Maßzahl aus dem eigenen Gewicht und der eigenen Körperlänge. BMI sagt etwas darüber aus, ob man normalgewichtig oder adipös ist.
Ein Beispiel eine Webservice-Architektur zu "nachprogrammieren" finden Sie bei dem Naturschutzprojekt:
https://cbrell.de/naturwatch/picam-einfaches-system-fuer-den-ersten-test-einer-webbasierten-raspberry-pi-kamera-naturwatch-lite/
Die Folien sind als Power Point downloadbar und dürfen "raub"kopiert werden. Wenn die eine oder andere Folie hilfreich ist, würde ich mich über feedback freuen.
Description in english:
Programming web services can be very easy. And has many advantages over programming "thicker" packages. Without web services, no modern microservice architecture would be possible. The advantages of web services and how to program web services are shown in these slides using the example of a small BMI computer. BMI (Body Mass Index) is a measure of your own weight and your own body length. BMI says something about being a normal weight or being obese.
An example of "reprogramming" a web service architecture can be found in the nature conservation project:
https://cbrell.de/naturwatch/picam-einfaches-system-fuer-den-ersten-test-einer-webbasierten-raspberry-pi-kamera-naturwatch-lite/
The slides are downloadable as Power Point and may be copied "robbery".
Die technischen Neuerungen bei der EPO API/4 Cloud vereinfachen den Aufruf von JSON REST APIs als aktuellem Standard für die Cloud-Integration wesentlich und verwandeln bestehende und neu installierte SAP-Systeme in eine hochmoderne „API-Maschine“.
Die Integration von Cloud-Anwendungen mutiert mit der EPO API/4 Cloud als SAP Konnektor vom Forschungsprojekt zum Arbeiten nach Kochrezept. Dabei sind bei SAP-Schnittstellen zu Cloud-Anwendungen Einsparungen von weit mehr als der Hälfte des Aufwands möglich. SAP-Kunden können bei der Digitalisierung jetzt also mit weit geringeren Kosten rechnen als bisher.
SAP in der Cloud - Anwendungsbeispiele
SAP Outbound: Die SAP-Integration von SIX Payment Services als Experten für den bargeldlosen Zahlungsverkehr mittels JSON REST API ermöglicht bei Kreditkartenzahlungen durchgängige und automatisierte Prozesse bis hin zu SAP Finance. SIX Payment Services sorgt bei den Abfragen und bei der entsprechenden Abbuchung, die jeweils in Echtzeit stattfinden, je Geschäftsvorfall für die erforderliche Sicherheit.
SAP Inbound: Mobile Lösung für die Lagerinventur auf der Basis von HTML5-Apps mit SAP-Integration via JSON REST API. Die Erfassung der Materialnummer und der Lagernummer erfolgt über Hand-Scanner, die Verbuchung im SAP-System passiert automatisch, also ohne jegliche manuelle
Cloud Observability mit Loki, Prometheus, Tempo und GrafanaQAware GmbH
Mastering Kubernetes, Juli 2022, Franz Wimmer (@zalintyre, Senior Software Engineer bei QAware).
== Dokument bitte herunterladen, falls unscharf! Please download slides if blurred! ==
Cloud Observability mit Loki, Prometheus, Tempo und Grafana
Observability ist eine entscheidende Komponente jeder ernsthaften Kubernetes-basierten Plattform. Nur so können der zuverlässige Betrieb Cloud-nativer Anwendungen und das schnelle Debugging kniffligster Probleme, die nur in der Produktionsumgebung auftreten, durch die Entwickler gewährleistet werden.
Die wesentlichen Säulen guter Observability sind Logs, Metriken und Traces. Es gibt eine große Anzahl kommerzieller Tools und SaaS-Anbieterr, welche die Aggregation und Analyse der relevanten Diagnosedaten unterstützen.
In diesem Vortrag verwenden wir hingegen einen vollständig auf Open-Source-Bausteinen basierenden Stack: Promtail zum Weiterleiten von Logs an Loki, Prometheus zum Sammeln von Metriken und Tempo zum Empfangen von Traces. Wir zeigen zudem, wie mit der neuen Exemplars-Storage-Funktion der schnelle Übergang von Metriken zu Traces und Logs möglich wird.
Einsatzgebiet und Zweck: Was sind PWAs und wie können sie eingesetzt werden?
Integration: Wie bekomme ich meine erste Progressive Web App?
Debugging: Wie funktioniert die Fehlersuche?
Erkenntnisse aus dem Einsatz: Was sind die Fallstricke bei der Verwendung?
Die Präsentation Technisches SEO 2019 enthält eine Übersicht wichtiger Themen wie Client-Server Kommunikation, Rendering, Crawling / Indexierung Steuerung, Crawling Budget, Page Speed Optimierung und das alles mit aktuellen Beispielen und Quellen.
Office 365 Akademie News - Oktober 2019Thomas Maier
Themen dieser Sendung:
Kompaktnews
- Office und Emoji Taste
Administration
- Blockierte Dateitypen in Exchange
- Benachrichtigungsmailadresse ändert sich
- Globaler Admin mit Schreibschutz (nur Leserechte)
- Calling Verwaltung im Admin Center
Security&Compliance:
- Neuer Compliance Score
- Benachrichtigungen aus dem Service Health Dashboard
- Teams und Planner Integration in den Secure Score
Selbstmanagement
MyAnalytics
- Fokus-Pläne
Outlook
- Verbesserungen in der Outlook Mobile App - Kalender
- Suche bekommt zentralen Platz
To-Do
- Verbessertes Drag'n'Drop
Workflows und Apps
PowerApps:
- PowerApps im Startmenü anpinnen
- Bemerkungen zu den Versionen
- Neues Lizenzmodell: Lizenzierung per App statt per User
- eBook über PowerApps
Informationen und Dateien
Stream
- Videos ersetzen
SharePoint
- Neue Startseite für SharePoint
- Formulare in SharePoint anpassen - ohne PowerApps
- Berichte über geteilte Dokumente
- Einstellung wer teilen darf
- Neue Webparts im Überblick
- Performance einer Seite messen mit Diagnose-Tool
Zusammenarbeit
Forms
- Mehrsprachige Formulare
Planner
- Neue Optik
Teams
- Account Wechsel in der iOS App
- Unterhaltungen stummschalten
- Über mehrere Kanäle hinweg eine Nachricht verschicken
- Angeheftete Kanäle in Teams
- Anrufbeantworter-Einstellungen direkt in Teams
- Stellvertreter können Anrufeinstellungen ändern
- Live-Untertitel in Englisch nun verfügbar
- Wer ruft an? Informationen aus Azure AD
- Besprechungsteilnehmer anpinnen
Whiteboard
- Vorlagen für das Whiteboard
Yammer
- Jetzt in der EU-Cloud, aber...
The document discusses sustainability in software deployment pipelines. It notes that software operations contribute to 3% of global greenhouse gas emissions and 10% of global electricity consumption. It encourages awareness of these impacts and provides examples of how to build Docker images in a more sustainable way, such as using multistage builds to reduce image sizes. Overall, the document advocates for designing continuous integration/continuous delivery pipelines with sustainability and efficient resource use in mind.
@ Daho.am 2019
We developers don't feel addressed when it comes to climate change. We don't run factories, we can work from home offices, and our laptops consume very little electricity. The environmental sinners are the others. But if you look at the figures, we are far less innocent. Bitcoin alone generates more CO2 than the 165 million inhabitants of Bangladesh. 5 seconds of Internet video generate one gram of CO2, an e-mail 4. A single Bitcoin transaction generates more CO2 than 100 km in the SUV, 2% of the total CO2 volume worldwide is generated by the Internet alone.
So we are not uninvolved, but directly responsible for CO2 emissions. But what does this mean for our work? What can we do to reduce our Co2 footprint and the solutions we create? Can we really work climate neutrally if we want to?
Wir Entwickler fühlen uns nicht angesprochen, wenn es um den Klimawandel geht. Wir betreiben keine Fabriken, wir können auch aus dem Homeoffice arbeiten, und unsere Laptops verbrauchen ja auch kaum Strom. Die Umweltsünder, das sind die anderen. Schaut man sich aber die Zahlen an, sind wir weit weniger unschuldig. Bitcoin alleine erzeugt mehr CO2 als die 165 Millionen Einwohner von Bangladesh. 5 Sekunden Internet-Video erzeugen ein Gramm CO2, eine E-Mail 4. Eine einzige Bitcoin-Transaktion erzeugt mehr Co2 als 100 km im SUV, 2% des gesamten CO2-Aufkommens weltweit entstehen durch das Internet alleine.
Wir sind also nicht unbeteiligt, sondern unmittelbar mitverantwortlich für den CO2-Ausstoss. Aber was bedeutet das für unsere Arbeit? Was können wir machen, um den Co2-Footprint von uns und den von uns geschaffenen Lösungen zu reduzieren? Können wir, wenn wir es wollen, wirklich klimaneutral arbeiten?
Eine PHP-Skill für Ihren Alexa Skill Server zu erstellen ist im Moment einfach, da es viele Tutorials gibt. Aber was ist mit NLU. NLU ist Natural Language Understanding, was soviel wie Lernen und Verstehen von Gesprächen bedeutet. Es gibt mehrere Anbieter, die NLU bedienen, aber keiner von ihnen hält die Daten in Ihren Händen. Aber was tun, wenn Sie Ihre Daten nicht an die NSA weitergeben möchten?
Ich habe eine Lösung gefunden, mit der wir unseren Chatbot mit etwas Intelligenz bereichern. Wie wir früher wussten, ist dieses Werkzeug in Python geschrieben. Wenn Sie die andere Sprache nicht erlernen möchten, können wir die API durchlaufen, indem wir einen PHP-Adapter implementieren. Das bedeutet: Am Ende werden wir eine kleine PHP-Bibliothek haben, um mit der NLU in Kontakt zu treten. Eine Bibliothek, um ein Konversationsmodell zu trainieren oder sortierte Absichten zu erhalten, mit sortierten Einheiten, die das Wichtigste unserer Konversation tragen.
To build a PHP Skill for your Alexa Skill Server is easy at the moment, cause there are lots of tutorials. But what about NLU. NLU is Natural Language Understanding, which means Lerning and Understaning Konverstations. There are several provides to serve NLU, but none of them keeps the data in your hands. But what to do if you do not like to share your data with the NSA? I found a solution, which we use to enrich our chat bot with some inteligence. As we used to know mashine learning that tool is writen in Python. If you do not whant to learn an other language, we can go through the API by implementing an PHP Adapter. That means: at the end we will have a little PHP library to get in touch with NLU. A library to train a conversation model to or to get sorted intents, whith sorted entities carrying the important of our conversation.
Maximilian Berghoff presented an overview of Angular and AngularJS. He discussed the differences between the two frameworks and how Angular focuses more on components while removing two-way data binding. He then demonstrated how to build an app in Angular including bootstrapping, templating, dependency injection, events, and forms. Finally, he proposed an app for managing code conference talks and accepting talk proposals.
The document discusses search engine optimization (SEO) techniques for Symfony developers. It covers technical SEO best practices like using valid HTML structure, secure pages, and meta tags. It also discusses how Symfony frameworks like Sonata and CMF handle SEO through bundles that generate meta tags and sitemaps. Structured data is another topic covered, with examples of markup for events and television channels.
Maximilian Berghoff will be presenting at the PHP track of the Froscon conference on August 25th, 2018. He works for Mayflower GmbH in Würzburg, Germany and can be contacted via Twitter, email, or on his GitHub account. The presentation will discuss diversity issues in the PHP community and ways to make conferences and meetups more accessible and inclusive.
Bereits in seiner ersten Version war Angular ein Tool mit dem man schnell flüssige Frontend-Applikationen erstellen konnte. Inzwischen ist nach einem Rewrite in Angular 2 schon die 4. Generation verfügbar. Nun kann man mit Angular nicht nur komplette Applikationen entwickeln, sondern es lohnt sich auch, wenn man einfach mal einen Prototyp umsetzen will. In dem Workshop nehme ich das Publikum mit auf eine Reise von einer blanken Skeleton App bis hin zu einer fertigen Anwendung. Neben der Einführung in Vorgehensweisen von Angular lebt der Workshop von HandsOn.
Slides for my Talk at PHP usergroup in Stuttgart. There is also a repository with the example code and some notes how to reproduce it: https://github.com/ElectricMaxxx/api-plattform-example
Tree-like structures are omnipresent throughout the web. Whether in the plain URL of a website, as navigation-menu or for board- or chatlogs. Even XML represents a tree-like structure. So why not store data in such a construct? In the Java-World there is the JCR named ContentRepository which stores data in a tree-like structure. The JCR has been ported to PHP as PHPCR. Using the Doctrine-Wrapper PHPCR-ODM it can be integrated into applications without hassle.
This talk will show how to effectively persist semi-structured content, dynamic routing or other hierarchically structured data.
Code zu schreiben ist nicht besonders schwierig. Um guten Code zu schreiben braucht es dann schon etwas mehr. Aber erst, wenn man es schafft die hohe Qualität des eigenen Codes einerseits über die Laufzeit längerfristiger Projekte aufrecht zu erhalten und kontinuierlich zu dokumentieren, gewinnt man die Anerkennung und das Vertrauen seines Kunden.
Diese Session diskutiert die Zusammenhänge, die hinter der Qualität von Sourcecode stecken, beschreibt Praktiken - sowohl für das eigene Verhalten, als auch für das (Selbst-) Management von Entwicklerteams und stellt die aktuell verfügbaren Werkzeuge vor, die helfen können, die eigene Codequalität langfristig zu messen, sicher zu stellen und noch zu steigern.
Do you know the situation wanting to extend a Symfony Application with CMS features? You just created a brand new Symfony application from scratch and intend to add CMS functionality. Of course there are many ready to use CMS on the market, Wordpress, Typo3 just to name e few. But what about the overhead? Your installation comes with a bulk of features not needed in your application. And all that only to create a few static pages. But there is a way out. My talk is about a simple way to add dynamic routes to the standard static Symfony routing, I will introduce you to administration and editing of static pages, and there is even SEO support to add...
Code zu schreiben ist nicht besonders schwierig. Um guten Code zu schreiben braucht es dann schon etwas mehr. Aber erst, wenn man es schafft die hohe Qualität des eigenen Codes über die Laufzeit längerfristiger Projekte aufrecht zu erhalten und kontinuierlich zu dokumentieren, gewinnt man die Anerkennung und das Vertrauen seines Kunden. Diese DevSession zeigt Mittel und Wege auf, die eigene Codequalität langfristig messen, sicher zu stellen und durch die Messung sogar noch zu steigern.
Stellen Sie sich vor, das Iterator Pattern und das Observer Pattern lernen sich in einer Bar kennen, verlieben sich ineinander und zeugen ein Kind, das sie “RxJS” nennen. RxJS stellt Erweiterungen zur reaktiven Programmierung in JavaScript bereit. Es handelt sich hierbei um ein Paradigma, bei dem der Datenfluss im Fokus liegt. Angestrebt wird, ein stabiles, skalierbares und resilientes Anwendererlebnis zu schaffen. Im Kern steht der effiziente Umgang mit asynchronen Ereignissen. Und die sind zahlreich: vom Bootstraping der Applikation, Steuern von Animationen, Umgang mit Benutzereingaben bishin zu XHRs. Die Session erklärt anhand beispielhafter Implementierungen was hinter diesem Paradigma steht. Sie zeigt überdies auf, wie damit zeitgemäße asychrone Anwendungen eventgetrieben entwickelt werden ohne überflüssigen Overhead zu produzieren.
Note:
Viele Links in den Slides. Aber hier nochmal als Markdown:
https://github.com/ElectricMaxxx/Reactive-javascript-rxjs-talk/blob/master/slides/slides.md
The document discusses Representational State Transfer (REST) and how it relates to HTTP. REST is an architectural style for building distributed systems based on HTTP. It uses HTTP methods like GET, POST, PUT, PATCH and DELETE to operate on resources identified by URIs. Resources can have multiple representations like JSON, XML or HTML. A key constraint of REST is that resources provide hypermedia links to allow state transitions in the application. Following these constraints results in a RESTful design that takes advantage of HTTP as an application protocol.
1. MIT DER API INS CMSMIT DER API INS CMS
MAXIMILIAN BERGHOFF - 01.06.2016MAXIMILIAN BERGHOFF - 01.06.2016
Mit der API ins CMS http://localhost:8000/RestCMS/?print-pdf#/
1 von 61 01.06.2016 10:18
16. PHPCRPHPCR
Mit der API ins CMS http://localhost:8000/RestCMS/?print-pdf#/
16 von 61 01.06.2016 10:18
17. RDBMS ODER NOSQL?RDBMS ODER NOSQL?
Mit der API ins CMS http://localhost:8000/RestCMS/?print-pdf#/
17 von 61 01.06.2016 10:18
18. BAUMBAUM
Mit der API ins CMS http://localhost:8000/RestCMS/?print-pdf#/
18 von 61 01.06.2016 10:18
19. BLICK IN DEN CODEBLICK IN DEN CODE
Mit der API ins CMS http://localhost:8000/RestCMS/?print-pdf#/
19 von 61 01.06.2016 10:18
20. /** @var PHPCRSessionInterface */
private $session;
...
/** Get a resource */
$parentNode = $this->session->getNode('/test/resource');
/** Create a new Node */
$parentNode->addNode('child', 'some-type');
/** Move a node */
$this->session->move('/test/resource', '/test/some-where-else');
/** Remove a node and its children */
$this->session->removeItem('/test/some-where-else/child');
/** Complete all managed changes */
$this->session->save();
Mit der API ins CMS http://localhost:8000/RestCMS/?print-pdf#/
20 von 61 01.06.2016 10:18
22. DOCTRINE?DOCTRINE?
YES, DOCTRINE/PHPCR-ODM + SYMFONYYES, DOCTRINE/PHPCR-ODM + SYMFONY
BUNDLEBUNDLE
Mit der API ins CMS http://localhost:8000/RestCMS/?print-pdf#/
22 von 61 01.06.2016 10:18
26. GET /api/phpcrodm_repo/demo HTTP/1.1
Host: 127.0.0.1:8080
Accept: application/json
Mit der API ins CMS http://localhost:8000/RestCMS/?print-pdf#/
26 von 61 01.06.2016 10:18
27. {
"repository_alias": "phpcrodm_repo",
"repository_type": "doctrine_phpcr_odm",
"payload_alias": "demo",
"payload_type": "AppBundleDocumentDemoSeoContent",
"path": "/demo",
"node_name": "demo",
"label": "demo",
"repository_path": "/demo",
"children": [],
"payload": {
"title": "Demo title",
"body": "Body of demo content"
}
}
Mit der API ins CMS http://localhost:8000/RestCMS/?print-pdf#/
27 von 61 01.06.2016 10:18
45. GET /demo/controller HTTP/1.1
Host: 127.0.0.1:8080
Mit der API ins CMS http://localhost:8000/RestCMS/?print-pdf#/
45 von 61 01.06.2016 10:18
46. GET /demo/controller HTTP/1.1
Host: 127.0.0.1:8080
Accept: application/json
Mit der API ins CMS http://localhost:8000/RestCMS/?print-pdf#/
46 von 61 01.06.2016 10:18
47. {
"cmfMainContent": {
"id": "/cms/content/demo_controller",
"title": "Explicit Controller",
"body": "<p>This content is routed through an explicit controller that can d
"name": "demo_controller"
},
"info": "This page is rendered by <code>AppBundleControllerContentController
}
Mit der API ins CMS http://localhost:8000/RestCMS/?print-pdf#/
47 von 61 01.06.2016 10:18
55. USE CASESUSE CASES
Mit der API ins CMS http://localhost:8000/RestCMS/?print-pdf#/
55 von 61 01.06.2016 10:18
56. RESOURCE APIRESOURCE API
Admins z.B. TreeBrowser
Mobile Apps
Mit der API ins CMS http://localhost:8000/RestCMS/?print-pdf#/
56 von 61 01.06.2016 10:18
57. CONTENT APICONTENT API
Frontend Editoren
Mobile Apps
Nicht CMS
Mit der API ins CMS http://localhost:8000/RestCMS/?print-pdf#/
57 von 61 01.06.2016 10:18