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

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

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

Заговор против IE6

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

У невероятного роста Youtube есть одно последствие, радостное и грустное одновременно - множество историй потеряются под слоями новой краски. Именно поэтому я хочу рассказать одну из них - историю того, как 10 лет назад маленькая команда веб-разработчиков задумала убить IE6 с помощью Youtube и даже не получила за это по шапке.

Я не могу вспомнить то конкретное событие, из-за которого наша команда разработки начала строить планы убийства браузера за обедом в столовой Youtube. Возможно, в тот раз я случайно отправил в релиз CSS-стиль, где был указан селектор атрибута на нестандартном HTML-элементе. Любой здравомыслящий веб-разработчик предположил бы, что если браузер не может распознать элемент - он молча пропустит данное описание. Но со старыми версиями IE дело обстояло не так. В определенных условиях это приводило либо к внутренней рекурсии и падению браузера (если повезет), или даже к синему экрану смерти (если не повезет).

А может быть, в сотый раз кто-то из наших разработчиков использовал тег <img> без указания атрибута src. От новичков никто не требовал быть в курсе, что в старых версиях IE вместо пустого аттрибута src подставляется корневой путь ("/"). Это внезапно превращает тег <img> в <iframe>, загружая главную страницу и все связанные с ней ресурсы, что может привести к бесконечной рекурсии. Когда пустой тег <img> случайно просачивался на главную страницу - вся команда в экстренном режиме искала его, пока сервера не расплавились под нагрузкой.

В общем, не вдаваясь в подробности - это была настоящая жесть, и она была связана с IE6. Этот браузер сильно отравлял жизнь всей нашей команде разработки. По меньшей мере 1-2 недели из каждого мажорного релиза отводились на то, чтобы заставить новый UI работать под IE6. Несмотря на всю эту боль, нас заставляли поддерживать его ради пользователей, которые не могут обновиться или работают в компаниях, где обновление запрещено политиками безопасности. Пользователи IE6 на тот момент составляли примерно 18% от общего числа. Все понимали, что просто так прекратить его поддержку нельзя, но когда мы сидели в той столовой после нескольких бессонных ночей, на сопереживание тем несчастным пользователям просто не оставалось сил. Мы начали коллективно фантазировать о том, как отомстить IE6. Одна идея сразу привлекла всеобщее внимание: а что, если мы просто пригрозим прекратить поддержку? Как отреагируют пользователи? Они поднимут бунт против Youtube, начнут присылать нам письма с угрозами расправы (как это уже случалось раньше)? Или вдруг станут апологетами новых браузеров? Мы мечтали о том, как офисные работники по всему миру внезапно начнут придумывать причины, по которым обновление браузеров жизненно необходимо для бизнеса, а бабушки и дедушки возьмут своих технически прошаренных внуков в заложники, чтобы те "починили им ютубы". То, что началось как сеанс групповой психотерапии, стало превращаться в конкретный план действий, для реализации которого у нас были уникальные условия.

Читать далее
Всего голосов 174: ↑170 и ↓4+210
Комментарии86

История славянских шипящих: почему мы пишем жи-ши через И?

Время на прочтение7 мин
Количество просмотров44K
tl;dr: потому что перед Ы не могли возникнуть ни Ж, ни Ш.

Орфография многих живых языков отражает давно исчезнувшие вещи: например, написание английского слова knight указывает на то, что когда-то в 14 в. оно произносилось «книхт». В русской орфографии тоже полно «доисторических окаменелостей»; и для того, чтобы не зубрить, а понимать орфографические правила — нужно разбираться, откуда эти правила взялись. Готового обзора истории шипящих я не нашёл, так что взялся составить его сам. Особенно интригует природа буквы Щ — самой необычной в нашем алфавите.

Читать дальше →
Всего голосов 90: ↑85 и ↓5+104
Комментарии235

Водород

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

По революционным праздникам в СССР проводились торжественные демонстрации. Для взрослых участие нередко было обязательным. Ну а детям -- им, что ни праздник, всё в радость. Торжественная обстановка, можно помаршировать со взрослыми в стройных колоннах, покричать "ура", поразмахивать красными флажками и надувными шариками...

Шарики. Кажется, именно с них-то всё и началось.

Согласно советским открыткам, демонстрация должна была выглядеть как-то так:

Читать далее
Всего голосов 229: ↑225 и ↓4+285
Комментарии206

Как посчитать синус быстрее всех на хабре

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

Несмотря на свою кажущуюся банальность, темы о вычислении синуса достаточно регулярно появляются на хабре. И каждый раз их авторы или делают сомнительные утверждения, или получают сомнительные результаты. Не в силах более терпеть, я тоже решил поучаствовать и внести свой, не менее сомнительный вклад в этот вопрос.
Читать дальше →
Всего голосов 61: ↑60 и ↓1+91
Комментарии41

Современные крокодилы продолжают быстро эволюционировать

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


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


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

Читать дальше →
Всего голосов 58: ↑53 и ↓5+60
Комментарии84

Лучший способ выбора случайной точки в круге

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

Допустим, вам нужно найти случайную точку с равномерным распределением в круге. Как же это сделать лучше всего? Когда я впервые начал изучать эту задачу, я работал над программным проектом, требовавшим случайного распределения значений в круге, но довольно быстро я спустился в неожиданно глубокую кроличью нору, заполненную любопытной математикой, поэтому решил объединить все свои находки в одну статью.
Читать дальше →
Всего голосов 73: ↑73 и ↓0+73
Комментарии41

Здоровый сон взрослого человека — это засыпать за 15 минут и не вставать ночью попить и пописать

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


Послушала на днях 2х-часовое выступление «Здоровый сон» врача-невролога, сомнолога Елены Царевой. Выдернула самые важные для себя пункты:

  1. Спать регулярно, ложиться и вставать в одно и то же время — самое важное. 
  2. Биоритмы — частично наследуются, частично регулируются стилем жизни. На них можно влиять самому.
  3. Нормальное время отхода ко сну около 22:00. Сова и жаворонок — это отклонение на ±1-2 часа. Больше — это нарушение и сдвиг фазы сна, чаще из-за внешних раздражителей.
  4. Самая частая причина плохого сна и тяжелого засыпания — неправильный свет.
  5. Для сдвига режима на 1 час организму нужен 1 день на адаптацию.
  6. Невозможно «доспать» бессонную ночь. Досыпание устраняет только 30% последствий недосыпа.
  7. Прежде, чем искать причины плохого сна, исключите психологические проблемы (тревожность, депрессию), нарушения щитовидки, дефицит железа, диабеты, сердечно-сосудистые заболевания и патологию почек и мочеполовой системы.
  8. Водителям и пассажирам: 17 часов без сна равны 0,5 промилле, 21 час без сна — 0,8 промилле.
  9. В постели без сна больше 15 минут не находиться — совет при бессоннице. 
  10. Самые физиологичные будильники — те, что светятся. 

Под катом конспект 2х-часового выступления про сон на 15 минут чтения. Еще один поинт в копилку полезных материалов про сон — Sleep Hackers.
Читать дальше →
Всего голосов 139: ↑119 и ↓20+126
Комментарии247

Парадокс, положивший начало научным вычислениям

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


В 1953 году научные сотрудники Лос-Аламосской национальной лаборатории подбирали задачу для одного из первых электронных компьютеров. Выбор пал на простейшую одномерную систему — цепочку грузиков соединённых пружинами с нелинейной упругостью. Результаты моделирования вполне соответствовали ожиданиям: после возбуждения основного колебательного режима систему предоставляли самой себе, после чего энергия равномерно распределялась по остальным колебательным модам, и движения цепочки обретали характер белого шума.

Но однажды, из-за затянувшегося обеденного перерыва, машину оставили работать дольше обычного. Спохватившись, учёные вернулись в компьютерный зал и заметили, что расчётная система, пробыв некоторое время в состоянии теплового равновесия, вышла из него, а энергия в процессе эволюции периодично кочевала между наиболее длиноволновыми модами, практически не передаваясь на коротковолновые колебания. И в конце концов, система возвращалась из хаоса в исходное состояние! Этот парадокс ознаменовал собой рождение компьютерного моделирования, теории детерминированного хаоса и солитоники.
Читать дальше →
Всего голосов 92: ↑92 и ↓0+92
Комментарии47

Как это сделано: Оптика для EUV/BEUV литографии

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

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

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

Читать далее
Всего голосов 142: ↑142 и ↓0+142
Комментарии93

Тестовое задание — крышка гроба или ступенька вверх по карьерной лестнице?

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

Привет! Меня зовут Евгений Судак, и я два с половиной года руководил отделом геймдизайна в Pixonic. Сегодня я хотел бы поговорить о тестовых заданиях.

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

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

Начнем?
Всего голосов 24: ↑23 и ↓1+29
Комментарии36

Если крысе не давать спать, она умрёт через 3 недели — как работают мозг и сон

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

Посмотрела 2х-часовую лекцию профессора МГУ Вячеслава Дубынина про влияние сна на мозг и мозга на сон. Под катом конспект минут на 20 чтения. Если попытаться сжать до 1 минуты, то получится что-то вроде этого:

  • Сколько нужно спать. Индивидуально, от 6 до 10 часов — для взрослого человека в пределах нормы.
  • Гигиена сна — правила, чтобы нормально засыпать и высыпаться. (Просто якорь на слайд-список).
  • Биологические часы — реальный физиологический процесс, который ориентируется на циркадные ритмы. Смена часовых поясов и работа по сменам «расшатывает» механизмы биологических часов.
  • Спать надо ложиться не позже, чем… — фигня. Просто в одно и то же время.
  • Если вы спите днем, купите себе хорошие шторы. Мелатонин коррелирует с освещением. Если в глаза (даже закрытые) светит солнце, вы не отдыхаете полноценно.
  • Сколько можно не спать. Без необратимых серьезных последствий взрослый человек выдержит до 4-х суток.
  • Сон делится на медленную и парадоксальную фазы.
  • Медленная фаза сна — про очищение организма. Если нет медленной фазы сна, иммунитет, эндокринка, обменные процессы и гомеостаз идут лесом. Экспериментальные крысы умирают на 15-20 день без сна от воспаления, когда кишечные бактерии попадают в кровь.
  • Парадоксальная фаза сна участвует в обработке информации. По уровню электрической активности мозга она близка к состоянию активного решения сложных задач.
  • Когда правильно просыпаться. На переходе от парадоксальной фазы к медленной.
  • Как определить на глаз, когда можно будить. Когда человек лежал спокойно и начал ворочаться, можно будить.
  • Кофеин не позволяет организму получить сигнал об усталости, но не дает дополнительную энергию.
  • Как затормозить перевозбужденную нервную систему нежно. Фенобарбитал в малых дозах — корвалол, валокордин, валосердин. Противогистаминные препараты.

Читать дальше →
Всего голосов 89: ↑86 и ↓3+104
Комментарии32

Насколько быстры компьютеры

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

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

Читать далее
Всего голосов 123: ↑122 и ↓1+150
Комментарии60

Как Яндекс помогает преодолеть языковой барьер: нейросетевой перевод видео, картинок и текста

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


Недавно мы впервые показали прототип переводчика видео в Яндекс.Браузере. Прототип работал с ограниченным числом роликов, но даже в таком виде вызвал интерес у пользователей. Теперь мы переходим к следующему ключевому этапу: в новых версиях Браузера и приложения Яндекс перевод доступен для всех англоязычных роликов на YouTube, Vimeo, Facebook и других популярных платформах.

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

Десятью годами ранее


В 2011 году в Яндексе решалась судьба собственного полноценного браузера. На тот момент браузеров на любой цвет и вкус уже хватало. Но почти все они создавались «где-то там»: без оглядки на рунет и потребности тех пользователей, для которых английский язык и латиница не были родными. Поэтому мы решили создать свой браузер, который бы в числе прочего более полно поддерживал русский язык и наши с вами «региональные» потребности. Уверен, эта фраза звучит непонятно, поэтому ниже вас ждут два моих любимых примера. Они не связаны с переводом, но показательны.

Переведётся всё!
Всего голосов 84: ↑79 и ↓5+96
Комментарии177

Мой MikroTik – моя цифровая крепость (часть 1)

Время на прочтение10 мин
Количество просмотров125K
В статье рассмотрены различные подходы к организации практической безопасности сетей, построенных на оборудовании MikroTik, в том числе при помощи дополнительного открытого программного обеспечения, расширяющего имеющиеся штатные возможности, что в комплексе позволяет качественно администрировать сетевые средства, а также своевременно реагировать на различные угрозы информационной безопасности.
Читать дальше →
Всего голосов 67: ↑64 и ↓3+85
Комментарии101

Симметричные НЧ-ВЧ фильтры

Время на прочтение12 мин
Количество просмотров25K
В задачах обработки сигналов часто возникает необходимость фильтрации сигналов, когда сигнал разбивается на узкополосные диапазоны. В бытовом плане мы с этим сталкиваемся при воспроизведении музыки через акустические системы, в которых каждый громкоговоритель (динамик) воспроизводит свою полосу частот, которых обычно три — низкие (НЧ), средние (СЧ) и высокие (ВЧ); для воспроизведения сверхнизких частот иногда выделяют отдельную акустическую систему под названием «сабвуфер». Конкретные границы частот зависят от реализации и ориентировочно находятся на границах 100 Гц, 1 кГц и 5 кГц. Для того, чтобы не было резких скачков громкости между динамиками, используют частичное перекрытие — когда амплитуда воспроизводимой полосы частот плавно спадает на одном, одновременно нарастая на другом.

Наиболее популярными фильтрами для такого разбиения являются фильтры Линквитца-Рейли 4-го порядка, представляющих из себя два последовательно соединённых фильтра Баттерворта, изображение АЧХ которых многим хорошо знакомо:

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

Почему программисты через 10 лет будут не нужны?

Время на прочтение9 мин
Количество просмотров127K
Это один из распространённых вопросов о судьбе программирования: мне не раз приходилось его слышать от журналистов, блогеров и родителей, чьи дети выбирают будущий вуз. Для меня этот вопрос звучит довольно удивительно: во-первых, 10 лет для программирования это не такой уж большой период, чтобы выпасть из обоймы, во-вторых, я пока не вижу никаких прорывных движений в этом направлении, в-третьих, мне не кажется что за 10 лет полностью исчезнут компьютеры или люди — а это два единственных условия для уничтожения программирования на планете. Между тем вопрос есть, он в топах поисковых запросов по теме, а значит, это жжжж неспроста. Давайте разбираться.


Disclaimer

Мы открываем в блоге RUVDS на Хабре новую рубрику — вопросы с поиска. Принцип прост: выбираем самые интересные и популярные поисковые запросы о программировании, технологиях, программистах и карьере в ИТ и отвечаем на них с помощью наших постоянных экспертов. Будет интересно.
Читать дальше →
Всего голосов 87: ↑61 и ↓26+63
Комментарии381

Трояны и бэкдоры в кнопочных мобильных телефонах российской розницы

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

Немалое количество простых кнопочных телефонов, присутствующих в российских магазинах, содержат нежелательные недокументированные функции. Они могут совершать автоматическую отправку СМС-сообщений или выходить в интернет для передачи факта покупки и использования телефона (передавая IMEI телефона и IMSI SIM-карт). Встречаются модели со встроенным трояном, отправляющим платные СМС-сообщения на короткие номера, текст которого загружается с сервера, также бывают устройства с настоящим бэкдором, пересылающим входящие СМС-сообщения на сервер злоумышленников.
Статья описывает детали вредоносных функций и способы их обнаружения.

Читать далее
Всего голосов 429: ↑428 и ↓1+579
Комментарии370

Многообразие Linux-дистрибутивов

Уровень сложностиПростой
Время на прочтение54 мин
Количество просмотров161K

Цель этой статьи показать и объяснить многообразие дистрибутивов Линукс. Показать основные сходства (они же все почему то называются "Линуксы" или даже правильнее "GNU/Linux") и основные различия (если бы не было различий их бы столько не существовало).

Плюс рассмотрим несколько наиболее задаваемых новичками вопросов:
- Сколько их (Linux-дистрибутивов)? Зачем так много?
- Основанный на другом дистрибутиве" - не пиратство ли это?
- Платный Linux - Как можно продавать то, что по определению распространяется бесплатно?
- Что такое "отечественный Linux"?

Читать далее
Всего голосов 191: ↑191 и ↓0+191
Комментарии132

Пять лучших киберпанк-аниме

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

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

И всё же в обоих этих статьях огромный массив японского киберпанка лишь упоминался. А ведь он во многих отношениях даже больше и значимее, чем на родине жанра, в США. Киберпанк не просто так получил массу японских черт ещё у американских авторов. Сами японцы уже в 80-е буквально влюбились в новый жанр, и принялись в нём активно работать. Однако если киберпанк в США – это преимущественно фильмы и книги, то в стране Восходящего Солнца его основными воплощениями стали манга и аниме, комиксы и мультипликация с японской спецификой.


За сорок прошедших с начала 80-х лет японцы сделали десятки, если не сотни, аниме-произведений в жанре киберпанка. И некоторые из них прочно вошли в золотой фонд жанра. Списков топ-10 и так далее в сети хватает – но многие из них крайне поверхностны, кратки и написаны «для галочки» без особого вникания в предмет.
Так что почему бы не попробовать сделать свой вариант, копнув чуть глубже?
Всего голосов 64: ↑57 и ↓7+76
Комментарии126

Неожиданные причины торможения программ и систем

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

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

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

Разделы поста чаще всего никак не связаны друг с другом, поэтому можете выбирать самые интересные для вас.
Читать дальше →
Всего голосов 79: ↑78 и ↓1+110
Комментарии88

Информация

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