fa
Feedback
Войти в Y_LAB | IT развитие и юмор

Войти в Y_LAB | IT развитие и юмор

رفتن به کانال در Telegram

Стажировки, вакансии, полезные материалы, развлекательный контент. Y_LAB — команда опытных IT-специалистов, которая готова помочь вам войти в мир технологий! Сотрудничество (ylab v it) @tamriko1_5

نمایش بیشتر
778
مشترکین
اطلاعاتی وجود ندارد24 ساعت
+17 روز
-230 روز
جذب مشترکین
ژوئن '26
ژوئن '26
+6
در 0 کانال‌ها
مه '26
+8
در 0 کانال‌ها
Get PRO
آوریل '26
+13
در 1 کانال‌ها
Get PRO
مارس '26
+11
در 0 کانال‌ها
Get PRO
فوریه '26
+9
در 0 کانال‌ها
Get PRO
ژانویه '26
+8
در 0 کانال‌ها
Get PRO
دسامبر '25
+13
در 0 کانال‌ها
Get PRO
نوامبر '25
+29
در 0 کانال‌ها
Get PRO
اکتبر '25
+27
در 0 کانال‌ها
Get PRO
سپتامبر '25
+15
در 0 کانال‌ها
Get PRO
اوت '25
+6
در 0 کانال‌ها
Get PRO
ژوئیه '25
+11
در 0 کانال‌ها
Get PRO
ژوئن '25
+11
در 0 کانال‌ها
Get PRO
مه '25
+19
در 0 کانال‌ها
Get PRO
آوریل '25
+21
در 0 کانال‌ها
Get PRO
مارس '25
+41
در 0 کانال‌ها
Get PRO
فوریه '25
+24
در 0 کانال‌ها
Get PRO
ژانویه '25
+22
در 0 کانال‌ها
Get PRO
دسامبر '24
+18
در 0 کانال‌ها
Get PRO
نوامبر '24
+20
در 0 کانال‌ها
Get PRO
اکتبر '24
+26
در 0 کانال‌ها
Get PRO
سپتامبر '24
+46
در 0 کانال‌ها
Get PRO
اوت '24
+24
در 0 کانال‌ها
Get PRO
ژوئیه '24
+22
در 0 کانال‌ها
Get PRO
ژوئن '24
+28
در 0 کانال‌ها
Get PRO
مه '24
+48
در 0 کانال‌ها
Get PRO
آوریل '24
+155
در 0 کانال‌ها
Get PRO
مارس '24
+33
در 0 کانال‌ها
Get PRO
فوریه '24
+250
در 0 کانال‌ها
Get PRO
ژانویه '24
+128
در 0 کانال‌ها
Get PRO
دسامبر '23
+25
در 0 کانال‌ها
Get PRO
نوامبر '23
+27
در 0 کانال‌ها
Get PRO
اکتبر '23
+64
در 0 کانال‌ها
Get PRO
سپتامبر '23
+583
در 0 کانال‌ها
تاریخ
رشد مشترکین
اشارات
کانال‌ها
11 ژوئن+1
10 ژوئن+1
09 ژوئن+1
08 ژوئن0
07 ژوئن+1
06 ژوئن0
05 ژوئن0
04 ژوئن+1
03 ژوئن0
02 ژوئن+1
01 ژوئن0
پست‌های کانال
😭😭😭 #Y_LAB_University #Y_LAB_Memes
😭😭😭 #Y_LAB_University #Y_LAB_Memes

2
Новый пост Y_LAB_Learning! | Spring WebFlux для Java-разработчиков: устройство, преимущества и подводные камни 📱 Java О чем
Новый пост Y_LAB_Learning! | Spring WebFlux для Java-разработчиков: устройство, преимущества и подводные камни 📱 Java О чем статья? Что такое Spring WebFlux, как работает реактивный подход и чем он отличается от Spring MVC. Основные преимущества, ограничения и сценарии, в которых WebFlux действительно оправдан. 📎 Читать статью #Y_LAB_University #Y_LAB_Learning
116
3
Новый пост Y_LAB Actual | Код под микроскопом 🔍 Продолжаем рубрику, в которой разбираем неочевидные ситуации из мира разрабо
Новый пост Y_LAB Actual | Код под микроскопом 🔍 Продолжаем рубрику, в которой разбираем неочевидные ситуации из мира разработки и ищем подвох там, где его не всегда ожидаешь увидеть. Сегодня под микроскопом Git. И одна из ошибок, которую хотя бы раз совершал почти каждый разработчик 👇 bash git add . git commit -m "Fix bug" git push Вопрос: Что произойдёт, если выполнить эти команды, находясь в ветке main? Многие ответят: > Изменения попадут в удалённый репозиторий. И это действительно так. ❗️ Но есть нюанс: Git совершенно не проверяет, ту ли ветку вы собирались использовать. 🤔 Если вы забыли переключиться на feature-ветку и случайно остались в main, то изменения будут закоммичены и отправлены именно туда. Для Git это абсолютно корректное действие: bash git branch может показать: bash * main а дальше команды спокойно выполнятся без каких-либо предупреждений. ❔ Почему это важно Многие воспринимают Git как инструмент, который не позволит совершить ошибку. На самом деле Git отлично защищает историю проекта, но не может понять, что вы случайно работаете не в той ветке. 💬 Что делать, если ошибка уже допущена 🎯 Если коммит уже сделан, но git push ещё не выполнялся Исправить ситуацию достаточно просто: можно создать новую ветку от текущего состояния и перенести в неё коммит, а ветку main вернуть к предыдущему состоянию. Так ошибка останется только локальной и не затронет остальных участников команды. 🎯 Если коммит уже отправлен (git push выполнен) Здесь всё зависит от процесса в команде. ↔️ Если ветка общая и её используют другие разработчики, безопаснее всего сделать новый коммит, который отменит изменения (git revert), а затем перенести нужный код в отдельную рабочую ветку. ↔️ Если же история ещё никем не использовалась, иногда применяют переписывание истории (git reset + push --force), но делать это стоит только после согласования с командой, иначе можно испортить историю репозитория коллегам. ⌨️ Почему этот кейс встречается так часто? Потому что ошибка выглядит не как ошибка. Все команды выполняются успешно. Никаких предупреждений. Никаких конфликтов. Именно поэтому многие замечают проблему только после того, как коллеги начинают писать: «А зачем это оказалось в main?» А вам доводилось случайно коммитить или пушить не в ту ветку? 👀 #Y_LAB_University #Y_LAB_Actual
94
4
делает вид, что ничего не знает 👀 #Y_LAB_University #Y_LAB_Memes
делает вид, что ничего не знает 👀 #Y_LAB_University #Y_LAB_Memes
124
5
Новый пост Y_LAB Videos! | Свежее видео Всем привет! Рады сообщить, что на наших ютуб-канале и вк-сообществе вышел новый виде
Новый пост Y_LAB Videos! | Свежее видео Всем привет! Рады сообщить, что на наших ютуб-канале и вк-сообществе вышел новый видеоролик “Как начать работать с Camunda 7”. О чем видео? В данном видео вместе с нашим Java-разработчиком Артемом разбираемся с Camunda — популярной платформой для автоматизации бизнес-процессов на Java. Рассмотрим ключевые возможности Camunda 7, сравним её с Camunda 8, познакомимся с BPMN-моделированием, создадим и запустим собственный процесс, а также разберём основные компоненты платформы и варианты её развёртывания. 📱 YouTube ——— 📱 VK #Y_LAB_University #Y_LAB_YouTube #Y_LAB_VK
188
6
Новый пост Y_LAB_Learning! | За кулисами Spring: как работают аспекты и почему вы уже используете AOP 📱 Java О чем статья? К
Новый пост Y_LAB_Learning! | За кулисами Spring: как работают аспекты и почему вы уже используете AOP 📱 Java О чем статья? Как работают Spring AOP и AspectJ, зачем нужны аспекты и как с их помощью выносить логирование, аудит, безопасность и другие сквозные задачи из бизнес-логики. Основные возможности, ограничения и практические сценарии использования. 📎 Читать статью #Y_LAB_University #Y_LAB_Learning
199
7
Новый пост Y_LAB Actual | Код под микроскопом 🔍 Продолжаем разбирать фрагменты кода, в которых всё выглядит правильно до тех
Новый пост Y_LAB Actual | Код под микроскопом 🔍 Продолжаем разбирать фрагменты кода, в которых всё выглядит правильно до тех пор, пока программа не начинает работать не так, как ожидалось. Сегодня под микроскопом небольшой пример на 📱 Python, который регулярно становится причиной багов даже у опытных разработчиков def add_item(item, items=[]): items.append(item) return items print(add_item("apple")) print(add_item("banana")) Вопрос: Что выведет программа? Многие ожидают такой результат: ['apple'] ['banana'] Но на самом деле вывод будет другим: ['apple'] ['apple', 'banana'] Почему так происходит 💬 На первый взгляд кажется, что при каждом вызове функции создаётся новый пустой список: items=[] Но в Python аргументы по умолчанию создаются один раз, в момент объявления функции, а не при каждом её вызове. То есть список items сохраняется между вызовами функции. ↔️Что происходит по шагам: 🎯 Первый вызов: add_item("apple") В список добавляется "apple": ['apple'] 🎯 Второй вызов: add_item("banana") Используется тот же самый список, поэтому результат становится: ['apple', 'banana'] Как исправить 🛠 Обычно используют None в качестве значения по умолчанию: def add_item(item, items=None): if items is None: items = [] items.append(item) return items Теперь при каждом вызове будет создаваться новый список. 💬💬💬 Такая особенность Python может долго оставаться незаметной: функция работает, ошибок нет, но данные начинают «переезжать» между вызовами. Именно поэтому изменяемые объекты в аргументах по умолчанию считаются одним из самых известных антипаттернов языка. А вы знали про эту особенность Python или ожидали другой результат? 👀 #Y_LAB_University #Y_LAB_Actual
174
8
#Y_LAB_University #Y_LAB_Memes
#Y_LAB_University #Y_LAB_Memes
178
9
Новый пост Y_LAB Videos! | Свежее видео Всем привет! Рады сообщить, что на наших ютуб-канале и вк-сообществе вышел новый виде
Новый пост Y_LAB Videos! | Свежее видео Всем привет! Рады сообщить, что на наших ютуб-канале и вк-сообществе вышел новый видеоролик “Микросервисная коммуникация: Rest vs gRPC”. О чем видео? В данном видео вместе с нашим Java-разработчиком Максимом разбираем, как микросервисы обмениваются данными между собой, и сравним REST и gRPC на практике. Поговорим об эволюции HTTP, отличиях JSON и Protobuf, а также покажем лайвкодинг интеграции сервиса заказов и склада. 📱 YouTube ——— 📱 VK #Y_LAB_University #Y_LAB_YouTube #Y_LAB_VK
223
10
#Y_LAB_University #Y_LAB_Memes
#Y_LAB_University #Y_LAB_Memes
216
11
Новый пост Y_LAB_Learning! | Webpack, Vite и No-Build: как сегодня собирать frontend-проекты 🔵 Frontend О чем статья? Как из
Новый пост Y_LAB_Learning! | Webpack, Vite и No-Build: как сегодня собирать frontend-проекты 🔵 Frontend О чем статья? Как изменился подход к сборке Frontend-проектов: от Webpack к Vite и no-build решениям. Плюсы, минусы и сценарии использования каждого подхода в современной разработке. 📎 Читать статью #Y_LAB_University #Y_LAB_Learning
233
12
Новый пост Y_LAB Actual | Код под микроскопом 🔍 Продолжаем рубрику, в которой разбираем небольшие фрагменты кода и ищем в ни
Новый пост Y_LAB Actual | Код под микроскопом 🔍 Продолжаем рубрику, в которой разбираем небольшие фрагменты кода и ищем в них скрытые ошибки, неочевидное поведение и моменты, которые могут привести к неожиданным результатам. 🗄 Сегодня пример не на языке программирования, а на SQL. И это тот случай, когда одна маленькая деталь может повлиять сразу на все данные в таблице: sql UPDATE users SET is_active = false; Вопрос: Что сделает этот запрос? На первый взгляд кажется, что всё просто: обновит значение поля is_active. Но есть важный нюанс: запрос изменит каждую строку в таблице users. 📌 Итог: • Все пользователи станут неактивными; • Данные изменятся сразу для всей таблицы; • Откатить последствия без резервной копии может быть непросто. ❓ Почему так происходит В запросе отсутствует ключевое условие: sql WHERE ... Без WHERE команда UPDATE применяется ко всем записям, которые находятся в таблице. То есть этот код: sql UPDATE users SET is_active = false; по сути означает: > «Сделать is_active = false для каждого пользователя». 💡 Как должно быть? Если нужно обновить конкретную запись, необходимо явно указать условие: sql UPDATE users SET is_active = false WHERE id = 42; Теперь изменится только один пользователь. 🛠 Как защититься от таких ошибок? Полезная привычка перед UPDATE и DELETE сначала запускать: sql SELECT * FROM users WHERE id = 42; Так можно заранее проверить, какие строки попадут под изменение. 🎯🎯🎯 Подобная ошибка кажется слишком очевидной… пока не случается в реальной базе. Иногда один пропущенный WHERE — это не просто баг, а очень долгий вечер восстановления данных. Случалось когда-нибудь запускать запрос и сразу тянуться к backup? 👀 #Y_LAB_University #Y_LAB_Actual
188
13
#Y_LAB_University #Y_LAB_Memes
#Y_LAB_University #Y_LAB_Memes
199
14
Новый пост Y_LAB Videos! | Свежее видео Всем привет! Рады сообщить, что на наших ютуб-канале и вк-сообществе вышел новый виде
Новый пост Y_LAB Videos! | Свежее видео Всем привет! Рады сообщить, что на наших ютуб-канале и вк-сообществе вышел новый видеоролик “Объектное хранилище S3: Полный разбор и настройка MinIO в Spring Boot”. О чем видео? В данном видео вместе с нашим Java-разработчиком Юрием разбираем, как устроено объектное хранилище S3 и почему этот стандарт стал основой для работы с файлами в современных backend-системах. От теории и сравнения популярных S3-решений до практической настройки MinIO и его интеграции с Spring Boot 3: пошагово показываем, как организовать надежное и масштабируемое файловое хранилище в Java-приложении. 📱 YouTube ——— 📱 VK #Y_LAB_University #Y_LAB_YouTube #Y_LAB_VK
268
15
#Y_LAB_University #Y_LAB_Memes
#Y_LAB_University #Y_LAB_Memes
250
16
Новый пост Y_LAB Actual | Код под микроскопом 🔍 Продолжаем рубрику, в которой разбираем небольшие фрагменты кода и ищем в ни
Новый пост Y_LAB Actual | Код под микроскопом 🔍 Продолжаем рубрику, в которой разбираем небольшие фрагменты кода и ищем в них неочевидные особенности, ошибки и подводные камни, которые могут встретиться даже в самых простых на первый взгляд задачах. 📱 Сегодня короткий пример на Java, где всё выглядит логично… но результат может удивить ⬇️ Integer a = 127; Integer b = 127; System.out.println(a == b); Вопрос: Что выведет консоль? Кажется, что ответ очевиден: true И действительно именно таким и будет результат. Но теперь посмотрим на почти такой же код: Integer a = 128; Integer b = 128; System.out.println(a == b); А здесь консоль уже выведет: false ❓ Почему так происходит На первый взгляд оба примера одинаковые: создаются два объекта Integer, которые хранят одно и то же значение. Но дело в том, что Java использует Integer Cache — внутренний механизм кэширования объектов-обёрток для чисел в диапазоне от -128 до 127. Это значит, что в первом примере: Integer a = 127; Integer b = 127; обе переменные ссылаются на один и тот же объект в памяти, поэтому: a == b возвращает true. А вот для числа 128 кэш уже не используется, и создаются два разных объекта, поэтому: a == b даёт false. 🤔 В чём ошибка? Оператор == для объектов сравнивает ссылки, а не значения. Чтобы сравнить сами значения, нужно использовать: System.out.println(a.equals(b)); И тогда результат будет корректным независимо от числа. 🗂️ Такие мелочи легко пропустить, особенно на собеседованиях или при отладке, а потом долго искать, почему одинаковые числа вдруг «не равны». Замечали раньше этот подвох с Integer? 👀 #Y_LAB_University #Y_LAB_Actual
258
17
#Y_LAB_University #Y_LAB_Memes
#Y_LAB_University #Y_LAB_Memes
235
18
Новый пост Y_LAB Videos! | Свежее видео Всем привет! Рады сообщить, что на наших ютуб-канале и вк-сообществе вышел новый виде
Новый пост Y_LAB Videos! | Свежее видео Всем привет! Рады сообщить, что на наших ютуб-канале и вк-сообществе вышел новый видеоролик “Фасилитация в IT: как перестать проводить бесполезные встречи”. О чем видео? В новом выпуске подкаста вместе с ведущим Павлом и HR-руководителем Катериной обсуждаем, что такое фасилитация и почему она становится важной частью рабочих процессов — от эффективности встреч до выстраивания коммуникации в распределённых командах. Поговорили о проблемах онлайн-встреч, изменениях в уже налаженной работе и разобрали реальные кейсы из практики. 📱 YouTube ——— 📱 VK #Y_LAB_University #Y_LAB_YouTube #Y_LAB_VK
284
19
#Y_LAB_University #Y_LAB_Memes
#Y_LAB_University #Y_LAB_Memes
287
20
Новый пост Y_LAB_Learning! | Liquibase vs Flyway: выбираем инструмент для управления схемой базы данных 🗄 БД, Java О чем ста
Новый пост Y_LAB_Learning! | Liquibase vs Flyway: выбираем инструмент для управления схемой базы данных 🗄 БД, Java О чем статья? Инструменты миграции данных Liquibase и Flyway: как выстроить управление изменениями в базе данных и отказаться от ручного внесения правок. Сравнение подходов, возможности интеграции и практических сценариев использования. 📎 Читать статью #Y_LAB_University #Y_LAB_Learning
288