Нестандартный подход к файлохранилищу. AWS, Volumes? Прошлый век)) Мы раздаём файлы с Google Drive при помощи пары строк кода.
Все тут https://telegra.ph/Razdaem-fajly-s-Google-Drive-posredstvom-nginx-07-22
Все тут https://telegra.ph/Razdaem-fajly-s-Google-Drive-posredstvom-nginx-07-22
Telegraph
Раздаем файлы с Google Drive посредством nginx
Предыстория Так уж случилось, что нужно мне было где-то хранить более 1.5тб данных, да еще и обеспечить возможность скачивания их обычными пользователями по прямой ссылке. Поскольку традиционно такие объемы памяти идут уже на VDS, стоимость аренды которых…
Как происходят Deadlock в InnoDB. Кратко и понятно. https://telegra.ph/Nemnogo-pro-Deadlock-07-22
Telegraph
Немного про Deadlock
Это совсем краткий пост о причинах возникновения Deadlock В более менее нагруженных проектах, использующих транзакции InnoDB, в любой момент может возникнуть ошибка вида «Deadlock found when trying to get lock; try restarting transaction» Главное не паниковать…
О важности слепого ввода https://telegra.ph/YA-napisal-ehtu-statyu-ni-razu-ne-posmotrev-na-klaviaturu-08-15
Telegraph
Я написал эту статью, ни разу не посмотрев на клавиатуру
В начале года я почувствовал, что упёрся в потолок как инженер. Вроде бы читаешь толстые книжки, решаешь на работе сложные задачи, на конференциях выступаешь. А всё не то. Поэтому я решил вернуться к корням и по очереди закрыть навыки, которые когда-то в…
Эй, эй, притормози свой код, и загляни в эту статейку, возможно она перевернет твой мир на предмет использования DateTime в PHP.
https://telegra.ph/Perestante-ispolzovat-DateTime-08-27
https://telegra.ph/Perestante-ispolzovat-DateTime-08-27
Telegraph
Перестаньте использовать DateTime
Специально для студентов курса «Backend разработчик на PHP» подготовили перевод интересной статьи о сайд-эффекте популярного инструмента. Работа с датами и временем в PHP порой раздражает, поскольку приводит к неожиданным багам в коде: $startedAt = new DateTime('2019…
DI Container / Service Locator. Почему, зачем, по какой причине. Все тут https://telegra.ph/Kakoe-glavnoe-otlichie-Dependency-Injection-ot-Service-Locator-09-07
Telegraph
Какое главное отличие Dependency Injection от Service Locator?
Для начала разберёмся с определениями (часть примеров кода я буду приводить на PHP, часть на JS, потому что эти два языка в настоящее время находятся в моём активном багаже, а часть на любом другом, потому что я спёр эти примеры из интернета).
Еще не пользуешься статическими анализаторами кода? Это ведь так удобно. Прогнал перед пушем, и по-быстрому пофиксил все стремные очепятки и прочие непроверенные куски кода.
Вот статейка от Badoo на этот счёт
Часть 1 https://telegra.ph/Staticheskij-analiz-PHP-koda-na-primere-PHPStan-Phan-i-Psalm-PART-1-09-12
Часть 2 https://telegra.ph/Staticheskij-analiz-PHP-koda-na-primere-PHPStan-Phan-i-Psalm-PART-2-09-12
Вот статейка от Badoo на этот счёт
Часть 1 https://telegra.ph/Staticheskij-analiz-PHP-koda-na-primere-PHPStan-Phan-i-Psalm-PART-1-09-12
Часть 2 https://telegra.ph/Staticheskij-analiz-PHP-koda-na-primere-PHPStan-Phan-i-Psalm-PART-2-09-12
Telegraph
Статический анализ PHP-кода на примере PHPStan, Phan и Psalm. PART 1
Компания Badoo существует уже более 12 лет. У нас очень много PHP-кода (миллионы строк) и наверняка даже сохранились строки, написанные 12 лет назад. У нас есть код, написанный ещё во времена PHP 4 и PHP 5. Мы выкладываем код два раза в день, и каждая выкладка…
Занимательная статейка по static переменным. Никаких ГУРУ советов, просто небольшие наблюдалки. Всё тут https://telegra.ph/Strannye-oni-staticheskie-peremennye-v-PHP-09-17
Telegraph
Странные они, статические переменные в PHP
Дисклеймер: данная статья не явит вам какого то откровения и не откроет третий глаз, но позволит разобраться в не очень очевидном вопросе более детально. Мне по крайней мере при ее написании она в этом помогла. Если вы матерый волк в php то можете не читать…
Просто оставлю это здесь (Осторожно, очень много текста, и ваш мир никогда не станет прежним после прочтения) https://telegra.ph/Kak-razrabotchik-ya-nikogda-ne-znayu-sebe-cenu-potomu-chto-eyo-net-No-vsya-sistema-postroena-tak-kak-budto-ona-est-09-18
Telegraph
Как разработчик, я никогда не знаю себе цену, потому что её нет. Но вся система построена так, как будто она есть
Каждый раз перед собесом я говорю себе: "Спокойно, не нужно ничего выдумывать, доучивать и врать, твоих знаний и опыта достаточно для того, что бы работать у них. Ты усилишь любую команду, тебе есть что предложить, а пробелы в твоих знаниях — приемлемы. Если…
Разбираемся, когда абстракции всё-таки могут повредить разработке, а простой лапшекод работает быстрее. Занимательная статья от FunCorp https://telegra.ph/PHP-pochyom-abstrakcii-dlya-naroda-09-27
Telegraph
PHP, почём абстракции для народа?
Joy: What is going on? Sadness: We’re abstracting! There are four stages. This is the first. Non-objective fragmentation! Bing Bong: Alright, do not panic. What is important is that we all stay together. [suddenly his abstract arm falls off] Joy: Oh! [Sadness…
После проведения многих собеседований, я словил себя на мысли, что среди разработчиков есть определенное количество людей, которые "стартанули" сразу с фреймворков. Они пишут свой код, даже не задумываясь о том, что там, под капотом. Как работает DI, как написать SQL запрос на получение определенных агрегирующих значений, для них это просто магия какого-либо фреймворка. Да, инкапсуляция - это очень круто, позволяет не задумываться, что же там внутри.
Но всё-таки на мой взгляд, хороший разработчик должен уметь навелосипедить свой DI контейнер, или слой работы с БД.
А с этим нам поможет разобраться вот эта статья: https://telegra.ph/Sovremennyj-PHP-bez-frejmvorkov-10-08
Но всё-таки на мой взгляд, хороший разработчик должен уметь навелосипедить свой DI контейнер, или слой работы с БД.
А с этим нам поможет разобраться вот эта статья: https://telegra.ph/Sovremennyj-PHP-bez-frejmvorkov-10-08
Telegraph
Современный PHP без фреймворков
У меня есть для вас непростое задание. Когда в следующий раз начнёте новый проект, постарайтесь обойтись без PHP-фреймворка. Я не собираюсь перечислять недостатки фреймворков, и это не проявление синдрома неприятия чужой разработки: в этом руководстве мы…
Слегка упарываемся и пишем ZIP-архиватор на PHP. А дополнительные возможности, которые открываются после этого - в конце статьи ;) https://telegra.ph/Kak-vyglyadit-zip-arhiv-i-chto-my-s-ehtim-mozhem-sdelat-10-11
Telegraph
Как выглядит zip-архив и что мы с этим можем сделать
За последние пол года кривая дорожка моих пет-проектов завела меня в такие дебри, откуда до сих пор выбраться не представляется возможным. И начиналось то все безобидно — сайт с картинками, но чувство перфекционизма, погоня за халявой, а так же некоторые…
Недавно вдруг задумался, а что я знаю про PSR? Я давно привык считать PSR пачкой стандартов по кодстайлу и автозагрузке. Ну и интерфейс логгера до кучи. И тут вдруг оказалось, что сообщество за последние годы довольно сильно активизировалось, и уже насчитывает 13 действующих стандартов!
Подготовил для себя, и решил поделиться с вами небольшой шпаргалкой по PSR.
https://telegra.ph/SHpargalka-po-PSR-10-11
Подготовил для себя, и решил поделиться с вами небольшой шпаргалкой по PSR.
https://telegra.ph/SHpargalka-po-PSR-10-11
Telegraph
Шпаргалка по PSR
Дисклеймер: По сути для повседневной разработки на базе какого-либо фреймворка нужно знать только несколько стандартов кодирования (PSR-2/PSR-12), да и те можно просто настроить в своей IDE и использовать автоформатирование кода. Скорее всего многие стандарты…
Пачка советов по безопасности, когда добавляешь в проект кучу неизвестного чужого кода. Небезопасные функции, и несколько советов по защите. Все тут https://telegra.ph/Nebezopasnye-funkcii-PHP-10-21
Telegraph
Небезопасные функции PHP
Холдинг Modesco — это более 300 инфосайтов и 5 крупных Интернет-сервисов. Проекты регулярно покупаются и продаются. Как вы понимаете, поддерживать качество кода на высоком уровне в данной ситуации физически невозможно. Да и основное внимание программистов…
Снова разработчики из Badoo радуют нас новыми тестами. На этот раз они перевели один из своих эндпоинтов на PHP Preload, а затем - на RoadRunner. Что из этого получилось, можно прочесть тут https://telegra.ph/Probuem-preload-PHP-74-i-RoadRunner-10-23
Telegraph
Пробуем preload (PHP 7.4) и RoadRunner
Мы часто пишем и говорим о производительности PHP: как мы ей занимаемся в целом, как мы сэкономили 1 млн долларов при переходе на PHP 7.0, а также переводим разные материалы на эту тему. Это вызвано тем, что аудитория наших продуктов растёт, а масштабирование…
Изучение языков программирования – отличная пища для Вашего ума. Особенно, если это Javascript или php. Осваивайте инструменты веб-разработки и получайте новые знания с каналом @drbrain4web.
Каждый день:
1. актуальные статьи,
2. тренды,
3. примеры кода,
4. интересные задачи.
Front & Back. Ждем Вас на канале @drbrain4web
Каждый день:
1. актуальные статьи,
2. тренды,
3. примеры кода,
4. интересные задачи.
Front & Back. Ждем Вас на канале @drbrain4web
Статья про работу с ZIP архивами прямо из PHP неожиданно получила продолжение https://telegra.ph/Kak-vyglyadit-zip-arhiv-i-chto-my-s-ehtim-mozhem-sdelat-CHast-2--Data-Descriptor-i-szhatie-10-28
Telegraph
Как выглядит zip-архив и что мы с этим можем сделать. Часть 2 — Data Descriptor и сжатие
Продолжение статьи Как выглядит zip-архив и что мы с этим можем сделать. Предисловие Доброго времени суток. И снова в эфире у нас нетрадиционное программирование на PHP. В прошлой статье уважаемых читателей заинтересовала тема сжатия в ZIP и сохранение потоков…
А мы запартнерились с ребятами, которые организуют различные митапы, встречи, тусовки по PHP в разных городах. Они даже замутили свой календарь на гитхабе https://github.com/skyeng/php-communities. Календарь открыт, каждый может внести свой вклад в расписание :D
Соответственно - приглашают всех москвичей и гостей на PHP-митап "про страхи" 21 ноября. Все подробности и регистрация по ссылке
http://it.skyeng.ru/php21
Соответственно - приглашают всех москвичей и гостей на PHP-митап "про страхи" 21 ноября. Все подробности и регистрация по ссылке
http://it.skyeng.ru/php21
Forwarded from Cat
Всем привет.
php-fpm жестко хакнули, arbitrary code execution
https://habr.com/ru/news/t/473414/
експлойт есть в открытом виде в
https://github.com/neex/phuip-fpizdam
вобщем, если кто использует php7-fpm - стоит оперативно обновить php-fpm или пропатчить уязвимость.
php-fpm жестко хакнули, arbitrary code execution
https://habr.com/ru/news/t/473414/
експлойт есть в открытом виде в
https://github.com/neex/phuip-fpizdam
вобщем, если кто использует php7-fpm - стоит оперативно обновить php-fpm или пропатчить уязвимость.
Хабр
Выявлена уязвимость PHP 7, которая помогает перехватывать контроль над NGINX-серверами
Эксперты обнаружили в ветке PHP 7 уязвимость CVE-2019-11043 , которая позволяет хакерам выполнять команды на сервере с помощью специально сформированного URL с добавлением '?a='. Данный баг активно...
Всем привет. Немного прописных истин по безопасному хранению паролей https://telegra.ph/RNR-bezopasnost-gde-i-kak-hranit-paroli-11-11
Telegraph
РНР-безопасность: где и как хранить пароли.
Введение Скандал с Facebook и Cambridge Analytica, утечка переписки Демократической партии США в 2016 году, нарушение безопасности данных Google в 2018 году, взлом Yahoo Voice в 2012 году — вот лишь несколько примеров крупных утечек, зафиксированных за последние…
Интересный туториал, как достать пару нужных компонентов из Laravel для использования в своем проекте. https://telegra.ph/Delim-Laravel-na-komponenty-11-13
Telegraph
Делим Laravel на компоненты
О простоте деления фреймворка на компоненты Начиная с Laravel 4, все компоненты — отдельные пакеты, которые в теории можно заставить работать в любом PHP проекте. Однако, некоторые компоненты требуют дополнительной настройки, которая в основном фреймворке…