Junior разработчик
Локальный веб-сервер под Linux, с автоматическим поднятием хостов и переключением версий PHP
Цели
- Использовать текущий на момент написания статьи софт
- Чтоб разграничить локальные домены, будем использовать специальный домен .loc
- Переключения версий PHP реализуем через поддомен c помощью fast-cgi
- Автоматическое создание хоста с помощью vhost_alias и dnsmasq
Что имеем в итоге. При переходе на
56.test.locApache запустит c версией PHP 5.6.36
/var/www/test.loc/public_html/index.phpПоменяв поддомен на
72.test.locбудет запущен тот же файл но уже с версией PHP 7.2.7
Другие версии доставляются аналогичным описанным ниже способом.
Для создания еще одного сайта просто создаем в /var/www/ папку имеющую окончание .loc, внутри которой должна быть папка public_html являющаяся корнем сайта
Вот собственно и все. Как без дополнительных мучений, перезапусков, и редактирований конфигов имеем автоматическую систему для работы с сайтами.
Офис под Agile: где разместить тысячу разработчиков?
Примерно полтора года назад стало понятно, что мы перестали помещаться в наш офис и нам надо искать себе новый дом.
Пятничный PHP: бесплатные вебинары от Skillbox
Так вот, в сегодняшней подборке — бесплатные вебинары по PHP. Темы самые разные, полезную для себя информацию может почерпнуть как новичок (основной упор именно на них), так и программист с опытом.
Composer — менеджер зависимостей для PHP
Кратко, как это работает:
- У вас есть проект, который зависит от нескольких библиотек.
- Некоторые из этих библиотек зависят от других библиотек.
- Вы описываете в своём проекте те библиотеки, от которых непосредственно зависит ваш код.
- Composer находит нужные версии требуемых библиотек для всего проекта, скачивает их и устанавливает в папку вашего проекта.
При создании Composer авторы черпали идеи и вдохновение из аналогичных проектов: npm для Node.js и Bundler для Ruby.
Изначально он был спроектирован и разработан двумя людьми Nils Adermann и Jordi Boggiano, сейчас в проекте участвует более двадцати контрибьюторов, Проект написан на PHP 5.3, распространяется под лицензией MIT и доступен на github.
Первые коммиты были сделаны апреле 2011 года и на сегодняшний день Composer находится в стадии «alpha3». Однако, он уже достаточно стабилен и используется многими популярными PHP проектами (например, Symfony 2). Список проектов использующих Composer можно посмотреть на сайте packagist.org — это официальный репозиторий Composer пакетов. Кстати, на недавней конференции Devconf 2012 разработчик фреймворка Yii в своём докладе упомянул, что Yii2 скорее всего тоже будет использовать Composer.
В этой статье я кратко опишу основные возможности Composer и мы попробуем создать демонстрационный проект использующий Composer для загрузки необходимых библиотек. Все примеры будут доступны на github.com и bitbucket.org.
Как мы перестали тратить неделю на выдачу dev-стенда
Небольшие трюки с Elasticsearch
Открытый вебинар «Создание Web-сайта на фреймворке Yii2»
На прошлой неделе наш новый преподаватель курса «Backend разработчик на PHP» провёл первый открытый урок на тему «Создание Web сайта на фреймворке Yii2». Предлагаем вашему вниманию запись и транскрипцию, собственно, вебинара.
QA-meetup SuperJob
Алексей Захаров, президент компании Superjob открыл митап.
Первым с докладом «Эффективная автоматизация тестирования Superjob» выступил Антон Шкредов, специалист по автоматизации тестирования в SuperJob.ru.
Антон поделился опытом поднятия автоматизации с нуля на примере проекта Superjob.
«Столкнувшись с ситуацией, когда приёмочное тестирование занимает 10 часов, а цель компании — ежедневные релизы, приходит понимание того, что отделу тестирования необходимо соответствовать и менять устоявшиеся подходы. Для избавления от ежедневно повторяющейся деятельности очевидным лекарством является автоматизация этого процесса. Мы решили не превращать автоматизацию в ещё одну проблему. На примере нашего веб-проекта мы расскажем, как сделали тесты быстрыми и стабильными и какие универсальные способы для этого использовали».
→ Презентация
Рендеринг HTML файлов: глава из книги «ReactPHP для начинающих» от разработчика Skyeng
Бэкенд-разработчик мобильного приложения Skyeng Сергей Жук продолжает писать годные книги. На сей раз он выпустил учебник на русском языке для только осваивающей PHP аудитории. Я попросил Сергея поделиться полезной самодостаточной главой из его книги, ну и дать читателям Хабры скидочный код. Ниже — и то, и другое.
Низкоуровневая реализация префиксного дерева trie на PHP
Предисловие
Описанная здесь реализация trie на PHP делает пока слишком жирный словарь, который соответственно довольно долго загружается в память, что нивелирует довольно неплохую скорость её работы. Скорость поиска составляет ~80 тыс. слов в секунду. Словарь сделан из списка лемм словаря opencorpora.org и включает в себя 389844 слова. В несжатом виде словарь весит ~150мб, а сжатый gzip ~6мб. Однако довольно неплохие результаты быстродействия доказывают, что на чистом PHP можно сделать вполне работоспособное префиксное дерево trie.
Вебинары Skillbox: самое интересное — бесплатно
Сегодня суббота, а это значит, что впереди долгожданные (и, надеемся, полноценные) два дня отдыха. Но для многих из нас отдых — это возможность переключиться с работы на саморазвитие. Книги, видео, самостоятельная работа над любимым проектом — для всего этого теперь есть время.
Ну а если есть время, то почему бы не просмотреть пару-тройку бесплатных вебинаров Skillbox? Это записи, которые мы выложили на YouTube. Темы разные, поскольку мы решили не останавливаться на чем-то одном, как в наших обычных постах.
Сообщения с сайта в ВК – просто и эффективно – PHP+CUrl
Для своего сервиса уведомлений о новых объявлениях мне необходимо быстро и бесплатно доставлять уведомления о новых объявлениях пользователям. Базовый канал – емайл – не удобен. Другой хороший канал – мессенджер Телеграмм – решил побороться за приватность и стал не надежен. Поэтому пришлось добавить альтернативу в виде ВК (тем более что сервис умеет еще отслеживать группы в ВК на появление новых записей и комментариев). Был приятно удивлен простотой и продуманностью настройки, даже Телеграмм рядом не стоял.
Как работают ИТ-специалисты. Алексей Рыбак, глава разработки Badoo
7 и 8 ноября в Сколково прошла конференция HighLoad++ 2016. Более 200 экспертов выступали с докладами о высоконагруженных сервисах, проблемах работы с ними, администрировании и многом другом.
На месте мы смогли пообщаться с разными экспертами. Большинство из них пишет код, либо писали его в прошлом. Они рассказали нам о своем режиме труда и отдыха, профессиональных привычках, об инструментарии, который они используют, и многом другом.
С каждым мы провели интервью в формате блиц-опроса. Будет интересно выяснить, что объединяет этих IT-специалистов, в чем они похожи. Возможно, их ответы помогут выявить какие-то общие закономерности, полезные советы, которые помогут многим из нас.
Вышел PHP 7.2.0
Вчера, 30 ноября 2017г. команда разработки PHP объявила о релизе PHP 7.2.0
Это второй минорный релиз в серии PHP 7.
PHP 7.2.0 включает в себя некоторые улучшения а также новый функционал.
Как выявлять и развивать таланты в IT: результаты первого Team Leader meetup
24 января 2018 года в Яндексе прошёл первый Team Leader meetup. Мероприятие посетили в общей сложности порядка семидесяти руководителей разработки из различных компаний.
Мы хотели, чтобы участники встречи были активно вовлечены в дискуссию, поэтому сразу выбрали в качестве основного формат панельной дискуссии в противовес стандартным презентациям. Таким образом, в разговоре участвовали сразу несколько экспертов из ведущих IT-компаний: Яндекса, Mail.Ru, Skolkovo Foundation, Phillips Innivation Labs RUS, 1C GAMES STUDIO. У слушателей в зале была возможность реагировать на высказывания экспертов при помощи специального бота, который демонстрировал их эмоции в реальном времени на специальном экране, расположенном прямо в зале.
Также для нас было важным, чтобы встреча была интересна представителем самых разных специализаций, с этим связан и выбор темы. Наши эксперты занимаются бекенд- и фронтенд-разработкой, разработкой игр, исследованиями и так далее.
С момента первой встречи прошло уже несколько месяцев, и мы, наконец, готовы поделиться её результатами.
Прямая линия с ТМ
При том, что, как оказалось, некоторые из наших сотрудников очень даже не против рассказывать о своей работе, но «не знали, что так можно». Засев очередной раз в переговорке, мы решили начать рассказывать о работе нашей компании.
Опыт 1440 миграций баз данных
Представьте себе Oracle DBA. Ему уже за тридцать, он слегка полноват, носит жилетку, на шее у него висит секретный токен доступа ко всем базам, а в резюме полстраницы пройденных им сертификаций. Суббота. День большого релиза. Кульминация. Время накатывать изменения на базу данных. Он набирает sqlplus, нажимает ENTER и по черному экрану куда-то вверх, в пустоту, устремляются километры SQL команд. Совсем как в звездных войнах. Спустя пять минут все готово. Через час релиз завершен. Работа сделана, день удался. Теперь можно и по паре пива.
Что такое RESTful на самом деле
В сегодняшнем переводе — простое и понятное описание RESTful, и какой должна быть система, чтобы ее можно было так называть.
Пишем свой API для сайта с использованием Apache, PHP и MySQL
С чего все началось
Разрабатывая проект, я столкнулся с необходимостью организации клиент-серверного взаимодействия приложений на платформах iOS и Android с моим сайтом на котором хранилась вся информация — собственно БД на mysql, картинки, файлы и другой контент.
Задачи которые нужно было решать — достаточно простые:
регистрация/авторизация пользователя;
отправка/получение неких данных (например список товаров).
И тут-то мне захотелось написать свой API для взаимодействия с серверной стороной — большей своей частью для практического интереса.
Входные данные
В своем распоряжении я имел:
Сервер — Apache, PHP 5.0, MySQL 5.0
Клиент — Android, iOS устройства, любой браузер
Я решил, что для запросов к серверу и ответов от него буду использовать JSON формат данных — за его простоту и нативную поддержку в PHP и Android. Здесь меня огорчила iOS — у нее нет нативной поддержки JSON (тут пришлось использовать стороннюю разработку).
Information
- Rating
- 5,081-st
- Location
- Долгопрудный, Москва и Московская обл., Россия
- Date of birth
- Registered
- Activity