ГАЙД ПО РЕАКЦИЯМ
Товарищи! Для того, чтобы вы могли точнее выразить свое впечатление от статьи, добавил еще больше кастомных реакций, даже пришлось запариться с созданием собственного пака. И, так как они все имеют неочевидное для обывателя назначение, в этом посте поясню, как этим пользоваться:
🤡 – Ну это просто, это когда вы считаете, что автор, хоть и волк, но в цирке выступает.
👌 – И так сойдет, тут тоже несложно.
🩼 – Костыль, если решение, упомянутое в статье, временное, "уродливое" и используется для обхода проблемы, требующей более сложного и долгосрочного исправления.
😀 – Реакция для Майнкрафта и для 🗿.
🎸 – Когда душа поет или нужно сказать ЯРУССКИЙ.
😐 – Пиксельный Ленин, означает коммунизм или небольшой шок.
🦖 – Динозаврик из моего проекта по нейросетям. Используется для указания на глупость нейросетей, автора или кого-то еще.
🗿 – Жаренные окурки. Значит все, и одновременно ничего не значит. Делайте с этим что хотите.
Товарищи! Для того, чтобы вы могли точнее выразить свое впечатление от статьи, добавил еще больше кастомных реакций, даже пришлось запариться с созданием собственного пака. И, так как они все имеют неочевидное для обывателя назначение, в этом посте поясню, как этим пользоваться:
Please open Telegram to view this post
VIEW IN TELEGRAM
В ЗДОРОВОМ ТЕЛЕ ЗДОРОВЫЙ НОЖ #3
Запела весна, а это значит, что шанс выгнать вас на улицу немного повышен🎉 .
Но во мне самом из медицинского только шприцы и таблетки💊 , так что этот цикл статей написан совместно с моей дорогой подругой❤️ физическим реабилитологом Судаковой Елизаветой 💉 – врачом, в котором почти в равной степени нуждаются программисты👨💻 и дети с врожденными патологиями🩼 (программистам нужнее) ...
Оглавление:
• Иди поспи, реально
• Спорт – сила, сычевание – могила
• Держи осанку, ты же принцесса📍
📯 Держи осанку, ты же принцесса
Сидячий образ жизни ведет к вполне однозначным последствиям, и все они давно изучены👨⚕️ : гиподинамия, кривая спина и повышенные риски многих заболеваний💀 .
В прошлой статье мы поговорили о том, почему важно заниматься вообще, а сегодня сделаем упор на то, что нужно делать📋.
📯 Делай это упражнение три раза в день, и спина болеть не будет
И так, четыре непростых шага, которые не сделают вас полностью здоровым, но хоть немного отсрочат ваше превращение в шахматного коня♟ :
Я когда начал следить за осанкой, моя спина после трех часов уже изнывала от боли😫 . А сейчас, по прошествии нескольких месяцев, я могу сидеть прямо целых шесть часов, и даже не заплакать😭 ! Это дело не быстрое, и растянется на многие месяцы. Но, выработав привычку, ты сможешь держать осанку практически без усилий, и оно того стоит🥇 !
А еще, поставь монитор на уровне глаз, чтобы не приходилось смотреть на свой код сверху вниз😀 .
Важно регулярно напоминать своему организму о том, что он все еще мягкий и подвижный🤸 , иначе он легко об этом забывает😶🌫️ . Здесь нужно покрутить шеей, свести лопатки, поднять руки к небу и проклясть его за 5/2🏃♂️ . Также важно дать отдохнуть глазам: отвести их от монитора, посмотреть близко-далеко, ну вы знаете👁 .
Конечно, полезной будет любая двигательная активность, но выбирая определенные ее виды, мы сможем убить двух зайцев одновременно🐇 : и от гиподинамии спастись🏃♂️ , и спину выпрямить📏.
Да, это даже хуже, чем кофе на коровьем молоке вместо миндального☕️ . По-сути, твои мышцы так напряженно удерживают спину в согнутом положении, что уже не могут расслабиться🥵 . Для того, чтобы это исправить, требуется сначала их размять🛤, а потом заставить работать в правильном направлении🔙 . Только, ходить нужно к специалисту, а не в дрочильни спа-салоны🧖. Да, удовольствие не из дешевых, но тут же все айтишники с зп $300к/наносекунду – переживете💰 .
📯 Почему это важно?
Как стержень, держащий все тело💀 , спина влияет на все, и проблемы с ней тебе точно не нужны🙅♂️ . Так что, если будешь придерживаться рекомендаций, в старости тебе придется меньше времени тратить на очереди в поликлинике🏥, а значит больше времени ты сможешь отдавать сидению на лавке и ругани в ЖЭКе👵 .
Люби свое тело, и оно ответит тебе взаимностью🍃 .
🔝 В начало поста 🔝
😭 – Я уже хожу буквой Г(((
👌 – Йа криветко🦐! главное, чтоб к пиву не зохавали...
Запела весна, а это значит, что шанс выгнать вас на улицу немного повышен
Но во мне самом из медицинского только шприцы и таблетки
Оглавление:
• Иди поспи, реально
• Спорт – сила, сычевание – могила
• Держи осанку, ты же принцесса
Сидячий образ жизни ведет к вполне однозначным последствиям, и все они давно изучены
В прошлой статье мы поговорили о том, почему важно заниматься вообще, а сегодня сделаем упор на то, что нужно делать📋.
И так, четыре непростых шага, которые не сделают вас полностью здоровым, но хоть немного отсрочат ваше превращение в шахматного коня
1. Следи за осанкой.
Твоя спина должна быть прямая все время♾️. Сиди прямо, ходи прямо,спи в планке. Сначала будет тяжело, зато потом будет совсем чуть-чуть полегче💪 👍 .
Я когда начал следить за осанкой, моя спина после трех часов уже изнывала от боли
А еще, поставь монитор на уровне глаз, чтобы не приходилось смотреть на свой код сверху вниз
2. Перерывы с разминкой.
Каждые 30-60 минут ты обязан делать короткий перерыв на разминку🔋 . Подрыгай руками и ногами в разные стороны, убедись, что твои суставы еще не заржавели🕸 .
Важно регулярно напоминать своему организму о том, что он все еще мягкий и подвижный
3. Спорт.
Подробно уже говорили в прошлой статье, здесь добавлю, что спорт хорошо бы направить на спину и/или растяжку💪 . То есть, плавание, йога, воркаут, вот это все🏊♂️ .
Конечно, полезной будет любая двигательная активность, но выбирая определенные ее виды, мы сможем убить двух зайцев одновременно
4. Массаж.
Это не только приятно, но и единственное, что по-настоящему расслабит зажатые мышцы😌 . А зажатые мышцы – это твоя главная проблема❗️ .
Да, это даже хуже, чем кофе на коровьем молоке вместо миндального
Как стержень, держащий все тело
Люби свое тело, и оно ответит тебе взаимностью
😭 – Я уже хожу буквой Г(((
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
🍓3 1
ЗАБУДЬТЕ GRASP
Хочу с вами открыть разговор про паттерны проектирования с такого любимого дедами👨🦳 набора как GRASP.
📯 Это что за покемон?
Во-первых, что, вашу мать, такое этот ваш GRASP🤷♀️ ? Википедия пишет:
, однако это просто неправда🤥 !
Чтобы вы составили представление, вот типичные "паттерны" GRASP📜:
– Низкое зацепление⛓️💥 – ну это, короче, когда подпрограммы/модули слабо связаны друг с другом.
– Высокая связность🧶 – это когда в одном модуле содержится только то, что непосредственно с ним связано.
– Полиморфизм🐏 – Нет, ну это уже ни в какие ворота...
Ну вы поняли, это больше похоже на жизненные советы от пьяного бати🍷 , чем ясные☀️ паттерны, которые вообще хоть что-то означают🤨 .
📯 Цель была упростить программирование
Я до этого GRASP не смотрел внимательно, а так, издалека посмеивался👉 . Но для статьи должен был вникнуть👩🎓 . И мне пришлось вникать🧐 ... То есть, вместо 5 минут, я потратил около часа на прочтение нескольких статей📖 , выяснил, что каждая о чем-то своем, добрался до первоисточника, и наконец разобрался💡 . И результат не то, чтобы стоил усилий.
📯 О чем на самом деле GRASP
В книге Крейга Лармана «Применение UML и шаблонов проектирования», где они впервые появились, прямым текстом об этом написано🫳 :
Уберите отсюда совершенно не к месту использованное слово "шаблоны"🚜, и станет ясно, что хотел сказать автор🤔 :
Если прочитать главу целиком📖 , дополнительно откроется, что уважаемый учитель👨🏫 пытается объяснить, как так из предметной области🚢 нарисовать красивую UML-диаграмму 🚤 , чтобы потом, может быть, это спрограммировать🛳️ .
Тем удивительнее, что каждый второй университет пытается засунуть их в свою программу, и чаще всего, без самих UML🤡 .
🤡 – Я репер, я умею только грррясп.
👌 – Нельзя забыть то, чего не знал.
Хочу с вами открыть разговор про паттерны проектирования с такого любимого дедами👨🦳 набора как GRASP.
Во-первых, что, вашу мать, такое этот ваш GRASP
— шаблоны ПО для назначения главных ответственностей
, однако это просто неправда
Чтобы вы составили представление, вот типичные "паттерны" GRASP📜:
– Низкое зацепление⛓️💥 – ну это, короче, когда подпрограммы/модули слабо связаны друг с другом.
– Высокая связность
– Полиморфизм🐏 – Нет, ну это уже ни в какие ворота...
Ну вы поняли, это больше похоже на жизненные советы от пьяного бати
Я до этого GRASP не смотрел внимательно, а так, издалека посмеивался
Там никакой мудрости предков😺 , никакого космического озарения🧘 , только немного воды💦 и сложносочиненный пятикратно переваренный SOLID😅 .
В книге Крейга Лармана «Применение UML и шаблонов проектирования», где они впервые появились, прямым текстом об этом написано
Что такое шаблоны GRASP?
– Это шаблоны, описывающие фундаментальные принципы распределения обязанностей между объектами.
Уберите отсюда совершенно не к месту использованное слово "шаблоны"🚜, и станет ясно, что хотел сказать автор
Сейчас я вас научу распихивать отношения между классами на основании их ответственностей.
Если прочитать главу целиком
Резюмируя📦, GRASP – список принципов, имеющих довольно узкую сферу применения🤏 , и неоправданно сложных для понимания🧐 .
Тем удивительнее, что каждый второй университет пытается засунуть их в свою программу, и чаще всего, без самих UML
Please open Telegram to view this post
VIEW IN TELEGRAM
Вот и закончился мой отпуск в солнечной Карелии☀️
Болота радостно встретили бесконечными комарами и неожиданно хорошей погодой (обещали дождь на все эти дни)🪷
Но как только появился интернет, на душе как кошки заскребли😩 .. и вдруг я осознал, что хорошо понимаю, тех людей, которые сбегают из IT и открывают свою пасеку🐝 ...
Темой сегодняшней статьи могло быть выгорание🔥 , но вместо того, чтобы ее писать я решил позволить себе отдохнуть😁 .
И вы тоже отдыхайте почаще🏖️ .
А спросить подробнее, как там Карелия, вы можете на
📱 стриме по Майнкрафту, уже онлайн 📱
Болота радостно встретили бесконечными комарами и неожиданно хорошей погодой (обещали дождь на все эти дни)🪷
Но как только появился интернет, на душе как кошки заскребли
Темой сегодняшней статьи могло быть выгорание
И вы тоже отдыхайте почаще
А спросить подробнее, как там Карелия, вы можете на
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7❤3 2 1 1
MVVM – ОТДЕЛЯЕМ МОРДУ ОТ ТЕЛА
Обплевав GRASP, давайте теперь поговорим о настоящих паттернах.
📯 Model-View-ViewModel
Таким образом, мы разделяем проект на два независимых друг от друга модуля➗ : картинку и данные. А между ними для сообщения кидаем мостик в виде ViewModel⛓ .
📯 Где его можно использовать?
Да практически в любом приложении с графикой💅 . Ведь он позволяет:
Во-первых, работать независимо дизайнерам👨🎨 (возможно, даже без кода) и программистам👨💻 .
Во-вторых, легко перенести часть или всю модель на другую платформу🚉. То-есть, при резком изменении интерфейса программы, нам не придется переделывать ее всю, а только View🧠 .
Также этот шаблон позволяет цеплять несколько интерфейсов к одним данным🪝(заходить Вконтактик с компьютера и телефона) : в вебе и мультиплеерных играх🌐 MVVM "включен" по-умолчанию, потому что там сервер⌨️ и морда😐 (бэкенд и фронтенд) выполняются на разных машинах🚗 .
📯 Расширяем сознание
Конкретно наш паттерн в узком смысле строго привязан📍 к платформам WPF и Silverlight (даже не гуглите, что это) , потому что использует их механизм привязки данных🧶 . Однако в такой трактовке было бы мало смысла его тут разбирать🤡 .
📯 Семья MVVM
Вообще-то, придумать, как разделить картинку и данные пытались уже давно👵 , и у MVVM есть два (не очень удачных) старших брата👨👨👦:
1. MVC – Model-View-Controller:
Контроллер изменяет модель, а модель изменяет вид♻️. Такой вот любовный треугольник получается❤️ . На мой взгляд, тут два минуса: неполное разделение модели и вида🔪 , а также лишнее разделение ввода📥 и вывода📤.
2. MVP – Model-View-Presenter:
Presenter управляет как View, так и Model. Здесь тот же MVVM, но промежуточное звено не просто адаптер, а управляющий элемент👑 . Соответственно, Model – превращается в DTO с небольшим количеством логики📦.
⬇️ Пишите в комментариях, какие еще паттерны стоит разобрать! 💬
🤡 – О да, моя программа прямо модель, и у нее такие виды🫦
🎸 – Классы MVC такие:
"Я кондуктор, я кондуктор,
Люди для меня как фрукты"
Обплевав GRASP, давайте теперь поговорим о настоящих паттернах.
– шаблон, разделяющий программу на три части:
Model – бизнес-логика🏭;
View – графический интерфейс🖼 ;
ViewModel – мостик между ними🌉.
Таким образом, мы разделяем проект на два независимых друг от друга модуля
Да практически в любом приложении с графикой
Во-первых, работать независимо дизайнерам
Во-вторых, легко перенести часть или всю модель на другую платформу🚉. То-есть, при резком изменении интерфейса программы, нам не придется переделывать ее всю, а только View
Также этот шаблон позволяет цеплять несколько интерфейсов к одним данным🪝
Конкретно наш паттерн в узком смысле строго привязан
Но стоит заменить "конкретный механизм привязки" на "любой механизм привязки", и дело становится намного интереснее😳 . Тогда нам будет безразлично, как именно организован ViewModel: хоть этим самым биндингом, хоть Observer'ом, хоть вручную🫳 .
Вообще-то, придумать, как разделить картинку и данные пытались уже давно
1. MVC – Model-View-Controller:
Контроллер изменяет модель, а модель изменяет вид♻️. Такой вот любовный треугольник получается
2. MVP – Model-View-Presenter:
Presenter управляет как View, так и Model. Здесь тот же MVVM, но промежуточное звено не просто адаптер, а управляющий элемент
"Я кондуктор, я кондуктор,
Люди для меня как фрукты"
Please open Telegram to view this post
VIEW IN TELEGRAM
Wild Russian GameDev Mentor
ВАЙБ-КОДИНГ ИЛИ ПОЧЕМУ ИИ НЕ СДЕЛАЕТ ИГРУ МЕЧТЫ ЗА ВАС Когда-то давно я пояснял за уровни языков программирования и упомянул там, что т.н. Zero-coding0️⃣ – мертворожденное направление💀 . И вот недавно всплыла💩 очередная вершина человеческой лени и жадности…
Помните пост про вайбкодинг🤔 ?
Теория теорией, но давайте на практике посмотрим, на что способен современный искусственный интеллект🤖 : попробуем навайбкодить себе простую игру и посчитаем, сколько критических багов в ней окажется😂 !
📱 Конечно, в прямом эфире на твиче 📱 ,
так что вы можете в этом поучаствовать!
Теория теорией, но давайте на практике посмотрим, на что способен современный искусственный интеллект
так что вы можете в этом поучаствовать!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2 1 1
ОСЬ ИЗМЕНЕНИЙ (НА КОТОРОЙ Я ВЕРТЕЛ ВАШ SRP)
Во многих статьях я уже упоминал ее вскользь👀 , пришло время поговорить подробнее об этом явлении💬 .
📯 Ось изменений
Сами изменения могут быть любыми, от исправления багов🪲 до удаления старых🗑 или добавления новых фич🎇 .
📯 Зачем она нужна?
Если вкратце, то для измерения соответствия SRP📐, но и не только . Ведь если у нас через модуль проходит единственная ось изменений, то у нас есть единственная причина его менять – значит, он имеет только одну ответственность🧠 .
📯 В смысле 2-3, написано же SINGLE responsibility?!
Понимаешь ли, дело в том, что всем немного насрать...
На самом деле, есть разница еще в размере класса🤏 , а так же в связности этих изменений⛓ .
Да, MVVM идет в жопу с таким подходом, однако.. а оно нам правда всегда нужно🤔 ? Как итог, я никогда не разделяю логику счета каких-то мелочей и их отрисовку🤟 .
📯 Не плодите классы
Давайте немного изменим определение:
Таким образом, как шашлык на шампур🍢 мы насаживаем всех, кто касается нашего обновления🆕 . И их тоже не должно быть слишком много. Иначе ты очень скоро запутаешься, что на чем завязано🧐 , и сам утонешь в своем же болоте🐸 .
🤡 – В моем коде нет лишних ответственностей, потому что я писал его безответственно😂 .
👌 – В мой код не нужно вносить изменения, он и так идеален!
Во многих статьях я уже упоминал ее вскользь
– это линия, проходящая через модуль/класс, когда его необходимо затронуть🫴 для внесении того или иного изменения.
Сами изменения могут быть любыми, от исправления багов🪲 до удаления старых
Если вкратце, то для измерения соответствия SRP📐
На практике, кончено, такого никто добиваться не будет😂 . Однако больше 2-3 осей на модуль свидетельствуют о том, что вам лучше встать на кухню, ведь вместо кода получается лапша🍜 .
На самом деле, есть разница еще в размере класса
Первое просто: если модуль небольшой и позволяет держать его весь в голове одновременно🤔 , можно пока что не думать о его разделении👌 .
Второе говорит о вероятности затронуть две оси вместе👋 . Например, когда мы меняем способ формирования данных👩💻 , мы наверняка захотим изменить и их вывод🖼 .В большинстве случаев.
Да, MVVM идет в жопу с таким подходом, однако.. а оно нам правда всегда нужно
Давайте немного изменим определение:
Ось изменений – это линия, проходящая через модули/классы, которые необходимо затронуть🫴 для внесении того или иного изменения.
Таким образом, как шашлык на шампур🍢 мы насаживаем всех, кто касается нашего обновления
Please open Telegram to view this post
VIEW IN TELEGRAM
КАК Я ПОБЕДИЛ БЕЛЫЙ ЛИСТ
Страх белого/чистого листа – распространенное явление. Это состояние, когда решил начать новый проект, но.. с чего начать-то🤔 ..?
📯 Ножницы бьют бумагу
Суефа дает важную подсказку: лист надо разрезать✂️ . Иначе говоря, слона надо есть по частям🐘. В общем, разбей задачу на подзадачи, эти подзадачи на еще более мелкие подзадачи, и так пока не достигнешь размера в 5-10 минут👊 . Короткое и простое дело легче начать, но главное – ты будешь знать, что делать👍 .
📯 Возьми этот лист и подотрись им
Во многом страх начать новое продиктован ответственностью, возлагаемой первым заложенным кирпичиком🧱 . Ведь от того, как начнешь, зависит ход всего проекта🏃 ! А что, если ты накосячишь в самом начале, и это аукнется так, что потом придется все переделывать😨 ?
Почти все в ИТ сделано через жопу, и ничего, работает💩 ! Вот и ты снимай белые перчатки, засучай рукава, и начинай работать👨💻 . В конце концов, ошибки – это ценнейший ресурс – опыт😎 , который как раз и нужен для (зачаровывания инструментов 📚 💎 ) успешного проекта😁 !
📯 Аппетит приходит во время еды
Подсознание обмануть не так сложно, оно сформировано для управления доисторической ящерицей🦖 , которая в разы тупее курицы🐔 .
📯 Прекрати прокрастинировать
Подробнее я напишу об этом в отдельной статье, здесь только скажу, что в белой пустой комнате📝 проекты начинаются намного проще, чем за компьютером с Майнкрафтом🦥 .
👌 – Следую только второму совету, на этом мои новые проекты и заканчиваются...
🤡 – Страх белого листа сформировался из-за многолетнего систематического угнетения ими черных листов.
Страх белого/чистого листа – распространенное явление. Это состояние, когда решил начать новый проект, но.. с чего начать-то
Суефа дает важную подсказку: лист надо разрезать
Имея список📜 (а лучше – план) действий, ты убьешь сразу двух зайцев 🚫 🐇 :
Во-первых, в маленькой задаче глаза не разбегаются👀 ;
Во-вторых, само написание плана действий – уже действие✍️ .
Во многом страх начать новое продиктован ответственностью, возлагаемой первым заложенным кирпичиком
Как хорошо, что все это не правда🙅♂️ . Мы не запускаем марсоходы, наши ошибки не стоят миллиарды долларов🪐 . Но что самое важное, наши ошибки стоят намного меньше, чем промедление🐢 в стремительном потоке рынка🤑 . К тому же, вероятность провалить проект из-за плохой идеи намного выше, чем вероятность провалить проект из-за каких угодно ошибок на старте🩼 .
Почти все в ИТ сделано через жопу, и ничего, работает
Создай проект📱 , настрой гит📱 , создай беседу в тг📱 или другом настоящем мессенджере для работы📱 , если у тебя команда. В общем, сделай вид, что ты уже начал проект🤥 .
Подсознание обмануть не так сложно, оно сформировано для управления доисторической ящерицей
Подробнее я напишу об этом в отдельной статье, здесь только скажу, что в белой пустой комнате📝 проекты начинаются намного проще, чем за компьютером с Майнкрафтом
Благодаря всему вышеперечисленному, меня больше не пускают в магазины канцелярии📎 , потому что их запасы белых листов начинают трястись и плакать при моем приближении😨 .
Please open Telegram to view this post
VIEW IN TELEGRAM
Давно меня не было в уличных гонках🏎 ...
Но все хорошее когда-то заканчивается, так и мое отсутствие в этом паблике🤷♀️ . Да-да, вы не ослышались, снова буду душнить про код и около него🎉 !!!
А пока вы ждете новый пост⏰ , посмотрите, как я делаю новую прикольную игру в прямом эфире👀 !
📱 Уже начали, присоединяйся! 📱
Но все хорошее когда-то заканчивается, так и мое отсутствие в этом паблике
А пока вы ждете новый пост
Please open Telegram to view this post
VIEW IN TELEGRAM
Как думаете, он реально умер или просто хайпит на своей смерти?