Pull to refresh
8
0
Егор Воронцов @sdore

Типичный Python'ист

Send message

Создание умного домофона с автоответчиком и Интернет-соединением

Reading time3 min
Views193K
Не так давно я чинил домофонную трубку и задумался — а не сделать ли мне небольшую модернизацию? Научить его уведомлять меня через Интернет о том, что кто-то приходил, или даже удалённо открывать дверь с мобильного телефона… А затем я решил — почему бы вообще не сделать автоответчик? На телефонах сейчас автоответчик уже мало кому нужен, а вот знать, кто же ко мне приходил, было бы весьма полезно, особенно при том, что я не привык брать трубку, если никого не жду. Воплотить идею в реальность оказалось не так уж сложно.
Читать дальше →
Total votes 146: ↑144 and ↓2+142
Comments80

В поисках альтернативы Jira

Level of difficultyEasy
Reading time4 min
Views41K

Наша команда как и многие другие работала с облачными продуктами Atlassian: Jira и Confluence. Осенью прошлого года, Atlassian отправила нам письмо счастья.

Читать далее
Total votes 54: ↑50 and ↓4+46
Comments71

Обращение к издательствам: пожалуйста, не переводите термины

Level of difficultyEasy
Reading time2 min
Views33K

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

Читать далее
Total votes 129: ↑107 and ↓22+85
Comments563

Не набирайте тексты в интернете, или Обфускация времени между нажатиями клавиш в SSH

Level of difficultyEasy
Reading time5 min
Views47K


В августе этого года в ssh(1) (клиент OpenSSH) внесено изменение с поддержкой обфускации тайминга нажатий клавиш, то есть интервалов между временем нажатия клавиш на клавиатуре.

Спрашивается, почему разработчики озаботились такими нюансами информационной безопасности? Но причина есть. И на самом деле такие меры должны предпринять все программы, которые допускают ввод паролей в интернете (или вообще любого конфиденциального текста). В первую очередь, браузеры и мессенджеры.
Читать дальше →
Total votes 95: ↑95 and ↓0+95
Comments125

HAL в 4000 байт

Level of difficultyEasy
Reading time9 min
Views22K

«HAL 4000» – исполняемая программа для Windows размером ровно 4000 байт. Лучшая работа в номинации 4 kb intro фестиваля Chaos Constructions 2017, второе место в чартах портала pouet.net. «HAL 4000» попала в плейлист Best of Demoscene 2017 наряду с работами Farbrausch, Fairlight, Conspiracy, Alcatraz, Byterapers, обсуждалась на вебинаре анимационной студии, демонстрировалась на различных фестивалях.

Необычная история создания этой работы изложена ниже.

Читать далее
Total votes 110: ↑110 and ↓0+110
Comments23

Как я статистику git парсил

Level of difficultyEasy
Reading time9 min
Views26K

Работаю я в бюрократизированной конторе с плохими процессами. Текучка тут достаточно большая. Люди приходят и уходят. Менеджмент на уровне дна. В какой-то момент в команду докинули нового разработчика (с неясными целями и задачами). Ну вроде парень умный, вроде что-то делает, вроде не просто так.

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

Ему предложили перевестись в другой отдел. Менеджеру все сошло с рук. Часть разрабов сидела с лицами «‎а что так можно было?»‎. А я понял, что нельзя так просто взять и посмотреть статистику коммитов.

Велосипед через 3, 2, 1...
Total votes 98: ↑92 and ↓6+86
Comments50

Федя, дичь

Level of difficultyEasy
Reading time8 min
Views31K

В мире программирования существует огромное количество багов, и если бы каждый баг стал бабочкой, то программеру в раю уже давно оставлена пара полян для развития навыков энтомолога. Несмотря на все совершенства этого мира: компиляторы, pvs‑studio и другие статические анализаторы, юниттесты и отделы QA, мы всегда находим способы преодолеть преграды кода и выпустить на волю парочку новых красивых и удобных видов. Есть у меня txt файлик, которому очень много лет, и куда я складываю интересные экземпляры. Все примеры и действия описанные в статье вымышленные, ни один стажер, джун или студент уволены не были. Hello, World! Where are your bugs?

Hello, World! Where are your bugs?
Total votes 93: ↑92 and ↓1+91
Comments88

Как работать в кайф. How to от тестировщицы, которая вынесла уроки после выгорания

Reading time10 min
Views24K

Думаю, многие помнят чувство первой влюбленности. Ты ни на шаг не можешь отойти от предмета своего обожания, постоянно хочется «больше» и кажется, что это навсегда. Оказывается, влюбиться можно не только в человека, но и в работу. Сначала ты будешь тонуть в его/её  ̶г̶л̶а̶з̶а̶х̶  Jira-бордах, а закончится всё тем, что ты (вдруг) сгорел. Для полных ощущений мне захотелось пройти ещё и медные трубы, поэтому делюсь своей историей с вами. 

Привет! Меня зовут Татьяна Дерягина, я Mobile QA в СберМаркете. Эта история про то, как мне понадобилось выгореть до углей, чтобы понять, что ворк-лайф бэланс необходим. Причём не только, чтобы не остаться совсем без лайф, но и чтобы делать свою любимую ворк хорошо и с удовольствием.

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

Читать далее
Total votes 35: ↑29 and ↓6+23
Comments19

HOMEd: A почему «d»? Чтобы никто не догадался

Reading time5 min
Views10K

Это случилось обычным воскресным вечером, лет 15 назад. Завтра - понедельник, на работу, значит пора ложиться спать. По всей квартире горит свет, надо идти выключать, но лень! Хочу чтобы одной кнопкой все выключалось! Знакомая ситуация, не правда ли?

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

Читать далее
Total votes 35: ↑34 and ↓1+33
Comments40

Стражи ночи

Reading time9 min
Views81K
Будучи высококвалифицированным исследователем, я потратил немало времени на продвижение науки вперёд. Но я родился на Юге и искренне убеждён, что прогресс — это выдумка, и что нужно готовиться к Судному дню, к жатве того, что мы посеяли и к появлению быстрых зомби, медленных зомби, и даже вежливых зомби, которые обращаются к вам «сэр» или «мадам», но в итоге пытаются съесть ваш мозг дабы заполучить ваши навыки. Когда нагрянет революция, нужно быть готовым; поэтому в моменты тишины и покоя, когда я не произвожу очередной прорыв в науке, я размышляю над тем, что же я буду делать, когда прогноз погоды изменится на «РЕКИ КРОВИ ЦЕЛЫЙ ДЕНЬ ДО СКОНЧАНИЯ ВРЕМЁН».

В основном я думаю о тех, кто будет прикрывать мою спину, поскольку шансы на выживание в постапокалиптическом мире напрямую зависят от размера и качества того сброда, который вы будете называть своей командой. Очевидно, мне понадобятся: слесарь (чтобы двери вскрывать), эксперт‐подрывник (если уж у слесаря закончатся идеи) и конечно же тот парень, что отловит, выдрессирует и затем будет швырять змей в моих врагов (потому что в мире умершей надежды бросок змеёй — это разумный способ урегулирования разногласий). В сией антиутопии они помогут мне прослыть воинствующим философом.

Но! Но… Самым важным членом моей банды будет системный программист, ибо в гоббсовском кошмаре невероятных масштабов умеющему отладить драйвер устройства или распредёленную систему человеку можно доверять; системный программист видел ужасы Вселенной и понимает безысходность бытия. Системный программист писал драйверы для устройств, прошивку которых создавал то ли пьяный ребёнок, то ли трезвый карась. Системный программист отлавливал проблему с сетью через восемь машин, три часовых пояса и с дружеским визитом в Омск, откуда ее перенаправили в левое переднее копыто той лошади, что избавила Трою от перенаселения.1 Системный программист читал исходники ядра для лучшего понимания процессов мироздания и видел комментарий «И ЭТО РАБОТАЕТ ЛОЛ» в коде планировщика, и не смеялся он, но плакал; и отправил он патч ядра для восстановления баланса Силы и устранения инверсии приоритетов, что приводила к зависанию MySQL. Системный программист знает, что делать, когда общество падёт, потому что он уже живет в мире, где царит беззаконие.
Читать дальше →
Total votes 157: ↑136 and ↓21+115
Comments50

Кармическое проклятье Хабра

Reading time21 min
Views100K
Вся суть


Непредвиденные последствия


«Система кармы Хабра и ее влияние на пользователей» — это тема для курсовой как минимум
Тема про карму на «Пикабу»

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

Мне пришлось всерьёз задуматься об этом после того, как я неожиданно потерял возможность писать больше одного комментария в пять минут.

При этом внешне всё шло отлично: мои комментарии всё время плюсовали, мой рейтинг рос — и вдруг оказалось, что у меня отрицательная карма. Весь мой длительный опыт интернет-общения, все пользовательские привычки, да и банальный здравый смысл кричали мне, что это какая-то ошибка: показатель одобрения пользователя сайта другими пользователями сайта не может одновременно расти и падать! Но я решил не рубить сплеча, а провести небольшое исследование, как аналитическое (в виде изучения мнений пользователей о карме), так и статистическое (в виде анализа показателей аккаунтов).
Читать дальше →
Total votes 345: ↑306 and ↓39+267
Comments1311

Пока, Хабр

Reading time2 min
Views140K

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

Читать далее
Total votes 506: ↑395 and ↓111+284
Comments1265

Мы разработали 44 устройства за 6 лет, продаем их по всему миру, только этого мало

Reading time38 min
Views75K

История эмиграции, блеск и нищета стартапов, техническое порно, непрерывная разработка, гидроакустика, нарциссизм, рефлексия, open-source и много фото.

Это все под катом.

Начать погружение
Total votes 410: ↑409 and ↓1+408
Comments194

Зомби-код. Код, живущий своей жизнью

Reading time5 min
Views41K
Предлагаю читателям «Хабрахабра» перевод статьи «Zombie Code When Maintainability Goes Out Window».

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

Да, скажешь ты? Почему?

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


Читать дальше →
Total votes 60: ↑38 and ↓22+16
Comments42

Я и диод, или Новые приключения мышки

Reading time8 min
Views46K
Как вы, возможно, помните, не так давно я напаял на свою мышь конденсатор и радостно отчитался об этом эпохальном событии. Но вскоре выяснилось, что радость моя была преждевременной. Итак, предлагаю вашему вниманию продолжение детективной истории.



Читать дальше →
Total votes 32: ↑26 and ↓6+20
Comments23

Гипотеза Эскобара

Reading time28 min
Views14K
Эскобар — великий математик, живший на Земле на прошлом витке общемирового времени.
На прошлом витке чего-о?


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

Комплексные числа были открыты без участия Эскобара, но это не значит, что мы должны отказываться от его наследия. Все знают, что 2+2=4, 2×2=4, 2^2=4. Только, при возведении в степень существует разница в порядке аргументов. Что если применить гипотезу Эскобара на нашем убеждении, что у порядка при возведении в степень может быть только два варианта? Ну а вдруг — больше?
Пишет тексты нам никто
Total votes 27: ↑21 and ↓6+15
Comments19

Летающее крыло

Reading time4 min
Views20K

Нет, я не плачу и не рыдаю
На все вопросы я открыто отвечаю
Что наша жизнь игра, и кто ж тому виной
Что я увлёкся этою игрой


Описываемые события относятся к староглиняным временам и происходили в одной пластилиновой местности, когда Arduino было еще не особо популярно, на каждом углу пучок за пятачок еще не продавалось. 3D принтер в личном пользовании в виде кубического Reprap был у очень немногих — а большинство просто не подозревали о их существовании. Ценность рассказа сопоставима с руководством по ремонту телефона с дисковым номеронабирателем — чисто археологическая. Да и задуман он был как вступление, но это вступление переросло основной рассказ и, как-то незаметно для меня, поглотило его.
Читать дальше →
Total votes 104: ↑103 and ↓1+102
Comments27

Лучший мультитул для IT инженера

Reading time3 min
Views80K

Самый нужный мультитул для IT-инженера

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

Читать далее
Total votes 148: ↑137 and ↓11+126
Comments152

Языка С/C++ не существует

Reading time2 min
Views61K

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

Читать далее
Total votes 170: ↑139 and ↓31+108
Comments383

Аудио через Bluetooth: максимально подробно о профилях, кодеках и устройствах

Reading time26 min
Views615K
Комикс XKCD про 14 конкурирующих стандартов: Надпись: СИТУАЦИЯ: есть 14 конкурирующих стандартов. Гик: 14?! Абсурд! Нам необходимо разработать один универсальный стандарт, на все случаи жизни. Спутница гика: Да! Надпись: Скоро: СИТУАЦИЯ: Есть 15 конкурирующих стандартов.

This article is also available in English

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

TL;DR:
  • SBC — нормальный кодек
  • У наушников есть свой эквалайзер и пост-процессинг на каждый кодек отдельно
  • aptX не настолько хорош, как о нём говорят рекламные анонсы
  • LDAC — маркетинговое фуфло
  • Качество звука в режиме разговора всё ещё низкое
  • В браузер можно встроить аудиоэнкодеры на C, скомпилировав в WebAssembly через emscripten, и они не будут особо тормозить.

Total votes 175: ↑171 and ↓4+167
Comments180
1

Information

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