Подача документов на рабочую визу в Гонконге

Прошло уже довольно много времени с того момента как я переехал из России в Гонконг чтобы работать здесь программистом. В целом весь процесс был довольно обширным и включал в себя множество этапов, таких как: интервью, подача документов на рабочую визу, переезд, поиск жилья и прочее. В этой статье я хочу затронуть лишь один из них, а именно - подачу документов для получения рабочей визы.

Nginx: HTTP/2 не работает

Настройка HTTP/2 в Nginx может показаться тривиальной задачей, однако есть ряд потенциальных проблем, с которыми вы можете столкнуться. В данной статье я опишу несколько из тех, с которыми столкнулся лично я при настройке наших серверов.

Как настроить HTTP/2 с Varnish используя Nginx

Все больше и больше компаний начинают использовать HTTP/2 для повышения производительности своих сайтов. Настроить HTTP/2 довольно просто, но что делать, если в вашей инфраструктуре есть Varnish. Т.к. Varnish 4.* не поддерживает SSL, то нам прийдется найти способ заставить все необходимые компоненты работать друг с другом.

Автоматизация исправлений ошибок оформления кода с помощью Git и PHP Coding Standards Fixer

Все мы знаем про стандарты оформления кода в PHP сообществе и пытаемся им следовать. Несмотря на это, мы все люди и допускаем ошибки. Это значит, что у нас есть несколько вариантов решения данной проблемы: 1) Править все ошибки стиля вручную. 2) Использовать плагины для IDE или другие инструменты для запуска в терминале. Эти два варианта не те, которые я хотел бы использовать. На самом деле есть еще один вариант - все автоматизировать. Я буду использовать Git и PHP CS Fixer, но несмотря на это принципы очень просты и вы легко сможете применить их к вашему языку программирования и системе контроля версий. Продолжайте читать, чтобы избавиться от рутины и стать более продуктивным разработчиком.

Как использовать произвольное хранилище пользователей в FOSUserBundle

Практически все используют FOSUserBundle в своих Symfony проектах т.к. он ускоряет разработку и обладает хорошим набором функциональности для управления пользователями. Бандл предоставляет несколько готовых реализаций хранилищ данных: Propel и несколько для Doctrine (ORM и ODM). Это здорово, но иногда возникает необходимость работы с другими хранилищами данных. FOSUserBundle достаточно гибок и позволяет реализовать, и использовать произвольное хранилище. Для того, чтобы использовать все возможности FOSUserBundle Вам достаточно будет написать свой менеджер пользователей под конкретного провайдера.

Интеграция Paysera в Symfony

Сегодня сложно представить себе серьезный проект, где не понадобилась бы интеграция с платежными системами. Не смотря на то что существует множество популярных систем и аггрегаторов, таких как PayPal, RBKMoney, Paymentwall, Robokassa и т.д., я хочу рассказать о Paysera. Это еще одна, довольно новая платежная система. Они позиционируют себя как выгодных с точки зрения комиссий за их услуги. Paysera позволяет вашим пользователям расплачиваться карточками, SMS и т.д. Интеграция довольно простая, однако имеет некоторые неочевидные моменты, которые я и хочу осветить.

Высокоуровневая архитектура платежных систем

В какой-то момент времени все мы сталкиваемся с необходимостью интеграции платежных систем в наши проекты. Это может показаться трудным, но на самом деле это не так. Существует большое количество таких систем, однако большинство из них работает по одному и тому же принципу. Достаточно понять картину в общем и Вы без проблем сможете интегрировать любую из них в свой проект.

Как избегать распространенных ошибок в JavaScript

Время от времени все мы делаем ошибки. Это может произойти по многим причинам: недостаток опыта, плохое настроение, поджимают сроки сдачи, головная боль и т.д. Не смотря на то, что какие-то моменты в JavaScript'е могут казаться незначительными, они могут стать причиной серьезных проблем и ночной отладки кода в будущем. Поэтому вне зависимости от внешних факторов вы должны уделять внимание деталям во время программирования. Я хочу дать вам пару советов для улучшения всей этой ситуации.

Как улучшить поиск в интернет магазине с помощью Elasticsearch

Если Вы до сих пор используете MySQL или другую реляционную базу данных для поиска на своем интернет магазине, то Вам определенно стоит прочитать эту статью. В ней я расскажу что такое Elasticsearch и каким образом он может повысить лояльность пользователей и потенциально увеличить продажи. Заинтригованы? Тогда продолжаем.