Adrian Chlubek: Dowiemy się, czym jest Swoole, w jakim celu został stworzony i jakie funkcjonalności oferuje – wszystko to na żywych przykładach. Przede wszystkim jednak spróbujemy odpowiedzieć sobie na pytanie: czy używanie Swoole ma sens?
Repozytorium z przykładami: https://github.com/achlubek/swoole_experiments
Dokumentacja Swoole: https://www.swoole.co.uk/docs/
Jak przenieść WordPressa na inną domenę - migracje, jak tworzyć backup WordPressa, Co to jest WordPress multisite i kiedy warto z niego korzystać
Więcej na http://trojmiasto.us
Adrian Chlubek: Dowiemy się, czym jest Swoole, w jakim celu został stworzony i jakie funkcjonalności oferuje – wszystko to na żywych przykładach. Przede wszystkim jednak spróbujemy odpowiedzieć sobie na pytanie: czy używanie Swoole ma sens?
Repozytorium z przykładami: https://github.com/achlubek/swoole_experiments
Dokumentacja Swoole: https://www.swoole.co.uk/docs/
Jak przenieść WordPressa na inną domenę - migracje, jak tworzyć backup WordPressa, Co to jest WordPress multisite i kiedy warto z niego korzystać
Więcej na http://trojmiasto.us
Adrian Chlubek: Czy PHP jest gotowy na websockety? Czy architektura samego języka nie stoi na przeszkodzie? Zobaczymy jakie mamy możliwości pracy z Websocketami, porównamy trzy popularne rozwiązania umożliwiające taką komunikację, a następnie odpowiemy sobie na pytanie – czy to ma sens?
Architektura frameworka testowego ukierunkowanego głównie na funkcjonalne testy regresji aplikacji webowych. Całość projektowana pod kątem prostoty użycia oraz szybkości tworzenia nowych scenariuszy testowych. Nie zapomniano jednak o szybkości działania, czy przydatności nie tylko z punktu widzenia QA ale również developerów czy „biznesu”.
Na początku przedstawienie głównych założeń oraz celów, które miały być osiągnięte. Następnie przedstawienie struktury katalogów oraz opisanie ważniejszych plików, omówienie configów w celu wysokopoziomowego pokazania możliwości. Następnie „metody”, jakie framework udostępnia.
Omówione będą tematy uznawane za problematyczne - waity, identyfikacja elementów, validatory, obsługa danych testowych, zrównoleglenie wykonywania testów czy uzyskanie czystego stanu przeglądarki.
Zostaną również opisane raporty, które powinny być przydatne nie tylko dla QA, ale też dla „biznesu”. Omówione będą logi, które powinny umożliwiać developerom identyfikację czy odtworzenie ewentualnych błędów - od wysokopoziomowych, jak Gherkin czy screenshoty, aż do bardziej niskopoziomowych, jak Browser console log, Driver log czy HTTP Archive (HAR).
Poszczególne zagadnienia zostaną przedstawione na przykładzie frameworka dostępnego jako open-source, jednak same założenia nie są specyficzne dla tego konkretnego przykładu, a dosyć uniwersalne.
Od strony technologii: JavaScript (Node), WebDriverJS, Cucumber-js, BrowserMob Proxy, NPM, GNU Make, Xvfb, Docker, Linux.
4Developers 2015: Szybciej niż Struś Pędziwiatr - WebSockets w aplikacjach we...PROIDEA
Krzysztof Rychlicki-Kicior
Language: Polish
Dawno temu, gdy w kodzie HTML królowały znaczniki FONT i MARQUEE, a zamiast AJAX-a stosowano ukryte ramki, błyskawiczną i dwustronną komunikację z serwerem można było osiągnąć jedynie za pomocą specjalnych wtyczek - np. we wszelkiej maści czatach królowała wówczas Java i applety. Z upływem lat sytuacja poprawiła się, dzięki zastosowaniu AJAX-a czy long pollingu, jednak wciąż była daleka od ideału. Na szczęście, obecnie programiści są w znacznie lepszej sytuacji - dzięki WebSocketom bez żadnego problemu są w stanie zaimplementować komunikację w czasie rzeczywistym, niezbędną np. do gier online, aplikacji do komunikacji czy aplikacji finansowych.
W ramach tego wykładu słuchacze zapoznają się z różnymi koncepcjami stosowanymi w komunikacji pomiędzy przeglądarką a serwerem HTTP, z uwzględnieniem WebSocketów. Oprócz tego zostaną przedstawione mechanizmy obsługi WS od strony serwera, na przykładzie Node.js i Socket.IO. Różne rozwiązania zostaną poddane porównaniu pod kątem wydajności. Mimo licznych zalet, WebSockety niosą za sobą pewne problemy - zostaną one również poddane analizie.
Wstęp do projektowania usług internetowych: część 1 - restLukas Lesniewski
Prezentacja ma na celu przedstawienie możliwości, jakie daje mam Java EE. Dzięki zastosowaniu JAX-RS możemy zbudować własną, bezstanową usługę internetową. Tutaj skupiłem się na wykorzystaniu IntelliJ oraz Wildfly, przy czym zamieściłem również krótkie opisy również innych serwerów. Zamieściłem również kod źródłowy, spora część prezentacji to właśnie praca z kodem, począwszy od założenia projektu.
GWINT: Przetwarzanie rozproszone z wykorzystaniem komunikacji asynchronicznej...GOG.com dev team
GWINT jako gra online nastawiona na obsługę milionów graczy wymaga wyjątkowo skalowalnej architektury. Opowiemy między innymi o tym:
– jak API zbudowane na Symfony w modelu mikro serwisów wykorzystuje asynchroniczną komunikację pomiędzy usługami i klientem (system notyfikacji),
– jak optymalizujemy procesowanie zdarzeń wymagających współpracy kilku usług (kolejki zadań), jak monitorujemy i testujemy integrację poszczególnych webservice’ów. Przewiną się także technologie takie jak: PHP7, HHVM, RabbitMq, Redis,
Krzysztof Sobczak GOG.com Team
Developing native-like Windows application using JavaScript, SSE, eZ Platform...Piotr Nalepa
The presentation is in Polish, but you can get the most important pieces of information form the code in the slides.
W prezentacji omówiłem sposób tworzenia aplikacji Windows z wykorzystaniem języka JavaScript, systemu CMS eZ Platform oraz narzędzia Electron udostępnionego przez Githuba. Aplikacja korzysta z powiadomień typu push i do tego celu wykorzystuję SSE - Server Sent Events.
Tomasz Kajtoch: Dokładnie 2 lata temu została opublikowana specyfikacja protokołu HTTP w wersji drugiej. Mimo wielu zalet, tylko niewielki procent usług w internecie zdecydował się na jego wdrożenie. Moja prelekcja poświęcona będzie praktycznym przykładom i zaletom płynącym z jego użycia pod kątem frontendu oraz porówna go z dotychczas stosowanymi rozwiązaniami.
4Developers2015: Serwis z kamerkami - pole minowe wydajności - Łukasz ŁuczakPROIDEA
Łukasz Łuczak
Language: Polish
Pewnego dnia przyszedł klient, który chciał mieć serwis z kamerkami, projekt opisał jako zbliżony do największego polskiego portalu tego typu z niewielkimi zmianami. Pierwsza wersja powstała sprawnie bez problemów, portal ruszył, pojawiły się nowe pomysły i nieznane problemy.
Chciałbym opowiedzieć o tym jakie problemy mogą powstać przy robieniu projektów "wyglądających jak", kiedy pominięty zostaje aspekt analizy wymagań, oczekiwań klienta, jego pomysłów na rozwój a także przy niepoprawnym oszacowaniu ruchu. Przedstawię kolejne ściany jakie musieliśmy przebić by natrafić na kolejne problemy. Wśród przedstawionych problemów wskażę między innymi: niedoszacowanie ruchu na chacie, błędny projekt bazy danych, niewłaściwa konfiguracja serwerów, problemy z oprogramowaniem streamingowym, złe dobranie kodeków w kliencie flashowym, problemy z flashem, złe dobranie serwerowni / oferty serwerowni, a także zagadnienie live statystyk oraz obsługi live konkursów bazujących na statystykach.
Przedstawię także w jaki sposób zostały rozwiązane te problemy, jak wyglądała docelowa architektura oraz jak udało się doprowadzić produkt do wersji stabilnej będącej w stanie wytrzymać więcej ruchu niż u konkurencji (licząc na jeden serwer).
Podczas prób rozwiązania problemów sprawdzane były różne technologie i rozwiązania, które dokładały swoje problemy. Najciekawszym aspektem było łatanie live i ostry weekendowy crunch - największy ruch był w wieczór w piątek oraz w sobotni wieczór i potem połowę nocy, w związku z tym sporo zmian było robionych w piątek wieczorem, testowanych live a potem były robione w nocy i przez cały dzień by znów móc live przetestować na żywym organizmie.
Projekt pochłonął trzy razy więcej niż zakładał pierwotny budżet - tylko dzięki hojności klienta, który dużo płacił za dalsze modyfikacje udało się wyjść na zero.
Wordpress dla początkujących szkolenie / warsztat 08/10 WtyczkiMariusz Szatkowski
Wtyczki, plugins - jak instalować, jak konfigurować. Jakich wtyczek unikać. Po co instalować wtyczki, czemu służą i jak radzić sobie z błędami, które generują wtyczki.
Więcej na http://trojmiasto.us
В этом году в потоке для разработчиков Геннадий расскажет о профилировании кода в WordPress. Он рассмотрит популярные средства для профилирования Xdebug и XHProf, и покажет как ими правильно пользоваться для повышения скорости плагинов и тем WordPress.
Adrian Chlubek: Czy PHP jest gotowy na websockety? Czy architektura samego języka nie stoi na przeszkodzie? Zobaczymy jakie mamy możliwości pracy z Websocketami, porównamy trzy popularne rozwiązania umożliwiające taką komunikację, a następnie odpowiemy sobie na pytanie – czy to ma sens?
Architektura frameworka testowego ukierunkowanego głównie na funkcjonalne testy regresji aplikacji webowych. Całość projektowana pod kątem prostoty użycia oraz szybkości tworzenia nowych scenariuszy testowych. Nie zapomniano jednak o szybkości działania, czy przydatności nie tylko z punktu widzenia QA ale również developerów czy „biznesu”.
Na początku przedstawienie głównych założeń oraz celów, które miały być osiągnięte. Następnie przedstawienie struktury katalogów oraz opisanie ważniejszych plików, omówienie configów w celu wysokopoziomowego pokazania możliwości. Następnie „metody”, jakie framework udostępnia.
Omówione będą tematy uznawane za problematyczne - waity, identyfikacja elementów, validatory, obsługa danych testowych, zrównoleglenie wykonywania testów czy uzyskanie czystego stanu przeglądarki.
Zostaną również opisane raporty, które powinny być przydatne nie tylko dla QA, ale też dla „biznesu”. Omówione będą logi, które powinny umożliwiać developerom identyfikację czy odtworzenie ewentualnych błędów - od wysokopoziomowych, jak Gherkin czy screenshoty, aż do bardziej niskopoziomowych, jak Browser console log, Driver log czy HTTP Archive (HAR).
Poszczególne zagadnienia zostaną przedstawione na przykładzie frameworka dostępnego jako open-source, jednak same założenia nie są specyficzne dla tego konkretnego przykładu, a dosyć uniwersalne.
Od strony technologii: JavaScript (Node), WebDriverJS, Cucumber-js, BrowserMob Proxy, NPM, GNU Make, Xvfb, Docker, Linux.
4Developers 2015: Szybciej niż Struś Pędziwiatr - WebSockets w aplikacjach we...PROIDEA
Krzysztof Rychlicki-Kicior
Language: Polish
Dawno temu, gdy w kodzie HTML królowały znaczniki FONT i MARQUEE, a zamiast AJAX-a stosowano ukryte ramki, błyskawiczną i dwustronną komunikację z serwerem można było osiągnąć jedynie za pomocą specjalnych wtyczek - np. we wszelkiej maści czatach królowała wówczas Java i applety. Z upływem lat sytuacja poprawiła się, dzięki zastosowaniu AJAX-a czy long pollingu, jednak wciąż była daleka od ideału. Na szczęście, obecnie programiści są w znacznie lepszej sytuacji - dzięki WebSocketom bez żadnego problemu są w stanie zaimplementować komunikację w czasie rzeczywistym, niezbędną np. do gier online, aplikacji do komunikacji czy aplikacji finansowych.
W ramach tego wykładu słuchacze zapoznają się z różnymi koncepcjami stosowanymi w komunikacji pomiędzy przeglądarką a serwerem HTTP, z uwzględnieniem WebSocketów. Oprócz tego zostaną przedstawione mechanizmy obsługi WS od strony serwera, na przykładzie Node.js i Socket.IO. Różne rozwiązania zostaną poddane porównaniu pod kątem wydajności. Mimo licznych zalet, WebSockety niosą za sobą pewne problemy - zostaną one również poddane analizie.
Wstęp do projektowania usług internetowych: część 1 - restLukas Lesniewski
Prezentacja ma na celu przedstawienie możliwości, jakie daje mam Java EE. Dzięki zastosowaniu JAX-RS możemy zbudować własną, bezstanową usługę internetową. Tutaj skupiłem się na wykorzystaniu IntelliJ oraz Wildfly, przy czym zamieściłem również krótkie opisy również innych serwerów. Zamieściłem również kod źródłowy, spora część prezentacji to właśnie praca z kodem, począwszy od założenia projektu.
GWINT: Przetwarzanie rozproszone z wykorzystaniem komunikacji asynchronicznej...GOG.com dev team
GWINT jako gra online nastawiona na obsługę milionów graczy wymaga wyjątkowo skalowalnej architektury. Opowiemy między innymi o tym:
– jak API zbudowane na Symfony w modelu mikro serwisów wykorzystuje asynchroniczną komunikację pomiędzy usługami i klientem (system notyfikacji),
– jak optymalizujemy procesowanie zdarzeń wymagających współpracy kilku usług (kolejki zadań), jak monitorujemy i testujemy integrację poszczególnych webservice’ów. Przewiną się także technologie takie jak: PHP7, HHVM, RabbitMq, Redis,
Krzysztof Sobczak GOG.com Team
Developing native-like Windows application using JavaScript, SSE, eZ Platform...Piotr Nalepa
The presentation is in Polish, but you can get the most important pieces of information form the code in the slides.
W prezentacji omówiłem sposób tworzenia aplikacji Windows z wykorzystaniem języka JavaScript, systemu CMS eZ Platform oraz narzędzia Electron udostępnionego przez Githuba. Aplikacja korzysta z powiadomień typu push i do tego celu wykorzystuję SSE - Server Sent Events.
Tomasz Kajtoch: Dokładnie 2 lata temu została opublikowana specyfikacja protokołu HTTP w wersji drugiej. Mimo wielu zalet, tylko niewielki procent usług w internecie zdecydował się na jego wdrożenie. Moja prelekcja poświęcona będzie praktycznym przykładom i zaletom płynącym z jego użycia pod kątem frontendu oraz porówna go z dotychczas stosowanymi rozwiązaniami.
4Developers2015: Serwis z kamerkami - pole minowe wydajności - Łukasz ŁuczakPROIDEA
Łukasz Łuczak
Language: Polish
Pewnego dnia przyszedł klient, który chciał mieć serwis z kamerkami, projekt opisał jako zbliżony do największego polskiego portalu tego typu z niewielkimi zmianami. Pierwsza wersja powstała sprawnie bez problemów, portal ruszył, pojawiły się nowe pomysły i nieznane problemy.
Chciałbym opowiedzieć o tym jakie problemy mogą powstać przy robieniu projektów "wyglądających jak", kiedy pominięty zostaje aspekt analizy wymagań, oczekiwań klienta, jego pomysłów na rozwój a także przy niepoprawnym oszacowaniu ruchu. Przedstawię kolejne ściany jakie musieliśmy przebić by natrafić na kolejne problemy. Wśród przedstawionych problemów wskażę między innymi: niedoszacowanie ruchu na chacie, błędny projekt bazy danych, niewłaściwa konfiguracja serwerów, problemy z oprogramowaniem streamingowym, złe dobranie kodeków w kliencie flashowym, problemy z flashem, złe dobranie serwerowni / oferty serwerowni, a także zagadnienie live statystyk oraz obsługi live konkursów bazujących na statystykach.
Przedstawię także w jaki sposób zostały rozwiązane te problemy, jak wyglądała docelowa architektura oraz jak udało się doprowadzić produkt do wersji stabilnej będącej w stanie wytrzymać więcej ruchu niż u konkurencji (licząc na jeden serwer).
Podczas prób rozwiązania problemów sprawdzane były różne technologie i rozwiązania, które dokładały swoje problemy. Najciekawszym aspektem było łatanie live i ostry weekendowy crunch - największy ruch był w wieczór w piątek oraz w sobotni wieczór i potem połowę nocy, w związku z tym sporo zmian było robionych w piątek wieczorem, testowanych live a potem były robione w nocy i przez cały dzień by znów móc live przetestować na żywym organizmie.
Projekt pochłonął trzy razy więcej niż zakładał pierwotny budżet - tylko dzięki hojności klienta, który dużo płacił za dalsze modyfikacje udało się wyjść na zero.
Wordpress dla początkujących szkolenie / warsztat 08/10 WtyczkiMariusz Szatkowski
Wtyczki, plugins - jak instalować, jak konfigurować. Jakich wtyczek unikać. Po co instalować wtyczki, czemu służą i jak radzić sobie z błędami, które generują wtyczki.
Więcej na http://trojmiasto.us
В этом году в потоке для разработчиков Геннадий расскажет о профилировании кода в WordPress. Он рассмотрит популярные средства для профилирования Xdebug и XHProf, и покажет как ими правильно пользоваться для повышения скорости плагинов и тем WordPress.
Consejos y casos interesantes para diseñar un proceso de pago.
Vida mas allá del gateway. ¿Es WordPress una plataforma
para eCommerce?
WooCommerce es un módulo en un CMS,
no un sistema para eCommerce.
This document discusses various principles and techniques of design theory including the C.R.A.P principles of contrast, repetition, alignment and proximity. It mentions common typefaces like Helvetica and Roboto and recommends following design tips such as using spaces, icons, odd numbered menu items between 5-7, and respecting developers. It also provides recommendations for design websites and contact information.
Este documento resume las 12 tablas principales de la base de datos de WordPress, incluyendo wp_posts, wp_users y tablas de taxonomías y metadatos. Explica conceptos como normalización de datos, funciones de WordPress para consultas, y el uso de tablas personalizadas para mejorar la eficiencia y seguridad. Resalta que WordPress se adapta fácilmente a diferentes proyectos a través de su flexible estructura de base de datos.
Communautés Drupal et WordPress : le choc des titans ?Thierry Pigot
Les communautés Drupal et WordPress sont parmi les plus dynamiques au sein des communautés Open Source de gestion de contenu. Pourtant, à y regarder de plus près, de nombreuses différences les distinguent : les acteurs économiques ne sont pas les mêmes, les modes d’organisation et de gouvernance diffèrent, les logiques de contribution et d’accès à la communauté reposent sur des règles opposées, …
Nous vous proposons de scruter le fonctionnement de ces communautés au travers du regard de deux experts et membres actifs de ces communautés : Léon Cros (Président Drupal France) et Thierry Pigot (Président WordPress Paris), dans un objectif de partage et de retour d’expérience.
What have we learned at Target Video in scaling our WordPress Multisite to 1 million users? Still tiny at know, but not your typical neighborhood WordPress installation.
Porzucony koszyk, czyli szansa na lepszą sprzedażMichał Jaworski
Dlaczego klienci Twojego sklepu nie finalizują zamówienia? Jak można temu zaradzić i jak wykorzystać taką sytuację, aby przyniosła ona jak największe korzyści? Jakie efekty można uzyskać wdrażając odpowiednie narzędzia (i jakie to narzędzia)?
Presentation in Dutch at WordCamp Netherlands 2015:
Je hoeft geen rockstar coder te zijn om te contributen aan WordPress. Je kan op allerlei manieren helpen zoals vertalen, het schrijven van ondertitelingen, documentatie, code, tests en het geven van support. Ontdek hoe jij kan bijdragen aan WordPress en wat jij en de community hiervoor terug krijgen.
Beim WordPress Meetup in Würzburg am 20.12.2016 hab ich ein wenig über die Suche in WordPress erzählt. Und darüber wie man sie Plugins verbessern kann. Mit Ausflügen zu Facetten und der Deutschen National Bibliothek, Sachbegriffen und Synonymen. Und ich zeige wie wir in einem Projekt das alles miteinander verbunden haben.
5. WP RESTful API
● WP-API 1.2.5
● WP-API 2.0-beta13
● WordPress.com REST API
(JetPack JSON API)
6. Jak to działa?
● GET - pobieranie danych
● POST - dodawanie danych
● PUT - edycja danych
● DELETE - usuwanie danych
● /wp-json/posts/
● /wp-json/posts/<id>
● /wp-json/posts/<id>/meta/
● /wp-json/posts/<id>/meta/<mid>
● /wp-json/options/
● /wp-json/options/<id>
14. Out of the box
● Plugin API
● Options API
● Settings API
● HTTP API
● Rewrite API
● Metadata API
15. Podsumowanie
Brak wsparcia dla OAuth
Brak wsparcia dla opcji
Problem z natywną biblioteką JSON w PHP
Problem serializacji obiektów
Register Post Type
● show_in_json => true
Basic Authentication Plugin
● zła kolejność
● nie ustawianie użytkownika po zalogowaniu