Pull to refresh
81
0

Пользователь

Send message

Энергия из крана. Жидкостная альтернатива электропитанию в доме

Level of difficultyEasy
Reading time9 min
Views6.6K

В девятнадцатом веке миниатюрные водяные турбины были подключены к крану, и могли приводить в действие любую машину, которая сейчас приводится в действие электричеством.

Читать далее

Секрет внутри одного миллиона чекбоксов

Reading time7 min
Views40K

Спустя несколько дней после начала разработки «одного миллиона чекбоксов» (One Million Checkboxes, см. новость на Хабре) я решил, что меня взламывают. Что это делает в моей базе данных?

Спустя несколько часов я уже лил слёзы гордости за талантливых подростков.

Но вернёмся к началу.

Что такое One Million Checkboxes?


26 июня 2024 года я запустил веб-сайт под названием One Million Checkboxes (OMCB). На нём был один миллион глобальных чекбоксов — нажатие на чекбокс мгновенно переключало его состояние для всех на сайте.


Вот как выглядел сайт через полчаса после запуска

Мои ожидания от этого сайта были крайне малы и совершенно ошибочны. Я думал, что сотни игроков будут нажимать тысячи чекбоксов, однако за две недели работы сайта пятьсот тысяч игроков нажали на флажки более 650 миллионов раз. Сайт попал в новости New York Times и Washington Post; он есть в Know Your Meme и Википедии. Это было безумное приключение.
Читать дальше →

Фиаско Фигмы или тёмная сторона последних апдейтов

Level of difficultyEasy
Reading time3 min
Views12K

Этот пост в оригинале (eng) https://www.setproduct.com/blog/dark-side-of-figmas-updates

Глава 1: В какой‑то момент всё пошло не так

Смотря недавнюю конференцию CONFIG24, я не мог избавиться от неприятного зуда.

Чем сильнее зуд одолевал меня, тем больше приходило осознание – приоритеты Figma сместились с улучшения сервиса на увеличение прибыли.

Я неустанно задавал вопросы:

Что произошло с Figma, которую мы все так горячо любили?
Почему в приоритете деньги, а не список фич от пользователей, которые мы просим?
И если Фигма - ФСЁ, то что это сулит дизайн-инструментам в будущем?

Провал сделки с Adobe, похоже, стал переломным моментом.

Фокус Figma на создании функций с использованием искусственного интеллекта для увеличения количества пользователей - крутой поворот от первоначальной концепции сервиса.

Не подумайте, я не против использования искусственного интеллекта, но больш усилий, похоже, затрачивается  на что-то "модное", но не особо нужное.

Функция автоматического переименования слоев была изюминкой Figma, но ее недостаточно, чтобы компенсировать недостаток внимания к запросам пользователей.

Читать далее

Одна маленькая особенность русского языка

Level of difficultyEasy
Reading time6 min
Views10K

Почему-то про эту «фичу» не любят распространяться опытные коллеги, а первая встреча с таким в вашем проекте гарантирует бессонные ночи и разбитые об стенку лбы и клавиатуры. Читайте и берегите нервы, говорят они не восстанавливаются.

Читать далее

Мурмулятор — ультрабюджетный микрокомпьютер

Level of difficultyEasy
Reading time3 min
Views24K

Как я познакомился с Мурмулятором? Я искал какой-то недорогой одноплатный компьютер для запуска эмуляторов ретро-компов.Чем меня не устраивало использование эмуляторов на "настоящем" компьютере? Ничем. Просто хотелось отдельное устройство. Я рассматривал вариант покупки старого ноута специально под эту задачу, потом смотрел на Raspberry Pi 400, Orange Pi и на прочие одноплатники. В процессе поисков я наткнулся на видео самостоятельной сборки оригинального одноплатника с бюджетом в $5. Понятно, что впоследствии я в эту сумму и близко не вложился, но данное изделие меня всё-таки зацепило. Вот так у меня и появился первый ZX Murmulator.

Читать далее

Истории и боли frontend-разработчика

Level of difficultyEasy
Reading time5 min
Views7.5K

После нескольких лет веб разработки хочу поделиться с вами историями и своим опытом, делая при этом полезные (или не очень) выводы.

Читать далее

Совершили ли швейцарские учёные прорыв в области шоколада?

Level of difficultyEasy
Reading time5 min
Views3.3K

Представьте, что вы берёте сочное яблоко, но вместо того, чтобы надкусить его, вы оставляете семечки, а остальное выбрасываете. Именно так производители шоколада традиционно поступали с плодами какао — использовали бобы, а остальное выбрасывали. Но теперь учёные-пищевики из Швейцарии придумали, как сделать шоколад, используя весь плод какао, а не только бобы — и без использования сахара.

Шоколад, разработанный в престижном Федеральном технологическом институте Цюриха учёным Кимом Мишрой и его командой, включает в себя мякоть плодов какао, сок и шелуху, или эндокарпий. Этот процесс уже привлёк внимание компаний, производящих экологически чистые продукты питания.

Читать далее

Советы по программированию, которые бы я дал себе 15 лет назад

Level of difficultyMedium
Reading time8 min
Views33K


У меня наконец-то появилось ощущение, что я хороший программист, поэтому было бы неплохо записать советы вида «как бы я смог добиться этого быстрее?». Не буду утверждать, что все эти советы отлично подойдут всем, но для меня они были бы хорошими.

▍ Если ты (или твоя команда) постоянно стреляешь себе в ногу, то почини ружьё


Не могу перечесть случаи, когда при работе в команде у нас была какая-то часть системы, которая легко могла поломаться, но никто не думал о том, как усложнить появление таких ошибок.

Когда я занимался разработкой для iOS, то использовал CoreData и подписывался на изменения нескольких view. Обратный вызов подписки поступал в тот же поток, из которого было запущено изменение. Иногда это был основной поток, а иногда — фоновый. В разработке для iOS важно то, что вносить изменения в UI можно только в основном потоке, иначе приложение вылетит. Поэтому подписка могла работать нормально, но потом ломалась, когда кто-то запускал изменение из фонового потока или вы позже добавляли обновление UI.

Все без раздумий воспринимали это как что-то само собой разумеющееся, и об этом часто говорили в ревью для новичков в команде. Время от времени кто-нибудь ошибался, и мы добавляли DispatchQueue.main.async, когда видели отчёт о сбое.

Я решил это исправить. У меня ушло десять минут на внесение изменений в слое подписки, теперь подписчики вызывались в основном потоке, что позволило избавиться от целого класса сбоев и сняло с нас часть умственной нагрузки.
Читать дальше →

Неизвестно полезный CSS. Часть 4

Level of difficultyMedium
Reading time6 min
Views10K


Привет, Хабр. Я продолжаю рассказывать про неизвестные широкому кругу разработчиков CSS фишки. Я отбираю их так, чтобы они были полезны в разного рода проектах.


Неважно, верстаете ли вы сайт для малого бизнеса или создаёте супермодное React приложение. Они поддерживаются большинством браузеров. Отдельно отмечу, что я не считаю IE11 современным браузером. По этой причине я не учитывал его.


Сегодня мы рассмотрим:

  • сброс стилей до значений, взятых из веб-стандартов;
  • возврат значений свойств, установленных в браузере;
  • что можно сделать с прыжками контента при открытии и закрытии модального окна;
  • возможность отобразить текст «красиво» с помощью ключевого слова system-ui;
  • способ стилизации элементов на языке, отличающимся от основного.

Больше не буду затягивать. Давайте посмотрим, что я вам подготовил.

Читать дальше →

SOLID in React

Level of difficultyEasy
Reading time3 min
Views8.1K

Хочется вспомнить SOLID принципы и рассмотреть, как можно их применять в разработке интерфейсов на примере React компонентов.

S: Single Responsibility Principle (Принцип единственной ответственности). Означает, что каждый класс/функция/компонент должны выполнять только одну конкретную задачу.

На примере React компонента: компонент, который отрисовывает пользовательский интерфейс, не должен содержать в себе логику авторизации этого пользователя.

O: Open-Closed Principle (Принцип открытости-закрытости). Означает, что класс/функция/компонент должны быть открыты для расширения, но закрыты для модификации. Чтобы их можно было расширять новым функционалом, не изменяя при этом исходный код.

Читать далее

Придумал игру Radio Attack

Level of difficultyEasy
Reading time5 min
Views6.4K

Я программист, но обычно разрабатывал какие-то простые вещи, разработка которых мне уже надоела. Я давно мечтаю о том, как бы научиться электронике, и строить разные схемы. Но я не работаю, и пенсия по инвалидности не такая большая, чтобы я мог себе позволить заниматься электроникой, для этого нужны деньги. Просто так получиться только в программе строить схемы, и нужно продвигать своё обучение в том, что я уже умею.

Так как меня привлекает электроника, то мне бы хотелось спуститься на низкий уровень кодинга, и пока-что учиться писать код для железа. Пока я этим не занялся.

Давным давно я вынашивал план создать 3d игру, где программист то ли на космической станции, то ли на дне океана на станции, ходит с отладчиком и взламывает устройства, и возможно за ним ещё монстр охотиться, и надо в страхе побыстрее что-то сделать и спрятаться в шкаф. :)

Начитавшись некоторых книг, у меня начал немного проясняться сюжет игры. Сначала я хотел сделать игру про 80-е в Америке. Для этого я задумал сделать свою операционную систему, компилятор и разные программы. Уже насоздавал некоторые модели в blender, скачал документацию по i386, распечатал, и начал изучать. В этой документации ещё предлагалось почитать руководство по системному программированию для i386. Я скачал, сходил в салон, мне сделали книгу-брошуру.

Первоначальная цель была делать ОС, эмулятор и компилятор. Я понимал, что просто так сложно будет за это взяться, так как эмоциональный интеллект у взрослого человека требует какое разумное объяснение тому, чем ты должен заниматься. Поэтому создание ОС, эмулятора и компилятора я решил делать в рамках игры. Так общественность бы не сильно давило вопросами, - зачем это нужно. Да и мне эмоции подсказывают, что это правильное решение.

Читать далее

[React] Разбираем useId( ) хук под микроскопом

Level of difficultyEasy
Reading time9 min
Views11K

Всем привет!

Уже давно я заприметил относительно новый хук useId, с которым давно хотел разобраться для чего он нужен, как он работает и конечно же обязательно нужно заглянуть в исходники. И теперь потыкав этот хук палкой, почитав React документацию, пролистав несколько статей и изучив парочку видео на YouTube. Я готов этим с вами поделиться. Поехали!

Читать далее

Краткий гайд по созданию визуальной новеллы. Часть 1: подготовка

Level of difficultyEasy
Reading time8 min
Views25K

В течение 17 лет своей карьеры в геймдеве я занимался в основном большими играми. Даже моими пет-проектами были браузерная MMORPG, риалтайм и 4х стратегии. И вот я решил сделать что-то небольшое и быстрое. Я начал анализировать свои сильные стороны и выбирать жанр, который мог бы потянуть в одиночку или небольшой командой. Никогда ещё я не ошибался так сильно.

Читать далее

Простой советский геймдев: многокадровый, цветной

Level of difficultyMedium
Reading time27 min
Views17K

Около года назад, в одной из прошлых своих публикаций, я уже вскользь касался темы самой совершенной советской видеоигровой аркадной платформы, ТИА-МЦ1. Недавно поступило предложение рассказать про это поподробнее: какое я имею к ней отношение, как и когда удалось создать её эмулятор для современных ПК, как она устроена, в конце концов. Приступаем!
Читать дальше →

Эбен-Эмаль: или как я перестал волноваться и полюбил кумулятивный заряд

Reading time29 min
Views22K

Военная история изобилует примерами удивительных событий, на первый взгляд, не поддающихся логике и здравому смыслу. Один из них будет описан в этой статье. Сегодня мы рассмотрим события утра 10 мая 1940 года, когда в ходе плана «Гельб» небольшая группа немецких десантников высадилась на крышу бельгийского форта Эбен-Эмаль — крепости, спроектированной по последнему слову тогдашней фортификации, с гарнизоном численностью более 1200 человек, расположенную в идеальной для обороны местности и считавшуюся неприступной.

Читать далее

Существуют ли шаровые молнии и как их объясняет современная наука?

Level of difficultyEasy
Reading time8 min
Views102K


Шаровая молния — явление уникальное. Оно достаточно редкое для того, чтобы его видел далеко не каждый человек, но при этом теоретически доступное для наблюдения всем жителям планеты. У него не то чтобы нет объяснений — скорее, проблема в том, что за века, прошедшие с самых первых сохранившихся свидетельств очевидцев, учёные выдвинули слишком много различных гипотез, способных объяснить этот феномен. При этом это явление сложно воспроизвести в лаборатории, ещё сложнее привлечь к наблюдениям очевидцев, а когда шаровая молния появляется вблизи обычных людей, у них с собой не оказывается научных приборов — за одним исключением, о котором ниже.

Хотя почти у каждого человека в последние лет 20 с собой всегда есть телефон с видеокамерой, качественных видео с демонстрацией шаровой молнии почему-то не появилось — те, что можно найти, отличаются плохим качеством.
Читать дальше →

Как подружить веб-компоненты и JS-фреймворки

Level of difficultyMedium
Reading time9 min
Views4.4K

Всем привет, я Роман Троицкий. Очень люблю веб-разработку; участвовал в проектах, попавших на Awwwards, Tagline и GoldenSite; помогаю организовывать митап Moscow CSS; участвовал в записи и разработке курса по фронтенду для Skillbox. На примере своего проекта я расскажу о сложившейся с Web Components ситуации, опишу их достоинства и недостатки. 

Читать далее

DRY-фреймворк: как сократить HTML-код и писать только на CSS

Level of difficultyMedium
Reading time4 min
Views7.9K

Привет! Я Толя, Frontend-разработчик в Selectel. В мире фронтенда есть «острый недостаток» фреймворков, поэтому я, как и 90% JavaScript-разработчиков, решил разработать собственный. В тексте расскажу, как «запихать» HTML-элементы в CSS и не испортить проект. Читайте до конца — вас ждет неожиданный сюжетный поворот.
Читать дальше →

Telegram x ChatGpt x Notion = Картотека Лумана [Low-code]

Level of difficultyEasy
Reading time6 min
Views9.6K

TL:DR

Цель данной статьи, в очередной раз, убедить тебя, читатель, что использование генеративных ИИ в реализации твоих идей уже наступившее настоящее(почти). И это один из простых примеров, показывающих, что не требуется сильных технических навыков, чтобы улучшить свою жизнь и это доступно каждому.

Под капот

TypeScript что нового 5.5. Перевод. Часть 1

Reading time4 min
Views5.7K

Всем привет, меня зовут Сергей, в этой статье я опубликую свой перевод официального анонса релиза TypeScript 5.5 версии, спасибо Dan Vanderkam за оригинал. Опыта в написании статей ранее не имел, переводы тоже не делал, решился внести свою лепту в сообщество Хабра. Открыт к критике, если первая часть понравится и в комментариях я увижу интерес к продолжению, то займусь выпуском следующих частей.

В первой части предлагаю ознакомиться с предикатами выводимого типа и то как всё это поменялось в TypeScript 5.5 версии, приступим!

Читать далее

Information

Rating
7,735-th
Location
Россия
Registered
Activity