Разработка API для большого, нагруженного сервисаendeveit
Рассказ о том, что творилось с проектами kolesa.kz и krisha.kz в 2011-2012 годах и что происходит сейчас, как мы создавали с нуля API и впоследствии переезжали на него, как на лету меняли хранилища данных, как боролись с нагрузками и воевали за надежность, расскажу о граблях на которые наступили и как их можно было бы избежать.
Субъективная точка зрения на фронтенд разработку.
Площадка: IT-бар КЛЮЧ, https://vk.com/event69759919
Видео с доклада: https://www.youtube.com/watch?v=pyAYbbDJjPo
Антон Пискунов. Независимый разработчик.
«BeeGo для веб-приложений, API и демонов»
- Почему BeeGo? vs Revel and another guys.
- Что мы пишем на BeeGo? Наш личный опыт.
- Как написать облачный стартап и инфраструктурные сервисы на BeeGo за две недели.
- Sweet API, нэймспейсы и автодокументация.
- Демонизация BeeGo, к чему мы пришли?
- Разработчики, мэйнтейнинг, существующие проблемы
http://go-meetup-spb.timepad.ru/event/169777/
Разработка API для большого, нагруженного сервисаendeveit
Рассказ о том, что творилось с проектами kolesa.kz и krisha.kz в 2011-2012 годах и что происходит сейчас, как мы создавали с нуля API и впоследствии переезжали на него, как на лету меняли хранилища данных, как боролись с нагрузками и воевали за надежность, расскажу о граблях на которые наступили и как их можно было бы избежать.
Субъективная точка зрения на фронтенд разработку.
Площадка: IT-бар КЛЮЧ, https://vk.com/event69759919
Видео с доклада: https://www.youtube.com/watch?v=pyAYbbDJjPo
Антон Пискунов. Независимый разработчик.
«BeeGo для веб-приложений, API и демонов»
- Почему BeeGo? vs Revel and another guys.
- Что мы пишем на BeeGo? Наш личный опыт.
- Как написать облачный стартап и инфраструктурные сервисы на BeeGo за две недели.
- Sweet API, нэймспейсы и автодокументация.
- Демонизация BeeGo, к чему мы пришли?
- Разработчики, мэйнтейнинг, существующие проблемы
http://go-meetup-spb.timepad.ru/event/169777/
Особенности работы backend для мобильных приложений или Python Django UWSGI в...Mail.ru Group
Доклад посвящен жизни проектов в продакшен. Речь пойдет о связке Python-Django-Uwsgi для backend мобильных приложений, настройке серверов, измерении времени и оценке качества работы backend. Также спикер расскажет о профилировании Django, Memcached в Python.
Работаем с API по-взрослому - Максим Кислов (Badoo)AvitoTech
Я расскажу о том, как мы разрабатываем фронтенд и бэкенд параллельно, используя protobuf + JSON RPC.
Часто фронтенд выставляет требования к бэкенду, из этих требований получается API, и разработка возможна только при одновременной работе серверного и клиентского девелопера.
Мы же начинаем разработку с API, и фронтенд (а также мобильные приложения) никак не зависят от степени готовности бэкенда.
– Я поделюсь тем, как мы делаем API до начала разработки;
– Success story использования protobuf + RPC;
– И немного – о разработке клиента вообще без серверного кода.
Паша Мурзаков: Как 200 строк на Go помогли нам освободить 15 серверов» Badoo Development
В Badoo я работаю в команде, которая разрабатывает на PHP. Одна из фич, которой мы занимаемся, со временем начала отъедать всё больше и больше железячных ресурсов. В итоге мы едва успевали добавлять серверы под растущую нагрузку. При этом вечера, проведённые с Go дома, подсказывали, что можно сделать на порядки производительнее, не затратив на разработку много времени.
Я расскажу о том, почему наша фича так плохо ложится на PHP и хорошо – на Go, как уговорить всех всё переписать и не показаться сумасшедшим, ну и, конечно же, как из 19 серверов оставить только 4.
Anton Tsitou "Designing hybrid Go/PHP applications using RoadRunner"Fwdays
Demonizing PHP application to gain higher performance. Splitting an application into infrastructure (go) and business logic (PHP) layers to gain higher flexibility.
Bootstrap 3. Адаптивная верстка для WordPressIgor Sazonov
Основы и примеры для понимания зачем нужен CSS-фреймворк Bootstrap. Доклад читался в рамках WordPress Meetup #3 в Санкт-Петербурге. Объясняется в чем суть верстки на Bootstrap, зачем он нужен для WordPress, подробно разбирается основы grid (сетки) на Bootstrap чтобы верстать адаптивный дизайн.
Особенности работы backend для мобильных приложений или Python Django UWSGI в...Mail.ru Group
Доклад посвящен жизни проектов в продакшен. Речь пойдет о связке Python-Django-Uwsgi для backend мобильных приложений, настройке серверов, измерении времени и оценке качества работы backend. Также спикер расскажет о профилировании Django, Memcached в Python.
Работаем с API по-взрослому - Максим Кислов (Badoo)AvitoTech
Я расскажу о том, как мы разрабатываем фронтенд и бэкенд параллельно, используя protobuf + JSON RPC.
Часто фронтенд выставляет требования к бэкенду, из этих требований получается API, и разработка возможна только при одновременной работе серверного и клиентского девелопера.
Мы же начинаем разработку с API, и фронтенд (а также мобильные приложения) никак не зависят от степени готовности бэкенда.
– Я поделюсь тем, как мы делаем API до начала разработки;
– Success story использования protobuf + RPC;
– И немного – о разработке клиента вообще без серверного кода.
Паша Мурзаков: Как 200 строк на Go помогли нам освободить 15 серверов» Badoo Development
В Badoo я работаю в команде, которая разрабатывает на PHP. Одна из фич, которой мы занимаемся, со временем начала отъедать всё больше и больше железячных ресурсов. В итоге мы едва успевали добавлять серверы под растущую нагрузку. При этом вечера, проведённые с Go дома, подсказывали, что можно сделать на порядки производительнее, не затратив на разработку много времени.
Я расскажу о том, почему наша фича так плохо ложится на PHP и хорошо – на Go, как уговорить всех всё переписать и не показаться сумасшедшим, ну и, конечно же, как из 19 серверов оставить только 4.
Anton Tsitou "Designing hybrid Go/PHP applications using RoadRunner"Fwdays
Demonizing PHP application to gain higher performance. Splitting an application into infrastructure (go) and business logic (PHP) layers to gain higher flexibility.
Bootstrap 3. Адаптивная верстка для WordPressIgor Sazonov
Основы и примеры для понимания зачем нужен CSS-фреймворк Bootstrap. Доклад читался в рамках WordPress Meetup #3 в Санкт-Петербурге. Объясняется в чем суть верстки на Bootstrap, зачем он нужен для WordPress, подробно разбирается основы grid (сетки) на Bootstrap чтобы верстать адаптивный дизайн.
KentorTalks 11 november Digital transformation - Från vision till verklighetDigJourney
Hur ser en arbetsmetodik ut i praktiken? Författaren Marie Andervin med succén ”Att leda Digital Transformation” och ledarskapsexperterna Gaia Leadership ger insikter och metoder hur resan kan bli framgångsrik och om de första stegen i din förändringsresa.
Vad har andra lärt sig? Ving och DriveNow delar med sig hur de har använt Digital Transformation i praktiken och sina erfarenheter.
OCF Celebrates its 40th this September with Music and Arts FestivalJacqueline Dupont
Jacqueline Dupont is the founder and chief executive officer of Assured In-Home Care, a home care agency based in Costa Mesa, California. Jacqueline Dupont is also active within her community and serves as a board member in the Orange Catholic Foundation (OCF).
Like many others, WordPress has been my personal blogging tool for a long time. A powerful tool for easy publishing! That is what everyone wants.
Large sites like TechCrunch and TheNextWeb use it exactly for that reason. And more enterprises seem to discover it as good solution to their too-expensive publication tools. But keeping those WordPress instances running requires skills and knowledge.
Because of WordPress extendibility and its very active community, you can do this too. This tutorial will teach you how use Ansible, Composer, WP-CLI, WP REST API, and Elasticsearch can push WordPress from a personal blogging tool into an enterprise-worthy level application. Out with FTP based SCM ... in with automated deployment, dependency management, and utterly fast search.
Spectrolytic was founded with the aim of making spectroscopy solutions available to the masses and to broaden the view of usability.
Spectrolytic GmbH is a developer and supplier of infrared spectrometers and related solutions for a wide range of applications and markets. It also provides development and manufacturing services to third parties for both systems and solutions.
Spectrolytic GmbH has its registered office in Wernberg-Köblitz, Germany, and its operating HQ in Wackersdorf, Germany. The Companies design, manufacture (internally and/or externally) a range of spectroscopy systems for a number of market sectors including but not limited to industrial and consumer applications.
The Company also provide technology consulting, system design and development services, plus related manufacturing to customers on a contract basis.
We believe we have some of the greatest minds in our business and will utilize this capability to expand our business to the benefits of the team and all stakeholders.
While eCommerce SEO is very similar to regular SEO, there are a number of additional considerations to review when optimizing your online store for search. In this presentation we review some of the mot common issues and associated best practices.
This presentation will provide an actionable plan for setting the foundation of SEO best practices. We’ll walk through the steps critical to keyword research and site mapping.
Юрий Василевский «Автоматизация в XCode»
Yandex Mobile Camp в Санкт-Петербурге 2012
http://events.yandex.ru/events/yamobcamp/spb-may-2012/
Xcode — основной инструментарий разработки приложений под Mac OS X и Apple iOS. Он обладает широкими возможностями как для редактирования кода, так и для автоматизации задач. Мы обсудим некоторые из аспектов автоматизации (Code Sense, Targets, Services, Help), связанные с нумерацией сборок билдов, форматированием и контролем стиля кода, анализом дублированных участков кода, управлением внешними библиотеками.
Yandex Mobile Camp в Санкт-Петербурге, 30 мая 2012
Юрий Василевский, ведущий разработчик EPAM Systems, Mobile Solutions
Тема: Автоматизация в XCode
Тезисы:
Xcode — основной инструментарий разработки приложений под Mac OS X и Apple iOS. Он обладает широкими возможностями как для редактирования кода, так и для автоматизации задач.
Мы рассмотрим некоторые из аспектов автоматизации (Code Sense, Targets, Services, Help), связанные с нумерацией сборок билдов, форматированием и контролем стиля кода, анализом дублированных участков кода, управлением внешними библиотеками.
Сергей Мелашич "Настройка SEO для одностраничных web-приложений на Angular"Fwdays
В докладе расскажу о шишках, набитых в процессе настройки SEO для конкретного проекта. Речь пойдет о настройке SEO для своего одностраничного приложения как с привлечением сторонних сервисов, так и самостоятельно, используя PhantomJS или рендеринг на стороне сервера. Также, поделюсь особенностями размещения share-кнопок от различных провайдеров.
Презентация Алексндра Тороша на PHP Frameworkds Day 2014 о фреймворке Phalcon и последних событиях с ним связанных за последний год. Релиз Yona CMS - системы управления контентом на Phalcon с модульной структурой
Процесс разработки и тестирования с Docker + gitlab ciАлександр Сигачев
Доклад - https://www.youtube.com/watch?v=lJsqRwULRVA
Какие проблемы решаем?
быстрый вход нового разработчика в проект
стандартизация настроек разработчиков
переключение между проектами - разные версии ПО и библиотек (mysql 5.6/5.7, node 0.12/7.2)
приучаем разработчиков к сетевому взаимодействию компонентов
Microservice - масштабирование/разделения разработки
Делим ресурсы staging среды между проектами
15. Откажитесь от FTP
Почему ?
- Открытый трафик, снифферы, перехват
пароля по сети
- Кража паролей из FTP клиента
- Забытые пароли
- Медленная скорость
- Проблемы с параллельной правкой
- Ошибки в продакшене
17. WP-CLI
- php в bash
- обработка больших данных
- автоматизация
- лёгкая разработка с WP-CLI
http://wp-cli.org/
Аналог drush в Drupal
18. Переписываем частями
● Шаблон, (в 90% случаев это необходимо).
● Самописные и «хакнутые» плагины.
● Делаем так, чтобы обновления до последней версии не ломали сайт.
● Тестируем на копии сайта с реальными данными.
● Обновляем, «вендорные» плагины, шаблоны до последней версии.
● Сравниваем код ядра с соответствующей версией из архива релизов
https://ru.wordpress.org/releases/ если различий нет, то обновляемся
до последней версии; если есть, убираем «хаки» из кода ядра и
обновляемся до актуальной версии.
22. Почему нужно писать именно так?
Проблема именования функций Область видимости класса позволяет
решить проблему, инкапсулируя код.
Инициализация кода в момент хука
plugins_loaded
Почти весь любой функционал можно
реализовать в момент этого хука либо
позже.
ООП наследование, переиспользование
и т.д.
Писать в объектно-ориентированном
стиле приятно и легко.
Одинаковая структура проектов делает
возможной оптимизацию
Стандартная структура плагинов
облегчает обслуживание, деплой, сборку
ресурсов и т.д.
Повышается скорость разработки Факт :)
23. mu-plugins
- Находятся в ~/wp-content/mu-plugins / ;
- Хорошее место для сниппетов, которые в google предлагают вставить в
functions.php акивного шаблона ;
- Плагины, помещенные в этом каталоге, невозможно выключить из админ.
панели, также как и включить;
- Позволяют легко и надёжно отредактировать функционал ядра.
P.S. плагины вызываются в алфавитном порядке, в зависимости от имени
файла, это может вызвать проблемы, но только в том случае, если не
используете для инициализации события хуков и фильтры.
24. Зачем нужно писать
плагины ?
1. Модульность.
2. Переиспользование в других проектах.
3. Разработка мелкими релизами.
4. Легко организоваь работу команды.
25. Дебагеры
1. XDebug
2. DBG
3. ZendDebug
4. XHprof
5. А так же многие другие..
Всем известно о пользе дебагеров, их нужно использовать,
так как они наши друзья :)
26. Встроенные дебагеры
и
плагины
1. Включите режим дебага в wp-cinfig.php
define('WP_DEBUG', true);.
2. Просто используйте встроенный дебагер.
Самые необходимые плагины.
1.Debug Bar
2.Kint Debugger
3.Debug Bar Actions and Filters Addon
4.Debug Bar Console
27. Debug Bar
Выводит:
1.Notices/Warnings.
2.Информацию о выполненных запросах в базу данных.
3.Все аргументы WP Query.
4.Все deprecated функции/методы во всем коде, включая ядро.
5.Регулярное выражение WP_Rewrite,
6.текущего URL
7.Object Cache, состояние кеша объектов
8.например Memcached
https://wordpress.org/plugins/debug-bar/
31. Debug Bar Actions and Filters
Addon
https://ru.wordpress.org/plugins/debug-bar-actions-and-filters-addon
Выводит все хуки и фильтры,
использованные внутри запроса, списком,
а также в виде дерева внутри интерфейса
Debugbar
34. Debug Bar Console
https://wordpress.org/plugins/debug-bar-console/
Простая консоль, позволяющая написать и запустить
кусочек php или SQL запрос прямо в окружение
текущей конфигурации WordPress, и сразу увидеть
результат выполнения в нижней части экрана.
Доступны все функции ядра плагинов и шаблона.
38. Обезопаситься от
внешнего мира
1. Применяем код ревью внутри команды.
2. Обязательное автообновление и использование
актуальных версий.
3. Обязательное ревью «вендорных» плагинов и тем.