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

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

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

Как определить самый авторитетный фильм всех времен и народов

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

Какое произведение киноискусства оставило самый большой отпечаток в современной поп культуре? Предлагаю подумать над этим вопросом некоторое время. Может быть это Апокалипсис сегодня? Или Крестный отец? А вдруг главный фильм всех времен и народов это шедевр отечественного кинематографа - фильм Викинг?

К счастью, это можно посчитать.

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

Нагрузочное тестирование сайта на Microsoft Azure

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

В последние лет пять про облачные технологии слышно все чаще. Microsoft и Amazon отчитываются о высоком росте доли облачных сервисов в отчетах о прибыли. Российский Яндекс относительно давно продвигает свое Облако. К этому подключился и Сбер со своим облачным продуктом. Часто можно услышать и о других, менее крупных игроках.

Смотря на все это многообразие я подумал, что происходит какая-то вечеринка, а меня не пригласили. Ну что же, давайте присоединимся к этой вечеринке сами разместив сайт на Azure и сравнив тарифы службы приложений и службы БД.

Цель этой статьи можно выразить в 2х пунктах:

1. С одной стороны мы познакомимся с тарифными планами службы веб-приложений и службы хостинга баз данных

2. С другой стороны мы проведем нагрузочное тестирование тремя стратегиями тестирования в разрезе разных тарифных планов.

Перейдем к эксперименту
Всего голосов 4: ↑4 и ↓0+4
Комментарии9

Как написать FizzBuzz на собеседовании

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

Здравствуй, Хабр.


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

Читать дальше →
Всего голосов 139: ↑121 и ↓18+141
Комментарии224

Опыт коррекции зрения под общим наркозом по методике ReLEx Smile или Крайне мучительное восстановление

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

Большинство обзоров методов лазерной коррекции сопровождаются однотипно довольными отзывами людей, которые на следующий день стали видеть 120% от нормы. Мне же хочется дать чуть другой взгляд на эту процедуру, так как среди моих знакомых есть много людей с различными проблемами со зрением (и с миопией, и с пресбиопией), которые задумываются о коррекции. Тем более так сложилось, что на Habr есть множество отзывов и толковых материалов на эту тему.

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

Читать далее
Всего голосов 209: ↑208 и ↓1+274
Комментарии313

Does the latency matter?

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

Есть исследование от Google, которое говорит, что если ваш сайт открывается больше трех секунд, то вы потеряете около 40% десктопных пользователей и более 50% — мобильных. Еще есть репорт от Amazon, который говорит, что для Amazon каждые 100 мс дополнительного latency стоит им 1% продаж. В объемах Amazon это миллионы долларов.

В зависимости от вашего бизнеса вам стоит тоже ответить на вопрос: Does the latency matter?

Я работаю как системный инженер уже более 8 лет. Хочу поделиться опытом, который получил в процессе решения задач в компании Big Data Technologies. У нас есть какой-никакой highload. В пике это 30 тысяч rps, и вопрос с latency довольно остро стоит перед бизнесом.

Читать далее
Всего голосов 34: ↑33 и ↓1+44
Комментарии3

Применение двоичной логики в недвоичных операциях: оптимизируем производительность и ресурсы

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

Давайте поговорим о побитовых операциях.

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

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

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

Читать далее
Всего голосов 14: ↑11 и ↓3+14
Комментарии26

Быстрый, мощный интерфейс на Python

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

Dear PyGui принципиально отличается от других фреймворков GUI Python. Рендеринг на GPU, более 70 виджетов, встроенная поддержка асинхронности — это лишь некоторые возможности Dear PyGui. Руководством по работе с этим пакетом делимся к старту курса по разработке на Python.

Читать далее
Всего голосов 54: ↑51 и ↓3+57
Комментарии48

Слегка ржавое EFI-приложение

Время на прочтение11 мин
Количество просмотров12K
После двух твитов, оставленных на прошлой неделе, про мои игры с UEFI и Rust, несколько человек попросили опубликовать заметку, объясняющую как создать UEFI-приложение, полностью написанное на Расте и продемонстрировать тестовое окружение.

Так что сегодняшняя цель — это создание UEFI-приложения на Расте, которое распечатывает карту памяти, отфильтрованную по доступности для использования (такая память называется традиционной памятью в описании UEFI-спецификаций):

Читать дальше →
Всего голосов 36: ↑35 и ↓1+54
Комментарии3

Как классифицировать данные без разметки

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

Пользователи iFunny ежедневно загружают в приложение около 100 000 единиц контента, среди которого не только мемы, но и расизм, насилие, порнография и другие недопустимые вещи. 

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

Как мы это в итоге сделали — расскажу под катом на наглядном примере. Статья рассчитана на тех, кто знаком с Python (при этом необязательно разбираться в Data Science и Machine Learning).

Читать далее
Всего голосов 51: ↑50 и ↓1+54
Комментарии8

CalyxOS: лучший способ очистить Android от следов Google

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

Android Open Source Project — свободный проект. Однако в него очень глубоко проникла корпорация Google. К сожалению, всё больше API и библиотек Android теперь доступны только на смартфонах с предустановленными приложениями Google Apps (GApps). Таким способом Google эффективно привязывает сторонние приложения к своей закрытой экосистеме. В результате ряд популярных опенсорсных приложений уже не могут работать без библиотек Google.

По сути, Android представляет собой особый вид опенсорса типа «смотри, но не трогай», по модели Shared Source. Неудивительно, что набирают силу опенсорсные проекты, которые ставят целью полностью удалить Google из мобильной ОС. Один из последних примеров — прошивка CalyxOS, ориентированная на безопасность и приватность.
Читать дальше →
Всего голосов 47: ↑45 и ↓2+55
Комментарии95

Загадочная волна-убийца

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

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

image
Читать дальше →
Всего голосов 62: ↑56 и ↓6+77
Комментарии36

[В закладки] 13 онлайн-редакторов для фото, изображений и другой графики

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

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

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

Читать далее
Всего голосов 7: ↑6 и ↓1+8
Комментарии4

Анализируем данные с помощью визуализации: рисуем поверх Google Maps

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

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

Впереди меня ждала RnD-задача с исследованием картографических форматов, рисованием поверх Google Maps и реализацией скрипта на Python. Как я боролась с визуализацией картографических данных, расскажу в этой статье.

Читать далее
Всего голосов 13: ↑11 и ↓2+16
Комментарии22

Осваиваем LaTeX за 30 минут

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

Это руководство нацелено на первое знакомство с LaTeX и предварительных знаний о нем от вас не потребует. К его завершению вы уже напишете свой первый документ и получите представление о ряде базовых возможностей этого инструмента.
Читать дальше →
Всего голосов 46: ↑41 и ↓5+56
Комментарии57

PostgreSQL Antipatterns: «где-то я тебя уже видел...»

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

Иногда при анализе производительности запроса на предмет "куда ушло все время" возникает стойкое ощущение deja vu, что вот ровно этот же кусок плана ты уже где-то раньше видел...

Пролистываешь выше - и таки-да, вот он рядом - но почему он там оказался, и как выйти из Матрицы самому и помочь коллегам?

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

Подчищаем за собой: учимся удалять данные с HDD и SSD

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

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

Читать далее
Всего голосов 18: ↑16 и ↓2+23
Комментарии84

C++ zero-cost abstractions на примере хеш-таблиц в ClickHouse. Доклад Яндекса

Время на прочтение12 мин
Количество просмотров12K
Хеш-таблицы — это королевы структур данных. Нигде не сломано так много копий, как на оптимизации хеш-таблиц. В докладе я рассказал ещё об одной хеш-таблице, которая используется в ClickHouse. Вы увидите, что zero-cost abstractions в современном С++ оправдывают себя и как с помощью небольших трюков получить разнообразные структуры данных из общей кодовой базы. На основе общих строительных блоков можно построить быстроочищаемую хеш-таблицу, несколько видов LRU-кешей, lookup-таблицы без хешей, хеш-таблицы для строк и т. п. Я показал, как получить максимальную производительность на конкретных сценариях и не ошибиться при её тестировании. В моём докладе — самая мякотка низкоуровневых оптимизаций. В общем, то, что мы любим.

— Для начала мы обсудим, зачем нужны хеш-таблицы, где их можно использовать в базах данных и как сделать их оптимальными. Затем посмотрим бенчмарки различных хеш-таблиц в интернете и разбёремся, как делать их правильно. В конце посмотрим на C++-обертку над идеальной хеш-таблицей в ClickHouse.
Читать дальше →
Всего голосов 23: ↑20 и ↓3+29
Комментарии10

Исследование роста утилизации процессора: как мы мигрировали с CentOS 7 на Oracle Linux 7

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

Привет! Меня зовут Александр Петровский, я инженер в DINS. Я работаю в команде, которая участвует в разработке сервисов облачной телефонии и видеоконференций. Каждый из них состоит из большого количества микросервисов.

Когда мы мигрировали один из наших микросервисов с CentOS 7 с ядром 4.19 на Oracle Linux 7 с ядром 5.4, мы заметили рост утилизации процессора на наших stress/performance-тестах. В статье я расскажу, как мы исследовали причины роста утилизации процессора сначала в user-space, а потом и в kernel-space и о том, к какому результату это нас привело.

Читать далее
Всего голосов 105: ↑104 и ↓1+127
Комментарии18

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

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

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

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

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

Разбираемся с работой часовых сетей в лабораторных условиях

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

Как вы помните, во время посещения блошиного рынка, мне встретились прекрасные вокзальные вторичные часы, которые я в результате не купил. И что-то вот у меня клокотало внутри, и решил, раз уж разбираться с системой первичных-вторичных часов, то по-крупному. В результате были закуплены заводские первичные часы, вторичные часы, а дома я построил настоящую часовую сеть, посмотрел как настраивать первичные часы, как настраивать вторичные, ощутил всю боль часовщиков, которые обслуживают такие сети и в результате сделал собственные первичные часы, вместо заводских. В статье буду разбирать, как работает система первичных и вторичных часов, а также попробуем сделать свои первичные часы.
Оценить масштаб работы
Всего голосов 52: ↑50 и ↓2+75
Комментарии109
1
23 ...

Информация

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