WebCraft - ремесло веб разработки
رفتن به کانال در Telegram
Интересуешься php , js , css , html , Laravel , Vue ? Этот канал для тебя Админ, сотрудничество, реклама: @seniorFrontPromo, @maria_seniorfront Купить рекламу: https://telega.in/c/web_craft
نمایش بیشتر4 981
مشترکین
-124 ساعت
-117 روز
-4130 روز
در حال بارگذاری دادهها
کانالهای مشابه
ابر برچسبها
اشارات ورودی و خروجی
---
---
---
---
---
---
جذب مشترکین
اکتبر '26اکتبر '26
اکتبر '26
+14
در 0 کانالها
سپتامبر '26
+15
در 9 کانالها
Get PRO
اوت '26
+17
در 0 کانالها
Get PRO
ژوئیه '26
+14
در 0 کانالها
Get PRO
ژوئن '26
+16
در 0 کانالها
Get PRO
مه '26
+18
در 4 کانالها
Get PRO
آوریل '26
+10
در 0 کانالها
Get PRO
مارس '26
+8
در 0 کانالها
Get PRO
فوریه '26
+12
در 0 کانالها
Get PRO
ژانویه '26
+14
در 0 کانالها
Get PRO
دسامبر '25
+12
در 0 کانالها
Get PRO
نوامبر '25
+22
در 0 کانالها
Get PRO
اکتبر '25
+18
در 0 کانالها
Get PRO
سپتامبر '25
+53
در 4 کانالها
Get PRO
اوت '25
+18
در 0 کانالها
Get PRO
ژوئیه '25
+27
در 1 کانالها
Get PRO
ژوئن '25
+29
در 8 کانالها
Get PRO
مه '25
+39
در 5 کانالها
Get PRO
آوریل '25
+21
در 0 کانالها
Get PRO
مارس '25
+25
در 0 کانالها
Get PRO
فوریه '25
+33
در 0 کانالها
Get PRO
ژانویه '25
+78
در 3 کانالها
Get PRO
دسامبر '24
+33
در 0 کانالها
Get PRO
نوامبر '24
+63
در 14 کانالها
Get PRO
اکتبر '24
+145
در 10 کانالها
Get PRO
سپتامبر '24
+57
در 0 کانالها
Get PRO
اوت '24
+29
در 0 کانالها
Get PRO
ژوئیه '24
+72
در 1 کانالها
Get PRO
ژوئن '24
+63
در 0 کانالها
Get PRO
مه '24
+170
در 24 کانالها
Get PRO
آوریل '24
+77
در 1 کانالها
Get PRO
مارس '24
+227
در 13 کانالها
Get PRO
فوریه '24
+69
در 1 کانالها
Get PRO
ژانویه '24
+111
در 16 کانالها
Get PRO
دسامبر '23
+264
در 46 کانالها
Get PRO
نوامبر '23
+266
در 27 کانالها
Get PRO
اکتبر '23
+270
در 29 کانالها
Get PRO
سپتامبر '23
+179
در 0 کانالها
Get PRO
اوت '23
+165
در 0 کانالها
Get PRO
ژوئیه '23
+228
در 0 کانالها
Get PRO
ژوئن '23
+206
در 0 کانالها
Get PRO
مه '23
+188
در 0 کانالها
Get PRO
آوریل '23
+317
در 0 کانالها
Get PRO
مارس '23
+302
در 0 کانالها
Get PRO
فوریه '23
+274
در 0 کانالها
Get PRO
ژانویه '23
+371
در 0 کانالها
Get PRO
دسامبر '22
+358
در 0 کانالها
Get PRO
نوامبر '22
+124
در 0 کانالها
Get PRO
اکتبر '22
+168
در 0 کانالها
Get PRO
سپتامبر '22
+167
در 0 کانالها
Get PRO
اوت '22
+589
در 0 کانالها
Get PRO
ژوئیه '22
+583
در 0 کانالها
Get PRO
ژوئن '22
+142
در 0 کانالها
Get PRO
مه '22
+363
در 0 کانالها
Get PRO
آوریل '22
+359
در 0 کانالها
Get PRO
مارس '22
+461
در 0 کانالها
Get PRO
فوریه '22
+770
در 0 کانالها
Get PRO
ژانویه '22
+30
در 0 کانالها
Get PRO
دسامبر '21
+235
در 0 کانالها
Get PRO
نوامبر '21
+161
در 0 کانالها
Get PRO
اکتبر '21
+168
در 0 کانالها
Get PRO
سپتامبر '21
+210
در 0 کانالها
Get PRO
اوت '21
+110
در 0 کانالها
Get PRO
ژوئیه '21
+99
در 0 کانالها
Get PRO
ژوئن '21
+38
در 0 کانالها
Get PRO
مه '21
+51
در 0 کانالها
Get PRO
آوریل '21
+105
در 0 کانالها
Get PRO
مارس '21
+495
در 0 کانالها
Get PRO
فوریه '21
+949
در 0 کانالها
Get PRO
ژانویه '21
+1 803
در 0 کانالها
| تاریخ | رشد مشترکین | اشارات | کانالها | |
| 26 اکتبر | 0 | |||
| 25 اکتبر | 0 | |||
| 24 اکتبر | 0 | |||
| 23 اکتبر | 0 | |||
| 22 اکتبر | +2 | |||
| 21 اکتبر | 0 | |||
| 20 اکتبر | 0 | |||
| 19 اکتبر | 0 | |||
| 18 اکتبر | 0 | |||
| 17 اکتبر | 0 | |||
| 16 اکتبر | +3 | |||
| 15 اکتبر | 0 | |||
| 14 اکتبر | 0 | |||
| 13 اکتبر | 0 | |||
| 12 اکتبر | 0 | |||
| 11 اکتبر | +2 | |||
| 10 اکتبر | +2 | |||
| 09 اکتبر | 0 | |||
| 08 اکتبر | 0 | |||
| 07 اکتبر | +2 | |||
| 06 اکتبر | +1 | |||
| 05 اکتبر | 0 | |||
| 04 اکتبر | 0 | |||
| 03 اکتبر | +2 | |||
| 02 اکتبر | 0 | |||
| 01 اکتبر | 0 |
پستهای کانال
МТС Линк запустил два новых сервиса — Почту и Календарь
Теперь офисные решения доступны в одном окне: можно общаться, проводить встречи, работать с задачами и документами, хранить файлы и планировать рабочий день.
💻 Почта — всё необходимое для привычной работы с письмами: поиск, папки, цепочки и отложенная отправка. Для защиты переписки используются современные протоколы безопасности и шифрование данных.
📅 Календарь помогает планировать встречи, бронировать переговорные и сразу видеть занятость времени. А онлайн-встречу можно привязать к событию в календаре одним кликом.
И главное — все это доступно в отдельных вкладках единого приложения МТС Линк, поэтому переход между сервисами остаётся максимально бесшовным.
Больше рабочих инструментов в одном пространстве — меньше переключений ✨
Подать заявку
#реклама 16+
mts-link.ru
О рекламодателе
| 2 | 🔑 Пусть менеджер паролей знает правила вашего сайта
Менеджер паролей придумал пароль, а сайт его отклонил: нет цифры или спецсимвола. Браузер просто не знает серверных правил.
В Laravel правило Password умеет выдавать строку для HTML-атрибута passwordrules. По ней менеджер паролей генерирует пароль, который пройдёт валидацию.
> use Illuminate\Validation\Rules\Password;
> Password::min(12)->max(64)->mixedCase()->numbers()->symbols()->toPasswordRulesString();
= "minlength: 12; maxlength: 64; required: lower; required: upper; required: digit; required: special;"
Учтите, что passwordrules не входит в стандарт HTML. Его добавила Apple в Safari, понимают его и некоторые менеджеры паролей вроде 1Password. Остальные атрибут игнорируют, так что вреда нет.
Строку удобно брать из Password::defaults() прямо в Blade, и правила в форме не разойдутся с сервером.
👍 - если было полезно
👉 @web_craft | 224 |
| 3 | Пятница, 17:30. Макет почти готов
Но один сценарий всё ещё вызывает вопросы. Обсудить сейчас или вернуться в понедельник?
Решайте вместе с командой hh.ru в «Охэхэнных новостях».
Подписаться
#реклама
О рекламодателе | 184 |
| 4 | 🚀 Страница 4000: 127 мс против 3 мс
Обычная пагинация через смещение (LIMIT 10000,20) медленнеет с каждой страницей. База всё равно читает первые 10 000 строк, перебирает их и выбрасывает. Чем дальше страница, тем больше пустой работы.
Курсорная пагинация обходится без смещения. Приложение запоминает значение колонки сортировки на границе страницы, например last_message_at. Следующую страницу оно берёт через WHERE last_message_at <= ? и LIMIT 0,20. Если колонка в индексе, скорость почти не зависит от глубины.
В одном тесте на MySQL 8.4 и 300 000 строк страница 4000 открывалась за 127 мс через смещение и за 3 мс через курсор. В Doctrine ORM 3.7 для этого появляется класс CursorPaginator.
Подвох в том, что прыгнуть сразу на страницу 57 нельзя. Доступны только первая, следующая и последняя.
Если по вашим длинным спискам ходят краулеры или API-клиенты, самое время посмотреть, как выглядит переход в коде.
👍 - если было полезно
👉 @web_craft | 332 |
| 5 | 🔒 readonly в PHP защищает свойство, но не объект внутри
readonly запрещает присвоить свойству новое значение. Но изменяемый объект в таком свойстве по-прежнему можно менять:
final readonly class DeliveryWindow
{
public function __construct(
public DateTime $startsAt,
) {}
}
$window = new DeliveryWindow(new DateTime('2026-08-01 09:00:00'));
$window->startsAt->modify('+1 day');
echo $window->startsAt->format('Y-m-d');
// 2026-08-02
Свойство никто не переприсваивал, и PHP не возражает. Но дата доставки уже другая: readonly не действует вглубь.
Поэтому внутри стоит хранить только неизменяемые значения. Например, DateTimeImmutable вместо DateTime: его modify() возвращает новый объект.
С массивами та же ловушка: вызывающий код получит копию массива, но объекты в ней общие с оригиналом.
В статье ещё разобрано, почему clone тут не помогает.
👍 - если было полезно
👉 @web_craft | 372 |
| 6 | 🤖Podlodka Backend Crew: AI в бэкенд-задачах
Демо с AI чаще всего выглядят одинаково: агент за десять минут пишет сервис с нуля.
Вот только в работе бэкендера всё сложнее: легаси, рискованные миграции, неработающие тесты и ревью, которое становится бутылочным горлышком.
🗓 С 26 по 30 октября в сезоне Podlodka Backend Crew «AI в бэкенд-задачах» участники:
• Научатся передавать агенту инженерные стандарты и правила, чтобы он писал так, как нужно, а не как получится
• Соберут ревью, где несколько моделей независимо проверяют изменения, а финальное решение остаётся за человеком
• Посмотрят, куда переезжает сложность миграции легаси, когда код пишет агент
• Выяснят, где ломается мечта отдать миграцию агенту целиком
• Разберут, какие антипаттерны тестов агенты уже успели перенять от разработчиков.
Формат — пять дней живых Zoom-сессий утром и вечером, закрытое сообщество в Telegram и общение со спикерами.
Будет много интерактива и практики. Базовый ликбез оставят за бортом — этот сезон для тех, кто уже пробует AI в реальных проектах. Присоединяйтесь с 26 октября!
🔗 Билеты и программа: https://podlodka.io/becrew | 327 |
| 7 | ✨ Symfony 8.2: контроллер, который не запустится дважды одновременно
Некоторые действия нельзя запускать параллельно: импорт каталога, оплату заказа, продажу последних билетов. Раньше блокировку через компонент Lock приходилось брать и снимать вручную прямо в контроллере.
В Symfony 8.2 хватит атрибута #[Lock]. Пока запрос выполняется, второй с тем же ключом получит 409 Conflict, а с blocking: true подождёт. Ключ можно собрать из параметра маршрута, тогда у каждой конференции своя блокировка:
#[Route('/conference/{conference}/tickets', methods: 'POST')]
#[Lock('ticket-sale-{conference}', blocking: true, ttl: 10)]
public function buyTicket(Conference $conference): Response { /* ... */ }
Подвох в TTL: по умолчанию блокировка живёт 30 секунд и сама не продлевается. Если контроллер работает дольше, её захватит другой запрос.
Продлить её или отпустить раньше можно, если принять LockInterface аргументом контроллера.
👍 - если было полезно
👉 @web_craft | 353 |
| 8 | 🧩 Исключение, которое само объясняет, что сломалось
Обычно ошибку бизнес-логики бросают как InvalidArgumentException с текстом. Это работает, пока не понадобится поймать именно её. Тот же класс летит ещё из десятка мест.
В Spatie, где пишут хелпдеск There There на Laravel, заводят свой класс на каждую доменную ошибку. На каждую причину в нём есть статический метод. Код читается как фраза:
throw CouldNotDeleteMessage::onlyNotesCanBeDeleted($message)
Метод принимает типизированный $message. Поэтому текст ошибки без id и типа сообщения просто не собрать.
Одна тонкость: такие классы помечают интерфейсом ShouldntReport, и они не попадают в трекер ошибок. Это ожидаемые ситуации от действий пользователя, а не баги, так что трекер не засоряется.
Выглядит как оверинжиниринг ровно до первого раза, когда нужно поймать конкретную ошибку.
👍 - если было полезно
👉 @web_craft | 367 |
| 9 | ⚡️ В сети начали массово сливать IT-курсы и книги известных онлайн школ
Вот отсортированная база с тонной материала (постепенно пополняется):
(363 видео, 87 книги) — Python
(117 видео, 53 книги) — ВАЙБКОД
(174 видео, 91 книги) — DevOps
(415 видео, 68 книги) — Frontend
(137 видео, 93 книги) — DS/ML
(143 видео, 33 книги) — ИБ/Хакинг
(352 видео, 89 книги) — С/С++/C
(343 видео, 87 книги) — Java/QA
(176 видео, 32 книги) — Git/Linux
(167 видео, 53 книги) — PHP/1С
(227 видео, 83 книги) — SQL/БД
(114 видео, 77 книги) — Сисадмин
(107 видео, 43 книги) — BA/SA
(181 видео, 32 книги) — Go/Rust
(167 видео, 43 книги) — Kotlin/Swift
(112 видео, 24 книги) — Flutter
(113 видео, 82 книги) — GameDev
(183 видео, 37 книги) — Дизайн
(136 видео, 33 книги) — PM/HR
Скачивать ничего не нужно — все выложили в Telegram | 369 |
| 10 | Solar JSOC - Флагманский SOC с гарантией
Гарантии крупнейшего коммерческого SOCа России теперь доступны вам.
Узнать больше
#реклама 16+
rt-solar.ru
О рекламодателе | 319 |
| 11 | 🚀 TypeScript-типы, которые Laravel пишет сам
Если бэкенд на Laravel, а фронтенд на TypeScript, каждый ответ сервера описан дважды. Переименовали поле в PHP, а фронт об этом не знает.
В Spatie, авторах пакетов ниже, такие типы руками не пишут. Ответ описывают PHP-классом из пакета spatie/laravel-data с атрибутом #[TypeScript]. Пакет spatie/laravel-typescript-transformer собирает эти классы в файл generated.d.ts: ?string становится string | null, у enum появляется свой тип.
Теперь после переименования свойства в PHP компилятор TypeScript подсвечивает каждое место на фронте, где оно используется.
Сам по себе файл не обновляется, его пишет php artisan typescript:transform. В версии 2.6 у команды нет --watch, поэтому Spatie запускают её из своего небольшого плагина для Vite. В v3 режим --watch уже встроен.
👍 - если было полезно
👉 @web_craft | 415 |
| 12 | Квартира с роскошным видом на Ботанический сад от11,7млн
Закрытый двор. Своя школа и д/сад. Удобный выезд на ТТК. Дом сдан.
Узнать больше
Проектная декларация на сайте https://наш.дом.рф/.
#реклама
mrqz.me
О рекламодателе | 298 |
| 13 | АЙТИШНИКИ БЕСПЛАТНОЕ ОБУЧЕНИЕ
Проект «Terminal» стал крупнейшей библиотекой бесплатного образования. В одном канале собраны курсы, книги, полезные инструменты и практические тренажёры для всех разработчиков:
• Практические курсы и задания
• Книги и статьи известных авторов
• Полезные инструменты и ресурсы
• IT-новости и инсайды
Обучение по всем направлениям: SQL, Python, ML, Frontend, PHP, C++, Go, Git, Linux, QA, Java, Vibe-coding, InfoSec и др.
⌨️ подписаться | 644 |
| 14 | 🔴В 2025 году Россияне заработали 5,3 млрд рублей на арбитраже криптовалют
По данным Минфин 32% граждан покинули своё место работы поскольку уже в первый месяц смогли заработать 250 000 рублей, а через 2-3 месяца с легкостью вышли на семизначные числа.
Самое смешное, что лишь 8% россиян что-то слышали об этой профессии хотя все инструкции бесплатно лежат на канале Арбитраж Криптовалют
Там объясняют, как имея телефон и доступ в интернет заработать свои первые $3000. Причём разжёвывают так доступно, что поймёт даже ребенок. Кстати, на канале сегодня вышла новая рабочая связка!
Ссылка для входа — https://t.me/+GY-3aS-FN5c0Yjhi | 643 |
| 15 | ИИ-пилоты не дают эффекта? Разбираем ошибки CIO
ИИ-пилоты множатся, а результата нет? Бюджет уходит, бизнес ждёт эффекта, а вы не понимаете, где ИИ действительно работает, а где — дорогой эксперимент?
Присоединяйтесь к открытому уроку и узнайте, как CIO выстраивает ИИ-стратегию компании.
📅 19 октября в 19:00. Сергей Фегон разберёт:
- Как ИИ меняет роль CIO и требования бизнеса к IT-руководителю.
- Где ИИ даёт бизнес-эффект, а где остаётся экспериментом.
- Как связать ИИ-инициативы с IT-стратегией и измеримыми результатами.
- Что учитывать при внедрении: данные, архитектура, безопасность, стоимость, интеграция.
Вы научитесь выбирать приоритетные сценарии ИИ, оценивать их по эффекту, стоимости и рискам и переходить от пилотов к промышленному использованию.
✅ Запишитесь сейчас и наведите порядок в ИИ-инициативах!
Узнать больше
#реклама 16+
otus.ru
О рекламодателе | 278 |
| 16 | Встречай смартфон Honor — с выгодой для себя!
✅ Стильный дизайн
✅ Заряд надолго
✅ Качественные фото
✅ Быстрая и плавная работа
Выбирай свой Honor по привлекательной цене!
Купить
#реклама
market.yandex.ru
О рекламодателе | 276 |
| 17 | Бизнес-логика в микросервисах. Открытый урок 22 октября
Разработка в микросервисной архитектуре — это не только про разбиение на сервисы, но и про грамотное распределение логики. На этом уроке мы поговорим о подходах к проектированию бизнес-логики в распределённых системах.
Что будет на уроке 22 октября в 19:00 мск:
— Принципы проектирования бизнес-логики в микросервисах
— Паттерны: Shared Kernel, API Composition, Saga
— Где должна жить логика — в сервисе, API-шлюзе или общем слое?
— Ошибки при проектировании и как их избежать
— Кейсы из реальной практики
Для backend- и fullstack-разработчиков, архитекторов, системных аналитиков. Регистрируйтесь!
Зарегистрироваться
#реклама 16+
otus.ru
О рекламодателе | 257 |
| 18 | Встречай смартфон Honor — с выгодой для себя!
✅ Стильный дизайн
✅ Заряд надолго
✅ Качественные фото
✅ Быстрая и плавная работа
Выбирай свой Honor по привлекательной цене!
Купить | 252 |
| 19 | C# есть — не хватает целостности веб-разработки?
Курс «C# ASP.NET Core-разработчик» — это практическое обучение созданию современных web-приложений и API. Вы разберётесь, как проектировать backend и frontend, строить высоконагруженные сервисы, работать с базами данных, безопасностью и инфраструктурой. В программе — ASP.NET Core, ReactJS, GraphQL, gRPC, SignalR, Docker, Kubernetes и CI/CD.
Обучение построено вокруг командной работы и Scrum-подхода. Вы не просто изучаете технологии, а проходите полный цикл разработки: от архитектуры и бизнес-логики до деплоя и масштабирования. Преподаватели — практикующие разработчики, программа регулярно обновляется под реальные требования рынка.
Старт курса уже 26 сентября.
Узнать больше | 252 |
| 20 | Раздали задачи. Через неделю ничего не сделано
И это не про лень. Обычно в такой ситуации задача была сформулирована так, что её невозможно было выполнить, или непонятно, зачем она вообще. Пишу про управление командами без волшебных схем.
Узнать больше
#реклама
О рекламодателе | 285 |
