Pull to refresh
54
0
Андрей Майоров @AndrewMayorov

Frontend developer, architect

Send message

Ученые нашли упражнение, позволяющее худеть, сидя по 10 часов в день

Reading time6 min
Views352K


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


Конечно, если ничего не делать, то будешь только толстеть. Средний офисный сотрудник сегодня сидит больше 10 часов в день. Мы с вами, чувствую, ещё больше, особенно если на досуге играем, читаем Хабр или смотрим ютуб. Лично меня от компьютера вообще не оттащить. Хотя читал полно исследований, говорящих о больших проблемах со здоровьем, возникающих из-за малоподвижного образа жизни.


Например, было доказано, что независимо от уровня физической активности слишком много сидения увеличивает риск сердечных заболеваний, диабета, деменции и серьезных проблем со спиной. Более половины всех людей в мире сегодня уже страдают от этих проблем, и больше 80% людей в возрасте 60+.


Решение, конечно, простое — упражнения, в любой возможной форме. Но если вы такие как я, то тренироваться скучно и тяжело, правда? Большинство из нас ненавидят физкультуру. К тому же, на это нет лишнего времени. Бонусные часы каждый день магически не появятся.


Но похоже, есть способ ускорить обмен веществ в организме, даже сидя за ПК. И точно избежать проблем с метаболизмом и ожирением. Несколько недель назад вышла работа ученых под руководством Марка Гамильтона из Хьюстонского университета. Они разработали технику, позволяющую задействовать неожиданное свойство икроножных мышц, и делать для своего организма полноценную тренировку, не вставая со стула. Оказывается, похудеть, работая в IT, — это не так уж и сложно. Испытываю на себе, полёт нормальный. А какие у вас ноги будут прокачанные!

Читать дальше →
Total votes 149: ↑135 and ↓14+151
Comments296

Лучший способ ругаться на созвоне? VR! Обзор корпоративных VR-звонилок

Reading time18 min
Views11K

Нас в команде всего четверо. Нам нужно всего лишь раз в день слышать друг друга и иметь возможность показывать экран. Никаких специфических требований. Не нужно корпоративной авторизации, не нужно держать ПО на своих серверах, даже записи созвонов не нужны. Мы не против прослушки от ФСБ или ФБР — пожалуйста. Казалось бы, только самый отсталый мессенджер до сих пор не навелосипедил видео- или, хотя бы, аудио-конференции (привет, Mattermost). Вариантов, кому продать свои разговоры, — море. Как же так получилось, что мы устраиваем наши дейли митинги... в виртуальной реальности??

Вы что, серьёзно, что ли?
Total votes 26: ↑25 and ↓1+28
Comments36

10 лучших игр по программированию, которые улучшат ваши навыки

Reading time7 min
Views101K

Вы помните далёкие дни из детства, когда вы, проводили целый день, а иногда даже не ели целый день, чтобы поиграть в игры на Nintendo? (Ах, дни Mario и Contra!!!)

С того времени игры претерпели гигантские преобразования и сфера стала более обширной. Это уже не просто хобби. Сейчас в Интернете доступно множество игр, связанных с программированием, и вы можете использовать их чтобы изучить и отточить свои скилы в увлекательной форме. Более того, эти игры могут помочь вам улучшить навыки решения задач, поскольку вам нужно будет решать задачи различной сложности, а также соревноваться с другими опытными программистами по всему миру. Специально к старту новых потоков курсов Fullstack-разработчик на Python, разработка на C# и разработка на Java, в этой статье мы отобрали несколько таких игр, играя в которые можно параллельно качать и себя самого.

Start game
Total votes 15: ↑12 and ↓3+15
Comments12

Никогда такого не было и вот опять. Почему нужно использовать self-hosted VPN. Релиз Amnezia

Reading time11 min
Views175K

Вот и пришло время для релиза VPN-клиента, родившегося благодаря хакатону DemHack, и выращенного при поддержке РосКомСвободы, PrivacyAccelerator и Теплицы социальных технологий.


Спустя полгода с того момента, как идея была впервые озвучена, мы презентуем готовый продукт — бесплатный опенсорсный клиент для self-hosted VPN, с помощью которого вы сможете установить VPN на свой сервер в несколько кликов.


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


image
Читать дальше →
Total votes 93: ↑91 and ↓2+126
Comments180

SmartTraits или добавляем «множественное» наследование в C#

Reading time13 min
Views8.1K


Один из наших клиентов, приверженец технологий php, жаловался что с переходом на C# и стек .Net лишился одной из своих любимых возможностей – использовать в своих скриптах traits и что он хотел бы добавления подобной функциональности в продукт разрабатываемый для его компании.

В один прекрасный момент, мы решили сделать ему подарок и реализовали proof of concept схожей функциональности для C#.

На удивление, всё случилось довольно быстро и интересно. Кому любопытно что из этого получилось и как можно попробовать, добро пожаловать под кат.
Читать дальше →
Total votes 17: ↑15 and ↓2+20
Comments31

Нейроинтерфейс — будущее, которое почти наступило

Reading time4 min
Views16K
image

Нейроинтерфейс — система для обмена информацией между мозгом человека и электронным устройством. Это технология, которая позволяет человеку взаимодействовать с внешним миром на основе регистрации электрической активности мозга — электроэнцефалограммы (ЭЭГ). Желание человека совершить какое-то действие отображается в изменениях ЭЭГ, что, в свою очередь, расшифровывает компьютер.
Читать дальше →
Total votes 8: ↑6 and ↓2+7
Comments17

Funkwhale: наконец-то нормальный децентрализованный музыкальный сервис

Reading time4 min
Views14K


Grooveshark уже пять лет как закрыт. За это время появились десятки проектов поменьше с той же идеей — но на базе децентрализованных сетей. Проблема Grooveshark была в его централизации, которая позволила правообладателям завалить компанию исками, в итоге потопившими её. С тех пор любая музыкальная платформа с пользовательским контентом обязательно включает в слоганы «децентрализацию», «peer-to-peer», «криптографию» и конечно, блокчейн. У всех общие проблемы: несмотря на использование федеративных сетей и модных протоколов, всё управление стартапом сосредоточено в одном офисе. Пока платформа слишком мала чтобы её заметили, она слабо развивается. Стоит ей дорасти до более-менее крупной пользовательской базы, и через несколько месяцев она тонет под напором DMCA и судебных исков.
Читать дальше →
Total votes 33: ↑33 and ↓0+33
Comments14

Эргономичная раздельная клавиатура. Iris

Reading time9 min
Views29K


Компьютеры, железо, IT в целом это такая область, которая развивается просто невероятными темпами. Вот только клавиатуры развиваться не хотят.


Мой первый комп появился 20 лет назад, тогда у меня был огромный ЭЛТ монитор. Весил он примерно 800 тонн, при своих 15 дюймах. Если сейчас на такой посмотреть, то у вас вытекут глаза. Может быть кто-то помнит модемы из 2000 года? Это жутко медленный модем, который трещал подключаясь по телефонной линии. Сейчас у нас есть 4g даже в часах. Даже молчу про процессоры, память, оперативку. Там развитие сумасшедшее.


А что там с клавиатурами?

Читать дальше →
Total votes 25: ↑22 and ↓3+26
Comments123

Квантовое будущее

Reading time103 min
Views20K
    В мире будущего уже нет государств и народов. IT-корпорации и нейрокомпьютерные технологии определяют жизнь человечества.
    В мире будущего нет никакой «реальности». Каждый подключен к сети через нейроинтерфейс и видит собственную «реальность», дополненную в той или иной степени.
    В мире будущего границы личности и сознания стираются под напором все более изощренной кибернетики. Сможет ли она изменить «природу» человека, или «живой» суперкомпьютер будет все также вынужден страдать, ошибаться и воевать.


   

Вступление


   К концу 21-ого, началу 22-ого века завершился распад всех государств на Земле. Их место заняли могущественные транснациональные IT-корпорации. Меньшинство, принадлежащее к руководству этих компаний, форсировано и навсегда обогнало в развитии остальное человечество, благодаря смелым экспериментам с модификацией собственной натуры. В ходе конфликта с доживающими свой век государствами они вынуждены были переселиться на Марс, где начали вживлять сложные комплексы нейроимплантов, еще до рождения ребенка. Марсиане сразу же рождались не совсем людьми, с соответствующими возможностями, намного превосходящими человеческие.
Читать дальше →
Total votes 39: ↑32 and ↓7+25
Comments39

Мышление письмом

Reading time9 min
Views58K


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

Что же я получил после полугода использования мышления письмом?
Читать дальше →
Total votes 67: ↑66 and ↓1+89
Comments85

Погружение в алгебру глубоких басов: прекрасные звуки музыкального программирования

Reading time9 min
Views4.6K

Красота этих объектов заключена как в текстуре звука, так и в элегантности кода




Музыканты несколько столетий заигрывали с технологиями, раздвигая границы искусства – от терменвокса до экспериментов с плёнкой середины прошлого века. Несмотря на эти увлечения, попытки генерации музыки с использованием программного кода отвоевали себе совсем небольшую нишу. За последние 70 лет те немногие, кто решился на это, попали на пересечение диаграммы Венна между программистами и авангардными музыкантами.

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

Я побеседовала с людьми, использующими код для создания музыки самых разных типов, от простых сэмплов до алгоритмических радиопередач, генерируемых в прямом эфире, и пропаганды марксистских качеств программ с открытым кодом. Несмотря на использование технологически сложных приёмов и погружение в глубины алгебры, все они ищут нечто простое: творческую песочницу, не ограниченную условностями времени и теории.
Total votes 9: ↑8 and ↓1+12
Comments1

Почему я выбрал Next.js, а не Gatsby, Gridsome или Nuxt?

Reading time9 min
Views28K
Мы, выбирая фреймворк для нового веб-проекта, обычно склонны останавливаться на инструментах, с которыми знакомы, не обращая внимания на то, насколько хорошо они подходят для этого проекта. Я же пробую поступать с точностью до наоборот. Всякий раз, когда у меня возникает такая возможность, я испытываю новые технологии. Что я узнал после таких экспериментов? Почему я, в итоге, считаю своим стандартным инструментом для создания статических сайтов (static site generator, SSG) Next.js?



В этом материале я расскажу о том, как я экспериментировал с разными веб-технологиями. Речь пойдёт о поиске подходящего инструмента в рамках Jamstack, о том, как выбирать именно то, что подойдёт разработчику и хорошо интегрируется в его проект, о том, почему я выбрал Next.js.
Читать дальше →
Total votes 23: ↑20 and ↓3+30
Comments8

Как я буду мир спасать

Reading time16 min
Views29K
Примерно год назад я твердо решил спасти мир. Теми средствами и навыками, которые у меня есть. Надо сказать, наборчик весьма скудный: программист, менеджер, графоман и хороший человек.

В нашем мире полно проблем, и мне надо было что-то выбрать. Подумывал о политике, даже поучаствовал в «Лидерах России», чтобы попасть сразу на высокую позицию. Прошел в полуфинал, но поленился ехать в Екатеринбург на очный конкурс. Долго пытался из программистов сделать бизнес-программистов, но они не верили и не хотели, поэтому первым и единственным представителем этой профессии остаюсь я один. Бизнес-программисты должны были экономику спасти.

В итоге, совершенно случайно, ко мне пришла, наконец, нормальная идея. Я спасу мир от очень распространенной и чрезвычайно гадкой проблемы – избыточного веса. Собственно, вся подготовительная работа закончена, и результаты превзошли самые смелые мои ожидания. Пора приступать к масштабированию. Эта публикация – первый шаг.
Читать дальше →
Total votes 113: ↑64 and ↓49+15
Comments269

Распределенные блокировки с применением Redis

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

Сегодня мы предлагаем вашему вниманию перевод сложной статьи о реализации распределенных блокировок средствами Redis и предлагаем поговорить о перспективности Redis как темы. Анализ рассматриваемого алгоритма Redlock от Мартина Клеппмана, автора книги "Высоконагруженные приложения", приведен здесь.
Читать дальше →
Total votes 10: ↑10 and ↓0+10
Comments6

[Подборка] 6 no-code инструментов для быстрого запуска продуктов и автоматизации процессов

Reading time4 min
Views10K


Изображение: Designmodo

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

К счастью, сегодня все большее распространение получают no-code инструменты, которые позволяют решать ранее достаточно сложные задачи легко и без необходимости писать хоть строку кода. В новой статье я собрал несколько таких полезных инструментов, которыми пользуюсь сам, и которые позволяют быстро запускать качественные ИТ-продукты без больших вложений.
Читать дальше →
Total votes 11: ↑10 and ↓1+12
Comments5

Прием всего Bluetooth разом на SDR с CUDA? Легко

Reading time4 min
Views9.1K

В последнее время коллеги по "цеху" независимо друг от друга стали спрашивать меня: как получить c одного SDR-приемника одновременно все каналы Bluetooth? Полоса ведь позволяет, есть SDR с выходной полосой 80 МГц и более. Можно, конечно, сделать это на ПЛИС, но время такой разработки будет довольно большим. Мне давно было известно, что сделать такое на GPU довольно просто, но чтобы так!

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

Выгорание и стресс — это когда жизнь проходит без нас

Reading time21 min
Views47K
Часть дел мы делаем потому, что должны их сделать. Мы должны заработать денег, должны казаться лучшими, должны, в конце концов, перевести очередную бабушку через дорогу и помыть посуду. При этом мы не спрашиваем себя, точно ли это то, что нам нужно? Это наша настоящая цель? Мы это делаем, держа в голове мысль, как бы поскорее закончить, чтобы заняться чем-то другим. Подобные дела рано или поздно приводят человека сначала к постоянному стрессу, а затем — к выгоранию.


Альфрид Лэнгле (фото: Артем Лапшин, discours.io)

Как предотвратить выгорание и как помочь себе, если это уже с вами произошло? Об этом была лекция доктора медицинских и философских наук Альфрида Лэнгле, которую он недавно прочел в НИУ ВШЭ в Санкт-Петербурге.
Читать дальше →
Total votes 28: ↑27 and ↓1+36
Comments31

Как постичь машинное обучение, если ты не великий математик

Reading time4 min
Views37K
Предлагаем почитать перевод статьи Diego Isco с ресурса dev.to. Она будет полезна начинающим специалистам в области ML.

Читать дальше →
Total votes 13: ↑9 and ↓4+10
Comments16

Монада «Maybe» через async/await в C# (без Task-oв!)

Reading time14 min
Views15K


Обобщенные асинхронные типы возвращаемых значений — это новая возможность появившаяся в C# 7, которая позволяет использовать не только Task в качестве возвращаемого типа асинхронных (async/await) методов, но также и любые другие типы (классы или структуры), удовлетворяющие определенным требованиям.


В то же время async/await — это способ последовательно вызвать некий набор функций внутри некоторого контекста, что является сущностью шаблона проектирования Монада. Возникает вопрос, можем ли мы использовать async/await для написания кода, который будет вести себя так же, как если бы мы использовали монады? Оказывается, что да (с некоторыми оговорками). Например, приведенный ниже код компилируется и работает:


async Task Main()
{
  foreach (var s in new[] { "1,2", "3,7,1", null, "1" })
  {
      var res = await Sum(s).GetMaybeResult();
      Console.WriteLine(res.IsNothing ? "Nothing" : res.GetValue().ToString());
  }
  // 3, 11, Nothing, Nothing
}

async Maybe<int> Sum(string input)
{
    var args = await Split(input);//Нет проверки результата
    var result = 0;
    foreach (var arg in args)
        result += await Parse(arg);//Нет проверки результата
    return result;
}

Maybe<string[]> Split(string str)
{
  var parts = str?.Split(',').Where(s=>!string.IsNullOrWhiteSpace(s)).ToArray();
  return parts == null || parts.Length < 2 ? Maybe<string[]>.Nothing() : parts;
}

Maybe<int> Parse(string str)
    => int.TryParse(str, out var result) ? result : Maybe<int>.Nothing();

Далее я объясняю, как работает этот код ...

Читать дальше →
Total votes 21: ↑20 and ↓1+19
Comments31

Y-метод — действительно простой способ собрать кубик Рубика

Reading time7 min
Views330K

Введение


В статье рассматривается «Y-метод» сборки кубика Рубика — его легко понять и запомнить. Он основан всего на одной последовательности, которая называется «Y-движение». Поняв этот алгоритм, вы навряд ли забудете как собрать кубик самостоятельно.
Читать дальше →
Total votes 86: ↑85 and ↓1+116
Comments78

Information

Rating
Does not participate
Location
Amsterdam, Noord-Holland, Нидерланды
Date of birth
Registered
Activity