Почему я люблю языки с сильной системой типов, проверяемой статическим анализом кода — хорошо написанная программа является своей собственной спецификацией и позволяет выражать через язык программирования законы существования предметной области.
Когда-то давно я писал на ActionScript. Там была система типов, но вот десериализация JSON'ов по-умолчанию была в какой-то общий Object, к полям которого нужно было обращаться ["по_строковому_имени"]. В один момент мне потребовалось написать что-то на C#, который я совсем не знал, я стал гуглить, как десериализовать JSON, и с удивлением обнаружил кучу советов заранее объявить класс со всеми нужными полями и десериализовать в него.
"Какой ужас!", — подумал я тогда, — "Это же дико неудобно! А если я не знаю полей JSON? А если их много? Отвратительный язык!"
Теперь то я прекрасно понимаю, что JSON это контракт, и что правильная десериализация только такая и должна быть, и что в хорошем API в одном поле никогда не бывает данных принципиально разных типов, и так далее.
Нет, если вы набиваете вечерами пет-проект или сидите бессонную ночь на хакатоне, нет ничего плохого в том, чтобы взять простой язык с динамическими типами вроде JavaScript или Python, не требующий описывать данные. Но вот в энтерпрайзе, особенно когда над одним проектом работает много людей (а бывает это очень часто) — хорошее использование системы типов убережёт разработчиков от огромного количества ошибок, будет бить их по рукам, когда они пытаются сделать что-то не то, и будет подсказывать, когда они не уверены в чём-то.
С помощью статической типизации можно на уровне кода обозначить правила, по которым ведёт себя предметная область вашей программы в реальном мире. Разработчику не только будет сложно их нарушить, но он ещё и станет узнавать какие-то вещи, которые мог не знать раньше.
Например, если мы делаем медицинскую CRM, и больница заводит новых пациентов только тогда, когда знает их группу крови, мы можем объявить тип "Пациент" (или, если точнее, "Карта пациента") и запретить создавать экземпляры этого типа, не передав в конструктор группу крови (которая, в свою очередь, тоже является типом, вероятнее всего ValueObject'ом). Если новый программист пришёл в проект, он, во-первых, не сможет записать в БД некорректную карту пациента. Понятно, мы не учитываем случаи, когда новый программист переделывает модели предметной области — это будет хорошо видно на кодревью. А, во-вторых, даже если ему никто не сказал, что пациенты должны быть с группой крови, он узнает это из кода. И уже будет понимать, что в тех процессах реальной жизни, которые он описывает кодом, карта пациента создаётся только при наличии группы крови. А, значит, нужно искать какой-то способ сначала эту группу крови получить, и только потом создавать карту. Программирование моделирует реальный процесс.
В настоящей работе даже на языках с типами, конечно, без должного контроля можно написать что угодно. Нужна управленческая воля, компетентность руководства, понимание опасности техдолга, в идеале отдельные должности для архитекторов, опытные лиды и старшие разработчики. Но когда всё это есть, можно отсекать много проблем ещё на старте и проще погружать новичков.
#dev
Расскажи, что твоя одежда долго служит, не снимая рекламу
#case
Нашивка бренда одежды Carhartt:
- Owner one / первый владелец
- Owner two / второй владелец
- Owner three / третий владелец
@planning_horizon
Сравнивая подходы и механизмы в кибербезопасности предпочитаю использовать сравнение с медиками или с кулинарией.
Вот представьте себе - у вас есть ресторан с бургерами. А что в бургере важно - котлета, иначе это булка с овощами. И вот вы в ваш ресторан покупаете… домашнюю плиту. Вроде и работает, и духовка есть, и четыре конфорки, но это плита для дома! Она не пригодна для долгой работы, для высокой нагрузки на поверхности.
А почему так? В магазине задушила жаба глядя на профессиональную блестящую плиту, а гадюка в соседнем магазине «Все для ресторанов» продает плиты для дома под видом оборудования для ресторана. И вместо того, что бы задаться вопросом: «А почему у гадюки дешевле, чем в другом? Может это подвох? Может это разные плиты, хоть одинаковый производитель?» наш «герой» идет именно к гадюке и покупает в ресторан то, что не предназначено для ресторана.
Короче, наболело.
Вывод: если вас душит жаба и манит гадюка, то не стоит квакать и прыскать ядом на тех, кто работает честно.
#case
Tonnel Network: Vintage Cigar Giveaway Event
#Tonnel#case
Tonnel Network announces a grand gift giveaway, featuring a variety of vintage cigars as prizes. With a deadline approaching in less than 24 hours, subscribed and active premium users are invited to participate. Follow @case and @tonnel_en to enter.
Source: link
@tonlines
#cougar#case
📢 Cougar OmnyX Series Black — стильный и функциональный Mid Tower корпус, идеально подходящий для мощных игровых и рабочих ПК. Идеальный выбор для сборки мощной, стильной и функциональной системы с отличным охлаждением.
➖Информация о корпусе
➡️Форм-фактор: Mid Tower
➡️Материнская плата: Mini ITX / Micro ATX / ATX
➡️Размеры: 300×520×470 мм
➡️Порты I/O: 2× USB-C, 4× USB-A, аудио джек, кнопка RGB
➡️Отсеки для дисков: 2× 3.5″, 2× 2.5″
➡️Слоты расширения: 7 (можно вертикально)
➡️Вентиляторы: 4× 160 мм ARGB предустановленных, до 7 максимум
➡️Поддержка охлаждения: Передняя 280/240 мм, сбоку 360/240 мм, задняя 280/240 мм
➡️Макс. видеокарта: 380 мм | Макс. кулер CPU: 170 мм | Макс. блок питания: 200 мм
➡️Синхронизация ARGB: Да
💳145 y.e
➖➖➖➖➖➖➖➖➖
📍 Локация: [Малая кольцевая дорога 8A]
⏰ Время работы: [с 10:00 до 20:00]
📞 +998332332030
+998338082030
🔵@comping_admin2
@comping_admin
➖➖➖➖➖➖➖➖➖
🔵Telegram📷Instagram🟥Youtube
Не очень ловкий оператор RedLine Stealer из Афганистана попался 🫣 А вот Егорка который любит пиратить игры получит от родителей 😭
Вывод - TI это не роскошь, а средство не допустить инцидент 😇
P.S. Спасибо нашему CISO за кейс 😏
#malaware#case
🟡Rebranding Kashlux
Loyiha haqida:
Kashlux O‘zbekistonda 20 yildan beri isitish, shamollatish, sovitish va santexnika tizimlarini yetkazib berish, joriy etish va xizmat ko‘rsatish bilan shug‘ullanadi. Yirik ishlab chiqaruvchilarning rasmiy hamkori sifatida ishonchli yetkazib beruvchi sifatida tan olingan. Kompaniya Toshkentda 5 ta ko‘rgazma zaliga ega bo‘lib, yuqori sifatli va keng assortimentdagi mahsulotlarni taqdim etadi.
❌Loyihadagi muammo:
Kashlux eskirgan va sodda brending tufayli bozorda raqobatbardoshligini yo‘qotayotgan edi. Brend tanib olinishi past, mijozlar tajribasi va qoniqishi esa beqaror edi. Yangi mijozlarni jalb qilish uchun yetarlicha mashhurlikka ega emasdi.
✅Biz esa yechim taqdim qildik:
Premium darajadagi yangi brending ishlab chiqdik, raqobatchilardan ajralib turish uchun noyob vizual identifikatorlar joriy etdik. Veb-sayt va ijtimoiy tarmoq sahifalarini to‘liq yangiladik.
______________________
🟡Rebranding Kashlux
About the project:
Kashlux has been engaged in the supply, implementation, and maintenance of heating, ventilation, cooling, and plumbing systems in Uzbekistan for 20 years. Recognized as a reliable supplier as an official partner of large manufacturers. The company has 5 exhibition halls in Tashkent, offering high-quality and a wide range of products.
❌Project problem:
The Kashlux was losing its competitiveness in the market due to outdated and primitive branding. Brand recognition was low, and customer experience and satisfaction were unstable. He didn't have enough popularity to attract new clients.
✅ And we have provided a solution:
We have developed a new brand at the premium level, introduced unique visual identifiers to stand out from competitors. We have completely updated the website and social media pages.
✈️Contact us:
@fidostudiosales
@fidostudiosaless
Telegram | Instagram | Facebook | Website
#portfolio#keys#case
☄️С места — на стройплощадку☄️
Отдел продаж Москва Запад передаёт привет с отгрузки техники ✌️
Ещё один #CASE пополнил парк спецтехники.
Экскаватор-погрузчик уже доставлен и приступил к работе!💪
Техника #CASE в #Русбизнесавто:
✔️ В наличии
✔️ Гарантия
✔️ Надёжное европейское качество
Хотите так же? Ждём вас по адресу:
📌Москва, ул. 2-я Магистральная, д.14Г, стр.1, офис 314
➡️ Звоните, менеджеры уже готовят для вас лучшее предложение!
#CASE#техника#спецтехника#Русбизнесавто
☄️CASE. НАДЕЖНОСТЬ В ДЕЙСТВИИ ☄️
🔝 СПЕЦЦЕНА от
7 790 000 ₽ на экскаватор-погрузчик CASE 570SV
🔼 Мощность, выносливость, комфорт – все для вашей работы.
➡️ Успей купить!
➡️ Кликай и забирай технику - Техника CASE
#CASE#Спецпредложение#ЭкскаваторПогрузчик
🔥CASE. НАДЕЖНОСТЬ В ДЕЙСТВИИ 🔥
🔝 СПЕЦЦЕНА от
8 500 000 ₽ на экскаватор-погрузчик CASE 570SV 🔝
🔼 Мощность, выносливость, комфорт – все для вашей работы.
➡️ Успей купить!
➡️ Кликай и забирай технику - Техника CASE
#CASE#Спецпредложение#ЭкскаваторПогрузчик
7% сотрудников уязвимы перед атакой социальной инженерии
Да, именно такой процент я слышал не раз от коллег. Еще в 2022 году Антон Бочкарев рассказал в своем телеграмм-канале про это явление. А в начале мая уважаемый Денис Владимирович @safebdv привел объяснения этого явления из книги Даниэля Канемана "Думай медленно.. решай быстро" (прямая интерпретацию автора):
Система 1️⃣: срабатывает автоматически и очень быстро, почти не требуя усилий и не давая ощущения намеренного контроля. По-сути человек все время живет в системе 1, потому что это позволяет экономить мыслетопливо, как говорит Максим Дорофеев в своей книге "Джедайские техники". Именно этим пользуются мошенники - что мы сделаем что-то на автомате, не задумываясь. Гурджиев считал, что человек часто находится в состоянии «сна наяву», то есть как машина, управляемая внешними влияниями.
Система 2️⃣: выделяет внимание, необходимое для сознательных умственных усилий, в том числе для сложных вычислений и чтобы включить эту систему - нужны серьезные причины, потому что это затратно для мозга.
Я верю свои коллегам, но и статистика с математикой тоже врать не будут. В моей презентации Cyber Victimology and Threat Landscape есть данные из доклада SoSafe - Human Risk Review 2023 (скриншот слайда прикладываю). Теперь расчет для компании из 1000 сотрудников:
🟣по данным отчета 45% сотрудников открывают фишинговое сообщение: 450
🟣из 450 сотрудников перейдет по ссылке 30%: 135
🟣из перешедших свой логин и пароль оставят 48%: приблизительно 65 сотрудников.
Округляем число и округляем глаза = наши искомые 7% сотрудников.
На следующей неделе мы начнем мероприятия по обновлению нашей платформы обучения - следите за новостями 🙂
#post#case#announcement
Пара слов о том,почему нужно смотреть КТ-снимки- даже если вы не рентгенолог
#education#offtop#case
Одним из основных инструментов,позволяющих нам понять, что мы с пациентами все делаем правильно - это компьютерная томография. Просто лютый кайф, а не метод обследования - достаточно доступный (если речь про большие города), быстро осуществимый и позволяющий объективно оценить, что с твоим пациентом происходит.
И когда есть время,я стараюсь смотреть диски пациентов, которые приходят с данными контрольного обследования. Уровень моей экспертизы по вопросам КТ не высокий (о чем я честно говорю пациентам), и,как правило,я нечасто вижу что- то,расходящееся с заключением коллег. До сегодняшнего дня, по крайней мере, все было именно так
«- слушайте, у меня там походу все плохо. Очаги новые описывают, в печени…их там давно уже не было
- беда, у нас не так много вариантов, если вы поогрессируете (они есть, но реализовать их геморройно). Давайте пересмотрю диски»
В описании черным по белому описывают наличие очагов по три сантиметра. И,открывая диски, ты обычно ожидаешь увидеть то, что пишут коллеги. И открыв диски,я увидел…совершенно чистую, непораженную печень. Ни одного,мать его, очага. Ничегошеньки. Ни малейшей динамики с предыдущем контролем.
С ужасом представляю, как бы перевел пациентку на скотский по переносимости и скромный по эффективности режим терапии, если бы не открыл диски и доверился описанию.
Почему так происходит?
Было бы ожидаемо начать ругать коллег - рентгенологов мол «куда вы смотрите, если даже я, дилетант, вижу, что все в порядке». Однако, есть соображения,которые меня от этого останавливают:
- все ошибаются. В том или ином виде, с разной частотой - но ошибаются. И проблема вряд ли в том, что кт описывал неграмотный чорт , который специально удумал навредить пациентке.
- мне думается, что большой поток пациентов, помноженный на неоптимальную организацию работы в учреждении («-посмотрите, плиз, нет ли там уросепсиса по кт(с)/ гляньте по ЦИТО пациента от главврача/внезапно нагрянувшая проверка в отделение) и прочие атрибуты врачебной работы способны создавать предпосылки к совершению тупых ошибок по невнимательности: скопипастил не ту часть заключения/перепутал диски/не перепроверил себя.
Поэтому,осуждать никого не хочется. Просто хочется напомнить, что ответственность за пациента,по сути, лежит на человеке, принимающем терапевтическое решения, а не на том, кто описывает кт. Поэтому пересматривайте диски, если в чем то сомневаетесь.
🌐Yaponiyadagi boʻlib oʻtadigan koʻrgazma uchun Fido biznesga tayyorlangan maxsus sayt
💻Japan IT Week – bu Yaponiyaning eng yirik IT va raqamli transformatsiya (DX) ko‘rgazmasi bo‘lib, har yili RX Japan kompaniyasi tomonidan tashkil etiladi. U turli shaharlarda – Tokio, Osaka, Nagoya va Chiba shaharlarida yil davomida to‘rt marta o‘tkaziladi.
2025-yilgi bahorgi ko‘rgazma 23–25-aprel kunlari Tokiodagi Tokyo Big Sight markazida bo‘lib o‘tadi. Unda 950 ta ishtirokchi kompaniya va 56 000 dan ortiq tashrif buyuruvchilar qatnashishi kutilmoqda. Shuningdek Fido biznes kompaniyasi ham Japan IT Week yoʻnalishi boʻyicha koʻrgazmada qatnashadi.
🖇️ Koʻrgazma uchun tayyorlangan sayt: fidotech.uz
🔗Yaponiyada boʻlib oʻtadigan koʻrgazma haqida.
_________
🌐 Specific website prepared for Fido business for the upcoming exhibition in Japan
💻
Japan IT Week
is Japan's largest IT and Digital Transformation (DX) exhibition, organized annually by RX Japan. It is held four times a year in different cities - Tokyo, Osaka, Nagoya, and Chiba.
The 2025 Spring Show will take place on April 23-25 at the Tokyo Big Sight Center in Tokyo. 950 participating companies and more than 56,000 visitors are expected to attend. The company Fido business will also take part in the exhibition in the direction of Japan IT Week.
🖇️The website prepared for the exhibition:fidotech.uz
🔗About the upcoming exhibition in Japan.
✈️Contact us:
@fidostudiosales
Telegram | Instagram | Facebook | Our website
#portfolio#keys#case#sayt#site