🎄 Предновогодняя история про ИИ
Я попросил ИИ-помощника сделать чат со снежинками и Дедом Морозом на Laravel Livewire. ИИ справился!
🐛 Но нашёлся баг: при отправке сообщения чат, страница автоматически прокручивалась вверх.
Причина оказалась в теге формы:
🧐 Что происходило:
1. Кнопка для отправки
2. При клике на такой кнопке срабатывает
3.
📝 Выводы:
• Код от ИИ нужно ревьювить (не новость!)
• Чтобы отревьювить, важно понимать разные особенности и механизмы работы HTML/JS/PHP
• Несмотря на поиск причины бага, ИИ сэкономил для меня много времени на дизайне, который самостоятельно сделать было бы сложно (там миллионы talewind классов, кто вообще такое руками пишет???)
Profit!
P.S. в данном случае ИИ-помощником был AI Assistant от JetBrains в PhpStorm.
Я попросил ИИ-помощника сделать чат со снежинками и Дедом Морозом на Laravel Livewire. ИИ справился!
🐛 Но нашёлся баг: при отправке сообщения чат, страница автоматически прокручивалась вверх.
Причина оказалась в теге формы:
<form action="#">🧐 Что происходило:
1. Кнопка для отправки
<button wire:click=...>Отправить</button> была без атрибута type, значит по умолчанию button type работал как submit2. При клике на такой кнопке срабатывает
onsubmit формы - стандартное поведение браузера3.
action="#" в теге form приводит к автоматической прокрутке страницы вверх - опять же стандартное поведение браузера📝 Выводы:
• Код от ИИ нужно ревьювить (не новость!)
• Чтобы отревьювить, важно понимать разные особенности и механизмы работы HTML/JS/PHP
• Несмотря на поиск причины бага, ИИ сэкономил для меня много времени на дизайне, который самостоятельно сделать было бы сложно (там миллионы talewind классов, кто вообще такое руками пишет???)
Profit!
P.S. в данном случае ИИ-помощником был AI Assistant от JetBrains в PhpStorm.
👍18🥱13👎5🔥3🐳3
Forwarded from DevFM
Есть такой замечательный ресурс от гугла – API Improvement Proposals. Ребята активно поддерживают ресурс, где делятся своими практиками по разработке API.
AIP содержит:
▪️ Рекомендации по проектированию API: AIPs охватывают все основные аспекты создания API, от именования ресурсов до управления версиями и методов работы с HTTP-запросами. Это включает в себя рекомендации по структуре URL, стандартам наименования полей и параметров, а также подходы к работе с HTTP-методами (GET, POST, PUT, DELETE).
▪️Шаблоны и примеры: для многих сценариев предлагаются конкретные примеры и шаблоны реализации, которые помогают разработчикам лучше понимать, как применять правила на практике. Например, можно найти примеры по созданию структурированных ответов, оформлению ошибок и управлению версиями API.
▪️ Конкретные правила и стандарты: AIPs охватывают такие темы, как использование протокола gRPC, RESTful API, стандарты кодирования, а также рекомендации по работе с HTTP-заголовками, кодами ошибок, аутентификацией и авторизацией.
▪️Методология и философия проектирования: помимо технических аспектов, AIPs содержат информацию о том, как Google подходит к проектированию API на концептуальном уровне. Это позволяет понять, почему определённые решения предпочтительны с точки зрения пользовательского опыта и долгосрочной поддержки API.
#skills
AIP содержит:
▪️ Рекомендации по проектированию API: AIPs охватывают все основные аспекты создания API, от именования ресурсов до управления версиями и методов работы с HTTP-запросами. Это включает в себя рекомендации по структуре URL, стандартам наименования полей и параметров, а также подходы к работе с HTTP-методами (GET, POST, PUT, DELETE).
▪️Шаблоны и примеры: для многих сценариев предлагаются конкретные примеры и шаблоны реализации, которые помогают разработчикам лучше понимать, как применять правила на практике. Например, можно найти примеры по созданию структурированных ответов, оформлению ошибок и управлению версиями API.
▪️ Конкретные правила и стандарты: AIPs охватывают такие темы, как использование протокола gRPC, RESTful API, стандарты кодирования, а также рекомендации по работе с HTTP-заголовками, кодами ошибок, аутентификацией и авторизацией.
▪️Методология и философия проектирования: помимо технических аспектов, AIPs содержат информацию о том, как Google подходит к проектированию API на концептуальном уровне. Это позволяет понять, почему определённые решения предпочтительны с точки зрения пользовательского опыта и долгосрочной поддержки API.
#skills
🔥43👍6❤1
Сайт с разными мини-активностями для залипания: Neal.fun
Например, проводим эксперименты с вагонеткой: https://neal.fun/absurd-trolley-problems/
Если не знакомы с «проблемой вагонетки», теория здесь: https://ru.m.wikipedia.org/wiki/Проблема_вагонетки
Например, проводим эксперименты с вагонеткой: https://neal.fun/absurd-trolley-problems/
Если не знакомы с «проблемой вагонетки», теория здесь: https://ru.m.wikipedia.org/wiki/Проблема_вагонетки
neal.fun
Absurd Trolley Problems
Every problem is the trolley problem.
👍9👎5
Новые Возможности Laravel 11.37
Нейро-Пятиминутка PHP
Попробовал сгенерировать подкаст нейросетью, получилась Нейро-Пятиминутка PHP!
Ставьте лайки или дизлайки.
Ставьте лайки или дизлайки.
👍25😁17💩16👎6🤣1🫡1
Элегантные Улучшения Laravel 11.38
Нейро-Пятиминутка PHP
Второй выпуск Нейро-Пятиминутки PHP от Юки про элегантные улучшения в Laravel 11.38.
💩17👎7😁6👍4❤2
ИИ инструменты стали стали неотъемлемой частью ежедневного рабочего процесса.
Например, я снял несколько скринкаст-фаргментов и мне нужно конвертировать их из mov в mp4.
Существует 1001 способ это сделать.
- Ещё пару лет назад я гуглил параметры для консольного ffmepg.
- Год назад я просил ChatGPT подсказать нужные параметры для ffmpeg.
- Сейчас я просто пишу в терминале команду "конвертируй все файлы из mov в mp4 используя ffmpeg", вот как это выглядит:
Например, я снял несколько скринкаст-фаргментов и мне нужно конвертировать их из mov в mp4.
Существует 1001 способ это сделать.
- Ещё пару лет назад я гуглил параметры для консольного ffmepg.
- Год назад я просил ChatGPT подсказать нужные параметры для ffmpeg.
- Сейчас я просто пишу в терминале команду "конвертируй все файлы из mov в mp4 используя ffmpeg", вот как это выглядит:
Media is too big
VIEW IN TELEGRAM
👍31👎5😁1
Пятиминутка PHP
ИИ инструменты стали стали неотъемлемой частью ежедневного рабочего процесса. Например, я снял несколько скринкаст-фаргментов и мне нужно конвертировать их из mov в mp4. Существует 1001 способ это сделать. - Ещё пару лет назад я гуглил параметры для консольного…
На видео достаточно популярный нынче и хайповый терминал Warp для macOS и Linux.
Из коробки AI-помощник с бесплатными 100 запросами в месяц (мне хватает). AI работает без VPN.
https://www.warp.dev
Из коробки AI-помощник с бесплатными 100 запросами в месяц (мне хватает). AI работает без VPN.
https://www.warp.dev
www.warp.dev
Warp: The Agentic Development Environment
The fastest way to build with multiple AI agents, from writing code to deploying it. Trusted by over half a million engineers, Warp gives developers speed, privacy, and control to ship faster.
👍21👎2
5 новых фишек Rector 2.0
Нейро-Пятиминутка PHP
Аудио-обзор Rector 2.0, оригинал статьи: https://getrector.com/blog/5-new-features-in-rector-20
👎15👍7❤1
Разбавим новости миром фронтенда: вышел Tailwind CSS v4.0! 🎉
Ждём в Laravel 12?
https://tailwindcss.com/blog/tailwindcss-v4
Ждём в Laravel 12?
https://tailwindcss.com/blog/tailwindcss-v4
Tailwindcss
Tailwind CSS v4.0
We just released Tailwind CSS v4.0 — an all-new version of the framework optimized for performance and flexibility, with a reimagined configuration and customization experience, and taking full advantage of the latest advancements the web platform has to…
💩24👍10👏5🔥2
https://youtu.be/AALxh1mbsTo?si=5DvTmfwqx_hijkL_
Главную страницу Яндекса переписали с Perl на Go.
Основные критерии показаны на скриншоте из доклада. Рассматривался также вариант использования C++.
Проведём мысленный эксперимент и попробуем по этим критериям оценить PHP:
✅ Популярный
❓ Подходит для высокой нагрузки (Swoole?)
❓ Поддерживается внутри Яндекса
❓ Есть экспертиза в команде
✅ Статическая типизация
✅ Простой для разработки
Главную страницу Яндекса переписали с Perl на Go.
Основные критерии показаны на скриншоте из доклада. Рассматривался также вариант использования C++.
Проведём мысленный эксперимент и попробуем по этим критериям оценить PHP:
✅ Популярный
❓ Подходит для высокой нагрузки (Swoole?)
❓ Поддерживается внутри Яндекса
❓ Есть экспертиза в команде
✅ Статическая типизация
✅ Простой для разработки
💩18😢14🤡8👍5😁5🏆4👾1
Forwarded from Новости от CutCode
🔥 Итоги опроса PHP-сообщества 2024: Разбор и прогнозы 🔥
Мы собрали ответы, проанализировали их и готовы поделиться результатами! В прямом эфире обсудим текущее состояние дел и тренды, которые определяют будущее PHP.
💡 Гости стрима:
Иван Поддубный
Алексей Гагарин
Кирилл Несмеянов
Александр Макаров
От CutCode: Сергей Пантелеев и Данил Щуцкий
📅 31 января в 19:00 (МСК) прямой эфир на YouTube, а также в TG и Вконтакте.
Не пропустите!
#PHP2024 #CutCode #Stateofphp
Мы собрали ответы, проанализировали их и готовы поделиться результатами! В прямом эфире обсудим текущее состояние дел и тренды, которые определяют будущее PHP.
💡 Гости стрима:
Иван Поддубный
Алексей Гагарин
Кирилл Несмеянов
Александр Макаров
От CutCode: Сергей Пантелеев и Данил Щуцкий
📅 31 января в 19:00 (МСК) прямой эфир на YouTube, а также в TG и Вконтакте.
Не пропустите!
#PHP2024 #CutCode #Stateofphp
👍27👎2👌2❤1😱1🤮1
Forwarded from Пых (Валентин Удальцов)
Итоги опроса PHP-комьюнити 2024
⏺ Мы в эфире!
https://youtu.be/S0-B0ixfZMc
https://vkvideo.ru/@cutcoderu?z=video-205214227_456239366
https://youtu.be/S0-B0ixfZMc
https://vkvideo.ru/@cutcoderu?z=video-205214227_456239366
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤3
На канале "Организованное программирование" (@orgprog) Кирилл Мокевнин неплохо так прошелся по разным языкам программирования в формате диалога с экспертом из каждой экосистемы:
Rust: зачем выбирать этот язык в 2025 году? | Дмитрий Коваленко https://youtu.be/bKyxOaP-mDg?si=FS-4fIyLm1c2NQ5P
Почему ассемблер остается актуальным в 2025 году? | Дмитрий Коваленко https://youtu.be/BsNgohFW6rM?si=Wqw8sY67bIpox03L
Руби против всех: язык, который пережил свою эпоху и вернулся сильнее | Владимир Дементьев https://youtu.be/fBJGj6sd9AQ?si=mnCQwf4JxA2doaMo
Дженерики, горутины и перспективы Go: взгляд изнутри | Алексей Палажченко https://youtu.be/M5XJ_Ojjm8M?si=nY0a4OYTbpmJ4sYy
Почему Clojure — выбор программистов для сложных задач? | Николай Рыжиков https://youtu.be/7eJ3yUgbzSA?si=r5AZjNRX4_e0D7iJ
Асинхронный python / Python FastAPI / Python uv | Юрий Селиванов https://youtu.be/kVCTHuWwCR0?si=xuFugxIICgWRqXPu
Какое будущее ждет PHP? | Валентин Удальцов https://youtu.be/1XAbFkMaWxw?si=owRnusBr6Qa00236
Есть ли будущее у Node.js? | Андрей Мелихов https://youtu.be/98qu3CqRNb8?si=_kXA12r_ijVluvds
Rust: зачем выбирать этот язык в 2025 году? | Дмитрий Коваленко https://youtu.be/bKyxOaP-mDg?si=FS-4fIyLm1c2NQ5P
Почему ассемблер остается актуальным в 2025 году? | Дмитрий Коваленко https://youtu.be/BsNgohFW6rM?si=Wqw8sY67bIpox03L
Руби против всех: язык, который пережил свою эпоху и вернулся сильнее | Владимир Дементьев https://youtu.be/fBJGj6sd9AQ?si=mnCQwf4JxA2doaMo
Дженерики, горутины и перспективы Go: взгляд изнутри | Алексей Палажченко https://youtu.be/M5XJ_Ojjm8M?si=nY0a4OYTbpmJ4sYy
Почему Clojure — выбор программистов для сложных задач? | Николай Рыжиков https://youtu.be/7eJ3yUgbzSA?si=r5AZjNRX4_e0D7iJ
Асинхронный python / Python FastAPI / Python uv | Юрий Селиванов https://youtu.be/kVCTHuWwCR0?si=xuFugxIICgWRqXPu
Какое будущее ждет PHP? | Валентин Удальцов https://youtu.be/1XAbFkMaWxw?si=owRnusBr6Qa00236
Есть ли будущее у Node.js? | Андрей Мелихов https://youtu.be/98qu3CqRNb8?si=_kXA12r_ijVluvds
🔥17👍2
Разработчики Clickhouse провели замеры производительности своего JSON типа данных на запросе с агрегацией из 1 млрд. документов:
- Clickhouse в 10 раз быстрее, чем Elasticsearch
- Clickhouse в 2500 раз быстрее, чем MongoDB
- Clickhouse в 9000 раз быстрее, чем PostgreSQL
https://clickhouse.com/blog/json-bench-clickhouse-vs-mongodb-elasticsearch-duckdb-postgresql
Верим?
- Clickhouse в 10 раз быстрее, чем Elasticsearch
- Clickhouse в 2500 раз быстрее, чем MongoDB
- Clickhouse в 9000 раз быстрее, чем PostgreSQL
https://clickhouse.com/blog/json-bench-clickhouse-vs-mongodb-elasticsearch-duckdb-postgresql
Верим?
ClickHouse
The billion docs JSON Challenge: ClickHouse vs. MongoDB, Elasticsearch, and more
Explore how ClickHouse’s new JSON data type outperforms leading JSON databases with unmatched storage efficiency and lightning-fast query speed—all while storing JSON data in a single field and staying true to the promise of JSON databases
🔥30🤔13🤡5👍3
Пришел на Пыхап #2!
Программа (время мск, начало примерно через 15 минут):
17:00. Шардирование в RabbitMQ
18:00. Гибкий проект с фича-флагами Unleash
19:10. Реализация нейронной сети на PHP
Трансляция
https://youtu.be/OVYFFQppq2I
https://vkvideo.ru/video-228746873_456239022
Программа (время мск, начало примерно через 15 минут):
17:00. Шардирование в RabbitMQ
18:00. Гибкий проект с фича-флагами Unleash
19:10. Реализация нейронной сети на PHP
Трансляция
https://youtu.be/OVYFFQppq2I
https://vkvideo.ru/video-228746873_456239022
👍16🔥10❤4❤🔥2
Прочитал интересные подробности в описании официального расширения для Visual Studio Code от команды Laravel:
Расширение будет в фоне запускать Laravel приложение, чтобы разобраться в проекте, предоставить более умный автокомлит и какие-то подсказки.
Все «традиционные» подходы к пониманию кода (PhpStorm, Laravel Idea, и прочие IDE и расширения) основываются на статическом анализе, который не всю «магию» в PHP понимает. Вспомним также плагин MetaStorm, который просит нас: «опишите всю вашу магию/динамику/conventions явным образом в специальном синтаксисе, чтобы я понял».
Поможет ли динамический запуск приложения в фоне (runtime анализ) редактору кода или расширению лучше понять приложение, чем при использовании лишь статического анализа? Интуитивно кажется, что да!
https://marketplace.visualstudio.com/items?itemName=laravel.vscode-laravel
This extension will occasionally boot your app in the background to collect information about your app for use in autocompletion, linking, hovering, and diagnostics
Расширение будет в фоне запускать Laravel приложение, чтобы разобраться в проекте, предоставить более умный автокомлит и какие-то подсказки.
Все «традиционные» подходы к пониманию кода (PhpStorm, Laravel Idea, и прочие IDE и расширения) основываются на статическом анализе, который не всю «магию» в PHP понимает. Вспомним также плагин MetaStorm, который просит нас: «опишите всю вашу магию/динамику/conventions явным образом в специальном синтаксисе, чтобы я понял».
Поможет ли динамический запуск приложения в фоне (runtime анализ) редактору кода или расширению лучше понять приложение, чем при использовании лишь статического анализа? Интуитивно кажется, что да!
https://marketplace.visualstudio.com/items?itemName=laravel.vscode-laravel
Visualstudio
Laravel - Visual Studio Marketplace
Extension for Visual Studio Code - Official VS Code extension for Laravel
🤮22👍15👎8🤯6💩1