Как стать автором
Обновить
3
0

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

Отправить сообщение

Ключ от старости. Детская прогерия и луч надежды

Время на прочтение7 мин
Количество просмотров17K

16+

Еще в самом первом моем посте на Хабре я вскользь затронул один маркер цивилизации XX века, а конкретнее – его медицины, который на самом деле поражает меня сильнее космонавтики и даже сильнее Интернета.

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

XX век – его конец и начало XXI века – отметились стратегической победой над инфекционными болезнями и переходом к борьбе против генетических, к которым по ряду показателей примыкает рак. Хина и карболка Миклухо-Маклая уступили место чудесам фармакологического искусства, названия которых оканчиваются на –маб и –вир.

Генетические заболевания принципиально отличаются от инфекционных как по принципу передачи (вертикально, а не горизонтально), так и гораздо меньшей распространенностью в глобальной популяции с резкими всплесками локально – как в случае с болезнью Хантингтона на озере Маракайбо (глава 12).   

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

Читать далее
Всего голосов 48: ↑43 и ↓5+63
Комментарии19

Как уронить космическую станцию

Время на прочтение26 мин
Количество просмотров48K

Когда "Наука" креативно избавлялась от остатков топлива, разворачивая МКС вокруг своей оси, мне стало любопытно: если расположение случайно включившегося двигателя было бы максимально неудачным, сколько потребовалось бы времени, топлива и тяги, чтобы свести станцию с орбиты?

Сегодня в выпуске: читаем с выражением первую страницу учебника по орбитальной механике, выясняем где у Солнца его смертельные лазеры, вспоминаем осень 2003, пишем отвратительно медленный код (из-за чего пьем много чая), пытаемся уронить МКС и Lunar Gateway.

Нажмите чтобы нырнуть в атмосферу
Всего голосов 114: ↑112 и ↓2+156
Комментарии65

Пришло время избавиться от Angular и сэкономить миллиарды долларов

Время на прочтение6 мин
Количество просмотров59K
Я знаю, что эта статья вызовет поток гневных комментариев, но… так тому и быть. Кто-то должен наконец озвучить то, о чём уже некоторое время размышляют программисты, обладающие некоторым опытом.

Я занимаюсь программированием более 20 лет, работал в некоторых из самых приличных североамериканских компаний. Вот уже несколько лет я наблюдаю за тем, что происходит в сфере разработки интерфейсов. Ситуация здесь постоянно ухудшается. В частности, я говорю о «модных технологиях», о довольно крупных фрагментах JS- и CSS-кода, претендующих на остроумное исполнение, которые вроде как должны пользоваться неистовой популярностью у толп новичков. Теперь в эти толпы включают даже и опытных разработчиков, которым полагается что-то понимать в том, чем они пользуются.



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

Каждый день мне на почту приходят вакансии. Компании всех размеров и мастей рыщут в поисках ОПЫТНЫХ Angular 4, 5, 6, 7, 8, 10, 12-разработчиков, которые как минимум 5 лет занимались разработкой и поддержкой того дурдома, который все называют «современнейшими пользовательскими интерфейсами».

Это — не нечто «современнейшее». Это — дурдом.

Несколько лет назад я был на собеседовании в EA (Electronic Arts). Там мне сказали, что компания избавляется от всех своих UI-фреймворков и возвращается к написанию кода на чистом JavaScript (речь идёт о модулях, или о том, что тот, кто работает с jQuery, назвал бы JS-плагинами). Я был удивлён и заинтригован.

Теперь о причинах подобного хода знают не только в EA, но и во всех остальных компаниях.
Читать дальше →
Всего голосов 125: ↑90 и ↓35+80
Комментарии196

Приёмы ускорения кода на JS и других языках: подборка от разработчика поиска Яндекса

Время на прочтение17 мин
Количество просмотров69K
Привет! Меня зовут Виктор Хомяков, в Яндексе я работаю над скоростью страниц поиска. Однажды мне в голову пришла идея обобщить свой опыт и систематизировать приёмы ускорения работы кода на JavaScript. То, что получилось в итоге, собрано в этом материале.

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


Читать дальше →
Всего голосов 80: ↑80 и ↓0+80
Комментарии51

Почему твоя мама всё ещё не прогает?

Время на прочтение11 мин
Количество просмотров124K

Случай с бомжом

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

Обычно вместо денег я даю попрошайкам-мужчинам телефон отдела кадров одной курьерской компании, которая постоянно нуждается в сотрудниках. Но у него не было ног… Тогда я подумал: «Чувак, у тебя полным полно времени. Работа за компом — лучшее, что может случиться в твоей жизни. Купон со скидкой на курс по PHP — вот, что должны были положить тебе на койку туда, где раньше были ноги, когда ты очнулся после ампутации».

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

Читать далее
Всего голосов 247: ↑219 и ↓28+248
Комментарии468

Отрезок качества

Время на прочтение4 мин
Количество просмотров7.7K

Есть принцип «выбирай любые два понятия из "быстро, качественно и дёшево"». Да, он верен для проектных историй, но не верен для разработки. В разработке, как процессе, нет никакого треугольника качества. Ты можешь делать либо быстро и качественно, либо медленно и плохо. И нет ни одной причины выбирать «медленно и плохо (и дорого)», если только не в силу привычки и неосознанности.

Читать далее
Всего голосов 29: ↑25 и ↓4+26
Комментарии15

Чем разработчик от кодера отличается

Время на прочтение6 мин
Количество просмотров32K

Самый плохой разработчик — тот, который всё делает по ТЗ. А самый лучший код — не написанный.

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

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

Это история не про любовь, мир, жвачку и миссию компании, а про простую способность сделать свою работу так, чтобы она была сделана хорошо. И да, для этого разработчик должен не только уметь программировать, но и уметь общаться с другими людьми, уметь доносить свои мысли, уточнять и понимать, что вообще происходит. То есть уметь договариваться. Да, разработчик должен уметь организовывать свою работу: раскладывать проблему на задачи. Ещё он должен интересоваться продуктом (проектом). Не потому что разработчик так его любит, и не потому, что этого требует Agile, а потому, что живой интерес к продукту и понимание его ценности увеличивает качество решений и стоимость разработчика на рынке. Знание предметной области и её ограничений — первейшее требование для того, чтобы принять правильное техническое и архитектурное решение. И очевидно, что чем меньше руководитель тратит сил на управление сотрудником и чем больше получает результат, — то есть чем выше автономность сотрудника, его самостоятельность и беспроблемность, — тем он ценнее при прочих равных.

Читать далее
Всего голосов 73: ↑56 и ↓17+48
Комментарии184

Как развитие алгоритмов сжатия остановилось 20 лет назад, или о новом конкурсе на 200 тысяч евро

Время на прочтение18 мин
Количество просмотров73K

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

Пост набрал 206 «плюсов», вышел на 2 место топа недели и вызвал оживленную дискуссию, в которой мне больше всего понравился комментарий: «Коммерческого интереса эффективность по сжатию алгоритмов сжатия без потерь сегодня не представляет, в силу отсутствия принципиально более эффективных алгоритмов. Деньги сегодня — в сжатии аудио-видео. И там и алгоритмы другие. Тема сжатия без потерь удобна именно лёгкостью верификации алгоритма, и не слегка устарела. Лет на 20.» 

Поскольку я сам уже 20 лет в области сжатия видео, с ее бурным развитием мне спорить сложно. А вот что сжатие без потерь развиваться перестало… Хотя логика тут понятна каждому. Я до сих пор пользуюсь ZIP, все мои друзья пользуются ZIP с 1989 года — значит, ничего нового не появляется. Так ведь? Похоже рассуждают сторонники плоской земли. ))) Я не видел, знакомые не видели, и даже некоторые авторитеты утверждают, значит, это так! 

О том, как Intel просили меня не прекращать читать курс по сжатию, ибо людей нет новые алгоритмы делать, я в прошлый раз писал. Но тут и Huawei в ту же дуду дует! Вместо того, чтобы раздать призы и должности победителям, а затем успокоиться, поскольку развитие давно встало, эти эксцентричные люди посчитали конкурс крайне успешным и запустили новый с призовым фондом 200 тысяч EUR.

Развивались ли алгоритмы сжатия без потерь в последние 20 лет? Чем закончился прошлый конкурс и на сколько опередили baseline? Сколько денег получили русские таланты, а сколько зарубежные? И есть ли вообще жизнь на Марсе в сжатии без потерь? 

Кому интересно — добро пожаловать под кат! 
Читать дальше →
Всего голосов 198: ↑197 и ↓1+255
Комментарии134

Почему я отказался от 18 тысяч долларов по баунти-программе Apple

Время на прочтение11 мин
Количество просмотров45K

Эта статья посвящена тому, как я обнаружил уязвимость в конечной точке восстановления пароля Apple, которая позволила мне захватить аккаунт iCloud. Уязвимость полностью пропатчена отделом безопасности Apple и больше не работает. В рамках баунти-программы Apple Security Team вознаградила меня 18 тысячами долларов, но я отказался их получать. В статье я расскажу о том, почему отказался от вознаграждения.

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

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

Теперь я расскажу о том, что обнаружил у Apple.
Читать дальше →
Всего голосов 79: ↑74 и ↓5+98
Комментарии63

За что я люблю ассемблер?

Время на прочтение11 мин
Количество просмотров59K

Этой статье уже почти 3 года. Однако сегодня я решил подредактировать её, дополнить и выложить, наконец, на Хабр.

Читать далее...
Всего голосов 61: ↑57 и ↓4+71
Комментарии155

Кажется, мы стали забывать основы фронтенда

Время на прочтение5 мин
Количество просмотров45K

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

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

Читать далее
Всего голосов 80: ↑78 и ↓2+96
Комментарии191

Как хакнуть когнитивные искажения через левое ухо

Время на прочтение9 мин
Количество просмотров18K
image


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

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

Поэтому человек видит родителя или ребенка, но не чувствует никаких эмоций, и мозг выдвигает гипотезу, что это не мать, а притворщица. А стоит родителю выйти из комнаты и тут же позвонить больному, как диалог вполне нормальный. Потому что связи между голосовой идентификаций и эмоциональной системой в сохранности. Иногда при синдроме Капгра происходит селективное нарушение — вместе с притворщиками и родной дом оказывается подмененным, или притворщиком оказывается только один член семьи. Это может казаться безобидной причудой, но есть данные, что пациенты с синдромом Капрга убивали своих притворщиков, то есть, своих родных.
Читать дальше →
Всего голосов 39: ↑34 и ↓5+38
Комментарии35

Растения I класса опасности. Памятка по идентификации

Время на прочтение15 мин
Количество просмотров171K
Признаю честно, я не собирался сейчас писать заметку, ибо в лавине разномастного хабр-научпопа ботанике с примесью химии конкурировать достаточно сложно. Да и все, кому интересны мои публикации давным-давно координируются телеграм-каналом, а самые активные даже patreon-ируют и влияют на создание контента. Но внезапно, после того, как аннотация заметки в фэйсбуке набрала кучу репостов, я решил вынести ее на Хабр, ибо «Знание-сила». Под катом короткая статья, про растительные сверхтоксины, которые в прямом смысле вокруг нас. Как не крути, а это надо знать всем!

Вторая часть — Токсины растений. User Stories
Третья часть — Ядовитые декоративные растения в саду и огороде. Справочник
Четвертая часть — Опасные «вкусняшки». Ядовитые лесные ягоды. Памятка для детей и взрослых


Определить сверхтоксичное растение!
Всего голосов 132: ↑126 и ↓6+158
Комментарии164

Что не так с зубами мудрости и почему врачи считают их врождённой патологией

Время на прочтение11 мин
Количество просмотров49K

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

Зубы реально проблемные:

1. Прорезываются долго и мучительно.
2. Чаще всего растут не в нужную сторону и жевать ими не получается.
3. Нередко сдвигают зубной ряд и вызывают аномалии прикуса уже в юношеском возрасте.
4. Первые разрушаются от кариеса и являются источником риска тяжёлых гнойных заболеваний.

В общем, у нас есть третий моляр, он же жевательный «зуб мудрости». Но:

1. Жевать вы им не можете.
2. Протез на него не поставите.
3. Нормально запломбировать каналы в нём сложно или невозможно.
4. От кариеса он разрушится первым из-за сложной гигиены и принесёт радость и счастье во всю ротовую полость. 
5. При первом удобном случае сдвинет вам пропеллером весь зубной ряд.
6. Может стать чудесной причиной флегмоны, из-за которой, возможно, придётся делать разрезы скальпелем от уха до уха, чтобы спасти жизнь.

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

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

Читать далее
Всего голосов 62: ↑48 и ↓14+48
Комментарии104

Как SparkFun поймала патентного тролля

Время на прочтение8 мин
Количество просмотров25K

Как работает машина юридического вымогательства



Иллюстрация из судебного иска Altair Logix против SparkFun

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

Поскольку некоторые мои зарубежные друзья при упоминании этой фразы улыбаются, то нужно пояснить: здесь ничего весёлого. Патентный тролль — это компания, специально созданная для покупки прав на несколько патентов и последующего судебного преследования всех, с кого можно получить деньги.
Читать дальше →
Всего голосов 67: ↑59 и ↓8+70
Комментарии34

Комплексные числа и геометрические узоры

Время на прочтение6 мин
Количество просмотров27K
Когда речь заходит о комплексных числах, в первую очередь вспоминают о преобразовании Фурье и прочих аспектах цифровой обработки сигналов. Однако у них есть и более наглядная интерпретация, геометрическая — как точки на плоскости, координатам которой соответствуют действительная и мнимая часть комплексного числа. Рассматривая некоторую кривую как совокупность таких точек, можно описать её как комплексную функцию действительной переменной.

Дальше больше картинок и анимаций
Всего голосов 106: ↑106 и ↓0+106
Комментарии39

Опыт авиации: как “черные ящики” изменили систему образования

Время на прочтение10 мин
Количество просмотров13K

Если вы следите за образовательными новинками, вас будет трудно удивить. Мультимедийные курсы, вебинары и тому подобные изобретения появляются каждый день. Учиться можно дома и на работе. Главный же недостаток новомодных курсов - материал исчезает из памяти так же быстро, как и проникает в нее. Но есть открытия в области образования, которые по-настоящему меняют то, как мы учимся, а иногда даже спасают человеческие жизни! Давайте разберемся в “компонентах” успешных курсов.

Читать далее
Всего голосов 73: ↑68 и ↓5+81
Комментарии29

if-then-else кто-то должен был изобрести

Время на прочтение8 мин
Количество просмотров29K
Привет, сегодня мы обсудим кажущуюся абсурдной идею: if-then-else кто-то должен был изобрести.


If-then-else — это условные конструкции в языках программирования: если (if) что-то истинно, тогда (then) выполнить одно действие, иначе (else) выполнить другое действие.

Это ведь просто английский? На самом деле нет.

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

Откуда вообще взялось else? Это загадка. Настолько микроскопическая деталь, что она не попала в книги по истории языков программирования.
Читать дальше →
Всего голосов 85: ↑85 и ↓0+85
Комментарии38

Необычный дуалбут: ноутбук с «двойным дном»

Время на прочтение15 мин
Количество просмотров83K

Не так давно на Habr Q&A я наткнулся на интересный вопрос — как сделать, чтобы два жестких диска не видели друг друга? Чтобы вирус, попав на одну систему, никоим образом не мог заразить другую. В ответах предлагали достаточно стандартные способы — использовать полнодисковое шифрование, отключить диск в диспетчере устройств и даже поставить переключатель на питание. Но что если взглянуть на задачу совершенно с другого угла и сделать всё средствами самого HDD? Да-да, сегодня мы снова погружаемся в пучины модификации прошивок и реверс-инжиниринга!
Узнать подробности
Всего голосов 274: ↑270 и ↓4+353
Комментарии122

Интимный микробиом и как с ним сосуществовать

Время на прочтение10 мин
Количество просмотров60K

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

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

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

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

В общем, пора поговорить про пестики и тычинки.

Читать далее
Всего голосов 110: ↑86 и ↓24+92
Комментарии82

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность