POPULARITY
У меня в гостях Ильяс Салихов, директор по технологиям в компании Intaro и проекте retailCRM. В этом выпуске мы с Ильясом обсуждаем различные аспекты разработки, начиная от технических составляющих и заканчивая различными “soft skills” темами. В начале Ильяс рассказал про проект retailCRM, как он появился, какие решает задачи, как устроен и работает. Обсудили мы архитектуру проекта и используемые технологии. Под капотом проекта используются: PHP/Symfony/Doctrine, PostgreSQL, Redis, сервисы на Python и Go и много чего ещё. RetailCRM — это SaaS с большим количеством пользователей, где под пользователями понимается не конкретный человек, а целая компания, использующая retailCRM, внутри которой уже работает некоторое количество человек-пользователей. Сейчас сервис используют порядка 5000 магазинов, то есть пользователей-компаний, 30 млн хитов в сутки. Ильяс рассказал, как они организуют хранение разных пользователей-компаний в базе данных и как организована работа бэкенда с этими данными. Забегая вперёд скажу, что retailCRM — это по большому счёту монолит на PHP/Symfony, где каждый пользователь-компания живёт на своём поддомене, однако все запросы обрабатываются этим самым монолитным приложением, а данные каждого пользователя-компании — это отдельная схема в базе данных PostgreSQL. Также Ильяс рассказал про архитектуру и программные компоненты всей системы в целом. Обсудили мы вопросы миграции данных и выкладки новых версий компонентов, задачи мониторинга и обслуживания и другие сопутствующие вопросы. Не обошли мы стороной и различные около технические темы в разработке, такие организация и инструменты командной разработки, вопросы найма и оценки квалификации программистов, расширение кругозора и обмен знаниями внутри компании. Ссылки на ресурсы по темам выпуска: * Beanstalkd (https://github.com/kr/beanstalkd) — простое решение для организации очередей * Доклад Ильяса про варианты кеширования в Doctrine и тегированный кеш “Extended Doctrine Cache” (https://www.youtube.com/watch?v=haZ1BS1QoCM) * Статья Андрея Смирнова “ (http://smira.ru/posts/20081028web-caching-memcached-4.html)Проблема одновременного перестроения кэшей” (http://smira.ru/posts/20081028web-caching-memcached-4.html#) * Доклад Ильяса “Особенности построения SaaS-сервиса на Symfony2” (https://www.youtube.com/watch?v=VNGuS-UB6DM) * GoSSHa (https://github.com/YuriyNasretdinov/GoSSHa) — утилита быстрого параллельного выполнения команд на тысячах серверов * dplr (https://github.com/muxx/dplr) — обертка над GoSSHa на PHP * Pinba (http://pinba.org/) — MySQL storage engine that acts as a realtime monitoring/statistics server for PHP * Intaro Pinboard (https://github.com/intaro/pinboard) — Realtime PHP monitoring system which aggregates and displays Pinba data * pinba-bundle (https://github.com/intaro/pinba-bundle) — Symfony bundle for pinba timers sending with time of operations execution for Doctrine, Twig and Memcache * custom-index-bundle (https://github.com/intaro/custom-index-bundle) — создание нестандартных индексов (например, индексы на выражение, partial-индексы, gist/gin-индексы) в PostgreSQL через аннотации в Doctrine * twig-injection-bundle (https://github.com/intaro/twig-injection-bundle) — бандл позволяет добавить событийную модель в twig для слабой связности шаблонов * Канал Intaro Development на Youtube (https://www.youtube.com/channel/UCU1-Ee0E9PhZVJeibRea3eA) с записями докладов с митапов Intaro Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
Venturi's Voice: Technology | Leadership | Staffing | Career | Innovation
In this episode Andy Davis talks to Delf Tonder, lead backend developer at CrossLend. Delf is an advocate of agile and consistently applies this methodology to his current role. He also employed and agile mindset in his previous roles at Versatel Deutschland and MyHammer AG. In his previous roles he’s been responsible for migrating front- and backend from Laravel/MongoDB to Symfony2 & Elasticsearch, creating deployment & testing pipeline with Jenkins, phpunit, behat, codeception & ec2. On the show he discusses the advantages of differing business methodologies, improving communication between departments, and security. Show Notes: 1.08 How did you first get into development. 3.30 The importance of having a vision of what you’re trying to work towards. 5.50 Test driven metrics. 8.45 How long have you been working using an agile methodology. 10.01 Switching from waterfall to scrum. 13.04 How much impact do you get from higher levels on your way of working. 14.15 Always knowing what’s going on in your company, never having a bad surprise at work. 16.11 Is there ever frustration around not having the ability to be creative when working on projects. 18.32 What’s getting you excited in technology at the moment. 22.47 Talking about Bitcoin. 25.25 Talking about I.P.O’s.
Symfony, 技術力評価会, エンジニアの評価, エディタについてごまちゃん, つっちー, katzchang, tokoroten さんと話しました。 Silex is dead (… or not) 9. メルカリの現場 | PHPの現場 こわくないSymfony2 - 業務で使って気づいた7つの良いところ Symfony | the big picture ところてんさん VOYAGEのエンジニア評価制度の全貌。「技術力評価会」による、人が育つ組織の作り方 エンジニアの評価観点について - @katzchang.gist Rubyアソシエーションのイベントで、Crystal言語について発表しました | 圧倒亭グランパのブログ Searching Everywhere | IntelliJ IDEA 2017.2 Help
This week we are joined by Jordi Boggiano, Composer (Dependency Manager for PHP) lead and Symfony2 core developer. We begin discussion with how he got into software development, touching on his involvement with Symfony2 before its official release. This topic leads us on to chat about why Composer was developed and how much it has grown in popularity. Jordi then discusses some of the changes he would make if he had the chance, along with what the Toran Proxy is. Finally, we discuss Composer performance and the popular Monolog package that he has developed.
It was great to get the chance to sit down and talk with Jordi Boggiano at SymfonyCon Madrid 2014. Jordi is responsible for Composer, one of the most important pieces of technology that is driving PHP interoperability and the PHP "renaissance" of the last couple of years. He's also on the Symfony2 core team, "and bad about telling things about myself." Read the full post and see the conversation video at the Acquia Developer Center: https://dev.acquia.com/podcast/184-php-reset-php-renaissance-unify-everything-php-composer
Если вы любите Symfony2 так же, как люблю его я, то этот выпуск непременно для вас! А так же для всех, кто интересуется PHP, фреймворками и аспектно-ориентированным программированием. У меня в гостях Александр Лисаченко, руководитель отдела проектирования ПО Alpari-RU. В этом выпуске мы обсуждаем современные PHP-фреймворки, разработку энтерпрайз-приложений на базе PHP-стека. Александр рассказывает про аспектно-ориентированное программирование в целом и своем фреймворке Go! AOP PHP. Так же Александр был в этом году на SymfonyCon 2014 в Мадриде и делится своими впечатлениями от посещения этого мероприятия, какие там были интересные доклады, с кем и о чем ему довелось пообщаться.
Part 1 of 3: Paul Wander, co-founder and VP Sales and Marketing at the UK PHP service provider Inviqa – the co-parent company of SensioLabs UK – was kind enough to give me an hour of his time recently to talk about some interests we have in common. In this podcast, we talk about when Paul discovered open source software, Inviqa and SensioLabs UK's history, Symfony and open source software in the enterprise. In parts 2 and 3, we cover Symfony2, Drupal 8, behavior driven development, open source in the public sector, and more. Read the full post and see the conversation video at the Acquia Developer Center: https://dev.acquia.com/podcast/129-meet-paul-wander-13-php-and-open-source-enterprise
Part 1 of 2 - I spoke with Richard Miller and Tom Kitchin, software engineers at SensioLabs UK and its parent company Inviqa respectively, via a Google Hangout on Air recently. I wanted to learn more about PHP and Symfony from their perspective and how they think the Drupal 8 and Symfony2 are going to affect each other. In part 2, I learn the inside story on one of the first Drupal 8 sites online, www.sensiolabs.co.uk, what their goals were and how they built it and have kept it running since May 2013, and how Drupal 8 will change the way they design applications for clients going forward. Read the full post and see the conversation video at the Acquia Developer Center: https://dev.acquia.com/podcast/127-what-open-source-all-about-drupal-8-symfony-sensiolabs-uk-12
Mapbender3 ist eine Software zur einfachen Erstellung von WebGIS Anwendungen. Basierend auf dem aktuellen Symfony2 Framework wurde eine moderne Webanwendung geschaffen, die durch das Baukastensystem der Bundles von Symfony2 einzeln als auch in andere Anwendungen integriert Verwendung finden kann. OpenLayer dient als Kartenanwendung und wird über MapQuery angesprochen. Zusammen mit einem modernen Verwaltungsbackend für die Kartenanwendungen ist Mapbender3 ein komfortables Werkzeug für die Erstellung und Pflege von Kartenanwendungen. Der Vortrag geht vor allem auf die neuen Komponenten in Mapbender3 ein und stellt diese vor. Einsteigern wird ebenfalls ein Überblick über die Software gegeben. Mit Mapbender3 können einfach WebAnwendungen über ein paar Klicks im Administrations-Backend erstellt werden. Das Administrations-Backend beinhaltet außerdem die Möglichkeit, ein Dienste-Repository aufzubauen. Dienste können hierbei verschiedene von OpenLayers unterstützte Quellen sein. Mapbender3 bietet eine Benutzer- und Gruppenverwaltung mit der Möglichkeit Rechte zuzuweisen. Rechteverwaltung. Benutzer können auch über LDAP in Mapbender übernommen werden. Eine Sicherung von Diensten über OWSPROXY ist ebenfalls vorhanden.
At SymfonyCon Warsaw in December 2013, I spoke with Fabrice Bernhard, co-founder of Symfony service provider Theodo and President of the French PHP Users' Association, AFUP ("Association française des utilisateurs de PHP"), and we compared notes on Drupal, Symfony, and all things open source. Read the full post and see the conversation video at the Acquia Developer Center: https://dev.acquia.com/podcast/125-fabrice-bernhard-symfony2-and-drupal-working-together-working-better
Ryan Weaver is the single biggest contributor to the Symfony2 framework's documentation (which is excellent, check it out!), a self-described Symfony evangelist, and lead at KnpUniversity.com, makers of fantastic PHP tutorial screencasts like this one on using Composer to include PHP libraries in Drupal 7. Read the full post and see the conversation video at the Acquia Developer Center: https://dev.acquia.com/podcast/122-ryan-weaver-and-jeffrey-mcguire-compare-notes-open-source-22
Part 1 of a 2-part conversation with Ryan Weaver from SymfonyCon Warsaw 2013 in which we touch on the great Symfony documentation and its team, discovering the power of community in open source (instead of doing it all yourself), Symfony2 components in Drupal 8 bringing the two communities together, the advantages (present and future) of loose coupling in Drupal 8's architecture, the next big thing, and more! Read the full post at the Acquia Developer Center: https://dev.acquia.com/podcast/121-meet-ryan-weaver-synergies-drupal-symfony2-and-php-12
Drupal 8 Wins: Avoiding the Dead Hook Blues, Part 2 - In today's conversation, Larry Garfield, Kris Vanderwater, and I go over the Go PHP 5 project as the first seeds of cooperation between different PHP projects, how the Symfony2 framework became part of Drupal 8, why we aren't building Drupal 8 on Symfony full-stack, CMI, abstraction in Drupal, and the future of Features in Drupal 8. Read the full post and see the conversation video at the Acquia Developer Center: https://dev.acquia.com/podcast/117-drupal-8-wins-avoiding-dead-hook-blues-23
Drupal 8 Wins: Avoiding the Dead Hook Blues, Part 1 - In August 2013, I spoke with Larry Garfield and Kris Vanderwater in a 90+ minute live Hangout on Air about the origins, details, and implications of the big architectural changes coming in Drupal 8. Today's video and audio podcasts are the first set of "curated" excerpts from that long conversation. We cover Larry and Kris's Drupal backgrounds, early Drupal memories, compare Drupal 4 to Drupal 7 and 8, some pragmatic reasons to choose Drupal, and how to get your head around the Symfony2 framework. Read the full post and see the conversation video at the Acquia Developer Center: https://dev.acquia.com/podcast/116-drupal-8-wins-avoiding-dead-hook-blues-13