Используем CodeSniffer

PHP_Deep_LAST_10.07_3_site.png

Сейчас большинство команд разработки принимает на вооружение стандарты кодирования и организовывает процедуры следования им. Самый лучший способ следить за соблюдением принятых стандартов, конечно же, это code review. Но постоянное возвращение кода из-за незамеченного тобой отступления от правил кодирования, к примеру, отсутствия отступа перед оператором return, не добавляет популярности данной процедуре. Чтобы уменьшить объём подобных небрежностей, для PHP-программистов существует инструмент CodeSniffer.

Кто виноват и как с этим бороться: о безопасности веб-приложений

PHP_Deep_LAST_10.07_2_Site.png

Все слышали о SQL-инъекциях, XSS, DoS, DDoS. Кто-то уходил дальше и рассказывал о других методах код-инклудинга, сниффинга, брутфорсинга. И только один из десяти кандидатов на собеседовании может полностью описать последствия удачно осуществлённой SQL-инъекции. Но самое неприятное, что практически все абсолютно уверены, что фильтрация всех получаемых от пользователя данных гарантирует отсутствие уязвимостей в коде.

Yii2: первое знакомство

PHP_Deep_LAST_10.07_site.png

В жизни каждого начинающего программиста наступает момент, когда становятся важными по крайней мере две составляющие: скорость и качество. Если качество кода приходит с годами, то прирост скорости в разработке можно получить в достаточно короткое время благодаря использованию различных фреймворков.

Самоисполняющиеся пророчества в управлении

DevHead_Deep_10.07_Site.png

Термин «самоисполняющееся пророчество» слышали, наверное, все. Но я на всякий случай дам определение из Википедии:

«Самоисполняющееся пророчество — ложное определение ситуации, вызывающее новое поведение, которое превращает первоначальное ложное представление в реальность».

Если не очень понятно, о чём идет речь, приведённый ниже пример расставит всё по местам, потому что речь пойдёт о самоисполняющемся пророчестве или проклятии управленца. Но для начала будет уместно вспомнить «Теорию X и теорию Y» МакГрегора.

Полезные и малоизвестные функции Argparse из коробки

WebDev_Deep_9.07_site.png

Argparse – модуль из стандартной библиотеки для работы с аргументами командной строки. Помимо стандартной функциональности в этом модуле есть много дополнительных фишек, о которых много, кто не знает, а зря: они бывают очень полезны. Давайте рассмотрим некоторые из них.

Unable to connect to remote asterisk (РЕШЕНО)

Linux_Deep_10.07_site.png

После запуска asterisk через systemctl от пользователя «asterisk» обнаружилось, что при подключении к CLI выдаёт ошибку:

Unable to connect to remote asterisk (does /var/run/asterisk/asterisk.ctl exist?)

После разбирательства выяснилось, что у папки /var/run/asterisk владелец указан root и права 755.

Про retina и @media

JS_Deep_6.07_Site.png

Retina — это зарегистрированный компанией Apple товарный знак. Под эти знаком выпускаются дисплеи (включая дисплеи мобильных устройств) с очень высоким разрешением экрана и маленьким размером пикселей. Сейчас это название «приклеилось» просто ко всем таким дисплеям.

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

Внедрение предметно-ориентированного проектирования в PHP

Перевод статьи Как использовать PHP для управления следующим DDD-проектом вашей компании и эффективно моделировать реальные ситуации, чтобы помочь определить вашу бизнес-логику? Предметно-ориентированное проектирование (Domain-Driven Design, в дальнейшем - DDD) – это методология разработки программного обеспечения для проектирования сложных программных проектов с целью доставки конечного продукта, который отвечает задачам организации. Фактически, DDD способствует фокусированию проекта на развивающейся базовой модели.

Проксирование для Scrapy

Python_Deep_10.07_SITE.png

Scrapy – прекрасный фреймворк для парсинга данных с сайтов. Правда, сайты не любят, чтобы их данные парсили, ещё и бесплатно. И поэтому банят беспощадно. Но иногда очень хочется спарсить немножко данных. На помощь приходят прокси-сервера для скрейпинга. Например, stormproxies, proxymesh и другие.