Найти в Дзене
Самый роскошный радиоконструктор с Али
Какие бывают 2003 УМЗЧ TDA2003 Защищённая микросхема Слово «автомобильный» — архаичное «car» или современное «automotive» в описании микросхемы — означает расширенный температурный диапазон эксплуатации, солидный запас электрической прочности и множество всевозможных защит. Защита от импульсных перенапряжений Защита от постоянного перенапряжения Рабочий диапазон напряжений питания микросхемы TDA2003 — от 8 до 18 вольт. При этом микросхема не повреждается при постоянном напряжении питания до 28 вольт в течение длительного времени...
1 год назад
Битва русов и ящеров за воду Байкала: как пародия на неоязычество покорила Рунет, и при чём тут доктор Ливси?
В конце 2023 года русскоязычные соцсети внезапно заполонили мемы про древних русов и ящеров. Виной всему стали видеолекции сгененированного с помощью нейросетей «профессора Багирова», в которых байки конспирологов-неоязычников о «тайной истории Руси» доводились до восхитительного абсурда. Пранк вышел из-под контроля: как про Медведа в старые добрые времена, про мемы оящерах и русах стали писать крупные федеральные порталы и модные журналы, а теперь энтузиасты ещё и игру анонсировали. Почему русы...
123 читали · 1 год назад
Лучшие «рогалики»
Rogue-like, или «рогалики», на русскоязычном геймерском сленге — это игры с процедурной генерацией. С помощью алгоритмов содержимое таких видеоигр создается случайно при каждом новом прохождении. Изначально нишевый жанр, он вскоре захватил не только бюджетные инди, но и крупные блокбастеры: процедурная генерация используется в видеоиграх всех жанров и масштабов. Делимся списком 15 лучших игр. История «рогаликов» Своим появлением жанр rogue-like обязан игре Rogue: Exploring the Dungeons of Doom 1980 года, в честь которой и назван...
1 год назад
ИННОПОЛИС /Татарстан/
Нейросетевые модели могут находить множество инновационных решений, способствовать развитию креативности, ускорять исследования, считает директор лаборатории исследования машинного интеллекта Университета Иннополис Аджит Абрахам Студенты должны пользоваться умными чат-ботами на основе ИИ в обучении открыто, так как эти технологии уже получили распространение среди молодежи. При этом вузам следует искать пути интеграции таких инструментов в образовательные программы и создавать методы оценки работы учащихся с нейросетевыми моделями, считает проректор Университета Беннета в Индии, директор лаборатории исследования машинного интеллекта Университета Иннополис Аджит Абрахам...
1 год назад
Условия безопастности в учебных заведениях
Более 80% российских студентов удовлетворены условиями безопасности в своих вузах, следует из исследования платформы "Неравнодушный человек" совместно с Минобрнауки РФ и комитетом Госдумы по молодежной политике, которое имеется в распоряжении ТАСС. В исследовании приняли участие 12 833 студента старше 18 лет во всех регионах РФ. "Условиями безопасности в учебных заведениях удовлетворены большинство опрошенных российских студентов (82%), недовольны - 8%. Также 72% студентов положительно оценивают состояние ремонта в своих вузах. Этот параметр не устраивает каждого пятого респондента (20%), а 8% не смогли ответить на вопрос", - говорится в исследовании...
1 год назад
Почему я всё время думаю о банковской системе Римской империи
Что общего между трапезой и банком, как выглядел доллар до нашей эры, почему Иисус начал движение Occupy Wall Street, и кто выдавал льготную ипотеку для айтишников в Древнем Риме. Мужики, этот пост для вас! Вообще, тему с банками римляне, как и многое другое, позаимствовали у древних греков. Поэтому первые банкиры в Римской империи назывались трапезитами, от греческого слова «трапеза», которое означает стол – ну типа, эти ребята за столом с клиентами рассчитывались. (Если что, русское слово «банк» тоже происходит от стола, но только на этот раз уже от итальянского «banco»...
1 год назад
Sinuous — JavaScript UI Есть много библиотек и фреймворков, которые помогают преодолеть все препятствия на пути JavaScript разработчика. Если раньше мы использовали ванильный JS, то со временем пришёл jQuery, а затем React и Vue. Каждый год появляется все больше новых библиотек, фреймворков и инструментов. Некоторые из них продолжают развиваться и находят свою аудиторию, в то время как другие исчезают и постепенно забываются. В статье рассмотрим ещё одну библиотеку, которая может быть полезной для разработки небольших и простых пользовательских интерфейсов. Что это вообще? Sinuous — быстрая реактивная UI библиотека. Sinuous начинался как небольшой эксперимент, чтобы добиться такого же поведения, как Surplus , но с литералами шаблонов вместо JSX. Размер Sinuous составляет всего 1.4kB. Это делает её идеальной для встраивания в HTML-страницу, компоненты или виджеты. Одна из целей — сохранить простоту Javascript. Поэтому в библиотеке очень мало специализированного синтаксиса. Если разрабатывается что-то действительно большое и сложное, несомненно стоит брать React/Vue. Sinouse не использует VDOM в классическом смысле. Есть лишь map модуль, который делает что-то похожее. Для динамических частей Sinuous использует простой Observable , который обеспечивает обновления указанные в представлении. Иными словами, оцениваются лишь те части, которые изменяются, без необходимости сравнивать всё DOM-дерево. Sinuous предоставляет template надстройку, которая может предварительно отображать повторяющиеся фрагменты HTML. Вот ссылка на репозиторий Sinous на GitHub. Установка Sinuous доступен в NPM для использования с упаковщиком модулей или в приложении Node: npm install sinuous Простой компонент Простой пример библиотеки, не требующий особых пояснений: import { html } from 'sinuous'; const HelloMessage = ({ name }) => html`  <!-- Prints Hello World -->  <div>Hello ${name}</div> `; document.querySelector('.hello-example').append(  html`<${HelloMessage} name=World />` ); Единственное, что здесь следует отметить, что html тег скомпилирован для h вызова функций библиотекой HTM . Это можно сделать либо во время выполнения, либо во время сборки. Компонент с сохранением состояния Помимо получения входных данных через props, также поддерживается внутреннее состояние компонента, доступ к которому происходит через observables. При изменении данных состояния компонента, отображаемая разметка будет автоматически обновляться путём повторного вызова необходимых операций с DOM. import { o, html } from 'sinuous'; const Timer = (props) => {  const seconds = o(0);  function tick() {    seconds(seconds() + 1);  }  setInterval(tick, 1000);  return html`    <div>Seconds: ${seconds}</div>  `; }; document.querySelector('.counter-example').append(  html`<${Timer}/>` ); Простая тудушка Функция o создаёт наблюдаемую переменную, которая может содержать любое значение, которое нужно сделать реактивным в представлении. Вызывая эту функцию без аргумента, она действует как метод получения значения; если передаётся аргумент, она устанавливает новое значение наблюдаемой переменной. При первом рендеринге Sinuous обнаружит все использованные наблюдаемые переменные и выполнит соответствующие операции с DOM, сохранённые ранее. Если новому значению будет присвоена наблюдаемая переменная, она просто выполнит ранее сохранённые операции с DOM, используя новое значение. import { o, html } from 'sinuous'; import { map } from 'sinuous/map'; const TodoApp = () => {  let items = o([]);  let text = o('');  const view = html`    <div>    <h3>TODO</h3>    <${TodoList} items=${items} />    <form onsubmit=${handleSubmit}>    <label htmlFor="new-todo">    What needs to be done?    </label>    <input    id="new-todo"    onchange=${handleChange}    value=${text}    />    <button>    Add #${() => items().length + 1}    </button>    </form>    </div>  `;  function handleSubmit(e) {    e.preventDefault();    if (!text().length) {    return;    }    const newItem = {    text: text(),    id: Date.now @
1 год назад