Пятиминутка PHP
2.87K subscribers
334 photos
26 videos
826 links
Подкаст о PHP, DBA, архитектуре, DevOps. Авторское мнение о современных трендах в веб-разработке и интересные беседы с гостями. Темы про СУБД, Linux, DevOps

Автор: @petrmyazin
Download Telegram
Forwarded from Laravel World
😁33👏1🕊1🥴1🌚1
11🎉5
Предновогодний PHP-сюрприз: представьте себе элемент формы с пробелами в атрибуте name <input type="text" name="имя с пробелом">, делаем submit формы в браузере, что увидим в $_POST?

Ответ: ['имя_с_пробелом' => ...]

Откуда взялись подчёркивания вместо пробелов в ключе 'имя_с_пробелом'? Оказывается, это сделано для совместимости с register_globals (есть олды, которые помнят register_globals?)!

Более того, на подчёркивания заменяются не только пробелы:

chr(32) ( ) (space)
chr(46) (.) (dot)
chr(91) ([) (open square bracket)
chr(128) - chr(159) (various)

https://www.php.net/manual/en/language.variables.external.php
13🙈8👍5
Крутанул слот-машину, в следующем году всё ок https://tproger.ru/interactive/slot-machina-2022/
🔥4😁2🥱1
Как взбодриться после новогодней ночи 1 января? Не благодарите.
😁15🤣5👏2🤩1
Свежие PHP-инсайды: Валентин (телеграм канал Пых) перешел на Roadrunner! https://t.me/phpyh/341
6😁3🤡1
Wakatime - сервис статистики, ставится плагин в IDE и считает время проведённое за кодом. Только что прислал мою статистику за 2022
🔥17🤔2
Все уже, наверное, слышали про ChatGPT, который пишет более менее вменяемый код в некоторых случаях.

Ещё один пример:
- ChatGPT решил поставленную задачу с помощью рекурсивного алгоритма
- Человек попросил сделать без рекурсии и ChatGPT выдал решение без рекурсии
- Человек нашел ошибку, ChatGPT разобрал причины своей ошибки и исправил

Ссылка на видео с нужным таймкодом (на русском): https://youtu.be/Bn3Vv2KvhE0?t=1762
🔥6👍3😁3🤔1😢1
1 января скопировал директорию c рабочими проекатами в локальную директорию Yandex.Disk - началась выгрузка в облако.

Клиент диска иногда показывает текущую скорость upload 5-10 Мб/сек, а иногда просто пишет статус "Syncing" - подозреваю, что он так индексирует изменения, обменивается метаинформацией с сервером.

Размер директории всего около 10 Гб, при скорости 5 Мб/сек должно было выгрузиться за 33 минуты, прошло уже 60 часов. И не понятно где посмотреть процент выполненного.

Но есть специфика: внутри около 350тыс мелких файлов в различных директориях node_modules и vendor - возможно, это сильно усложняет работу для Яндекс Диска. Пробовал нагуглить похожие жалобы по выгрузке node_modules в Яндекс.Диск, но не нашел.

Для сравнения Dropbox отлично справляется с задачей выгрузи сотен тысяч мелких файлов из node_modules.
🤔7👍4😁4
Анекдот дня: What happens to your application when it uses an ORM? It hibernates.
🔥6😁32🤔2🤨2👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Кирилл Мокевнин из Хекслета про популярность PHP vs Python vs JS среди студентов курсов
👍144🤔41🤡1
Разбирал сохранённые плейлисты на YouTube, нашел простой и интересный доклад с PHP UK 2017: разбор определений базовых терминов
- parameter vs argument
- lexical scope vs dynamic scope
- recursion
- concatenation
- instantiation
- …

https://youtu.be/iNrmKyA1vig
👍8
Forwarded from Пых (Валентин Удальцов)
Самописные инфраструктурные компоненты vs компоненты фреймворка. Когда усилия стоят того?

Мы с Петром Мязиным врываемся в 2023 c анонсом нового эпизода подкаста Пятиминутка PHP про самописные инфраструктурные компоненты. Завтра запишем, через неделю Пётр выложит!

А пока в комментариях напишите вопросы по этой теме и кейсы, которые вы бы хотели, чтобы мы разобрали.
🔥10👍3🤔1
Пых
Самописные инфраструктурные компоненты vs компоненты фреймворка. Когда усилия стоят того? Мы с Петром Мязиным врываемся в 2023 c анонсом нового эпизода подкаста Пятиминутка PHP про самописные инфраструктурные компоненты. Завтра запишем, через неделю Пётр…
Записали с Валентином отличный выпуск подкаста, теперь надо смонтировать!

Начали с общих рассуждений о плюсах и минусах самописных инфраструктурных компонент, слово за слово, и вот мы уже разбираем outbox паттерн и реализацию exchange и middleware для шины сообщений на PHP 🤯
👍14🔥4😁3
ПРОГРАММИРОВАНИЕ'2023

Чуть-чуть попрограммировал, причем, так уж вышло, на PHP, на котором свободно я не писал никогда. Бизнес-задача решена, код занял 14 строк. Гуглить пришлось пять раз, в двух случаях поисковик не помог, зато помог ChatGPT. Понятно, что в обоих я бы в итоге и правильный запрос к Google подобрал, как-то люди и до OpenAI кодили, но всё равно прогресс приятен.

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

#ai #chatgpt
——
http://t.me/startupoftheday — рассказ о новом стартапе каждый день. Кратко и без воды.
🤯3
Forwarded from Senior Software Vlogger
Сеньор джуну в Яндексе:
— Ты отправил код на ревью?
— Я не до конца понял, как работает отправка, но вроде отправил.
😁40😢3🤣3🤪1
Самописные инфраструктурные компоненты
Пятиминутка PHP
Тема этого выпуска: самописные инфраструктурные компоненты – зачем они нужны и чем не угодили Open Source аналоги, помимо фатального недостатка?

Отвечает Валентин Удальцов – автор телеграм канала Пых https://t.me/phpyh


- Пишет ли Валентин собственный фреймворк?
- Что такое инфраструктурный компонент? Определение
- Примеры инфраструктурных компонент, написанных в команде Валентина: работа с БД, виладтор+гидратор на типах статанализа, шина сообщений
- История появления библиотеки для работы с запросами к БД и чем не подошли популярные решения?
- Учёт нюансов PostgreSQL, нативная работа с JSON в СУДБ
- Неудобства Doctrine Query Language (DQL)
- Неудобства Doctrine DBAL
- Single Responsibility принцип в Doctrine
- Конвертация типов из PHP в БД и в обратную сторону из БД в PHP
- Коммит в Open Source библиотеку vs написание своей собственной реализации
- Стоимость разработки самописных компонент для бизнеса
- Мотивация команды
- Распространение знаний внутри компании, документация
- Тесты как документация
- Сегодня самописные компоненты, а завтра самописный фреймворк?
- Безопасность собственного решения
- Свой фреймворк или свой Open Source как часть HR-бренда
- Как отличить резонную разработку
- Кто принимает финальное решение о старте собственной разработки вместо использования готового решения?
- Подробности про собственную шину сообщений (Message Bus компонент)
- Вопросы гарантированной доставки сообщений
- Паттерн Outbox https://habr.com/ru/company/lamoda/blog/678932/
- Недостатки Symfony Messanger Component
- Работа с middleware в шине сообщений – разные middleware для разных обработчиков
- Routing Topology
- Exchange сообщения – Fanout – Exchange модуля/очереди
- Поддержка паттерна Saga
- Отделение класса с состоянием от класса с поведением, но с сохранением инкапсуляции
- Когда будет опубликована библиотека для работы с запросами к БД Thesis? https://phprussia.ru/moscow/2021/abstracts/7654
- Перфекционизм vs Тщательность
- Цели на 2023 год
👍13🔥62
Попросил ChatGPT помочь с подкастом, но пока получилась какя-то фигня
😁31🔥2🤔2
Пордолжаю закидывать ChatGPT вопросами про PHP: