Pull to refresh
8
0
Юрий Шпаков @Shpakov

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

Send message

Bonsai: фамильный вики-движок

Reading time13 min
Views22K

Лирическое вступление


Как-то вечером, наводя порядок в стенном шкафу, я наткнулся на большую картонную коробку. Она пережила два переезда и не открывалась уже столько лет, что я напрочь забыл, что именно в ней хранилось. Оказалось, там лежали фотографии — в альбомах, в конвертах из фотоателье, а часть просто так.

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



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

Идеальным решением для хранения семейных данных мне представлялся гибрид вики-движка и фотоальбома. Готовых подходящих решений не оказалось, поэтому пришлось написать собственный. Он называется Bonsai и доступен с открытым кодом по лицензии MIT. Дальше будет история о том, как он устроен и как им пользоваться, а также история его разработки и немного ДРАМЫ.
Читать дальше →

Основы электробезопасности при проектировании электронных устройств

Reading time12 min
Views71K
Привет, Хабр!

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


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

Итак, вы собрались делать устройство, которое как минимум одним своим концом включается в розетку.
Читать дальше →

Хватит делать сайты с бесконечной прокруткойǃ

Reading time6 min
Views75K


TL;DR. Хотя бесконечная прокрутка подходит для некоторых случаев, но она может создать проблемы.

Бесконечная прокрутка может быть дезориентирующей, неконтролируемой и вызывать стресс у пользователей.

В этой статье мы объясним, почему нужно прекратить создание сайтов с бесконечной прокруткой. Но для начала рассмотрим краткую историю вопроса.
Читать дальше →

Как защититься от переполнения стека (на Cortex M)?

Reading time8 min
Views28K
Если вы программируете на «большом» компьютере, то у вас такой вопрос, скорее всего, вообще не возникает. Стека много, чтобы его переполнить, нужно постараться. В худшем случае вы нажмёте ОК на окошке вроде этого и пойдете разбираться, в чем дело.

image

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

В этой статье я расскажу о собственных изысканиях на эту тему. Поскольку я программирую в основном под STM32 и под Миландр 1986 — на них я и фокусировался.
Читать дальше →

Энергия в клетке. Использование и хранение

Reading time5 min
Views55K

Всем привет! Эту статью я хотел посвятить клеточному ядру и ДНК. Но перед этим нужно затронуть то, как клетка хранит и использует энергию (спасибо spidgorny). Мы будем касаться вопросов связанных с энергией почти везде. Давайте заранее в них разберемся.  

Из чего можно получать энергию? Да из всего! Растения используют световую энергию. Некоторые бактерии тоже. То есть органические вещества синтезируются из неорганических за счет световой энергии. + Есть хемотрофы. Они синтезируют органические вещества из неорганических за счет энергии окисления аммиака, сероводорода и др. веществ. А есть мы с вами. Мы — гетеротрофы. Кто это такие? Это те, кто не умеет синтезировать органические вещества из неорганических. То есть хемосинтез и фотосинтез, это не для нас. Мы берем готовую органику (съедаем). Разбираем ее на кусочки и либо используем, как строительный материал, либо разрушаем для получения энергии.
Что конкретно мы можем разбирать на энергию? Белки (сначала разбирая их на аминокислоты), жиры, углеводы и этиловый спирт (но это по желанию). То есть все эти вещества могут быть использованы, как источники энергии. Но для ее хранения мы используем жиры и углеводы. Обожаю углеводы! В нашем теле основным запасающим углеводом является гликоген.


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

Щелкаем реле правильно: коммутация мощных нагрузок

Reading time3 min
Views252K
Привет, Geektimes!

Управление мощными нагрузками — достаточно популярная тема среди людей, так или иначе касающихся автоматизации дома, причём в общем-то независимо от платформы: будь то Arduino, Rapsberry Pi, Unwired One или иная платформа, включать-выключать ей какой-нибудь обогреватель, котёл или канальный вентилятор рано или поздно приходится.

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

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



Я же хочу рассказать про простую и довольно очевидную, но при этом редко встречающуюся схему, умеющую вот такое:

  • Гальваническая развязка входа и нагрузки
  • Коммутация индуктивных нагрузок без выбросов тока и напряжения
  • Отсутствие значимого тепловыделения даже на максимальной мощности


Но сначала — чуть-чуть иллюстраций. Во всех случаях использовались реле TTI серий TRJ и TRIL, а в качестве нагрузки — пылесос мощностью 650 Вт.

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

Всякие штуки в MetaPost

Reading time8 min
Views16K
В чем рисовать векторные картинки? Для меня, как и для многих других, ответ довольно очевиден: скорее всего, в иллюстраторе. Ну или в инкскейпе. Так же я думал, когда мне заказали отрисовать штук восемьсот картинок для учебника физики. Ничего такого, просто черно-белые технические иллюстрации со всякими блоками, шарами, пружинами, линзами, машинками, тракторами и прочим подобным. Предполагалось, что верстаться книга будет в латехе, а мне были предоставлены вордовские файлы со вставленными картинками — то карандашными набросками, то сканами из других книг — и вроде бы рукопись в каком-то виде. В этом случае первая мысль — рисовать в инкскейпе — уступила фантазиям на тему «как бы это так все автоматизировать». Лучшим вариантом показался в тот момент почему-то MetaPost.



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

Ученые нашли способ обратить процесс старения клеток

Reading time6 min
Views91K


Многие люди мечтают, что при их жизни найдут способ остановить старение. Теперь можно перестать мечтать. Реальная жизнь переплюнула научную фантастику. Исследователи смогли не только остановить, но и обратить процесс старения – вернув человеческие клетки обратно к их «молодому» состоянию. Правда, пока что только в лаборатории. Ученые рассчитывают, что скоро их открытие позволит создавать лекарства против естественной дегенерации тканей. И указывают на то, какие продукты нам нужно употреблять, чтобы достичь похожего эффекта в своём организме.

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

Сингапурская диагностическая панель старения

Reading time5 min
Views6K
Так как задача диагностики старения — центральная для идеи замедления старения, то мы анализируем все подходы, которые реализуются в мире по данной проблематитике. Мы хотим разработать наилучшую диагностическую систему старения, чтобы в последствии оценивать качество интервенций, направленных на увеличение продолжительности жизни.

6 августе 2018 г. Опубликовано исследование в журнале The Journals of Gerontology статья «Биомаркеры, прогнозирующие смерть от всех причин в течении 10 лет».

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

  1. цитокины, хемокины и факторы роста; 
  2. регуляторы метаболизма глюкозы и адипокинов; 
  3. молекулы адгезии; 
  4. ответ острой фазы (воспаление); 
  5. патоген-специфические антитела; 
  6. ремоделирование костной ткани. 

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

Глаукома — как не ослепнуть: поговорим о лечении…

Reading time11 min
Views164K
Мы знаем, что от глаукомы не застрахован никто.

Число больных глаукомой во всем мире более 100 миллионов (!) человек. Девять из десяти слепых живёт в развивающихся странах, и две трети из них могли бы быть вылечены, начни они лечится вовремя.

Глаукома является второй после катаракты причиной слепоты — до 20% всех случаев заболевания заканчиваются ею. Часть людей не догадывается о болезни. Выявляется часто глаукома на 2-3 й или на последней, 4-й стадии, когда помочь человеку часто уже невозможно. В России глаукома с недавних пор стала первой причиной безвозвратной слепоты, обогнав травматизм и сосудистые заболевания глаза.

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

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

лечение глаукомы

Поскольку лечение глаукомы такое же опасное занятие, как спелеология — лезешь в темноту, а что и когда упадет тебе на голову, науке неизвестно. А не упадет, так сам утонешь или задохнешься — есть варианты. Когда догадаешься, куда попал, будет уже поздно. Позволю начать с ряда правил, описанных далее.

Завещание Баффета или о чём молчат финконсультанты

Reading time4 min
Views64K
У. Баффет завещал жене после своей смерти вложить все средства  в биржевой фонд ETF на S&P 500 (VOO) и жить в своё удовольствие. Однако книги, интернет и финконсультанты призывают нас составлять диверсифицированные портфели с обязательным включением в них облигаций. К слову, о диверсификации Баффет тоже отзывается не лестно и призывает все яйца хранить в одной корзине, просто внимательно за ней присматривать.

В данной статье мы попробуем разобраться, стоит ли верить оракулу из Омахи или прислушаться к финансовым консультантам. А поможет нам в этом Python и Quantopian.
Читать дальше →

Программа для удаленного управления рабочим столом — Aspia

Reading time3 min
Views111K
image Хочу представить общественности свою разработку – приложение для удаленного управления рабочим столом Aspia. Проект является полностью бесплатным и с открытым исходным кодом (GPL 3.0).

На данный момент реализованы следующие возможности:

  • Удаленное управление рабочим столом
  • Удаленный просмотр рабочего стола
  • Передача файлов
  • Адресная книга с поддержкой шифрования и мастер-паролем (XChaCha20+Poly1305, 256-битный ключ)
  • Возможность создавать пользователей с индивидуальными правами
  • Шифрование всей передаваемой по сети информации (XSalsa20+Poly1305)
Читать дальше →

Какие продолжения игр крутые?

Reading time6 min
Views33K


С точки зрения продаж, продолжение игры — это такая штука, на которую не бывает скидок. Точнее, как — после выхода продолжения можно раздавать базовую игру хоть бесплатно, и тогда какая-то часть игроков втянется и купит дополнение уже за полную цену. В электронном виде. В мире настолок продолжение-дополнение покупают 25% от игроков базовой версии.

С точки зрения разработки, продолжение — это доведение до идеала и совершенства всего того, что ты думал про игру последние пару лет. И ещё новые механики. И ещё куча крутого контента.

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

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

Краудтестинг, или Где взять опыт для первой работы в тестировании

Reading time8 min
Views199K

Изображение: источник

Привет, Хабр! Меня зовут Евгений Кузнецов. Я работаю в Badoo, в отделе QA.

Почти пять лет назад я начал интересоваться тестированием: читал книги, искал информацию в интернете. На одном из форумов наткнулся на тему про подработку, где один из участников оставил ссылку на сайт uTest.com. И это была действительно удачная находка, поскольку uTest оказался крупнейшей платформой для тестировщиков с кучей полезной информации и сотнями оплачиваемых краудсорсинговых проектов.

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

Гуляем по городу с умом: как я делал сервис для построения интересных пешеходных маршрутов

Reading time13 min
Views59K
UPD: так как тема хорошо зашла и показала наличие спроса на такой сервис, буду развивать его дальше. Завел паблик вконтакте для сбора фидбека и публикации информации об обновлениях https://vk.com/sightsafari

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

Ситуация еще больше осложняется, если рядом нет никаких крупных достопримечательностей, о которых все знают и которые можно было бы включить в свой маршрут после короткого поиска в интернете. Что делать если вы застряли в каком-нибудь Купчино, про которое вы только и слышали, что там лучше не застревать? Приходится идти по навигатору, надеясь, что на пути встретится что-то интересное. Однако популярные навигаторы учитывают лишь расстояние и время в пути, но не принимают во внимание интересность маршрута. Мне попадались еще проекты, пытающиеся учитывать удобство пешего маршрута (ведущие в обход шумных магистралей), но хочется же пройти не только комфортно, но и увидеть какие-нибудь красоты.



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

Описание алгоритма и примеры работы под катом, ссылка в конце.
Читать дальше →

Транс-ФРК: один из эталонов коррекции зрения

Reading time7 min
Views34K
image

Сегодня опять буду рассказывать вам про лазеры, роговицу и коррекцию зрения. Но на этот раз будем говорить не о разных вариантах LASIK и ReLEx SMILE, а о последних модификациях ТрансФРК. Метод все незаслуженно пинают, называя устаревшим и уступающим во всем другим технологиям. Плюс, его постоянно путают с обычным ФРК, при том, что между ними реально лежит технологическая пропасть. Я попробую показать почему это не так, а заодно расскажу, почему к нам выстраиваются очереди перед началом набора в летные училища и учебные заведения МВД.

Заряжаем АА, ААА и другое цилиндрическое и аккумуляторное

Reading time10 min
Views325K
На ныне покойном Geektimes есть (или был) блог Gearbest и он был (или есть) уныл. Их маркетологи зачем-то раз за разом втюхивают одни и те же телефоны и планшеты, тогда как на сайте (впрочем, как и на Ali) есть куча других отличных товаров для гиков. Поэтому, можно я поделюсь своими маленькими китайскими открытиями?



У меня есть дети. Дети = выброшенные батарейки. Т.е. там есть еще промежуточные звенья типа больших роботов, мечей, орущих робокошек, которые катаются по дому и мерцают как мечта эпилептика и так далее. Но все приводит к одному — выброшенным батарейкам.

Благодаря Алексею Надежину мы уже знаем, что лучшими по соотношению цена/емкость являются либо батарейки Ikea и Ашан, либо GP Super. Тем, собственно и жили.
UPD: в комментариях указали, что Алексей провел новое исследование. С учетом обновления цен до текущих, получается, что лучше выглядят батарейки Pairdeer и Lexman из Леруа Мерлен. Ну и опять же Ашан.
Однако, вывалив в специальный контейнер очередную порцию дохлых батареек и испытав на себе полуночный плач ярославны о том, что любимая кукла не работает, пришел к простому выводу — пора переходить на аккумуляторы. Причем, если будут аккумуляторы, неплохо бы их как-то еще и заряжать. Полез гуглить простые зарядки и тут мне открылся “о дивный новый мир”.
Читать дальше →

Два сюрприза с очками

Reading time9 min
Views139K

Вот что будет, если ударить по стеклянным очкам молотком, но про это позже

Чуть больше полугода назад меня вдруг пробило на хорошие очки. Я начал задавать одинаковые тупые вопросы и получать разные ответы. Кого о чём не спросишь — их технология лучшая в мире. Правда, после слов «обоснуйте, пожалуйста», начинаются проблемы с пруфами. В итоге дорога приключений привела меня довольно далеко.

Значит, два важных момента. Первый: оказывается, надо делать полную коррекцию, частичная — в большинстве случаев зло. Доказательство «в Европе уже давно так не делают» меня не устроило, поэтому пришлось копать исследования. Второй момент — долбанный светофильтр «для компьютера», отсекающий синий, всё же нужен. Но только, как мне кажется, не для компьютера. Тоже нашлись результаты, но на животных.
Читать дальше →

Алан Кей (и коллективный интеллект Хабра): какие книги формируют мышление тру инженера

Reading time3 min
Views40K
image

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

Ключевой частью инженерии является любовь к тому, чтобы делать вещи, особенно к тому, чтобы делать их сразу же и делать их хорошо. Большая часть инженерии возникла из “tinkering” (aka “hacking”), добавив к этому желания «принципиального проектирования и создания», «целостности» и т. д. Все великие инженеры, которых я знаю лично, имеют глубокие моральные убеждения касательно того, что они делают, и почему это «должно быть сделано как можно лучше». Часть наложения темперамента на науку это своего рода «лабораторная крыса», которая наиболее счастлива, когда она в курсе эксперимента или создания нового экспериментального аппарата.

Автономный способ обхода DPI и эффективный способ обхода блокировок сайтов по IP-адресу

Reading time7 min
Views756K
Провайдеры Российской Федерации, в большинстве своем, применяют системы глубокого анализа трафика (DPI, Deep Packet Inspection) для блокировки сайтов, внесенных в реестр запрещенных. Не существует единого стандарта на DPI, есть большое количество реализации от разных поставщиков DPI-решений, отличающихся по типу подключения и типу работы.

Существует два распространенных типа подключения DPI: пассивный и активный.

Пассивный DPI

Пассивный DPI — DPI, подключенный в провайдерскую сеть параллельно (не в разрез) либо через пассивный оптический сплиттер, либо с использованием зеркалирования исходящего от пользователей трафика. Такое подключение не замедляет скорость работы сети провайдера в случае недостаточной производительности DPI, из-за чего применяется у крупных провайдеров. DPI с таким типом подключения технически может только выявлять попытку запроса запрещенного контента, но не пресекать ее. Чтобы обойти это ограничение и заблокировать доступ на запрещенный сайт, DPI отправляет пользователю, запрашивающему заблокированный URL, специально сформированный HTTP-пакет с перенаправлением на страницу-заглушку провайдера, словно такой ответ прислал сам запрашиваемый ресурс (подделывается IP-адрес отправителя и TCP sequence). Из-за того, что DPI физически расположен ближе к пользователю, чем запрашиваемый сайт, подделанный ответ доходит до устройства пользователя быстрее, чем настоящий ответ от сайта.
Читать дальше →

Information

Rating
5,739-th
Location
Великий Новгород (Новгород), Новгородская обл., Россия
Date of birth
Registered
Activity