Forwarded from Книги для программистов
Книга учит основам работы с Docker за 22 коротких урока, каждый из которых можно пройти за один обед. Да, без ночных марафонов с документацией.
Что разберешь:
🔹 Как запускать приложения в контейнерах на Linux, Windows и macOS. И наконец перестать писать «ну у меня локально работает».
🔹 Создание и публикация Docker-образов. Собрать → упаковать → отправить в реестр — без магии и слёз.
🔹 Мультиконтейнерные приложения. Docker Compose и Kubernetes как инструменты, а не загадочные существа.
🔹 Наблюдаемость. Как добавить метрики и логи, чтобы понимать, что происходит внутри контейнера.
🔹 CI/CD и облака. Запуск контейнеров в Azure и GCP, деплой через GitHub Actions — практично, коротко, по делу.
🔹 Работа с легаси. Да, можно упаковать Windows-приложение в контейнер и не переписывать всё с нуля.
🔹 Оптимизация образов. Скорость, безопасность и размер — чтобы твой Dockerfile не выглядел как мамонт.
Книга хороша тем, что в ней нет «истории технологий» и прочего «бла-бла», которое съедает время. Только практические уроки и лабораторки, которые можно выполнить между созвонами.
🔹 Курс «Основы IT для непрограммистов»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
PHP-разработчик в мире AI: создаём агентов и внедряем в прод 🐘
Думали, AI — это только Python? На самом деле, главное — это архитектура и API. Мы научим вас строить мультиагентные системы, которые усилят любой проект.
Чему вы научитесь:
— строить «мозг» агента с помощью паттерна
— оркестровать процессы в удобном интерфейсе
— соединять агентов в команды через
— внедрять
Станьте тем, кто не просто пишет код, а создаёт автономные интеллектуальные системы.
Узнать подробности 🚀
Думали, AI — это только Python? На самом деле, главное — это архитектура и API. Мы научим вас строить мультиагентные системы, которые усилят любой проект.
Чему вы научитесь:
— строить «мозг» агента с помощью паттерна
ReAct;— оркестровать процессы в удобном интерфейсе
n8n;— соединять агентов в команды через
CrewAI и AutoGen;— внедрять
RAG для поиска по базам знаний за миллисекунды.Станьте тем, кто не просто пишет код, а создаёт автономные интеллектуальные системы.
Узнать подробности 🚀
💡Совет по Laravel: Отказ как «Не найдено»
При определении шлюзов или политик из соображений безопасности мы часто предпочитаем возвращать код 404 вместо 403. Laravel предоставляет для этой цели метод
Библиотека пхпшника
#vardump
При определении шлюзов или политик из соображений безопасности мы часто предпочитаем возвращать код 404 вместо 403. Laravel предоставляет для этой цели метод
denyAsNotFound() 🚀Библиотека пхпшника
#vardump
🥱8👍2
🚀 Variable Scope, References, Closures &
Граница между «пользователем фреймворка» и инженером, который понимает язык.
Если PHP для вас — не только Laravel-контроллеры, эти концепции обязательны. Они напрямую влияют на читаемость, баги и архитектуру кода.
🧠 1. Область видимости (Scope)
Где переменная живёт и умирает.
• Local — существует только внутри функции
• Global — доступна везде, но требует
• Static — локальная, но помнит состояние между вызовами
📌 Static — ключ к счётчикам, генераторам ID, singleton-паттернам
❌ Global — почти всегда архитектурный запах
🔗 2. Ссылки (
По умолчанию PHP копирует значения.
С
• Передача аргументов по ссылке
• Алиасы переменных
• Опасность в
📌 Используйте осознанно. Ссылки — мощный, но острый инструмент.
🧩 3. Closures — функции с памятью
Анонимные функции, которые можно:
• передавать
• хранить
• выполнять позже
И главное — они помнят контекст, где были созданы.
🎯 4.
Closure не видит внешний scope автоматически.
•
•
📌 Это основа колбеков, фильтров, middleware, event-handlers.
📍 5. Лексическая область видимости
Правило простое, но критичное:
Это объясняет 90% «магических» багов с колбеками.
💻 6. Реальный кейс
Динамические условия, конфигурации, runtime-логика — всё строится на этом.
👉 Читать статью
Библиотека пхпшника
use в PHPГраница между «пользователем фреймворка» и инженером, который понимает язык.
Если PHP для вас — не только Laravel-контроллеры, эти концепции обязательны. Они напрямую влияют на читаемость, баги и архитектуру кода.
🧠 1. Область видимости (Scope)
Где переменная живёт и умирает.
• Local — существует только внутри функции
• Global — доступна везде, но требует
global (плохая практика)• Static — локальная, но помнит состояние между вызовами
📌 Static — ключ к счётчикам, генераторам ID, singleton-паттернам
❌ Global — почти всегда архитектурный запах
🔗 2. Ссылки (
&) — работа с оригинальными даннымиПо умолчанию PHP копирует значения.
С
& — вы работаете с той же памятью.• Передача аргументов по ссылке
• Алиасы переменных
• Опасность в
foreach (&$v) → обязательно unset($v)📌 Используйте осознанно. Ссылки — мощный, но острый инструмент.
🧩 3. Closures — функции с памятью
Анонимные функции, которые можно:
• передавать
• хранить
• выполнять позже
И главное — они помнят контекст, где были созданы.
🎯 4.
use — захват переменныхClosure не видит внешний scope автоматически.
•
use ($var) — захват по значению•
use (&$var) — захват по ссылке📌 Это основа колбеков, фильтров, middleware, event-handlers.
📍 5. Лексическая область видимости
Правило простое, но критичное:
Closure использует переменные из места создания,
а не из места выполнения.
Это объясняет 90% «магических» багов с колбеками.
💻 6. Реальный кейс
array_filter, array_map, usort — без closures + use они бесполезны.Динамические условия, конфигурации, runtime-логика — всё строится на этом.
👉 Читать статью
Библиотека пхпшника
🥱4❤2🔥1
Forwarded from Библиотека задач по PHP | тесты, код, задания
Что выведет данный код?
Anonymous Quiz
12%
Ничего не выведется
31%
one
2%
two
4%
three
15%
onetwo
36%
Возникнет ошибка выполнения скрипта
Как синхронизировать блокчейн и базу данных без расхождений
Одна из ключевых проблем блокчейн-бэкенда — точно отразить on-chain состояние в off-chain базе.
Не «примерно», не «потом поправим», а один в один.
В статье разобран production-подход на PHP:
— создание off-chain сущности до вызова блокчейна
— ожидание подтверждения транзакции в Soroban
— декодирование XDR через Stellar SDK
— корректная работа с I128, timestamp и enum
— маппинг результата смарт-контракта в Doctrine entity
— фиксация как успешных, так и failed-транзакций
Если вы строите off-chain логику поверх Stellar — это обязательный паттерн, а не опция.
🔗 Читать статью
Библиотека пхпшника
Одна из ключевых проблем блокчейн-бэкенда — точно отразить on-chain состояние в off-chain базе.
Не «примерно», не «потом поправим», а один в один.
В статье разобран production-подход на PHP:
— создание off-chain сущности до вызова блокчейна
— ожидание подтверждения транзакции в Soroban
— декодирование XDR через Stellar SDK
— корректная работа с I128, timestamp и enum
— маппинг результата смарт-контракта в Doctrine entity
— фиксация как успешных, так и failed-транзакций
Если вы строите off-chain логику поверх Stellar — это обязательный паттерн, а не опция.
🔗 Читать статью
Библиотека пхпшника