Pull to refresh
4
11.7

Senior Software Engineer; Software Archaeologist

Send message

Трехмерный движок в коде… ДНК

Reading time40 min
Views23K
UPD 29 ноября: Репозиторий с кодом ДНК выложен на GitHub.
github.com/pallada-92/dna-3d-engine

UPD 30 ноября:
В англоязычном твиттере заметили проект
Новость попала в топ-10 на HackerNews!






Меня всегда интересовало, на что может быть похоже программирование внутриклеточных процессов. Как выглядят переменные, условия и циклы? Как вообще можно управлять молекулами, которые просто свободно перемещаются в цитоплазме?

Ответ довольно неожиданный — lingua franca для моделирования сложных процессов в клетках является реакции вида
Эти реакции моделируются при помощи закона действующих масс, который одинаково работает и в химии, и в молекулярной биологии.

— Неужели при помощи этих примитивных реакций можно что-то программировать?
— Да, а то, что написано выше, вычисляет $B = \sqrt{A}$.

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

Потом я расскажу, как полученные реакции скомпилировать в код ДНК, который можно синтезировать в лаборатории и (если очень повезет) получить трехмерный куб из двумерного массива пробирок.

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

Для понимания статьи никаких предварительных знаний не требуется, необходимые сведения из школьной программы по биологии мы повторим в начале статьи. Также мы разберем типичные паттерны, которые использует эволюция для достижения сложного поведения в живых клетках.
Total votes 94: ↑94 and ↓0+94
Comments30

Тариф «100к+», или как вельми зело огорчить спамера

Reading time12 min
Views65K

Уже не впервые сталкиваюсь, что читатели Хабра не все поголовно умеют правильно бороться со спамом. И я не про SpamAssasin, «Ктозвонил» и прочие приложения для фильтрации информационного мусора, а про несложную, но весьма доставляющую всем сторонам процесса подачу жалобы в ФАС.

Давайте расскажу, как буквально за 15 минут не отрываясь от любимого компьютера подключить спамеру задораздирающий тариф линейки «Административный»: «Административный 100к», «Административный 150к» и вплоть до «Административный 500к» – как повезет.
Читать дальше →
Total votes 207: ↑203 and ↓4+264
Comments259

Как удалить «неудаляемые» приложения со смартфона

Reading time5 min
Views259K


Чтобы увеличить привлекательность смартфонов, производители ставят на них как можно больше разных программ. Это понятно. Просто берём и удаляем ненужное… Стоп.

Оказывается, некоторые программы невозможно удалить. Например, на отдельных моделях Samsung невозможно удалить Facebook (есть только опция 'disable'). Говорят, на Samsung S9 вдобавок предустановлены «неудаляемые» приложения Microsoft.

Эти смартфоны приведены для примера. Такая же проблема и на других моделях. На многих есть неудаляемые программы от самого производителя.

Всё это надо зачистить.
Читать дальше →
Total votes 156: ↑145 and ↓11+168
Comments203

Простейший измеритель CO2 за 2000 рублей и полчаса

Reading time2 min
Views53K
Измеритель уровня углекислого газа (CO2) наверное самый недооценённый прибор, который на мой взгляд должен быть в каждой квартире, ведь он показывает, насколько воздух пригоден для дыхания и с помощью него всегда видно, когда пора проветривать.

Такой измеритель в квартирах большая редкость прежде всего из-за высокой цены. Свой первый измеритель AZ Instruments 7798 CO2 datalogger я покупал за $139 и это была самая дешёвая модель на рынке.

Сейчас готовый измеритель CO2 стоит около 4000 рублей, а самодельный обойдётся вдвое дешевле.

Читать дальше →
Total votes 73: ↑71 and ↓2+96
Comments253

Реверсим и улучшаем SATA контроллер

Reading time14 min
Views41K

Вы когда-нибудь задумывались, как много вокруг умной электроники? Куда ни глянь, натыкаешься на устройство, в котором есть микроконтроллер с собственной прошивкой. Фотоаппарат, микроволновка, фонарик... Да даже некоторые USB Type C кабели имеют прошивку! И всё это в теории можно перепрограммировать, переделать, доработать. Вот только как это сделать без документации и исходников? Конечно же реверс-инжинирингом! А давайте-ка подробно разберём этот самый процесс реверса, от самой идеи до конечного результата, на каком-нибудь небольшом, но интересном примере!

Читать далее
Total votes 215: ↑215 and ↓0+215
Comments92

Домашний тлен: токсины черной плесени

Reading time13 min
Views52K

Если бы из всех существ, животных, грибов, бактерий и вирусов нужно было бы выбрать один, который соответствовал бы слову Тлен, пожалуй, победила бы именно плесень. Именно её мы видим в заброшенных домах Припяти, она поглощает пищу, к которой уже никто не притронется, ею обрастают старые погреба, сырые доски и вещи, брошенные на свалку, сырые обои и гипсокартон в вашем туалете.

Читать далее
Total votes 93: ↑89 and ↓4+108
Comments134

Почему гну перешла через реку?

Reading time10 min
Views32K
Маленькая упрощённая иллюстрация про разные уровни экосистемы. Итак, 19 сентября 2020 антилопы собрались вот в такую формацию:



И пошли через реку. Для нормальных людей это просто стадо до горизонта, но вообще это одно из самых впечатляющих зрелищ на планете. Дуглас-Гамильтон писал про большую миграцию так: «Большинство присутствующих ученых разделяли это чувство, и они наблюдали за миграцией гну с тем же почтительным восхищением, с каким созерцают «Джоконду».



Давайте чуть углубимся в экосистему и мышление гну, чтобы понять, что случилось и почему. Сегодня мы будем думать, как гну. Очень рациональные гну с ИТ-образованием.
Total votes 139: ↑136 and ↓3+174
Comments114

Сборка Colobot Gold

Reading time3 min
Views4.6K
Всё большую популярность набирает компьютерная игра для программистов Colobot Gold. О ней не раз писали на хабре, но материал со временем устаревает. Происходит активное развитие программы. И у многих пользователей возникает желание попробовать новейшие возможности Colobot Gold. Так, один мой знакомый прочитал про новый тип роботов, которого ещё нет в официальной master версии и попросил меня написать эту инструкцию по сборке исполяемого файла из исходников Colobot Gold.
Читать дальше →
Total votes 4: ↑1 and ↓30
Comments5

За что получает деньги наемный работник? Не понимаете? Сейчас поймете

Reading time4 min
Views151K
«За что я плачу тебе деньги?» — обычный вопрос работодателя работнику, причем саркастический, как правило.

«За что я тут корячусь на тебя?» — столь же обычный вопрос работника к работодателю.
Разобраться, за что же действительно работодатель платит деньги наемному работнику, поможет моя собственная теория, закодированная в десять букв – «ПЗП – ПЗС – ПЗПИ»

Читать дальше →
Total votes 178: ↑174 and ↓4+226
Comments888

Линукс-порт Far Manager: прогресс за 4 года

Reading time5 min
Views69K
Первая публикация исходников far2l, порта Far Manager под Линукс — штуки, которая когда-то считалась принципиально невозможной — состоялась 10 августа 2016го. Поскольку главный разработчик поговаривает о переходе проекта в статус беты, решил написать обзорный пост, как там идут дела и чего удалось добиться за прошедшие четыре года.

Консольная версия


Первый же вопрос, который все задавали и здесь, и на опеннете, и на лоре — а чего не в консоли? Изначально far2l действительно работал только в графическом режиме, через wxWidgets. Это оказалось самым простым способом быстро получить работающий порт со всеми пользовательскими удобствами: иксовым буфером обмена и всеми сочетаниями клавиш, причем с поддержкой событий не только KeyDown, но и KeyUp.

Сейчас это ограничение в прошлом: far2l прекрасно себя чувствует в консоли. Более того, там появились так называемые расширения терминала far2l, поэтому если запускать консольный far2l внутри графического (например, зайдя куда-нибудь по ssh), они «сконнектятся» между собой, и внутренний far2l тоже будет видеть и буфер обмена (с разрешения пользователя, конечно), и все возможные горячие клавиши. Более того, сделана даже специальная сборка putty, позволяющая наслаждаться всеми этими фишками из Windows.

Вот, смотрите, это far2l в GNOME Terminal


Читать дальше →
Total votes 178: ↑177 and ↓1+234
Comments585

Кто такие шизоиды, где они обитают, и почему вам может быть полезно о них узнать

Reading time35 min
Views151K

Основные стереотипы о шизоидах в одной картинке

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

Сам этот характер довольно тяжело описать одновременно коротко и корректно. Некоторые называют их «гиками», «интровертами», «чудаками», «ботаниками», «хикканами», «эксцентричными», «нердами», «компьютерными гениями»[1, стр. 231], и все эти характеристики в той или иной мере имеют отношение к, собственно, шизоидам, но ни одна из них не является определяющей.

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

Большая часть литературы, посвящённой шизоидам, имеет клиническую направленность и описывает достаточно тяжёлые случаи шизоидизации, а в рамках этого текста я хотел бы рассказать о здоровых шизоидах, коих среди нас присутствует достаточно для того, чтобы их особенности имели значение в контексте трудовых отношений, управления и маркетинга.
Читать дальше →
Total votes 126: ↑119 and ↓7+156
Comments351

ReactOS 0.4.13 CE (Coronavirus Edition)

Reading time2 min
Views28K
Привет, Хабр!

К нашему стыду, во время самоизоляции мы настолько приуныли, что забыли опубликовать новость об очередном релизе под номером 0.4.13, который состоялся еще в апреле 2020 года. Исправляемся.

image
Скачать образы системы | Пресс–релиз | Список изменений | TL;DR | Тесты и список регрессий
Total votes 73: ↑70 and ↓3+96
Comments69

«Просто похудеть» — непросто

Reading time15 min
Views126K

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


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

Хакнуть свой мозг
Total votes 157: ↑135 and ↓22+166
Comments638

Об обществе людей и их свободе

Reading time7 min
Views61K
Прочитал с интересом статью про Китай и его Интернет, она вызвала неоднозначное отношение. Потом прочитал комментарии — пришел в кромешный ужас.

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

Господа, мы же инженеры. Почти ученые. Люди, привыкшие в рассуждениях опираться на логику и объективные критерии. Ну вот, например, скажите мне на милость — ну какое универсальное определение понятия «свобода» выдержит эту очаровательную максиму «никакой свободы врагам свободы»? Это же чистая попытка присвоения понятия свободы себе. А оно не может принадлежать кому-либо.

И прежде, чем минусовать меня, прочитайте, пожалуйста, моё маленькое рассуждение на тему «что такое свобода». Это эссе не претендует ни на новизну, ни на революционность. Оно призвано лишь немного понизить градус агрессии в социуме, который мне близок и дорог. И заставить людей думать. Прежде всего, о других людях.


Читать дальше →
Total votes 148: ↑119 and ↓29+123
Comments421

Как книга «Электроника шаг за шагом» обрела новую жизнь

Reading time7 min
Views93K


Привет, Хабр!

Хорошие новости для тех, кто следил за историей переиздания книги Рудольфа Свореня «Электроника шаг за шагом» — книга вот-вот, на днях, покинет типографию и попадёт в руки читателей. Почему так долго пришлось ждать новое издание книги? Что изменилось в тексте? А иллюстрации всё те же? Что со схемами  — по-прежнему, на МП39, с плюсовой «землей»? Будет ли электронная версия книги? На эти и другие вопросы, я попытаюсь ответить ниже.
Читать дальше →
Total votes 112: ↑111 and ↓1+144
Comments156

Прощай, Google! 15 Альтернативных поисковиков, которые не шпионят, а сажают деревья и раздают воду

Reading time5 min
Views241K


Аве Кодер!

В этой статье речь пойдет о крутых инди поисковиках, которые могут составить конкуренцию поисковым гигантам, а также удовлетворить вкусы как утонченного мусьё, так и идейного борца за личную жизнь.
Читать дальше →
Total votes 50: ↑42 and ↓8+46
Comments113

Волновой анализ как метод ведения споров

Reading time26 min
Views6.8K

О чем эта статья


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


image


Есть ли смысл в спорах


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

Читать дальше →
Total votes 10: ↑9 and ↓1+9
Comments28

Внедрение в архитектуру советских программируемых калькуляторов «Электроника МК-52»

Reading time18 min
Views43K


В этой статье я хочу рассказать об архитектуре советских программируемых микрокалькуляторов на примере калькулятора «Электроника МК-52» и как можно внедриться в его архитектуру.

Советские калькуляторы семейства "Электроника Б3-34" («Электроника МК-56», «Электроника МК-61» и «Электроника МК-52») были особенно популярны в СССР. Причиной этому была не только доступная цена в 65 рублей за МК-54, 85 рублей за МК-61 или 115 рублей за МК-52, но и развитой язык программирования. Это семейство калькуляторов стало де-факто стандартным для многочисленных пользователей. Огромное количество книг было посвящено программированию на этих машинках и публикацией готовых алгоритмов. Электроника МК-52 даже летала в космос на корабле Союз ТМ-7, где предполагалось его использование в качестве резервного на случай неисправности спускаемого навигационного оборудования. Даже в военно-морском флоте СССР калькулятор «Электроника МК-52» с блоком расширения памяти БРП «Астро» какое-то время был стандартным средством для навигационных расчетов.


Читать дальше →
Total votes 115: ↑115 and ↓0+115
Comments180

МК-61: история, эмуляция, устройство

Reading time21 min
Views40K

Расцвет эпохи программируемых калькуляторов в нашей стране пришёлся на середину 80-х годов. Потом на смену относительно сытым и благополучным временам пришла эпоха бандитского капитализма, когда стране стало не до выпуска своей высокотехнологичной продукции бытового назначения, вот уже сменились поколения, но ностальгия по тем временам, когда мы бессонными ночами пытались сократить код программы хотя бы на пару байтов, чтобы уместить задуманную функцию, выискивали всё новые и новые недокументированные возможности, придумывая способы, как их можно использовать на практике, сочиняли целые циклы рассказов в качестве фона для наших игровых программ, не даёт забыть свой МК-61 со 105 байтами программной памяти. Поэтому хочу написать заметку о том, что собой представляли и как работали эти самые программируемые калькуляторы. Даже если эта тема сегодня периодически и поднимается, то не настолько часто, чтобы приесться уважаемому читателю, так что надеюсь поведать что-то новое.

Читать дальше →
Total votes 55: ↑52 and ↓3+68
Comments158

ASCII игра — компромисс аутентичности и удобства

Reading time5 min
Views18K
Всем привет! Занимаясь разработкой игры, стилизованной под текстовый режим, я пришел к ожидаемому противоречию. С одной стороны, игра должна быть пропитана духом текстового режима, ведь за это она нравится мне и, надеюсь, понравится любителям ретро игр. С другой стороны, мне хочется, чтобы игровой процесс был максимально приятен и современен. В этой статье я опишу пять пунктов, по которым я отклонился от истинного текстового режима. Удалось ли мне сохранить ламповое алфавитно-цифровое настроение в игре? Прошу высказать мнение!


Total votes 70: ↑70 and ↓0+70
Comments38

Information

Rating
579-th
Location
Illinois, США
Registered
Activity