habrahabr
Современные проблемы физики (30+25 лет спустя)

Nanomachines, son!Давненько я не писал ничего про нанотехнологии, но сегодня у нас на повестке дня куда более обширная тема — а что мы не знаем, но уже можем хотеть знать? Если брать физику — да тут куда не дернись, везде стены. И даже если что‑то начинает работать с учетом постулатов или еще каких костылей, то при копке поглубже обязательно уткнешься в очередной спин, который вроде и понятный, но что это и откуда не известно до сих пор.Как правило, при подготовке магистерской диссертации, а и…

  • вторник, 5 декабря 2023 г. в 00:00:29
habrahabr
Клиповое мышление: как замедлить цифровое слабоумие

Это Бренды на коне. Эволюция сыграла с человечеством злую шутку. Наш мозг так устроен, что в нем заложена функция собирать как можно большее количество информации из окружающего мира. В дикой среде это было вопросом выживания. До поры до времени это правило работало: чем больше изучаешь, тем больше развиваешь интеллект. Но всё перевернулось с наступлением века цифровых технологий. Теперь новая информация (нужная и не нужная) окружает нас везде и всюду. А мозг с его эволюционными настройками, у…

  • вторник, 5 декабря 2023 г. в 00:00:28
habrahabr
Величайшая ошибка Эйнштейна

В своей книге: «Оптика: трактат об отражениях, преломлениях, изгибаниях и цветах света», опубликованной на английском языке в 1704 году, Исаак Ньютон анализирует фундаментальную природу света на примере преломления света призмами и линзами, дифракции света близко расположенными листами стекла и поведения цветовых смесей с помощью спектральных ламп или пигментных порошков. Книга «Оптика» стала вторым крупным трудом Ньютона по физическим наукам и считается одной из трёх основных работ по оптик…

  • вторник, 5 декабря 2023 г. в 00:00:28
golang
DDD в golang. Превозмогая трудности

В последнее время достаточно много выступлений, посвященных реализации подходов Domain Driven Design(DDD) в golang.Я не буду останавливаться на value object, они в golang хорошо реализуются с помощью type defintions. А разберу работу с изменением аггрегатов.Попытаюсь разобрать какие подходы распространены сейчас и почему DDD в go это сложнее, чем в других языках.В начале было Active recordДля большинства разработчиков, пишущих много обычных CRUD, интуитивным подходом является Active Recor…

  • вторник, 5 декабря 2023 г. в 00:00:25
golang
Многопоточность и параллелизм в Go: Goroutines и каналы

Язык программирования Go, разработанный с упором на простоту и эффективность, предлагает уникальный подход к реализации параллельных вычислений через Goroutines и каналы. Goroutines, представляющие собой легковесные потоки выполнения, обеспечивают значительные преимущества по сравнению с традиционными потоками, используемыми во многих других языках программирования. Они позволяют создавать тысячи параллельных процессов без значительной нагрузки на системные ресурсы. Каналы в Go, предоставл…

  • вторник, 5 декабря 2023 г. в 00:00:24
golang
ORM для реальных приложений не окупается

Идея упростить или абстрагировать код с помощью ORM, возможно, имеет очень ограниченный контекст применимости. По сути ORM хорош для приложений уровня простого CRUD, а дальше начинает только мешать. А CRUD-приложений в реальной жизни очень мало. Проблемы При использовании ORM мы обычно прописываем в коде сущности и их взаимосвязи, и по сути это — проектирование БД ещё раз (дублирование логики!) прямо в коде. Борьба с проблемами производительности никуда не денется всё равно, как ни абстраг…

  • вторник, 5 декабря 2023 г. в 00:00:24
golang
Есть ли Singleton в Golang?

Давайте начнем с определения из Википедии.“Одиночка (англ. Singleton) — порождающий шаблон проектирования, гарантирующий, что в однопоточном приложении будет единственный экземпляр некоторого класса, и предоставляющий глобальную точку доступа к этому экземпляру.”“Единственный экземпляр некоторого класса” означает что нет возможности написать код, в котором объект может быть скопирован или создан еще каким-либо способом.В этом посте про "гарантирующий".Рассмотрим общеизвестную реализац…

  • вторник, 5 декабря 2023 г. в 00:00:20
javascript
TypeScript: infer и conditional types. Продвинутый TS на примерах

Привет, Хабр! Меня зовут Андрей, я Frontend разработчик. О статьеПродолжаем погружаться в продвинутый TypeScript. В этой статье рассмотрим conditional types, посмотрим на реализацию с примерами, узнаем какую роль играют ключевые слова extends и infer. Перед прочтением данной статьи рекомендую ознакомиться с базовыми понятиями и возможностями языка, в этом вам поможет одна из моих прошлых статей: TypeScript и все что тебе нужно в разработкеСтатья предназначена для тех, кто хочет научиться увере…

  • вторник, 5 декабря 2023 г. в 00:00:18
javascript
Atomic CSS здорового человека. UnoCSS

Продолжение перевода статьи «Reimagine Atomic CSS» двухлетней давности одного из членов команды Vue core Anthony Fu, автора UnoCSS, в которой рассматривается уже сам UnoCSS. Часть первая.Введение в UnoCSSUnoCSS — мгновенный (instant) атомарный CSS‑движок с максимальной производительностью и гибкостью.Все началось с нескольких случайных экспериментов во время моих национальных праздников. С мыслью о том, что все делается по требованию (on‑demand), и гибкостью, которую я ожидаю как пользователь,…

  • вторник, 5 декабря 2023 г. в 00:00:17