The key to getting MVC correct is understanding what models are 💬 Длинная дискуссия
Как MVC стало таким бардаком
Классическое Smalltalk-MVC:
- Model — данные, ничего не знает об UI.
- View — рисует Model, подписывается на её изменения.
- Controller — переводит клики/клавиши в команды Model.
Связь Model→View только через наблюдение (observer), поэтому Model переиспользуема.
Apple (и большинство фреймворков) всё перепутали:
- View и Controller слили в «View-Controller» — толстый монстр, который одновременно держит UI-элементы и кучу логики.
- Controller превратился в мусорный бак кода, «непереиспользуемый — но это нормально».
- Model зачастую делают пассивной структурой, а состояние хранят в самом виджете (чекбокс знает своё значение).
Итог: вместо «Model как источник истины» получаем размазанное состояние по View-Controller’ам, гонки данных и невозможность тестировать.
Почему случилось: в C/Pascal сделать observable-Model было больно, поэтому в Xerox Lisa пожертвовали чистотой ради скорости. За ними потянулись все.
Как надо:
Model — любой observable-объект (даже bool в обёртке). View подписывается и рисует текущее значение; никогда не спрашивает «каков чекбокс?» — он знает только Model. Controller лишь говорит Model «переключись». Можно цеплять сколько угодно View к одной Model без изменения кода.
Комментарии (158)
- MVC — «религия без евангелия»: все уверены, что знают, что такое Model и View, но Controller — у каждого свой.
- Исходные определения настолько абстрактны, что под MVC подгоняют любую структуру из трёх классов; реальные кодовые базы показывают 1:1 связь V-C, что уничтожает пользу разделения.
- Контроллер быстро превращается в «всё, что не влезло в M или V», из-за чего страдает тестируемость и масштабируемость; 15 лет рефакторинга iOS-проектов подтверждают: 100 % проблем — в недостаточной проработке Model.
- RAD-фреймворки и визуальные редакторы ускорили искажение: код-behind стал контроллером, а «настоящий» MVC остался только в Smalltalk-историях.
- Практический выход: оставить MV, убрать лишний C или превратить его в тонкий «GluePuppy», который просто связывает наблюдаемую Model с реактивной View; всё остальное — следствие Expression Problem и отсутствия языковой поддержки композиции.
Axial twist theory
Теория аксиального скручивания объясняет зеркальную (перекрёстную) организацию нервной системы позвоночных: правая половина тела иннервируется левым полушарием и наоборот. Согласно теории, на ранней стадии эмбриогенеза головной мозг и спинной хребет поворачиваются друг относительно друга на 180°, что и создаёт описанную асимметрию.
Ключевые положения
- Эмбриональный поворот: между 2-й и 4-й неделями у человека передний мозг отклоняется вправо, задний — влево; затем происходит «завинчивание» ствола.
- Генетика: за поворот отвечают гены PITX2, NODAL, SHH; мутации вызывают гетотаксию (зеркальное расположение органов).
- Эволюция: скручивание появилось у первых хордовых и сохранилось у всех позвоночных.
- Морфология:
– «мозговой крутящий момент» (правое лобное и левое затылочное полушарие крупнее);
– перекрёст зрительных, обонятельных и пирамидных путей;
– внутренние органы расположены асимметрично (сердце слева, печень справа).
Альтернативы и вопросы
- Гипотеза инверсии: позвоночные «перевернулись» спиной к хорде.
- Соматическое скручивание: поворачивается всё тело, а не только нервная трубка.
- Пока неясно, как именно поворот координируется с формированием скелета и сосудов.
Комментарии (43)
- Обсуждение крутится вокруг «осевого поворота» у позвоночных: тело будто бы перекручено на 180°, поэтому мозг управляет противоположной стороной.
- Кто-то вспоминает старую «инженерную» теорию, объясняющую зеркальное отображение в мозге топологией проводки, но точную ссылку никто не находит.
- Все восхищаются или пугаются милых, но странных схем, которые нарисовал сам автор теории (User:Marci68), и опасаются, что их заменят «корпоративными» картинками.
- Спорят, действительно ли «поворот» научный консенсус или личная теория одного учёного, потому что почти вся викистатья написана им же.
- Мелькнули шутки про левшей, сердце-спираль Торрент-Гуаспа и «звёздных морских ежей» на Марсе, но быстро сошли на нет.
Knowledge and memory
- Клод придумал три несуществующих метода Ruby; я бы тоже мог так «угадать», но не делаю этого, потому что помню, где и когда учил каждую деталь.
- Моя память «осадочная»: факты ощущаются плотными или пустыми, и я чувствую разницу между знанием и догадкой.
- У биологов до сих пор нет модели, что именно в мозге есть память; это центральная тайна человечества.
- У языковых моделей памяти нет: веса — как ДНК, а не как личный опыт. Контекстное окно — лишь блокнот в чужом номере.
- Чтобы перестать галлюцинировать, ИИ должен жить во времени и причинности, а не просто обрабатывать текст.
Комментарии (43)
- Участники спорят, почему LLM «галлюцинируют»: кто-то винит сжатие знаний, кто-то — статистическую природу моделей.
- Нейробиологи и пациенты уточняют: человеческая память тоже ненадёжна, но у нас есть метапамять и эпизодические «якоря», которых у LLM нет.
- Документированная письменная база знаний считается лучшим способом снизить ошибки ИИ, пока не появятся принципиально новые архитектуры.
- Некоторые считают термин «галлюцинация» маркетинговым и предлагают называть это просто «ошибкой» или «склейкой».
Комментарии (79)
- Приложения полезны только для зубрёки слов, но не заменяют полноценного изучения.
- Ключ к успеху — иммерсия: аниме, книги, подкасты, живое общение.
- Критика UI: спорные шрифты, лишний ромадзи, неудобный выбор наборов слов, неочевидный старт.
- Пользователи просят выключать ромадзи, добавлять режим письма, группировать уроки по JLPT и убирать Google Analytics.
- Без грамматики, разговора и письма даже лучшее приложение превращается в просто карточки-словарь.
A Navajo weaving of an integrated circuit: the 555 timer 🔥 Горячее
Навахо-ковёр «555 таймер» — схема микросхемы, вытканная из шерсти. Белые линии — металлизация, чёрное поле — кремний, оранжевые ромбы — контактные площадки.
Мастерица Марилу Шульц воплотила 25 транзисторов и три крупных «квадрата» 王, сделав микроскопические дорожки монументальными. Вдохновение — тёмнопольная фотография кристалла Антуана Берковичи.
Работа продолжает серию: с 1994 года она ткёт «чипы» из шерсти навахо-чурро, начав с Pentium для Intel. В новом ковре серебряная и золотая нити подменяют алюминий и медь реального дай.
Комментарии (60)
- Художница-маруха Марилу в ткачестве воспроизвела схему культового таймера 555, превратив кремниевую топологию в ковёр.
- Участники вспомнили, что навахо уже связывали ткачество и высокие технологии: в 1969 году женщины плели «память» для Apollo, а недавно Марджо Селби показала 16-метровую инсталляцию «moon landing» в соборе Кентербери.
- Обсуждали, почему 555 до сих пор не вытеснили микроконтроллеры: он дешёв, работает в экстремальных условиях, не требует прошивки и живёт десятилетия.
- Кто-то предложил вплести проводящие нити, чтобы ковёр стал рабочей схемой; другие сравнили узор с линиями Наски и фракталами.
- Тема вызвала волну ностальгии, восхищения «красотой механической необходимости» и рефлексию о передаче знаний будущим поколениям через текстиль.
Microsoft Azure: "Multiple international subsea cables were cut in the Red Sea"
Сводка Azure
- Инцидент: 06.09.25, 05:45 UTC – повреждены подводные кабели в Красном море; трафик Европа ↔ Азия идёт обходными путями, задержки выше нормы.
- Статус: команды перенаправляют нагрузку, ремонт займёт время; обновления ежедневно.
- Регионы: задержки возможны во всех европейских, азиатских и ближневосточных зонах; сервисы помечены «Information».
- Действие: следите за Azure Service Health в портале, настройте оповещения.
Комментарии (27)
- 6 сентября 2025 г. около 05:45 UTC несколько подводных кабелей в Красном море оборвались, и трафик Европа ↔ Азия пошёл обходными путями с ростом задержки.
- Пока неясно, случайность это (рейд якорей) или умысел; официальных выводов нет.
- Кабели чинят: спецсудно крюком поднимает концы на борт, вырезает повреждённый участок и сваривает новый отрезок, после чего кабель опускают обратно.
- Процесс сложен: современные кабели натянуты без излишков, поэтому часто приходится предварительно разрезать их на дне.
- Подобные обрывы в Красном море и у Сингапура случаются регулярно — чаще всего виноваты якоря судов.
Shipping textures as PNGs is suboptimal
Перестаньте пихать PNG в игры
PNG — хорош для обмена, но плох для текстур: нет мипмапов, кубемапов, premultiplied-альфы и GPU-сжатия (BCn).
При загрузке приходится распаковывать и тратно пересжимать — тормоза и лишняя память.
Что делать
Используйте KTX2 или DDS: заголовок + готовые GPU-данные, можно сжать ещё zlib/lz4.
Для мобильных — Basis Universal, транскодит под нужный формат на лету.
Экспорт
В редакторе кнопки нет; берите готовый open-source-конвертер Zex или пишите свой.
Комментарии (57)
- Нет готового OSS-инструмента, который за один вызов делает мипмапы → BC/ASTC → KTX2+zstd для всех типов текстур.
- Все крупные движки решают это собственным импорт-пайплайном; остальные катят свои скрипты вокруг Compressonator, DirectXTex или старых ISPC-библиотек.
- GPU-ускорение есть только в закрытых NVIDIA/AMD утилитах и части шейдеров Compressonator; открытых «одним бином» всё равно нет.
- Для веба и мобилок часто берут PNG/JPG и конвертят уже на клиенте, жертвуя RAM/бандвидсом; Basis Universal/KTX2 пока единственный разумный компромисс.
- Нейро-компрессия обещает «всё заменить», но пока не в продакшене; старые палитровые форматы в GPU никто не хочет возвращать.
Комментарии (98)
- Участники обсуждают прорыв в геотермальной энергетике: Fervo и другие компании (Quaise, Sage) делают EGS-технологию масштабной и дешёвой.
- Скважины в Cape Station, Юта, уходят на 2,5–4,5 км; это уже достаточно для кипящей воды, но суперпар требует 4–12 км.
- Опыт нефтяных сервисов (Schlumberger, DigiDrill) и высокотемпературных MWD-систем решает задачи навигации и бурения.
- В Европе (Тоскана, Исландия) геотермия даёт до 40 % электричества, но нужны фильтры от Hg и H₂S; следы ртути и тепловой сброс всё же остаются.
- Турбины задают «пол цены» любой пара-генерации, поэтому солнце в перспективе дешевле; для геотермии ищут альтернативы (пельтье, натриевые ТЭЦ-ячейки).
- Проект всё ещё дорог, разрешения сложнее, чем у солнца, но бывшие угольные турбины можно переоборудовать, а тепловой ресурс земной коры практически безграничен.
Being good isn't enough
Краткий перевод на русский (в 2 раза короче):
Чтобы расти в карьере, одного мастерства недостаточно. Сначала важно быть сильным в своей основной технической области — это база. Но со временем все вокруг тоже становятся сильными, и выделяться становится сложнее.
Ключ к росту — в развитии четырёх навыков:
- технический (мастерство),
- продуктовый (понимание, что важно),
- исполнительский (доведение до результата),
- людской (влияние и коммуникация).
Все успешные проекты требуют каждого из них. Развиваться можно быстрее, если сознательно работать над слабым местом. Для этого нужны обратная связь и скромность — чтобы услышать и принять критику.
Не ждите идеального плана. Начинайте: берите проекты, ищите ментора, становьтесь ментором, делайте работу видимой. Важно быть инициативным — это решает больше, чем талант или удача.
Работайте над собой открыто и намеренно. В долгосрочной перспективе вы получите то, что заслужите.
Комментарии (51)
- «Хорошо» мало: работодателю нужен не только талант X, но и навыки Y, которые сотрудник игнорирует.
- Программа должна приносить деньги; люди важны на всех уровнях.
- Высокая продуктивность часто награждается лишь новой порцией работы: «приз за победу — ещё кусок пирога».
- Карьерный рост зависит от мотивации тех, кто решает, а не от чистой квалификации; надо говорить о своих результатов и выравниваться с целями компании.
- Умение писать (и быть заметным) — ключевой «силовой множитель», но в устных/политических культурах его эффект ограничен.
Over 80% of sunscreen performed below their labelled efficacy (2020) 💬 Длинная дискуссия
80 % защитных кремов не соответствуют заявленному SPF, показало исследование Гонконгского совета потребителей.
У 55 из 61 образцов реальная защита оказалась ниже надписи на упаковке; у 8 – в 2–3 раза. Это повышает риск ожогов, гиперпигментации и рака кожи.
Ключевые выводы
- Самые слабые результаты у «натуральных» и детских кремов.
- 23 % проб содержат потенциально вредные фильтры (оксибензон, октиноксат).
- Дешёвые средства (≈ 3 USD/30 мл) часто защищают лучше дорогих.
Советы покупателям
- Выбирайте SPF 30–50, широкий спектр UVA/UVB.
- Наносите 2 мг/см² (≈ 1 ч. л. на лицо) за 15 мин до выхода и обновляйте каждые 2 ч.
- Комбинируйте с одеждой, головными уборами и тенью.
Комментарии (161)
- Независимые тесты показали: многие кремы заявляют SPF 50, а дают SPF 4–30; разброс огромен и зависит от партии.
- Пользователи сомневаются в надёжности маркировки, требуют публиковать бренды и штрафовать обманщиков, а не перекладывать риск на покупателя.
- Часть комментаторов переходит на физическую защиту: UPF-одежда, широкополые шляпы, тень; считают это надёжнее и дешевле кремов.
- Обсуждают безопасность химических фильтров: кто-то выбирает «минералку» с оксидом цинка, кто-то вообще отказывается от кремов ради базового загара.