TGTGInsightтелеграм анализLIVE / telegram public index
← Такты, стеки, два колеса

TGINSIGHT SIMILAR POSTS

Намери подобно съдържание

Изходен канал @clockstackwheels · Post #721 · 26.12

Почему я люблю языки с сильной системой типов, проверяемой статическим анализом кода — хорошо написанная программа является своей собственной спецификацией и позволяет выражать через язык программирования законы существования предметной области. Когда-то давно я писал на ActionScript. Там была система типов, но вот десериализация JSON'ов по-умолчанию была в какой-то общий Object, к полям которого нужно было обращаться ["по_строковому_имени"]. В один момент мне потребовалось написать что-то на C#, который я совсем не знал, я стал гуглить, как десериализовать JSON, и с удивлением обнаружил кучу советов заранее объявить класс со всеми нужными полями и десериализовать в него. "Какой ужас!", — подумал я тогда, — "Это же дико неудобно! А если я не знаю полей JSON? А если их много? Отвратительный язык!" Теперь то я прекрасно понимаю, что JSON это контракт, и что правильная десериализация только такая и должна быть, и что в хорошем API в одном поле никогда не бывает данных принципиально разных типов, и так далее. Нет, если вы набиваете вечерами пет-проект или сидите бессонную ночь на хакатоне, нет ничего плохого в том, чтобы взять простой язык с динамическими типами вроде JavaScript или Python, не требующий описывать данные. Но вот в энтерпрайзе, особенно когда над одним проектом работает много людей (а бывает это очень часто) — хорошее использование системы типов убережёт разработчиков от огромного количества ошибок, будет бить их по рукам, когда они пытаются сделать что-то не то, и будет подсказывать, когда они не уверены в чём-то. С помощью статической типизации можно на уровне кода обозначить правила, по которым ведёт себя предметная область вашей программы в реальном мире. Разработчику не только будет сложно их нарушить, но он ещё и станет узнавать какие-то вещи, которые мог не знать раньше. Например, если мы делаем медицинскую CRM, и больница заводит новых пациентов только тогда, когда знает их группу крови, мы можем объявить тип "Пациент" (или, если точнее, "Карта пациента") и запретить создавать экземпляры этого типа, не передав в конструктор группу крови (которая, в свою очередь, тоже является типом, вероятнее всего ValueObject'ом). Если новый программист пришёл в проект, он, во-первых, не сможет записать в БД некорректную карту пациента. Понятно, мы не учитываем случаи, когда новый программист переделывает модели предметной области — это будет хорошо видно на кодревью. А, во-вторых, даже если ему никто не сказал, что пациенты должны быть с группой крови, он узнает это из кода. И уже будет понимать, что в тех процессах реальной жизни, которые он описывает кодом, карта пациента создаётся только при наличии группы крови. А, значит, нужно искать какой-то способ сначала эту группу крови получить, и только потом создавать карту. Программирование моделирует реальный процесс. В настоящей работе даже на языках с типами, конечно, без должного контроля можно написать что угодно. Нужна управленческая воля, компетентность руководства, понимание опасности техдолга, в идеале отдельные должности для архитекторов, опытные лиды и старшие разработчики. Но когда всё это есть, можно отсекать много проблем ещё на старте и проще погружать новичков. #dev

Hashtags

Резултати

Намерени 2 подобни публикации

Търсене: #enron

当前筛选 #enron清除筛选

💡 Управление рисками: Сиквел Всем привет, как обещал в прошлое воскресение, продолжаю исследовать тему управления рисками. Сегодня поговорим о том, как можно если их не избежать, то значительно снизить. 🚨Этот пост ещё больше первой части. Время чтения ≈6 минут ⚠️ Снижение системных рисков 🌎 Системные риски невозможно полностью устранить, так как они зависят от глобальных факторов. Но можно минимизировать: 1️⃣Диверсификация по активам и регионам 🌐 • Распределяйте инвестиции между различными классами активов: акции, облигации, недвижимость, золото. Про простой, как палка-мотыга подход Рэя Далио я писал тут. • Инвестируйте в компании и фонды из разных стран и регионов, чтобы уменьшить зависимость от одной экономики. Держи я средства в свое время на IB (Interactive Brokers), вместо удобного Тинькова, то не остался бы, как ощипанный павлин, но что былое ворошить. 2️⃣Инвестиции в защитные активы 🛡️ • Защитные активы, такие как золото, облигации с высоким рейтингом или фонды денежного рынка, часто сохраняют стабильность во время кризисов. 3️⃣Стратегия усреднения (DCA) 📈 • Регулярное инвестирование фиксированных сумм (даже при изменении цен) снижает влияние волатильности рынка на долгосрочные результаты. 4️⃣Создание резервного фонда 💼 • Держите ликвидные средства для покрытия непредвиденных расходов. Это позволяет избежать необходимости продавать инвестиции во время рыночного спада. Я вот вчера разбил очки, а на новые пришлось потратить 420 € 🔴 Не будь резервного фонда, пришлось бы несладко. 5️⃣Выбор устойчивых отраслей 🔋 • Инвестируйте в сектора, которые менее подвержены кризисам, например, здравоохранение, коммунальные услуги или потребительские товары первой необходимости. 6️⃣Хеджирование портфеля 🧮 • Используйте (но лучше вообще забудьте о них, если не понимаете, что это) производные инструменты, такие как опционы или фьючерсы, чтобы защититься от рыночных колебаний. Снижение несистемных рисков 🏦 Несистемные риски связаны с конкретными компаниями, отраслями или регионами, поэтому их нужно эффективно контролировать: 1️⃣Глубокий анализ перед инвестированием 🔍 • Изучайте финансовую отчётность компании, анализируйте ключевые показатели эффективности (P/E, ROE, долг/капитал). Я рекомендую не заниматься «сток пикингом», но если уж очень хочется, то перед этим делать, как минимум, «Кислотный тест» — отношение кассовой наличности и дебиторской задолженности к текущим обязательствам фирмы, согласно которому текущие активы (за исключением товарно-материальных запасов) были бы хотя бы не меньше текущих долговых обязательств. Так завещал Грэм (1934, Анализ ценных бумаг), так работает его ученик У.Баффет. 2️⃣Диверсификация внутри портфеля 🗑— золотое правило для обоих типов рисков, как вы могли заметить. • Не концентрируйте капитал в одной компании, отрасли или регионе. • Для диверсификации можно использовать ETF или индексные фонды. 3️⃣Оценка рисков компании 📇 • Учитывайте управление компанией, уровень долговой нагрузки, перспективы отрасли и риски, связанные с продукцией или услугами. 4️⃣Своевременная ребалансировка портфеля 🧘‍♀️ • Регулярно пересматривайте структуру портфеля, чтобы соответствовать текущим рыночным условиям и своим целям. 5️⃣Инвестиции в компании с устойчивой бизнес-моделью 🏗️ • Выбирайте компании с долгосрочной конкурентоспособностью, инновациями и высокой рентабельностью. Однако всегда помните о #Enron, #Nokia и других «непотопляемых» компаниях, которые в относительно короткий срок внезапно закончились 6️⃣Снижение региональных рисков 🌏 • Избегайте концентрации активов в политически нестабильных или экономически слабых регионах. 7️⃣Следите за новостями и тенденциями 🗞 • Будьте в курсе глобальных изменений, таких как новые законы, санкции, технологические прорывы или изменения предпочтений потребителей. И помните: по статистике чаще проигрывает тот, кто изо всех сил старается победить, нежели тот, кто всего-навсего пытается избежать ошибок (1997, Т. Галвей — Теннис как внутренняя игра). Спасибо, что прочитали 😊 Делитесь мыслями 💬 в комментариях и хорошего вечера!

Hashtags

Venture Village Wall 🦄

@venturevillagewall · Post #4164 · 16.02.2025 г., 04:00

Argentina Investigates LIBRA Token Misconduct Argentina's President Javier Milei calls for an investigation into LIBRA token's rug pull, requesting the Anti-Corruption Office's involvement to assess potential misconduct by government members. Findings will be forwarded to the court. Opposition considers impeachment due to the incident. Links: Statement, Watch, Details. #LIBRA#Crypto#Argentina#investigation#rugpull#president#JavierMilei#impeachment#KIPProtocol#AntiCorruption#fundflow#temporalanalysis#MELANIA#ENRON#Solana#ETF#Bitcoin#adoption#blockchain#corruption#misconduct