Что с этим делать? Кто у меня проходил трек "как понять в программировании всё", после первых двух курсов имеет минимальное представление о формальной семантике рекурсивных вычислений, чтобы делать правильные промпты, правильные ограничения.
Вообще, в контексте использования AI этот вроде бы чисто теоретический трек внезапно оказался крайне полезным в прикладном плане: там мы разбираем и stateful- и объектную модели, и можем общаться с ChatGPT достаточно формально -- понимая на глубоком уровне, что хотим получить.
Вообще, в контексте использования AI этот вроде бы чисто теоретический трек внезапно оказался крайне полезным в прикладном плане: там мы разбираем и stateful- и объектную модели, и можем общаться с ChatGPT достаточно формально -- понимая на глубоком уровне, что хотим получить.
❤🔥11❤2👍1🎉1
Высокоуровневые навыки проектирования и абстрагирования будут становиться всё более и более важными по мере того, как AI будет брать на себя функции программиста. Мы сможем (до некоего порога, пока плохо прогнозируемого) автоматизировать и масштабировать обычное программирование с одной стороны, и составление ТЗ на основе словесного описания с другой стороны, но вряд ли сможем в обозримом будущем автоматизировать понимание предметной области с целью её формального моделирования, с качественным system design и software design.
Сколько я не просил ChatGPT пооптимизировать дизайн небольшого проекта на 20 классов, он лишь переименовывал классы, выдавая это за software design, и иногда хвастался, что переделал (по форме) DI, хотя семантика никак не изменилась.
Сколько я не просил ChatGPT пооптимизировать дизайн небольшого проекта на 20 классов, он лишь переименовывал классы, выдавая это за software design, и иногда хвастался, что переделал (по форме) DI, хотя семантика никак не изменилась.
👍11✍6😁5🤔2
Это прямо вечная проблема, когда ребята самого разного уровня -- от джунов до сеньоров, годами учатся и учатся с околонулевым финансовым результатом. И потом спрашивают у меня, что им делать.
Процесс с нуля устроиться на работу программистом должен занимать максимум год. Иначе вы явно делаете что-то неправильно.
Вместо бесконечных сотен тысяч рублей на бесконечные курсы вложитесь в менторство.
Потому что пока вы думаете "я сам", вы всегда проигрываете.
Никакого пути самурая нету, ну что за детский сад.
Я сейчас выстраиваю качественно новую схему продвижения по карьере, хочу добиться результата "с нуля за год на 100,000 рублей" (msk/spb, или 50-70 если иное). Многие онлайн-школы это обещают, даже "гарантируют трудоустройство на 150k" -- но когда вы там позанимаетесь, окажется, что вам надо разослать 100500 откликов на вакансии, сходить на 128 собеседований, или ещё какие-нибудь невыполнимые требования, которые могут тянуться бесконечно. Я же хочу сделать этот процесс действительно гарантированным, ну или максимально приближенным к 100%, чтобы он был таким же, как и у миддла: конверсия из откликов в приглашения на собесы, и с собесов в офферы, ну хотя бы 20%.
Вы можете, конечно, получить такой результат с любым другим хорошим ментором, если получится его найти. Единственная разница между мной и менторами в том, что я всё же делаю основной акцент на достаточно фундаментальном обучении программированию, схожим с университетским, и оплата у меня только и именно за курсы, а по карьере я помогаю параллельно просто от души ("за дофамин").
Процесс с нуля устроиться на работу программистом должен занимать максимум год. Иначе вы явно делаете что-то неправильно.
Вместо бесконечных сотен тысяч рублей на бесконечные курсы вложитесь в менторство.
Потому что пока вы думаете "я сам", вы всегда проигрываете.
Никакого пути самурая нету, ну что за детский сад.
Я сейчас выстраиваю качественно новую схему продвижения по карьере, хочу добиться результата "с нуля за год на 100,000 рублей" (msk/spb, или 50-70 если иное). Многие онлайн-школы это обещают, даже "гарантируют трудоустройство на 150k" -- но когда вы там позанимаетесь, окажется, что вам надо разослать 100500 откликов на вакансии, сходить на 128 собеседований, или ещё какие-нибудь невыполнимые требования, которые могут тянуться бесконечно. Я же хочу сделать этот процесс действительно гарантированным, ну или максимально приближенным к 100%, чтобы он был таким же, как и у миддла: конверсия из откликов в приглашения на собесы, и с собесов в офферы, ну хотя бы 20%.
Вы можете, конечно, получить такой результат с любым другим хорошим ментором, если получится его найти. Единственная разница между мной и менторами в том, что я всё же делаю основной акцент на достаточно фундаментальном обучении программированию, схожим с университетским, и оплата у меня только и именно за курсы, а по карьере я помогаю параллельно просто от души ("за дофамин").
🔥26👍6⚡4🫡2❤🔥1
Вообще, формула правильной зарплаты программиста на первые пять лет должна быть такая:
N лет * 100,000
1-й год: вкатился на 100т
3-й год: миддл 300k
5-й год: сеньор 500k.
Тут интересно, что "вкатуны" мотивированы обычно хорошо, а вот кто уже "неплохо" зарабатывает (300k неплохо? хаха), не очень рвутся повышать зарплату и дальше развиваться, а очень зря. 19-летние сеньоры сегодня получают 450 (потому что дико учатся) и скоро выживут из ИТ всех лентяев :)
N лет * 100,000
1-й год: вкатился на 100т
3-й год: миддл 300k
5-й год: сеньор 500k.
Тут интересно, что "вкатуны" мотивированы обычно хорошо, а вот кто уже "неплохо" зарабатывает (300k неплохо? хаха), не очень рвутся повышать зарплату и дальше развиваться, а очень зря. 19-летние сеньоры сегодня получают 450 (потому что дико учатся) и скоро выживут из ИТ всех лентяев :)
🏆15🫡7🔥5😁2⚡1
Нету ни одной такой другой профессии и близко, с такими зарплатами, с таким социальным лифтом, и абсолютной честностью и прозрачностью: либо ты умеешь писать код, либо нет.
Всего у 7% (!) наших сограждан зарплата превышает 100,000 рублей! Причём подниматься до 100k по карьере можно всю жизнь, а в ИТ вы можете получать хорошие деньги достаточно быстро, ещё студентом.
Понимаю, что зовут войти в ИТ сейчас из каждой вкладки браузера, и конечно главная проблема сегодня -- это найти первую работу. Из-за этого действительно немало негативных откликов, когда люди повелись на "гарантированное трудоустройство" прежде всего в надежде на лёгкие деньги, а оказалось, что на каждую джуниорскую вакансию приходят многие сотни голодных ртов. И даже если взяли на работу в стажёры, далеко не всем удаётся удержаться.
Работа программистом всё же такая специфическая вещь, что либо вам это занятие нравится (и вы готовы с утра до вечера писать код и на работе, и вечером например игрушечки пилить или новые веб-фреймворки изучать), либо вы просто быстро выгорите, случайно попав на первую попавшуюся работу, ежедневно кодя бесконечные однообразные тикеты и печально думая "и вот так теперь будет всю жизнь??" (либо вы просветлённый, и вам всё пофиг :).
(Впрочем, за 100-200-300т/месяц можно и потерпеть всю жизнь, считаю. Вспоминайте про остальные 99% бедолаг с более низкими зарплатами и мутными перспективами в свете грядущего AI)
Или поскорее пробегайте сеньорскую должность, и идите в менеджеры; я знаю немало средних миддлов, которые так успешно делали, в айтишке вообще полно самых разных профессий.
Но в целом, конечно, я за пожизненную работу программистом (и крайне рекомендую поскорее уходить на удалёнку), по мне, это просто кайф, я наслаждаюсь этим уже 45 лет, и до конца жизни буду заниматься этим самым счастливым занятием,
и самые лёгкие деньги, какие только могут быть, потому что, ну за 15-20 то лет можно прокачаться хотя бы x10, и делать ежедневную работу за 1 часа остальные 7 часов работать на 7 других работах. Плюс куча потенциальных возможностей с коммерческими проектами, стартапами, AI и т.п.
А карьера, в менеджеры... нафига вам мучиться с этими противными капризными разработчиками, уговаривать их, упрашивать не увольняться, подносить им кофе, врать про золотые горы, отчитываться перед вышестоящими за чужие косяки? Лучше будьте сами такими :)
Даже скромные полмиллиона в месяц за ненапряжное проектирование и архитекторство, вам мало? Дорогие, ну это 0,5% национальной элиты
(ну и, да, зарплата джуниора в США).
Вот например устроился наш курсант тимлидом )))
1) начали проминать по обязанностям - созвоны после рабочего времени за 30 минут до конца рабочего дня - почему бы и нет(18 часов рабочий день заканчивается, поэтому с 18:30 до 19:30 ставим созвон). Руководитель разработки - пиши код, ибо у нас рук не хватает_
2) за 2 неделю моей работы уже 3 разраб сказал досвидания, я больше не хочу тут работать)
3) спринты-задачи не описаны - задачи из воздуха в моменте появляются) на требование мое как руководителя разработки, что задачи должны быть описаны и тд до разработки - мне ответили, что я 2 недели работаю и не имею права что-то требовать
...На собеседовании спрашивал: рабочее время и свободное время - все ли окей? Мне сказали да, это нормальное адекватное решение, мы не мучаем в не рабочее время) А когда ты показываешь видеозапись созвона(я пишу все собесы, хотя и они тоже пишут, что их немного обижает))) говорят что ну мы не совсем это хотели сказать))
Всего у 7% (!) наших сограждан зарплата превышает 100,000 рублей! Причём подниматься до 100k по карьере можно всю жизнь, а в ИТ вы можете получать хорошие деньги достаточно быстро, ещё студентом.
Понимаю, что зовут войти в ИТ сейчас из каждой вкладки браузера, и конечно главная проблема сегодня -- это найти первую работу. Из-за этого действительно немало негативных откликов, когда люди повелись на "гарантированное трудоустройство" прежде всего в надежде на лёгкие деньги, а оказалось, что на каждую джуниорскую вакансию приходят многие сотни голодных ртов. И даже если взяли на работу в стажёры, далеко не всем удаётся удержаться.
Работа программистом всё же такая специфическая вещь, что либо вам это занятие нравится (и вы готовы с утра до вечера писать код и на работе, и вечером например игрушечки пилить или новые веб-фреймворки изучать), либо вы просто быстро выгорите, случайно попав на первую попавшуюся работу, ежедневно кодя бесконечные однообразные тикеты и печально думая "и вот так теперь будет всю жизнь??" (либо вы просветлённый, и вам всё пофиг :).
(Впрочем, за 100-200-300т/месяц можно и потерпеть всю жизнь, считаю. Вспоминайте про остальные 99% бедолаг с более низкими зарплатами и мутными перспективами в свете грядущего AI)
Или поскорее пробегайте сеньорскую должность, и идите в менеджеры; я знаю немало средних миддлов, которые так успешно делали, в айтишке вообще полно самых разных профессий.
Но в целом, конечно, я за пожизненную работу программистом (и крайне рекомендую поскорее уходить на удалёнку), по мне, это просто кайф, я наслаждаюсь этим уже 45 лет, и до конца жизни буду заниматься этим самым счастливым занятием,
и самые лёгкие деньги, какие только могут быть, потому что, ну за 15-20 то лет можно прокачаться хотя бы x10, и делать ежедневную работу за 1 час
А карьера, в менеджеры... нафига вам мучиться с этими противными капризными разработчиками, уговаривать их, упрашивать не увольняться, подносить им кофе, врать про золотые горы, отчитываться перед вышестоящими за чужие косяки? Лучше будьте сами такими :)
Даже скромные полмиллиона в месяц за ненапряжное проектирование и архитекторство, вам мало? Дорогие, ну это 0,5% национальной элиты
(ну и, да, зарплата джуниора в США).
Вот например устроился наш курсант тимлидом )))
1) начали проминать по обязанностям - созвоны после рабочего времени за 30 минут до конца рабочего дня - почему бы и нет(18 часов рабочий день заканчивается, поэтому с 18:30 до 19:30 ставим созвон). Руководитель разработки - пиши код, ибо у нас рук не хватает_
2) за 2 неделю моей работы уже 3 разраб сказал досвидания, я больше не хочу тут работать)
3) спринты-задачи не описаны - задачи из воздуха в моменте появляются) на требование мое как руководителя разработки, что задачи должны быть описаны и тд до разработки - мне ответили, что я 2 недели работаю и не имею права что-то требовать
...На собеседовании спрашивал: рабочее время и свободное время - все ли окей? Мне сказали да, это нормальное адекватное решение, мы не мучаем в не рабочее время) А когда ты показываешь видеозапись созвона(я пишу все собесы, хотя и они тоже пишут, что их немного обижает))) говорят что ну мы не совсем это хотели сказать))
🔥27🤯4👍2
Хорошая новость для программистов :)
"We found Google AlphaCode 2 (competitive programming model)... sits at the 85th percentile on average – i.e. it performs better than 85% of entrants, ranking just between the ‘Expert’ and ‘Candidate Master’ categories on Codeforces"
Обсуждение тут.
Ну, да, весьма сложные алгоритмические задачки с чёткой формальной (а может даже, и неформальной) постановкой AI решает уверенно. Но реальное программирование совсем другое. Вот тебе проект на 500,000 строк говнокода, и чтоб завтра начал фигачить тикеты.
Как тебе такое, AlphaCode 2 ?
"We found Google AlphaCode 2 (competitive programming model)... sits at the 85th percentile on average – i.e. it performs better than 85% of entrants, ranking just between the ‘Expert’ and ‘Candidate Master’ categories on Codeforces"
Обсуждение тут.
Ну, да, весьма сложные алгоритмические задачки с чёткой формальной (а может даже, и неформальной) постановкой AI решает уверенно. Но реальное программирование совсем другое. Вот тебе проект на 500,000 строк говнокода, и чтоб завтра начал фигачить тикеты.
Как тебе такое, AlphaCode 2 ?
😁20🫡3
Что выбираете?
Anonymous Poll
69%
зп 300k работать 20 часов в неделю
31%
зп 600k работать 50 часов в неделю
🤔3
У меня дома 5 больших мониторов (и даже думал про 43"), но я по-прежнему пишу код и тексты со старенького ноутбука...
🤔15✍5🫡5🤯2⚡1
Кстати, в тему :)
😁25❤4👍3💯3🫡2
Дорогие, по голосованию: ну такой перекос в сторону 300k/4часа в день хочут 70% ! Ну да, я и сам такое выбрал :) Хорошо это ещё и тем, что вы можете остальное время как бездельничать, так и саморазвиваться (а при желании работать вторую работу 300/4).
Но для этого вам нужна удалёнка обязательно.
Следующий год посвящаем мощной прокачке по денежной теме, но, напоминаю, с 01.01.24 правила занятий станут ещё строже 🙈
Я кстати планировал ещё курс по "сильному мышлению программиста", но увы, ресурсов не хватает, поэтому откладывается на неопределённый срок, а порекомендую для начала проверенный подход: пройдите курс "Системное саморазвитие" в ШСМ Левенчука. Там ещё и других курсов по теме немало.
=
300/4 хороши ещё и потому, что, ну, вы же знаете фундаментальный принцип теории систем -- закон Гудхарта?
Когда мера становится целью, она перестаёт быть хорошей мерой
Как работодатель может измерить продуктивность программиста? Если по числу закрываемых тикетов, люди будут закрывать их быстрее, а потом отлаживать баги в два раза дольше. Если вы будете требовать безошибочный код, люди будут закрывать тикеты очень долго. Если хотите, чтобы их делали быстро и качественно, придётся платить тройную зарплату по рынку. Если вы выберете некую общую производительность, люди будут жертвовать безопасностью. Если будете оценивать число багов, люди вообще перестанут писать код: отсутствие нового кода в проде означает отсутствие новых проблем!
В СильныхИдеях скоро расскажу маленький секретик, что тут можно поделать: три важнейших критерия по теории систем применительно к программной инженерии, как получать качественный код разумными затратами.
В мэйнстриме это никто не знает, и лучшее, до чего додумались надзиратели -- это требовать, чтобы человек выдерживал 8+ часов в день, уставившись в экран. Это сегодня основной "навык", необходимый для работы программистом.
Но для этого вам нужна удалёнка обязательно.
Следующий год посвящаем мощной прокачке по денежной теме, но, напоминаю, с 01.01.24 правила занятий станут ещё строже 🙈
Я кстати планировал ещё курс по "сильному мышлению программиста", но увы, ресурсов не хватает, поэтому откладывается на неопределённый срок, а порекомендую для начала проверенный подход: пройдите курс "Системное саморазвитие" в ШСМ Левенчука. Там ещё и других курсов по теме немало.
=
300/4 хороши ещё и потому, что, ну, вы же знаете фундаментальный принцип теории систем -- закон Гудхарта?
Когда мера становится целью, она перестаёт быть хорошей мерой
Как работодатель может измерить продуктивность программиста? Если по числу закрываемых тикетов, люди будут закрывать их быстрее, а потом отлаживать баги в два раза дольше. Если вы будете требовать безошибочный код, люди будут закрывать тикеты очень долго. Если хотите, чтобы их делали быстро и качественно, придётся платить тройную зарплату по рынку. Если вы выберете некую общую производительность, люди будут жертвовать безопасностью. Если будете оценивать число багов, люди вообще перестанут писать код: отсутствие нового кода в проде означает отсутствие новых проблем!
В СильныхИдеях скоро расскажу маленький секретик, что тут можно поделать: три важнейших критерия по теории систем применительно к программной инженерии, как получать качественный код разумными затратами.
В мэйнстриме это никто не знает, и лучшее, до чего додумались надзиратели -- это требовать, чтобы человек выдерживал 8+ часов в день, уставившись в экран. Это сегодня основной "навык", необходимый для работы программистом.
⚡13✍8👍2🫡2🐳1
Синхронные вычисления (sync в sync/async) -- это ...
Anonymous Poll
73%
выполняющиеся последовательно, одно за другим
27%
выполняющиеся одновременно/синхронно
🤔2
Дорогие, вы видите результаты ↑
А это ведь одна из фундаментальных вещей в ИТ, однако мэйнстрим словно нарочно придумывает такие абсурдные названия.
Ну можно же было вместо sync/async говорить, например, блокирующий I/O или "overlapped" I/O, а самое простое -- последовательный или "конкурентный" (concurrent).
Знаете почему так? Потому что львиная доля программистов не обучалась в хороших университетах, и их понимание computer science равно абсолютному нулю :)
"Why the fuck do we let people that have no computer science backgrounds write code? Unacceptable!"
Erik Meijer, святой cs
Я немножечко стараюсь этот пробел ликвидировать, и остался уже один такой в русской айтишке. Ни при каких условиях не скачусь во все эти ваши веб-фреймворки и прочую технологическую ересь (пиши спокойно миддлом всю жизнь на пыхапы :), а кому не нравится, идитекуда подальше на курсы коллег.
И дальше в Школе буду развивать исключительно академические темки, а тех, кто прошёл все мои курсы, постепенно буду, принуждать :) к профильной математике ("гомотопическая теория типов как язык программирования"). Вы в результате получите такое космическое мышление, к которому и близко не приблизитесь за десятки лет практики программирования.
И, да, в современном мире это уже андеграунд.
P.S. Кто у меня проходил трек по параллельным вычислительным моделям, только посмеётся над такими вопросами: разбираем всё это на научной базе, встраиваем в голову соответствующую думательную машинку.
Напомню, что синхронное программирование -- это программирование в рамках направленного графа потоковых объектов. Потоковый объект может выполнить свои вычисления только после того, как считает по одному элементу из каждого из своих входных потоков. Из этого естественно следует, что каждый потоковый объект на графе синхронизирован с любым другим. Потоковому объекту допустимо опережать в вычислениях своих преемников на графе (которым он передаёт данные), но он не может опережать своих предшественников (от которых ему поступают данные).
А это ведь одна из фундаментальных вещей в ИТ, однако мэйнстрим словно нарочно придумывает такие абсурдные названия.
Ну можно же было вместо sync/async говорить, например, блокирующий I/O или "overlapped" I/O, а самое простое -- последовательный или "конкурентный" (concurrent).
Знаете почему так? Потому что львиная доля программистов не обучалась в хороших университетах, и их понимание computer science равно абсолютному нулю :)
"Why the fuck do we let people that have no computer science backgrounds write code? Unacceptable!"
Erik Meijer, святой cs
Я немножечко стараюсь этот пробел ликвидировать, и остался уже один такой в русской айтишке. Ни при каких условиях не скачусь во все эти ваши веб-фреймворки и прочую технологическую ересь (пиши спокойно миддлом всю жизнь на пыхапы :), а кому не нравится, идите
И дальше в Школе буду развивать исключительно академические темки, а тех, кто прошёл все мои курсы, постепенно буду, принуждать :) к профильной математике ("гомотопическая теория типов как язык программирования"). Вы в результате получите такое космическое мышление, к которому и близко не приблизитесь за десятки лет практики программирования.
И, да, в современном мире это уже андеграунд.
P.S. Кто у меня проходил трек по параллельным вычислительным моделям, только посмеётся над такими вопросами: разбираем всё это на научной базе, встраиваем в голову соответствующую думательную машинку.
Напомню, что синхронное программирование -- это программирование в рамках направленного графа потоковых объектов. Потоковый объект может выполнить свои вычисления только после того, как считает по одному элементу из каждого из своих входных потоков. Из этого естественно следует, что каждый потоковый объект на графе синхронизирован с любым другим. Потоковому объекту допустимо опережать в вычислениях своих преемников на графе (которым он передаёт данные), но он не может опережать своих предшественников (от которых ему поступают данные).
👍18🔥6❤4😁3🫡1
Вот вам изумительный пример из двух строк, в котором наличествует глубокая мудрость software design.
Мы явно различаем вывод и лог.
При этом сам код ориентирован на логирование.
Но без создания отдельного logging py
И без возни с настройкой лога.
Мы сохранили общее намерение, но делегировали фактическую работу.
Мы явно различаем вывод и лог.
При этом сам код ориентирован на логирование.
Но без создания отдельного logging py
И без возни с настройкой лога.
Мы сохранили общее намерение, но делегировали фактическую работу.
🤔20✍9🫡6👏3
Я не могу рассказать вам, что эксперт по Java знает о всём стеке Jave, но я могу рассказать вам, что (и, главное, как) эксперт по Java (или любому другому языку) думает о Java (чаще всего, криво и бессознательно).
Для этого достаточно пройти мой трек по вычислительным моделям.
Для этого достаточно пройти мой трек по вычислительным моделям.
✍9🤔9🫡3
.
Нулевое правило Лаборатории: никому не рассказывать про Лабораторию.
Первое правило Лаборатории: ты обязан развиваться всю жизнь.
Второе правило Лаборатории: твоё развитие как программиста должно обязательно сопровождаться постоянным ростом денежного дохода.
Третье правило Лаборатории: твоё развитие как программиста должно основываться на суперспособностях -- computer science и математике, чтобы любые веб-фреймворки, языки и технологические стеки твой сильный рациональный ум был способен изучить за неделю.
Нулевое правило Лаборатории: никому не рассказывать про Лабораторию.
Первое правило Лаборатории: ты обязан развиваться всю жизнь.
Второе правило Лаборатории: твоё развитие как программиста должно обязательно сопровождаться постоянным ростом денежного дохода.
Третье правило Лаборатории: твоё развитие как программиста должно основываться на суперспособностях -- computer science и математике, чтобы любые веб-фреймворки, языки и технологические стеки твой сильный рациональный ум был способен изучить за неделю.
🔥61🫡31❤5💯3⚡1
Лаборатория Математики и Программирования Сергея Бобровского pinned «. Нулевое правило Лаборатории: никому не рассказывать про Лабораторию. Первое правило Лаборатории: ты обязан развиваться всю жизнь. Второе правило Лаборатории: твоё развитие как программиста должно обязательно сопровождаться постоянным ростом денежного дохода.…»
Регулярно читаю подобное в отчётах ребят, кто занимается на начальных курсах с нуля:
...Опять ошибка из-за невнимательности – поставил какой-то странный диапазон (300 – 401 вместо 100 – 999). Причём сейчас (через пару дней) я не понимаю, откуда я взял такой диапазон…
...Да да да, счётчик внутри условного оператора - это детская ошибка. Жалко, конечно, что я этого не заметил сам.
Опять невнимательность подводит =(
Вот вам смешно, а вы сами что, лучше, что ли? :)
Пусть не такие ошибки, но всё равно, все мы делаем глупые ошибки из-за элементарной невнимательности на своём уровне, за которые потом стыдно.
...Опять ошибка из-за невнимательности – поставил какой-то странный диапазон (300 – 401 вместо 100 – 999). Причём сейчас (через пару дней) я не понимаю, откуда я взял такой диапазон…
...Да да да, счётчик внутри условного оператора - это детская ошибка. Жалко, конечно, что я этого не заметил сам.
Опять невнимательность подводит =(
Вот вам смешно, а вы сами что, лучше, что ли? :)
Пусть не такие ошибки, но всё равно, все мы делаем глупые ошибки из-за элементарной невнимательности на своём уровне, за которые потом стыдно.
🔥24👍4💯2🫡1