Pull to refresh
1
0
Oleg Romanenko @Slader

Архитектор/Разработчик highload сервисов

Send message

Спорт, как хобби для здоровья, с точки зрения инженера

Reading time14 min
Views79K
image
Картинка из гугла для привлечения внимания.

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

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

Для тех, кому лень читать: наш выбор — качалочка и плавание. Бег, игры и велик — по желанию.
Читать дальше →

Новый чемпионат для backend-разработчиков: HighLoad Cup

Reading time5 min
Views21K

Проведение конкурсов для IT-специалистов сейчас в моде: Kaggle с его задачами по Data Science, сплоченная тусовка олимпиадного программирования, набирающие популярность площадки для конкурсов по искусственному интеллекту, всевозможные хакатоны для мобильных разработчиков, олимпиады для админов, capture the flag для безопасников. Казалось бы, специалисту любой сферы несложно найти себе подходящую движуху, поучаствовать, прокачаться и что-нибудь выиграть.


Обделенными в этом плане остались лишь web-разработчики. Мы в Mail.Ru Group решили исправить это досадное недоразумение и теперь с радостью представляем вам HighLoadCup — конкурсную площадку на стыке backend-разработки и администрирования web-сервисов.


Если считаете себя хорошим web-разработчиком, умеете в deploy и highload — добро пожаловать!

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

Умный дом — это просто

Reading time6 min
Views9.9K
Для кого-то «Умный дом» — это нечто абстрактное из фильмов, когда супергероя-мизантропа встречает приятный женский голос, распахивает двери и ведет беседы на различные темы. Для меня это прежде всего удобство и стабильность. А самое главное: не то что ребенок, а даже бабушка сможет разобраться, как он работает.

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

Диагностика старения 1.0

Reading time14 min
Views30K
image

Представьте, что вам за 40 и вы приходите к врачу узнать про себя. Врач вас обследует и говорит, что никаких особых патологий нет: «все показатели в пределах возрастной нормы, а что вы хотите, стареете, не девочка уже». То есть врач не видит проблемы в том, что у вас начинают медленно появляться признаки возрастзависимых заболеваний.

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

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

У старения нет одного запускающего механизма, старение постепенно — и поначалу незаметно — захватывает весь организм, последовательно выводя из строя органы и системы. В конечном итоге приводя к смерти.

Что же в первую очередь нам надо понять перед лицом старения?

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

Сигнальные пути старения

Потокобезопасный std::map с производительностью lock-free map

Reading time21 min
Views34K

Примеры использования и тестирование потоко-безопасного указателя и contention-free shared-mutex


В этой статье мы покажем: дополнительные оптимизации, примеры использования и тестирование разработанного нами потоко-безопасного указателя с оптимизированным разделяемым мьютексом contfree_safe_ptr<T> – это эквивалентно safe_ptr<T, contention_free_shared_mutex<>>
В конце покажем сравнительные графики тестов нашего thread-safe указателя и одних из лучших lock-free алгоритмов из libCDS на процессорах Intel Core i5/i7, Xeon, 2 x Xeon.
Читать дальше →

Делаем любой объект потокобезопасным

Reading time30 min
Views77K
image

В этих 3-ех статьях я детально расскажу об атомарных операциях, барьерах памяти и о быстром обмене данными между потоками, а так же о «sequence-points» на примере «execute-around-idiom», а заодно постараемся вместе сделать что-нибудь полезное — умный указатель, который делает любой объект потоко-безопасным для любых операций с его членами переменными или функциями. А затем покажем как используя его достичь производительности высоко-оптимизированных lock-free алгоритмов на 8 — 64 ядрах.
Читать дальше →

Ускоряем std::shared_mutex в 10 раз

Reading time35 min
Views55K
В этой статье мы детально разберем атомарные операции и барьеры памяти C++11 и генерируемые ими ассемблерные инструкции на процессорах x86_64.

Далее мы покажем как ускорить работу contfree_safe_ptr<std::map> до уровня сложных и оптимизированных lock-free структур данных аналогичных по функциональности std::map<>, например: SkipListMap и BronsonAVLTreeMap из библиотеки libCDS (Concurrent Data Structures library): github.com/khizmax/libcds

И такую многопоточную производительность мы сможем получить для любого вашего изначально потоко-небезопасного класса T используемого как contfree_safe_ptr<T>. Нас интересуют оптимизации повышающие производительность на ~1000%, поэтому мы не будем уделять внимание слабым и сомнительным оптимизациям.
Читать дальше →

DIY порошок для посудомойки: как не растворить посуду и не повторить моих ошибок. Год экспериментов

Reading time9 min
Views109K


Предыдущие публикации:

Пудра для мозга или как сделать порошок для посудомойки в 9,7 раз дешевле
DIY порошок для посудомойки: разбираем промышленные средства и улучшаем рецепт

Прошло уже больше года с момента последней публикации из серии домашней алхимии, посвященной издевательствам над бытовой техникой производству порошка для посудомойки в домашних условиях. Я все еще жив. Большинство тестировавших жуткие смеси, насколько мне известно, живы. В этом посте я хотел рассказать как правильно мыть ржавые гвозди в посудомойке, не растворяется ли картошка с укропом и подвести итог экспериментов за год.
Читать дальше →

Получено первое научное свидетельство «высшего уровня сознания»

Reading time4 min
Views58K

Усреднённые изменения в уровне сложности активности мозга по алгоритму Лемпеля — Зива по одному каналу (это лишь одна из нескольких измеряемых математических метрик сложности сигналов) для трёх психотропных препаратов: псилоцибина, кетамина и ЛСД. Красный цвет соответствует увеличению уровня сложности. Изображение: Университет Сассекса

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

Как космический зануда на «Время первых» ходил

Reading time11 min
Views48K
Самый главный спойлер — фильм мне понравился. Он хорош, но не идеален. А некоторые его неточности и особенности интересны и дают повод поговорить о физике, космической технике и организации полетов.


Кадр из второго официального трейлера фильма «Время первых»

От четырёх до тридцати двух

Reading time38 min
Views32K

Часть 1: От четырёх до восьми




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

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

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

Как открытые офисы влияют на работу высокоэффективных сотрудников

Reading time4 min
Views44K
image

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

Отвлекающие факторы убивают производительность высокоэффективных сотрудников (ВПС) – инженеров-программистов, аналитиков данных, дизайнеров, разработчиков 3D-прототипов и других ключевых специалистов. Это очевидный факт, который уже давно широко обсуждается.

Отвлечение внимания – единственная серьезная помеха для высокой эффективности талантливых работников. Если высокопроизводительному сотруднику требуется около 25 минут для того, чтобы восстановить сосредоточенность после перерыва, и его отвлекут в течение рабочего дня, например, четыре раза, то получится 100 минут – почти два часа потраченного впустую времени.
Читать дальше →

Как создавать, собирать, устанавливать и использовать пакеты с программами и библиотеками для UNIX-подобных систем

Reading time13 min
Views47K
Речь пойдёт о программах и библиотеках для UNIX-подобных систем, распространяемых в виде исходного кода (в том числе в виде тарболлов), написанных обычно на C и C++ (хотя этот же порядок работы может применяться к софту на любом языке). Многие вещи в этой статье написаны применительно конкретно к GNU/Linux, хотя многое из статьи может быть обобщено и на другие UNIX-подобные ОС.

Под словом «пакет» я понимаю в этой статье пакет с исходными текстами, причём не пакет конкретного дистрибутива GNU/Linux, а просто пакет, исходящий от оригинальных авторов софта (UPD от 2017-02-09: кроме тех случаев, где из контекста ясно, что слово «пакет» употреблено в другом смысле).

В этой статье я разберу следующие вопросы:

  • Вот скачал программу или библиотеку. Как её собрать и установить? Как воспользоваться библиотекой?
  • Что такое префикс (prefix) установки? В чём разница между сборкой и установкой? Куда обычно устанавливают программы?

Я разберу только совсем базовые вещи. Те, которые типичные участники сообщества свободного ПО, программирующие на C и C++ под UNIX-подобные системы, обычно уже знают. Как создавать тарболлы (на примере «голого» make) и как устанавливать чужие тарболлы. Advanced советы по созданию «хороших» пакетов я не дам. «Продвинутые» вещи читайте в документации систем сборки, в замечательной статье «Upstream guide» от Debian (в её конце есть ещё куча ссылок о создании «хороших» пакетов). Многое в этой статье можно было сделать по-другому, моя цель: дать хотя бы один способ, не пытаться объять необъятное.
Читать дальше →

Мелкосерийное производство корпусов 3D-печатью: придаем «заводской» внешний вид

Reading time4 min
Views36K

Вы полны решимости выпустить свою разработку на массовый рынок.

Первый камень преткновения, с которым сталкиваются многие — как делать качественный корпус устройства мелкими сериями?

Как сделать из 3D-печатной модели «конфетку», которую и продавать будет не стыдно?

Один из вариантов — обработка и покраска. О тонкостях окраски полиамида — под катом. Много фото!
Читать дальше →

Фриланс. Четыре истории успеха: ушел из офиса и жизнь закрутилась

Reading time6 min
Views31K

Слушая рассказы о фрилансе, многие могут подумать, что это всё шутки: не могут такие «подработки» являться основной работой, и ребята наверняка перебиваются от заказа к заказу. Но фриланс – это не просто работа на себя, это, скорее, образ жизни, и многим подходит именно такой формат работы. Кто-то находит новых партнеров и разрастается во что-то большее, чем просто удаленный сотрудник. Мы в Коворкинг 14 убежденные романтики и верим, что будущее за такими историями.
Читать дальше →

Выбор светодиодных ламп. 3. Спектры источников света

Reading time4 min
Views30K
В идеале для оценки качества спектра излучения лампы необходим спектрофотометр. В крайнем случае можно использовать спектрофотометры для профилирования/калибровки мониторов (например, ColorMunki) — если такое устройство у вас есть. Покупать же спектрофотометры домой для оценки ламп нет никакого смысла, они стоят от сотен до десятков тысяч долларов.

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

Каково это — быть разработчиком в России, когда тебе сорок

Reading time37 min
Views162K
Привет всем, я — сорокалетний программист-самоучка, а это моя история.

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



Через каких-то 20 лет мне стукнет 60. И вероятность того, что я еще смогу заниматься тем, для чего был создан, составляет очень крошечную величину. Эти размышления привели меня туда, откуда все начиналось.

Я дебютировал в роли разработчика программного обеспечения в 1990 году, через год после того, как мне на 14-тилетие родители подарили ПЭВМ «Микроша».
Читать дальше →

Конкурентность: Асинхронность

Reading time6 min
Views41K

Мы всё-таки смогли дойти до третьей части и добрались до самого интересного — организации асинхронных вычислений.


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


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


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

Пьеса «Технический долг»

Reading time6 min
Views76K

Пьеса «Технический долг» в 9 частях. Ставится и показывается впервые.


Часть 0: В пустой комнате стоят Разработчик (Р) и Менеджер (М).

М: Я собрал нас тут, чтобы рассказать пренепреятнейшее известие: система КРОТОПОН, которая работает на продакшане заглючила и мы потеряли кучу денег. Кроме того нет никого, кто знает как она работает. Поэтому (с придыханием) наш СЕО дал мне священную миссию — написать новую систему. Как ты думаешь, за два месяца справишься?

Р: А что делать-то нужно?

М: Да там немного, всего лишь пару десятков систем связать и рюшечки навесить.

Р: Эй, да это же на год работы! И вообще требования будут?

М: (В телефон) Да, конечно, за пол года справимся. (Разработчику) Ну ты тут пока начинай, а я тебе требования потом донесу.

Менеджер уходит.

Р: Но тут же…

Разработчик тяжело вздыхает, затаскивает в комнату инструменты и начинает что-то сооружать.
Читать дальше →

Фингерпринтинг конкретного ПК с точностью 99,24%: не спасает даже смена браузера

Reading time4 min
Views84K

Задачи рендеринга на клиентской стороне с целью фингерпринтинга

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

Группа американских исследователей опубликовала научную работу с описанием более продвинутых техник фингерпринтинга, которые не учитывают версию браузера, но всё равно распознают конкретный ПК с высокой точностью.
Читать дальше →

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity