🚀 Как оптимизировать Laravel-приложение: практические советы
Когда приложение растёт или работает с большими объёмами данных, оптимизация — не просто желание, а необходимость. Laravel — мощный фреймворк, который при грамотном подходе может выдавать высокую производительность.
Разбираем ключевые техники:
1️⃣ Оптимизация запросов к базе
Eager Click Me Load More: избегайте проблемы N+1 запросов, загружая связи заранее через
Выбирайте только нужные колонки с помощью
Обрабатывайте большие наборы данных по частям через
Используйте
2️⃣ Кэширование
Кэшируйте дорогостоящие запросы через
Используйте кэш конфигураций и шаблонов (
Рассмотрите пакеты типа
3️⃣ Ограничение запросов (Rate Limiting)
Защищайте API от перегрузок, используя встроенный middleware
4️⃣ Индексация базы данных
Правильные индексы — основа производительности SQL-запросов. Laravel миграции позволяют легко добавлять индексы: уникальные, обычные, полнотекстовые.
5️⃣ Советы по Eloquent
Не загружайте лишние связи, используйте
Для получения одного столбца вместо
Для тяжёлой логики используйте сырые запросы через
6️⃣ Очереди и фоновая обработка
Перенесите тяжёлые задачи (отправка писем, интеграции, экспорты) в очереди с помощью Laravel Queues и обработчиков (Redis + Supervisor или Laravel Octane).
👉 Читать статью
Когда приложение растёт или работает с большими объёмами данных, оптимизация — не просто желание, а необходимость. Laravel — мощный фреймворк, который при грамотном подходе может выдавать высокую производительность.
Разбираем ключевые техники:
1️⃣ Оптимизация запросов к базе
Eager Click Me Load More: избегайте проблемы N+1 запросов, загружая связи заранее через
with()
.Выбирайте только нужные колонки с помощью
select()
для уменьшения объёма передаваемых данных.Обрабатывайте большие наборы данных по частям через
chunkById()
— так снижается нагрузка на память.Используйте
toBase()
, если нужна простая выборка без моделей и лишних данных (без отношений и событий).2️⃣ Кэширование
Кэшируйте дорогостоящие запросы через
Cache::remember()
.Используйте кэш конфигураций и шаблонов (
config:cache
, view:cache
) для ускорения загрузки.Рассмотрите пакеты типа
spatie/laravel-responsecache
для кэширования ответов.3️⃣ Ограничение запросов (Rate Limiting)
Защищайте API от перегрузок, используя встроенный middleware
RateLimiter
. Можно настроить правила по IP, пользователям и ролям.4️⃣ Индексация базы данных
Правильные индексы — основа производительности SQL-запросов. Laravel миграции позволяют легко добавлять индексы: уникальные, обычные, полнотекстовые.
5️⃣ Советы по Eloquent
Не загружайте лишние связи, используйте
withOnly()
(Laravel 11).Для получения одного столбца вместо
get()
применяйте pluck()
.Для тяжёлой логики используйте сырые запросы через
DB::select()
.6️⃣ Очереди и фоновая обработка
Перенесите тяжёлые задачи (отправка писем, интеграции, экспорты) в очереди с помощью Laravel Queues и обработчиков (Redis + Supervisor или Laravel Octane).
👉 Читать статью
Проблема: при работе с несколькими ветками в Git история коммитов может становиться запутанной из-за частых слияний, что усложняет анализ изменений.
Решение: в книге "Mastering Git" автор показывает использование команды git rebase, которая позволяет линейно интегрировать изменения из одной ветки в другую, сохраняя историю чистой и понятной.
Пример кода:
# Переключаемся на ветку feature
git checkout feature
# Выполняем rebase на master
git rebase master
# Если возникают конфликты, разрешаем их и продолжаем rebase
git add <исправленные файлы>
git rebase --continue
# Переключаемся на master и сливаем изменения
git checkout master
git merge feature --ff-only
Преимущества:
— Чистая и линейная история изменений.
— Упрощение процесса ревью кода.
— Лёгкость в отслеживании изменений.
Еще больше полезных книг — в нашем канале @progbook
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2❤1
✏️ Промпт для пет-проектов
Составили для вас промпт, который поможет определится с пет-проектом на основе трёх слов, которые первыми придут к вам в голову.
Промпт:
💬 Попробуйте сгенерировать пет-проект по промпту и поделитесь в комментариях, что подкинет вам нейросеть👇
Библиотека пхпшника #буст
Составили для вас промпт, который поможет определится с пет-проектом на основе трёх слов, которые первыми придут к вам в голову.
Промпт:
You are a seasoned Open-Source Developer, known for your creativity and ability to build impactful projects. Your goal is to generate a compelling pet project idea based on three randomly provided words. You will then outline the project's core functionality, potential technologies to use, and its potential impact on the open-source community.
Here is the format you will use to reason through the problem and come up with a fantastic recommendation:
---
## Random Words
$word_1, $word_2, $word_3
## Pet Project Idea
$project_idea_name
### Project Description
$project_description (A brief overview of the project and its purpose)
### Core Functionality
* $functionality_1
* $functionality_2
* $functionality_3
(List the key features and functionalities of the project)
### Potential Technologies
* $technology_1
* $technology_2
* $technology_3
(List potential programming languages, frameworks, libraries, and tools that could be used)
### Potential Impact
$impact_description (Explain how this project could benefit the open-source community or solve a specific problem)
---
Here is the challenge you are tasked with: Generate a pet project idea based on the following three words: [**Word 1, Word 2, Word 3**]
💬 Попробуйте сгенерировать пет-проект по промпту и поделитесь в комментариях, что подкинет вам нейросеть👇
Библиотека пхпшника #буст
😁9🥱3❤1
🧠 Вопросы подписчиков: как вы парсите сложные лог-файлы?
Один разработчик поделился своей болью:
✔️ А вы с таким сталкивались?
✔️ Как парсите большие и сложные логи на PHP?
✔️ Что делаете, если формат логов меняется?
Есть ли библиотеки или приёмы, которые помогли вам?
💬 Делитесь опытом в комментариях — интересно, как вы решаете такие задачи!
Библиотека пхпшника #междусобойчик
Один разработчик поделился своей болью:
«Часто приходится извлекать конкретные данные из огромных логов — десятки тысяч строк. Простая проверка, начинается ли строка с определённого шаблона, не работает.
Использую сложные регулярные выражения, особенно когда нужно вытащить глубоко вложенные структуры.
Периодически формат логов меняется, и приходится переписывать regex заново. А из-за конфиденциальности данных сторонние инструменты использовать нельзя.»
✔️ А вы с таким сталкивались?
✔️ Как парсите большие и сложные логи на PHP?
✔️ Что делаете, если формат логов меняется?
Есть ли библиотеки или приёмы, которые помогли вам?
💬 Делитесь опытом в комментариях — интересно, как вы решаете такие задачи!
Библиотека пхпшника #междусобойчик
Хотите писать код быстрее и кайфовать от процесса? Вот подборка горячих клавиш, которые реально облегчают жизнь:
🔥 Отладка
🔹 F5 — запустите отладку приложения.
🔹 Ctrl + F5 — запустите приложение без отладки.
🔹 F9 — установите точку останова на текущей строке.
🔹 F10 — шаг с заходом (Step Over) через строку.
🔹 F11 — шаг в код (Step Into) для более глубокого анализа.
💬 Какие горячие клавиши вы используете для отладки? Есть ли у вас свои проверенные приёмы для быстрого поиска багов? Напишите в комментариях👇
Библиотека пхпшника #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👾1
🌧️ Облачная терапия: время выговориться!
Знакомая ситуация? Покупаете облако как BMW, а получаете телегу с квадратными колесами. Обещают 99.9% uptime, а сервер падает на релизе. Техподдержка отвечает через сутки фразой «попробуйте перезагрузить».
Пора узнать, как обстоят дела с облаками на самом деле. Поэтому мы собираем ваши реальные истории про облачные сервисы.
🤫 О чем спросим:
— Зачем вам вообще это облако нужно
— Какие косяки достали до печенок
— Сколько денег утекает в никуда ежемесячно
— Что должно случиться, чтобы вы сменили провайдера
— И еще пару каверзных вопросов
⏱️ 2 минуты честности = большое исследование без воды → https://clc.to/nboYDA
Знакомая ситуация? Покупаете облако как BMW, а получаете телегу с квадратными колесами. Обещают 99.9% uptime, а сервер падает на релизе. Техподдержка отвечает через сутки фразой «попробуйте перезагрузить».
Пора узнать, как обстоят дела с облаками на самом деле. Поэтому мы собираем ваши реальные истории про облачные сервисы.
🤫 О чем спросим:
— Зачем вам вообще это облако нужно
— Какие косяки достали до печенок
— Сколько денег утекает в никуда ежемесячно
— Что должно случиться, чтобы вы сменили провайдера
— И еще пару каверзных вопросов
⏱️ 2 минуты честности = большое исследование без воды → https://clc.to/nboYDA
📌 Совет по Laravel: Убираем повторяющийся код с помощью фильтров
При работе с фильтрацией или поиском в Laravel часто приходится повторять одни и те же условия в разных частях приложения. Это приводит к загромождённым запросам, дублирующемуся коду и проблемам с поддержкой.
Решение:
Используй
Почему это круто?
Чистый код: меньше дублирования и путаницы.
Централизованная логика: изменения фильтров нужно вносить только в одном месте.
Переиспользуемость: фильтр можно применять в разных частях приложения, будь то поиск, рекомендации или отчёты.
Масштабируемость: с ростом приложения фильтры становятся легче поддерживаемыми.
🔗 Примеры использования в статье
При работе с фильтрацией или поиском в Laravel часто приходится повторять одни и те же условия в разных частях приложения. Это приводит к загромождённым запросам, дублирующемуся коду и проблемам с поддержкой.
Решение:
Используй
tap()
для создания переиспользуемых фильтров. Создаём один класс фильтра и применяем его в нужных местах, избавляясь от повторов.Почему это круто?
Чистый код: меньше дублирования и путаницы.
Централизованная логика: изменения фильтров нужно вносить только в одном месте.
Переиспользуемость: фильтр можно применять в разных частях приложения, будь то поиск, рекомендации или отчёты.
Масштабируемость: с ростом приложения фильтры становятся легче поддерживаемыми.
🔗 Примеры использования в статье
👍6
😱 Завтра цена на курс «AI-агенты для DS» вырастет
Пока вы думаете — другие уже покупают. Что вы теряете, откладывая решение? Как минимум — 10 000 рублей, именно столько вы переплатите завтра. Как максимум — шанс войти в топ-1% дата-сайентистов, которые умеют строить AI-агенты.
🎓 Чему вы научитесь на курсе:
— адаптировать LLM под разные предметные области и данные
— собирать свою RAG-систему: от ретривера и реранкера до генератора и оценки качества
— строить AI-агентов с нуля — на основе сценариев, функций и взаимодействия с внешней средой
Решение за вами.
👉 Купить курс по старой цене
Пока вы думаете — другие уже покупают. Что вы теряете, откладывая решение? Как минимум — 10 000 рублей, именно столько вы переплатите завтра. Как максимум — шанс войти в топ-1% дата-сайентистов, которые умеют строить AI-агенты.
🎓 Чему вы научитесь на курсе:
— адаптировать LLM под разные предметные области и данные
— собирать свою RAG-систему: от ретривера и реранкера до генератора и оценки качества
— строить AI-агентов с нуля — на основе сценариев, функций и взаимодействия с внешней средой
Решение за вами.
👉 Купить курс по старой цене
proglib.academy
Курс|AI-агенты для DS-специалистов
На курсе ты разберёшься, как работают AI-агенты и как их применять в работе — от текстовых помощников до систем, помогающих принимать решения. Разберем архитектуру агентов, связку с внешними API, пайплайны действий и популярные библиотеки. Курс включает реальные…
💬 Холивар: оставаться в найме или уходить в свой проект
Кажется, у каждого разработчика хотя бы раз возникал вопрос:
С одной стороны — стабильная зарплата, комфорт и понятные перспективы в найме.
С другой — свобода, возможность реализовать свою идею и построить что-то своё.
Так что выбрать?
➡️ Позиция «Оставаться в найме»
✔️ Финансовая стабильность:
Получаете зарплату каждый месяц, есть соцпакет, отпуск, больничный.
✔️ Развитие в команде:
Можно учиться у коллег, расти вертикально (тимлид, архитектор и т.д.) или горизонтально — в смежные роли.
✔️ Минимум риска:
Вы не рискуете своими деньгами и временем. Уволиться можно в любой момент, не потеряв всё.
✔️ Баланс:
Есть личное время. Свои проекты можно делать вечерами, не бросая основную работу.
➡️ Позиция «Уходить в своё»
✔️ Идея требует реализации:
Если вы не можете перестать думать об этом проекте — возможно, это и есть ваш путь.
✔️ Нет развития в найме:
Работа стала рутиной, а настоящий рост происходит только вне её.
✔️ Готовы к ответственности:
Понимаете, что теперь всё зависит только от вас — и это вас не пугает.
✔️ Есть подушка и план:
Вы не бросаетесь в омут с головой — а действуете обдуманно.
➡️ Когда уход — плохая идея:
— Вы эмоционально выгорели и просто хотите “куда угодно, но не сюда”.
— Нет чёткого понимания, что вы собираетесь делать и кому это нужно.
— Думаете, что бизнес — это про «творить» и «быть свободным». На деле — это про продажи, людей, стрессы и управление.
🤝 А вы на чьей стороне?
Уже ушли в своё? Только планируете? Или уверены, что найм — лучший выбор?
👇 Поделитесь опытом, размышлениями или вопросами — обсудим честно.
Библиотека пхпшника #междусобойчик
Кажется, у каждого разработчика хотя бы раз возникал вопрос:
«А не бросить ли всё и не начать ли своё?»
С одной стороны — стабильная зарплата, комфорт и понятные перспективы в найме.
С другой — свобода, возможность реализовать свою идею и построить что-то своё.
Так что выбрать?
✔️ Финансовая стабильность:
Получаете зарплату каждый месяц, есть соцпакет, отпуск, больничный.
✔️ Развитие в команде:
Можно учиться у коллег, расти вертикально (тимлид, архитектор и т.д.) или горизонтально — в смежные роли.
✔️ Минимум риска:
Вы не рискуете своими деньгами и временем. Уволиться можно в любой момент, не потеряв всё.
✔️ Баланс:
Есть личное время. Свои проекты можно делать вечерами, не бросая основную работу.
✔️ Идея требует реализации:
Если вы не можете перестать думать об этом проекте — возможно, это и есть ваш путь.
✔️ Нет развития в найме:
Работа стала рутиной, а настоящий рост происходит только вне её.
✔️ Готовы к ответственности:
Понимаете, что теперь всё зависит только от вас — и это вас не пугает.
✔️ Есть подушка и план:
Вы не бросаетесь в омут с головой — а действуете обдуманно.
— Вы эмоционально выгорели и просто хотите “куда угодно, но не сюда”.
— Нет чёткого понимания, что вы собираетесь делать и кому это нужно.
— Думаете, что бизнес — это про «творить» и «быть свободным». На деле — это про продажи, людей, стрессы и управление.
🤝 А вы на чьей стороне?
Уже ушли в своё? Только планируете? Или уверены, что найм — лучший выбор?
👇 Поделитесь опытом, размышлениями или вопросами — обсудим честно.
Библиотека пхпшника #междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
🌚5❤2
💻 Подборка новостей по PHP за неделю:
🔹 Laravel 12.17 — добавлен каст
🔹 PHP 8.3.22 и 8.4.8 — багфикс-релизы с улучшениями стабильности. Всем пользователям рекомендовано обновиться.
🔹 2-8 июня 2025 года — Неделя Symfony #962 — активная разработка Symfony 7.4 и 8.0: начинается депрекация устаревших функций. Также опубликован кейс по использованию Symfony в Yousign и идёт подготовка к SymfonyOnline 2025.
🔹 30 лет PHP — в честь юбилея проект FrankenPHP (сервер на базе Caddy) официально стал частью PHP-организации на GitHub.
Библиотека пхпшника #свежак
🔹 Laravel 12.17 — добавлен каст
AsUri
для автоматического приведения атрибутов модели к URI-объектам, а также привязка сервисов к контейнеру через PHP-атрибуты.🔹 PHP 8.3.22 и 8.4.8 — багфикс-релизы с улучшениями стабильности. Всем пользователям рекомендовано обновиться.
🔹 2-8 июня 2025 года — Неделя Symfony #962 — активная разработка Symfony 7.4 и 8.0: начинается депрекация устаревших функций. Также опубликован кейс по использованию Symfony в Yousign и идёт подготовка к SymfonyOnline 2025.
🔹 30 лет PHP — в честь юбилея проект FrankenPHP (сервер на базе Caddy) официально стал частью PHP-организации на GitHub.
Библиотека пхпшника #свежак
❤2
Forwarded from Библиотека задач по PHP | тесты, код, задания
Какая функция НЕ считывает данные из файла?
Anonymous Quiz
3%
file_get_contents()
4%
fread()
39%
file()
30%
readline()
8%
readfile()
16%
fgets()
🥱1
⌨️ Топ-вакансий по PHP за неделю
Backend Developer — от 295 000 до 380 000 ₽ удалёнка (Москва)
Senior PHP Engineer — от 300 000 ₽, Удалёнка (Москва)
Middle PHP Developer — от 200 000 ₽, Удалёнка (Москва)
Fullstack PHP разработчик — от 100 000 р., Удалёнка
➡️ Еще больше топовых вакансий — в нашем канале PHP Jobs
Backend Developer — от 295 000 до 380 000 ₽ удалёнка (Москва)
Senior PHP Engineer — от 300 000 ₽, Удалёнка (Москва)
Middle PHP Developer — от 200 000 ₽, Удалёнка (Москва)
Fullstack PHP разработчик — от 100 000 р., Удалёнка
➡️ Еще больше топовых вакансий — в нашем канале PHP Jobs
🥱5❤1
Проблема: необходимо распределить трафик между несколькими TCP-серверами.
Решение: в книге "Nginx Cookbook: Advanced Recipes for High-performance Load Balancing" автор показывает использование модуля stream для балансировки нагрузки на уровне транспортного слоя.
Пример кода:
stream {
upstream mysql_read {
server read1.example.com:3306 weight=5;
server read2.example.com:3306;
server 10.10.12.34:3306 backup;
}
server {
listen 3306;
proxy_pass mysql_read;
}
}
Преимущества:
— Поддержка балансировки для TCP-сервисов.
— Гибкая настройка весов серверов.
— Резервирование серверов для повышения надёжности.
Еще больше полезных книг — в нашем канале @progbook
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
🚀 Как писать чистый код на PHP: практическое руководство
Чистый код — это не просто красиво оформленные строки текста, а важный инструмент для упрощения разработки, поддержания и масштабирования проектов. В этой статье мы расскажем, как придерживаться лучших практик при написании кода на PHP, чтобы ваш код стал более читаемым, удобным для поддержки и безопасным.
💡 Почему это важно?
Чистый код упрощает разработку и минимизирует количество багов.
Он облегчает работу в команде и позволяет быстрее адаптировать код под изменяющиеся требования.
Помогает улучшить производительность, особенно в крупных и долгосрочных проектах.
🔧 Основные принципы чистого кода в PHP:
🔸 PSR-12 и стандарты индустрии: Следование этим стандартам улучшает совместимость кода и облегчает командную работу.
🔸 Четкие и последовательные наименования: Используйте говорящие имена для классов, функций и переменных.
🔸 Использование модификаторов доступа: Применяйте
🔸 Короткие функции и методы: Функции должны выполнять одну задачу и делать это хорошо.
🔸 Комментарии и DocBlocks: Используйте комментарии и PHPDoc для лучшего понимания кода.
🔸 SOLID принципы: Применяйте объектно-ориентированные принципы для упрощения расширяемости и поддерживаемости кода.
🔗 Читайте полностью на Medium
Чистый код — это не просто красиво оформленные строки текста, а важный инструмент для упрощения разработки, поддержания и масштабирования проектов. В этой статье мы расскажем, как придерживаться лучших практик при написании кода на PHP, чтобы ваш код стал более читаемым, удобным для поддержки и безопасным.
💡 Почему это важно?
Чистый код упрощает разработку и минимизирует количество багов.
Он облегчает работу в команде и позволяет быстрее адаптировать код под изменяющиеся требования.
Помогает улучшить производительность, особенно в крупных и долгосрочных проектах.
🔧 Основные принципы чистого кода в PHP:
🔸 PSR-12 и стандарты индустрии: Следование этим стандартам улучшает совместимость кода и облегчает командную работу.
🔸 Четкие и последовательные наименования: Используйте говорящие имена для классов, функций и переменных.
🔸 Использование модификаторов доступа: Применяйте
public
, private
, protected
в зависимости от потребностей.🔸 Короткие функции и методы: Функции должны выполнять одну задачу и делать это хорошо.
🔸 Комментарии и DocBlocks: Используйте комментарии и PHPDoc для лучшего понимания кода.
🔸 SOLID принципы: Применяйте объектно-ориентированные принципы для упрощения расширяемости и поддерживаемости кода.
🔗 Читайте полностью на Medium
🥱3❤1
💔AI vs Developer: who wins?
Бигтех уже режет найм разработчиков. Вайб-кодинг повсюду. Джуны не нужны. Но так ли это на самом деле?
Мы хотим разобраться, как ИИ влияет на рынок труда в IT. В реальности, а не в головах CEO или HR. Поэтому приглашаем пройти опрос.
Результаты нашего исследования позволят выяснить, сколько разработчиков потеряли работу из-за ИИ? Какие навыки сейчас ценятся больше всего? Кто зарабатывает больше — те, кто использует ИИ или игнорирует?
👾 Расскажите свою историю, чтобы помочь комьюнити: https://clc.to/aFntFw
Бигтех уже режет найм разработчиков. Вайб-кодинг повсюду. Джуны не нужны. Но так ли это на самом деле?
Мы хотим разобраться, как ИИ влияет на рынок труда в IT. В реальности, а не в головах CEO или HR. Поэтому приглашаем пройти опрос.
Результаты нашего исследования позволят выяснить, сколько разработчиков потеряли работу из-за ИИ? Какие навыки сейчас ценятся больше всего? Кто зарабатывает больше — те, кто использует ИИ или игнорирует?
👾 Расскажите свою историю, чтобы помочь комьюнити: https://clc.to/aFntFw
@platformatic/php-node — модуль для Node.js, который позволяет выполнять PHP-приложения внутри Node.js.
Он использует пул рабочих потоков Node.js для многопоточной обработки PHP-запросов, обеспечивая высокую производительность и масштабируемость без дополнительных усилий.
🔧 Ключевые особенности:
Легкая интеграция: Встраивайте PHP в Node.js приложения.
Многопоточная обработка: Параллельная обработка PHP-запросов с использованием Node.js.
Увеличение производительности: Комбинирует возможности PHP и Node.js для мощных решений.
Единая среда разработки: Упрощает работу с двумя языками в одном проекте.
🎯 Использование:
🔸 Миграция PHP приложений: Легко переносите старые PHP приложения в Node.js.
🔸 Гибридные приложения: Объединяйте возможности PHP и Node.js.
🔸 Веб-сервисы: Используйте сильные стороны PHP с производительностью Node.js.
🚀 Попробуйте php-node и улучшите свои приложения с минимальными усилиями! Подробнее в GitHub репозитории.
Библиотека пхпшника #инструменты
Он использует пул рабочих потоков Node.js для многопоточной обработки PHP-запросов, обеспечивая высокую производительность и масштабируемость без дополнительных усилий.
🔧 Ключевые особенности:
Легкая интеграция: Встраивайте PHP в Node.js приложения.
Многопоточная обработка: Параллельная обработка PHP-запросов с использованием Node.js.
Увеличение производительности: Комбинирует возможности PHP и Node.js для мощных решений.
Единая среда разработки: Упрощает работу с двумя языками в одном проекте.
🎯 Использование:
🔸 Миграция PHP приложений: Легко переносите старые PHP приложения в Node.js.
🔸 Гибридные приложения: Объединяйте возможности PHP и Node.js.
🔸 Веб-сервисы: Используйте сильные стороны PHP с производительностью Node.js.
🚀 Попробуйте php-node и улучшите свои приложения с минимальными усилиями! Подробнее в GitHub репозитории.
Библиотека пхпшника #инструменты
🤔2👍1
Forwarded from Библиотека программиста | программирование, кодинг, разработка
Спустя 17 лет после запуска на платформе появился миллиардный репозиторий. Для сравнения, первый миллионный репозиторий nexus.vim был создан 15 лет назад.
Сегодня на GitHub работают более 100 млн активных разработчиков. Платформа значительно выросла с 2012 года, когда у неё было всего 3 млн пользователей. К моменту покупки Microsoft за $7,5 млрд в 2018 году число активных разработчиков достигло 28 млн.
С момента запуска в 2008 году GitHub стал основной платформой для хостинга как открытых, так и проприетарных проектов, позволяя разработчикам со всего мира совместно работать над кодом.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5🤩2