завтра мидтерм экзамен по архитектуре, сижу перечитваю слайды. готовлюсь. многое во время лекций упустил. вот например:
A design principle differs from an architecture decision in that a design principle is a guideline rather than a hard-and-fast rule.
и SOLID это именно принцип проектирования, а не архитектурное решение, и им можно придерживаться или нет
  A design principle differs from an architecture decision in that a design principle is a guideline rather than a hard-and-fast rule.
и SOLID это именно принцип проектирования, а не архитектурное решение, и им можно придерживаться или нет
Сегодня будет вечер находок из лекций :). Вот например:
“No matter what they tell you, it’s always a people problem” – Gerald Weinberg
Полностью согласен. Вот статья расскрывающая цитату https://blog.codinghorror.com/no-matter-what-they-tell-you-its-a-people-problem/
  
  “No matter what they tell you, it’s always a people problem” – Gerald Weinberg
Полностью согласен. Вот статья расскрывающая цитату https://blog.codinghorror.com/no-matter-what-they-tell-you-its-a-people-problem/
Coding Horror
  
  No Matter What They Tell You, It’s a People Problem
  Bruce Eckel deftly identifies the root cause of all software development problems:
We are in a young business. Primitive, really – we don’t know much about what works, and we keep thinking we’ve found the silver bullet that solves all problems. As a result…
  We are in a young business. Primitive, really – we don’t know much about what works, and we keep thinking we’ve found the silver bullet that solves all problems. As a result…
а я всегда говорил что мы выбираем то решение что меньше воняет, архитектор получается
> Thinking like an architect is all about seeing trade-offs in every solution and analyzing those trade-offs to determine what is the best solution.
  > Thinking like an architect is all about seeing trade-offs in every solution and analyzing those trade-offs to determine what is the best solution.
Everything in architecture is a trade-off, which is why the most frequent answer to all architecture related questions is “it depends.”
  Вот! А я всегда так думал! А не реактом все дыры затыкать
Choosing a particular technology does depend on the deployment environment, business drivers, company culture, budgets, timeframes, developer skill set, and many other factors.
Choosing a particular technology does depend on the deployment environment, business drivers, company culture, budgets, timeframes, developer skill set, and many other factors.
👍2
  Очень нравится тренд на переписывание сборщиков на быстрые языки. Жизнь простого перекладывателя JSON становится лучше 🤗
https://twitter.com/devongovett/status/1590378162818777090
  
  https://twitter.com/devongovett/status/1590378162818777090
X (formerly Twitter)
  
  Devon Govett (@devongovett) on X
  We've been benchmarking our end-to-end HMR update performance versus other tools.
Parcel is now up to 68% faster than Turbopack, and up to 74% faster than Vite at delivering updates to the browser when you hit save.
Details: https://t.co/QYZnA9ZCFX
  Parcel is now up to 68% faster than Turbopack, and up to 74% faster than Vite at delivering updates to the browser when you hit save.
Details: https://t.co/QYZnA9ZCFX
Как же это прекрасно https://wapm.io/saghul/quickjs. 
> QuickJS is a small and embeddable JavaScript engine. It supports the ES2019 specification including modules, asynchronous generators and proxies.
> It optionally supports mathematical extensions such as big integers (BigInt), big floating point numbers (BigFloat) and operator overloading.
JS в каждом чайнике, ждите
  
  > QuickJS is a small and embeddable JavaScript engine. It supports the ES2019 specification including modules, asynchronous generators and proxies.
> It optionally supports mathematical extensions such as big integers (BigInt), big floating point numbers (BigFloat) and operator overloading.
JS в каждом чайнике, ждите
Wasmer
  
  saghul/quickjs: QuickJS is a small and embeddable JavaScript engine. It supports the ES2019 specification including modules, asynchronous…
  QuickJS is a small and embeddable JavaScript engine. It supports the ES2019 specification including modules, asynchronous generators and proxies. Run saghul/quickjs locally or deploy it remotely with Wasmer.
👍1
  Мы в проекте начали затаскивать React Aria, примитивы для доступных интерфейсов в виде хуков. 
Сейчас вижу что они анонсировали хуки для DnD https://twitter.com/devongovett/status/1592925243781574657. Просто посмотрите демо видео, выглядит очень и очень впечатляюще.
  
  Сейчас вижу что они анонсировали хуки для DnD https://twitter.com/devongovett/status/1592925243781574657. Просто посмотрите демо видео, выглядит очень и очень впечатляюще.
X (formerly Twitter)
  
  Devon Govett (@devongovett) on X
  Announcing React Aria's drag and drop hooks! 🐉
♿️ Full keyboard and screen reader parity
🗃 Reorder, insert, or drop on list items
✅ Multiple selection
📱 Interoperable with native dnd
💾 File and directory support
🤩 Customizable UI and interactions
https…
  ♿️ Full keyboard and screen reader parity
🗃 Reorder, insert, or drop on list items
✅ Multiple selection
📱 Interoperable with native dnd
💾 File and directory support
🤩 Customizable UI and interactions
https…
Мы решили делать свой UI Kit, и выбрали React Aria как headless библиотеку для него. А стили делаем через tailwind.
Например скоро можно будет отредактировать дату рождения в профиле Airba Marketplace через такой инпут, который работает на базе useDateField.
Например скоро можно будет отредактировать дату рождения в профиле Airba Marketplace через такой инпут, который работает на базе useDateField.
👍3
  И почему я этого раньше не знал? Сколько себя помню, всегда этого нехватало. Я даже гуглил. Оказалось это называется Item numbering.
Вот это выражение Эммет транформирует в разметку ниже
div#items>div.item.item-$*4>h3{Item $}Вот это выражение Эммет транформирует в разметку ниже
<div id="items">
<div class="item item-1">
<h3>Item 1</h3>
</div>
<div class="item item-2">
<h3>Item 2</h3>
</div>
<div class="item item-3">
<h3>Item 3</h3>
</div>
<div class="item item-4">
<h3>Item 4</h3>
</div>
</div>
👍2🤔1
  Technology Radar это такой ресурс в котором ребята из Thoughworks рассказывают о своем опыта работы с технологиями, инструментами, подходами в долгой перспективе. Кружки ближе к центру это технологии которые себя хорошо показали, например вот что они пишут про NestJS. Это очень полезно, если вы играете в долгую, и чтобы тяжесть принятых решения догнала вас с меньшей силой в будущем рекомендую пользоваться этим ресурсом. 
Я его видел ранее, но не писал о нем, и в очередной раз наткнулся когда изучал тему ADR (Architecture Decision Records). Есть и более простая ее версия — Lightweight Architecture Decision Records. Которая имеет статус Adopt на радаре. Там и ссылка на статью почему она хороша, и подходит для аджайл.
  Я его видел ранее, но не писал о нем, и в очередной раз наткнулся когда изучал тему ADR (Architecture Decision Records). Есть и более простая ее версия — Lightweight Architecture Decision Records. Которая имеет статус Adopt на радаре. Там и ссылка на статью почему она хороша, и подходит для аджайл.
Зашел раньше времени на этот митинг, тк не посчитал разницу в часовых поясах, в итоге удалось пообщатся с организаторами неформально. Классные ребята. И встреча сама была достаточно интересной. 
Из нее вынес для себя мысль, что сегодня роль архитектора размазана в командах, а сама архитектура очень важна. И если мы хотим делать хорошо, то надо думать как архитекторы. О том как это делать можно узнать из книги Fundamentals of Software Architecture.
И для затравки в книге есть такая цитата от Рича Хиккей (создатель Clojure):
Programmers know the benefits of everything and the trade-offs of nothing. Architects need to understand both.
Такие дела.
  Из нее вынес для себя мысль, что сегодня роль архитектора размазана в командах, а сама архитектура очень важна. И если мы хотим делать хорошо, то надо думать как архитекторы. О том как это делать можно узнать из книги Fundamentals of Software Architecture.
И для затравки в книге есть такая цитата от Рича Хиккей (создатель Clojure):
Programmers know the benefits of everything and the trade-offs of nothing. Architects need to understand both.
Такие дела.
Forwarded from { между скобок } анонсы 📣 (Grisha Skobelev)
  
Всем привет 👋 Сегодня встречаемся в 20:00 по мск, чтобы обсудить “Chapter 2. Architectural Thinking” из Fundamentals of Software Architecture. Поговорить о Archtecture VS Design, чем архитектор отличается от разработчика. Рассмотрим техническую широту,  как альтернатива технической глубине. Разберемся почему все постоянно говорят "it depends” и рассмотрим Analyzing Tradeoffs. 
Встречаемся 05.12 в 20:00 в Zoom . Так же постараюсь настроить youtube трансляцию 😅
  Встречаемся 05.12 в 20:00 в Zoom . Так же постараюсь настроить youtube трансляцию 😅
 
            