Forwarded from Азбука айтишника
💣 Токсичный разработчик: гений или бомба замедленного действия?
Токсичный разработчик — это специалист, с которым крайне некомфортно работать. Разбираемся в статье — как к нему относиться:
🔗 Ссылка
Токсичный разработчик — это специалист, с которым крайне некомфортно работать. Разбираемся в статье — как к нему относиться:
🔗 Ссылка
🤔7👍2
🧑💻 Статьи для IT: как объяснять и распространять значимые идеи
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
🌚2🥰1
Создание HTTP-потоков в PHP с помощью Symfony HTTP Client и Ollama API
HTTP-стриминг позволяет постепенно обрабатывать данные по мере их поступления, что особенно удобно для работы с большими или непрерывными потоками, не дожидаясь завершения всего ответа. Такой подход полезен для получения обновлений в реальном времени и оптимизации работы ресурсов, особенно при работе с API и платформами ИИ, которые передают большие объемы данных.
Чтобы реализовать стриминг данных в PHP с использованием Symfony HTTP Client, нужно:
🔹 Настроить HTTP клиент и задать конечную точку API.
🔹 Отправить запрос с параметрами, указывая модель ИИ и текстовый запрос.
🔹 Проверить статус ответа перед обработкой данных, чтобы убедиться в успешности запроса.
🔹 Использовать возможность Symfony получать ответ порциями, что позволяет обрабатывать каждый фрагмент данных сразу по мере поступления.
Этот метод особенно удобен для потоковых API, где каждый фрагмент содержит данные о модели, времени создания ответа и сгенерированный текст. Таким образом, обработка данных проходит быстрее и эффективнее, что особенно полезно для получения ответов в реальном времени.
HTTP-стриминг позволяет постепенно обрабатывать данные по мере их поступления, что особенно удобно для работы с большими или непрерывными потоками, не дожидаясь завершения всего ответа. Такой подход полезен для получения обновлений в реальном времени и оптимизации работы ресурсов, особенно при работе с API и платформами ИИ, которые передают большие объемы данных.
Чтобы реализовать стриминг данных в PHP с использованием Symfony HTTP Client, нужно:
🔹 Настроить HTTP клиент и задать конечную точку API.
🔹 Отправить запрос с параметрами, указывая модель ИИ и текстовый запрос.
🔹 Проверить статус ответа перед обработкой данных, чтобы убедиться в успешности запроса.
🔹 Использовать возможность Symfony получать ответ порциями, что позволяет обрабатывать каждый фрагмент данных сразу по мере поступления.
Этот метод особенно удобен для потоковых API, где каждый фрагмент содержит данные о модели, времени создания ответа и сгенерированный текст. Таким образом, обработка данных проходит быстрее и эффективнее, что особенно полезно для получения ответов в реальном времени.
2❤5👍1
Привет, друзья! 👋
Мы готовим статью об ИИ-инструментах для программирования в 2024 году и хотим услышать ваше мнение! 🤖💻 Поделитесь своим опытом и помогите нам сделать материал еще полезнее. Самые интересные ответы войдут в статью! 🏆
Мы готовим статью об ИИ-инструментах для программирования в 2024 году и хотим услышать ваше мнение! 🤖💻 Поделитесь своим опытом и помогите нам сделать материал еще полезнее. Самые интересные ответы войдут в статью! 🏆
Какой ИИ-инструмент для программирования вы считаете самым полезным и почему? 🛠️
Anonymous Poll
13%
GitHub Copilot
52%
ChatGPT
6%
Claude
10%
Codeium
5%
Локальные LLM
27%
Не пользуюсь ИИ
5%
Другой (укажите в комментариях)
😁7
Как изменилась ваша продуктивность после начала использования ИИ-инструментов в разработке? ⏱️
Anonymous Poll
12%
Значительно выросла (более чем на 50%)
23%
Умеренно выросла (20-50%)
31%
Незначительно выросла (до 20%)
28%
Не изменилась
6%
Снизилась
👍2👏2👾1
Какой аспект разработки, по вашему мнению, больше всего выигрывает от использования ИИ? 🚀
Anonymous Poll
45%
Автодополнение кода
19%
Генерация кода с нуля
16%
Отладка и поиск ошибок
12%
Оптимизация существующего кода
8%
Другое (поделитесь в комментариях)
Не забудьте оставить комментарий с вашими мыслями об ИИ в программировании! Какие преимущества и недостатки вы видите? Какие инструменты рекомендуете попробовать коллегам? 🤔💬
👍1
Forwarded from Библиотека собеса по PHP | вопросы с собеседований
Что такое план выполнения запроса и как его узнать?
План выполнения запроса (Query Execution Plan) — это детальный анализ того, как база данных будет выполнять запрос, включая порядок обработки данных, используемые индексы, методы соединения и другие оптимизации запроса. Понимание плана выполнения запроса может помочь оптимизировать производительность запросов, выявляя возможные проблемы и улучшая структуру запроса или индексы.
В разных системах управления базами данных (СУБД) есть различные способы получения плана выполнения запроса. Ниже приведены общие методы для некоторых из них:
MySQL / MariaDB:
Используйте ключевое слово EXPLAIN перед запросом SQL.
PostgreSQL:
Используйте ключевое слово EXPLAIN перед запросом SQL.
Для более подробного анализа используйте ключевое слово EXPLAIN ANALYZE.
SQL Server:
Используйте ключевое слово EXPLAIN перед запросом SQL.
Для более подробного анализа используйте команду SET SHOWPLAN_TEXT ON;, а затем выполните запрос.
SQLite:
Используйте ключевое слово EXPLAIN QUERY PLAN перед запросом SQL.
Oracle:
Используйте инструкцию EXPLAIN PLAN FOR.
Полученный план выполнения запроса может быть сложным для понимания, но он предоставляет ценную информацию о том, как база данных обрабатывает ваш запрос, что может помочь в оптимизации его производительности.
План выполнения запроса (Query Execution Plan) — это детальный анализ того, как база данных будет выполнять запрос, включая порядок обработки данных, используемые индексы, методы соединения и другие оптимизации запроса. Понимание плана выполнения запроса может помочь оптимизировать производительность запросов, выявляя возможные проблемы и улучшая структуру запроса или индексы.
В разных системах управления базами данных (СУБД) есть различные способы получения плана выполнения запроса. Ниже приведены общие методы для некоторых из них:
MySQL / MariaDB:
Используйте ключевое слово EXPLAIN перед запросом SQL.
PostgreSQL:
Используйте ключевое слово EXPLAIN перед запросом SQL.
Для более подробного анализа используйте ключевое слово EXPLAIN ANALYZE.
SQL Server:
Используйте ключевое слово EXPLAIN перед запросом SQL.
Для более подробного анализа используйте команду SET SHOWPLAN_TEXT ON;, а затем выполните запрос.
SQLite:
Используйте ключевое слово EXPLAIN QUERY PLAN перед запросом SQL.
Oracle:
Используйте инструкцию EXPLAIN PLAN FOR.
Полученный план выполнения запроса может быть сложным для понимания, но он предоставляет ценную информацию о том, как база данных обрабатывает ваш запрос, что может помочь в оптимизации его производительности.
❤7
Скрытые преимущества модульного PHP: Как создавать масштабируемые приложения
Здесь рассматриваются преимущества модульного подхода в разработке приложений на PHP. Основная идея заключается в том, что создание кода, разбитого на небольшие, независимые и взаимосвязанные модули, делает приложение более масштабируемым и поддерживаемым. Такой подход позволяет улучшить гибкость и упростить процесс добавления новых функций, а также тестирования и устранения багов.
Ключевыми принципами модульной архитектуры являются разделение кода на логические блоки и четкое определение зависимостей между ними. Используя модули, разработчики могут работать над разными частями приложения одновременно, что сокращает время разработки. Помимо этого, модульная структура позволяет легче адаптировать приложение к изменениям бизнес-требований или технологическим обновлениям.
Здесь рассматриваются преимущества модульного подхода в разработке приложений на PHP. Основная идея заключается в том, что создание кода, разбитого на небольшие, независимые и взаимосвязанные модули, делает приложение более масштабируемым и поддерживаемым. Такой подход позволяет улучшить гибкость и упростить процесс добавления новых функций, а также тестирования и устранения багов.
Ключевыми принципами модульной архитектуры являются разделение кода на логические блоки и четкое определение зависимостей между ними. Используя модули, разработчики могут работать над разными частями приложения одновременно, что сокращает время разработки. Помимо этого, модульная структура позволяет легче адаптировать приложение к изменениям бизнес-требований или технологическим обновлениям.
DEV Community
The Hidden Benefits of Modular PHP: How to Build Scalable Applications Like a Pro.
Introduction In an era where digital transformation accelerates rapidly, software...
🥱5
Как Elasticsearch поломал сборки и «обнулил» звёзды в Github
В один прекрасный день репозиторий
В один прекрасный день репозиторий
elasticsearch-php
на гитхабе выдал 404 ошибку. Что было дальше — в статье.Хабр
Как Elasticsearch поломал сборки и «обнулил» звёзды в Github
Казалось бы, майская история с Docker hub должна была научить всех нас уделять больше времени на обеспечение целостности артефактов проекта, но на то мы и люди, чтобы учиться на своих (и чужих)...
😁5👍3🥰1
🔎Пользуетесь ли вы какими-либо иностранными новостными ресурсами по программированию на регулярной основе? Если да, то какими?🔽
🤔4
This media is not supported in your browser
VIEW IN TELEGRAM
🤓 Git Gud — игра для изучения Git
Это игра с командной строкой. В ней уровни разделены от простого к экспертному.
🔗 Ссылка
Это игра с командной строкой. В ней уровни разделены от простого к экспертному.
🔗 Ссылка
👍12
⚡️Самые полезные каналы по PHP в одной папке
В ней:
➖ канал для подготовки к собеседованиям
➖ интересные задачи
➖ основной канал (этот)
➖ лучшие вакансии из сферы
➖ и наш чат, в котором можно общаться и задавать вопросы
Добавляйте 👉 тык сюда
В ней:
Добавляйте 👉 тык сюда
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Forwarded from Библиотека программиста | программирование, кодинг, разработка
🍐 Подборка лучших статей «Библиотеки программиста» за октябрь: сохраняй в заметки, чтобы не пропустить #самыйсок
💻🔍💼 Кризис IT-рынка: как джуны и кадровый голод меняют правила игры
🐍🍽️ Питон съел GIL на завтрак: что нового в версии 3.13
🪶 Как следовать принципу DRY при настройке Apache APISIX
📨 Как работают очереди и брокеры сообщений
🎮⚙️ Неправильные настройки импорта в Unity убивают вашу игру
🛠️🎯 12 инструментов для разработки крутого фронтенда
🚀💾⚡️ Protocol Buffers: самая эффективная бинарная альтернатива текстовому формату
💻🔍💼 Кризис IT-рынка: как джуны и кадровый голод меняют правила игры
🐍🍽️ Питон съел GIL на завтрак: что нового в версии 3.13
🪶 Как следовать принципу DRY при настройке Apache APISIX
📨 Как работают очереди и брокеры сообщений
🎮⚙️ Неправильные настройки импорта в Unity убивают вашу игру
🛠️🎯 12 инструментов для разработки крутого фронтенда
🚀💾⚡️ Protocol Buffers: самая эффективная бинарная альтернатива текстовому формату
PHP 8.4 Property Hooks: Можно ли теперь избавиться от геттеров/сеттеров?
В будущей версии PHP 8.4 появится новая функция — «хуки для свойств», позволяющая добавлять логику при обращении к свойствам класса для чтения или записи данных. Это значит, что теперь можно отказаться от использования приватных свойств и публичных методов для их обработки (геттеров и сеттеров).
Здесь изучается влияние этой функции на производительность. В частности, интересует, влияет ли использование хуков вместо геттеров/сеттеров на скорость работы приложения и стоит ли отказываться от привычных методов доступа к данным.
Основные результаты и выводы:
✔️Производительность геттеров и сеттеров: Исследование показало, что вызовы геттеров и сеттеров занимают незначительную часть времени выполнения, даже при работе с большим объемом данных, и практически не влияют на общую производительность приложения.
✔️Сравнение производительности: В тестах с хуками и геттерами/сеттерами разница в скорости оказалась минимальной — около 9%. Это подтверждает, что производительность не должна быть решающим фактором при выборе между хуками и геттерами/сеттерами.
✔️Основные причины использования геттеров/сеттеров: Обычно геттеры и сеттеры применяют не для повышения скорости, а для ограничения доступа к данным и контроля за структурой класса. С хуками такие ограничения также можно реализовать, добавляя нужную логику при доступе к свойству.
✔️Итоги тестирования альфа-версии: Во время ранних тестов PHP 8.4 производительность хуков была ниже, чем у геттеров. Это указывало на необходимость оптимизации, и в итоге в RFC были внесены улучшения, благодаря которым сейчас хуки в PHP 8.4 работают быстрее.
В будущей версии PHP 8.4 появится новая функция — «хуки для свойств», позволяющая добавлять логику при обращении к свойствам класса для чтения или записи данных. Это значит, что теперь можно отказаться от использования приватных свойств и публичных методов для их обработки (геттеров и сеттеров).
Здесь изучается влияние этой функции на производительность. В частности, интересует, влияет ли использование хуков вместо геттеров/сеттеров на скорость работы приложения и стоит ли отказываться от привычных методов доступа к данным.
Основные результаты и выводы:
✔️Производительность геттеров и сеттеров: Исследование показало, что вызовы геттеров и сеттеров занимают незначительную часть времени выполнения, даже при работе с большим объемом данных, и практически не влияют на общую производительность приложения.
✔️Сравнение производительности: В тестах с хуками и геттерами/сеттерами разница в скорости оказалась минимальной — около 9%. Это подтверждает, что производительность не должна быть решающим фактором при выборе между хуками и геттерами/сеттерами.
✔️Основные причины использования геттеров/сеттеров: Обычно геттеры и сеттеры применяют не для повышения скорости, а для ограничения доступа к данным и контроля за структурой класса. С хуками такие ограничения также можно реализовать, добавляя нужную логику при доступе к свойству.
✔️Итоги тестирования альфа-версии: Во время ранних тестов PHP 8.4 производительность хуков была ниже, чем у геттеров. Это указывало на необходимость оптимизации, и в итоге в RFC были внесены улучшения, благодаря которым сейчас хуки в PHP 8.4 работают быстрее.
👍13