Pull to refresh
0
Богдан Франковский @Ferroman read⁠-⁠only

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

Send message

Эмулятор RFID

Reading time 14 min
Views 66K

Эмулятор карт EM Marine



Наверняка каждому из нас, кто хоть раз бывал в обычных офисах, было интересно, как же функционируют эти бесконтактные пропуска. В данной статье мы разберёмся с принципом работы бесконтактных карт и сделаем эмулятор буквально из трёх радиодеталей.
Читать дальше →
Total votes 172: ↑168 and ↓4 +164
Comments 91

Долгосрочное хранение метрик Prometheus (Алексей Палажченко, Percona)

Reading time 21 min
Views 28K

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


Как раз об этом расшифровка доклада Алексей Палажченко на RootConf 2018. В докладе: Prometheus, Local Storage TSDB, Remote Storage Prometheus, PromQL, TSDB, Сlickhouse, PromHouse, немного InfluxDB.



Кому интересно, прошу под кат.

Total votes 16: ↑15 and ↓1 +14
Comments 5

Рубрика «Читаем статьи за вас». Апрель 2020. Часть 1

Reading time 15 min
Views 5.1K


Привет, Хабр! Продолжаем публиковать рецензии на научные статьи от членов сообщества Open Data Science из канала #article_essense. Хотите получать их раньше всех — вступайте в сообщество!


Статьи на сегодня:


  1. TResNet: High Performance GPU-Dedicated Architecture (DAMO Academy, Alibaba Group, 2020)
  2. Controllable Person Image Synthesis with Attribute-Decomposed GAN (China, 2020)
  3. Learning to See Through Obstructions (Taiwan, USA, 2020)
  4. Tracking Objects as Points (UT Austin, Intel Labs, 2020)
  5. CookGAN: Meal Image Synthesis from Ingredients (USA, UK, 2020)
  6. Designing Network Design Spaces (FAIR, 2020)
  7. Gradient Centralization: A New Optimization Technique for Deep Neural Networks (Hong Kong, Alibaba, 2020)
  8. When Does Unsupervised Machine Translation Work? (Johns Hopkins University, USA, 2020)
Читать дальше →
Total votes 43: ↑42 and ↓1 +41
Comments 0

Лемматизируй это быстрее (PyMorphy2, PyMystem3 и немного магии)

Reading time 3 min
Views 37K
Я работаю программистом, и в том числе занимаюсь машинным обучением применительно к анализу текстов. При обработке естественного языка требуется предварительная подготовка документов, и одним из способов является лемматизация – приведение всех слов текста к их нормальным формам с учетом контекста.

Недавно мы столкнулись с проблемой больших временных затрат на этот процесс. В конкретной задаче было более 100000 документов, средняя длина которых около 1000 символов, и требовалось реализовать обработку на обычном локальном компьютере, а не на нашем сервере для вычислений. Решение на просторах интернета мы найти не смогли, но нашли его сами, и я хотел бы поделиться — продемонстрировать сравнительный анализ двух наиболее популярных библиотек по лемматизации в этой статье.


Читать дальше →
Total votes 11: ↑8 and ↓3 +5
Comments 14

Подготовка к собеседованиям в IT-гиганты: как я преодолела проклятье алгоритмического собеседования

Reading time 12 min
Views 203K

Дисклеймер:


Я не программирую с трёх лет, не знаю наизусть Кнута, не являюсь призёром олимпиад по информатике и чемпионатов по спортивному программированию, не училась в MIT. У меня за плечами образование по информатике и 6 лет опыта в коммерческой разработке. И до недавнего времени я не могла пройти дальше первого технического скрининга в IT-гиганты из FAANG (Facebook, Amazon, Apple, Netflix, Google и подобные), хотя предпринимала несколько попыток. 

Но теперь всё изменилось, я получила несколько офферов и хочу поделиться опытом, как можно к этому прийти. Речь пойдёт о позиции Software Engineer в европейских офисах перечисленных компаний.
Читать дальше →
Total votes 201: ↑196 and ↓5 +191
Comments 342

Решение задачи коммивояжера с помощью метода ветвей и границ

Reading time 3 min
Views 98K
Здравствуй, Хабр! Реализовывая различные алгоритмы для нахождения гамильтонова цикла с наименьшей стоимостью, я наткнулся на публикацию, предлагающую свой вариант. Попробовав в деле, я получил неправильный ответ:



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

Под катом вас будет ждать исправленный алгоритм и онлайн-калькулятор.
Читать дальше →
Total votes 35: ↑30 and ↓5 +25
Comments 82

Обзор пакетов Node.js для разбора опций командной строки

Reading time 9 min
Views 23K

Node.js, как и другие среды разработки, предоставляет базовые средства работы с опциями командной строки. В нашем случае это массив process.argv. Но обычно, кроме простейших случаев типа A + B, обрабатывать опции командной строки вручную очень неудобно. Для этого есть несколько популярных пакетов. Автор написал небольшую программу, которая построила сводную таблицу по этим пакетам, выбрал из них три самых популярных и рассмотрел их поближе.


(Материал статьи на 7 января 2020 года по прежнему актуален, сводная таблица обновлена и дополнена.)

Читать дальше →
Total votes 27: ↑24 and ↓3 +21
Comments 34

Что должен делать тимлид: роли, обязанности и навыки

Reading time 3 min
Views 106K


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


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


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

Читать дальше →
Total votes 73: ↑71 and ↓2 +69
Comments 28

Чему я научился на своём горьком опыте (за 30 лет в разработке ПО)

Reading time 22 min
Views 117K
image

Это циничная, клиническая коллекция того, чему я научился за 30 лет работы в разработке программного обеспечения. Повторюсь, некоторые вещи весьма циничны, а остальное — результат долгих наблюдений на разных местах работы.
Читать дальше →
Total votes 187: ↑178 and ↓9 +169
Comments 128

Доступное объяснение гипотезы Римана

Reading time 20 min
Views 144K
image

Посвящается памяти Джона Форбса Нэша-младшего

Вы ведь помните, что такое «простые числа»? Эти числа не делятся ни на какие другие, кроме самих себя и 1. А теперь я задам вопрос, которому уже 3000 лет:

  • 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, p. Чему равно p? 31. Каким будет следующее p? 37. А следующее p ? 41. А следующее? 43. Да, но… как нам узнать, каким будет следующее значение?

Придумайте суждение или формулу, которые (хотя бы с грехом пополам) прогнозируют, каким будет следующее простое число, (в любом заданном ряду чисел), и ваше имя навечно будет связано с одним из величайших достижений человеческого мозга. Вы встанете в один ряд с Ньютоном, Эйнштейном и Гёделем. Разберитесь в поведении простых чисел, и можете потом всю жизнь почивать на лаврах.

Введение


Свойства простых чисел изучались многими великими людьми в истории математики. С первого доказательства бесконечности простых чисел Евклида до формулы произведения Эйлера, связавшей простые числа с дзета-функцией. От формулировки теоремы о простых числах Гаусса и Лежандра до её доказательства, придуманного Адамаром и Валле-Пуссеном. Тем не менее, Бернхард Риман до сих пор считается математиком, сделавшим единственное крупнейшее открытие в теории простых чисел. В его опубликованной в 1859 году статье, состоявшей всего из восьми страниц, были сделаны новые, ранее неизвестные открытия о распределении простых чисел. Эта статья по сей день считается одной из самых важных в теории чисел.

После публикации статья Римана оставалась главным трудом в теории простых чисел и на самом деле стала основной причиной доказательства в 1896 году теоремы о распределении простых чисел. С тех пор было найдено несколько новых доказательств, в том числе элементарные доказательства Сельберга и Эрдёша. Однако до сих пор остаётся загадкой гипотеза Римана о корнях дзета-функции.
Читать дальше →
Total votes 112: ↑111 and ↓1 +110
Comments 55

TCP против UDP или будущее сетевых протоколов

Reading time 27 min
Views 169K
Перед каждым сервисом, генерирующим хотя бы 1 Мбит/сек трафика в интернете возникает вопрос: «Как? по TCP или по UDP?» В прикладных областях, в том числе и платформах доставки уже сложились предпочтения и традиции принятия подобных решений.

По идее, если бы, к примеру, однажды один ленивый разработчик не попробовал развернуть свой ML на Python (потому что только его и знал), мир скорее всего никогда не проникся бы такой любовью к презренному «супер-джава-кодерами» языку. А сегодня слабости этого языка в прошлом контексте применения безоговорочно обеспечивают ему первенство в развертывании и запуске многочисленных майнерских А/Б.

Сравнивать можно многое: ARM с Intel, iOS и Android, а Mortal Kombat с Injustice. И нарваться на космический холивар, поэтому вернемся к теме доставки огромных объемов разноформатного контента.

Десять лет назад все были абсолютно уверены, UDP — это что-то про негарантированную доставку. Если нужен надежный протокол — это TCP. И вопреки традициям в этой статье мы будем сравнивать такие, кажущиеся несравнимыми вещи, как TCP и UDP.


Осторожно, под катом 99 иллюстраций и схем и все важные.
Total votes 162: ↑159 and ↓3 +156
Comments 75

Структура белка: введение для айтишников

Reading time 17 min
Views 155K
Приятно видеть, что хабравчане регулярно интересуется другими предметными областями – например, биологией (более конкретно – структурой и функцией биологических макромолекул). Однако некоторые посты (например, этот), вызывают у специалиста просто физическую боль из-за обилия совершенно диких фактологических ошибок. В этом посте мне хочется рассказать о структуре и функции белка. О том, что мы знаем и о том, чего не знаем, а так же об имеющихся в этой области вычислительных задачах, требующих решения и интересных IT-специалистам. Постараюсь рассказывать сжато и тезисно, чтобы информации было больше, а воды – меньше. Всех, интересующихся структурой белков, прошу под кат, там очень много букв.
Читать дальше →
Total votes 146: ↑145 and ↓1 +144
Comments 72

10 способов хранить свои проводки

Reading time 2 min
Views 64K
wires
Уверен, у каждого хабрачеловека со временем количество различных проводов и шнуров от телефонов, КПК и прочих девайсов начинает превышать все разумные пределы. Стол-то не резиновый. Но не отказываться же в конце концов из-за этого от любимых гаджетов. В этой статье я хочу привести несколько изящных дизайнерских решений, чтобы вы могли «хранить свои проводки» в порядке и радости для глаз. Как и советовал профессор Губерт Фарнсворт.

Читать дальше →
Total votes 161: ↑151 and ↓10 +141
Comments 133

OAuth доступ к IMAP/SMTP в Gmail

Reading time 2 min
Views 4.1K
Google давно уже полагает, что пользователи должны иметь возможность экспортировать свои данные и использовать их с любыми другими сервисами на своё усмотрение. На протяжении многих лет службы Gmail поддерживает стандартный API через протоколы POP и IMAP, без каких-либо дополнительных расходов для наших пользователей. Эти усилия согласуются с нашими более широкими намерениями по упрощению доступа к данным из сторонних сервисов.

В дополнение к упрощению экспорта своих данных, мы также позволим пользователям разрешать доступ к данным в Google для third-party (не относящихся к Google) приложений и веб-сайтов. Одним из наиболее распространенных примеров является разрешение доступа к вашей адресной книге для социальной сети, чтобы она отправила приглашения вашим друзьям.

Пользователь, конечно, может сообщить свой пароль от аккаунта Google third-party приложению, чтобы разрешить подобный доступ, однако существует более безопасный способ — использовать стандартный протокол OAuth, который позволит пользователю дать свое согласие на доступ к определенным ресурсам, не сообщая свой пароль. Большинство возможностей Google API поддерживают OAuth, а начиная с 30 марта 2010 года он доступен также и для IMAP/SMTP в Gmail.
Читать дальше →
Total votes 58: ↑47 and ↓11 +36
Comments 10

Здравствуй Араб.net (Часть 2)

Reading time 6 min
Views 1.7K
image
После публикации первой части, я еще раз убедился, что тема интересна многим на хабре. Ну что же, тогда продолжим, часть 2 — это продолжение первой части, то есть обзор популярных сервисов в арабском сегменте сети. В чем-то это продолжение «историй успеха» просто они (так сложилось) пересекаются с теми сервисами владельцев которых, я хорошо знаю, а по этому не стоит упрекать меня в излишней эмоциональности и субъективности, рассматривайте это скорее, как — «откровения инсайдера»…
Читать дальше →
Total votes 87: ↑79 and ↓8 +71
Comments 56

Макрoсъемка на телeфон. DVD + K800i

Reading time 1 min
Views 6.8K
image

Какое психиатрическое нарушение констатировали бы у человека, произнесшего в 1991 году следующую фразу: «А давай я тебя на телефон сфотографирую»? ©


cnflikt опубликовал интересные фотографии снятые с помощью телефона SE k800i.
Деталь, необходимая для осуществления этих фоток, находятся внутри каждого DVD-проигрывателя. Все, что нам нужно — это объектив от лазера. Затем, его приклеиваем к картону, картон на телефон и все готово! Естественно, при условии, что мы имеем в распоряжении ненужный плеер.

Подо мной еще несколько фотографий
Total votes 52: ↑49 and ↓3 +46
Comments 40

Обналичка чеков

Reading time 1 min
Views 2.2K
На днях украинский Приватбанк в своей системе интернет-банкинга Приват24 ввел обналичивание именных чеков, в том числе чеков GoogleAdSense. Думаю эта новость должна заинтересовать веб-разработчиков получающих прибыль с рекламных площадок Google. Теоретически обналичить чек можно в течении суток (находясь в Днепропетровске).
Вот текст оф.новости:
«Уважаемые пользователи!
Представляем вам новую услугу — Акцептация именных чеков (в т.ч. чеки Google AdSense).
Теперь Вы можете получить выплату по чеку в течение дня. Для этого необходимо отсканированную (сфотографированную) лицевую и обратную сторону чека загрузить в форме выше и выбрать карту, для зачисления выплаты. Оригинал чека высылаете по адресу:
ул.Набережная Победы, 50, ЦЭБ, Приват 24, г.Днепропетровск, Днепропетровская область, 49094, Украина.
Комиссия по акцептации – стандартная.»
.
Я к сожалению проверить работоспособность сервиса не могу, за неимением чеков. Регистрация в Приват24 бесплатная. Теоретически данная услуга должна быть доступна и гражданам России посредством МоскомПриватБанка и privat24.ru.
UPD: итак теперь проверенно схема работает и деньги зачисляются как только приходит оригинал чека к ним по почте, получается значительно быстрее, особенно заказным письмом если отсылать. Сканы нужны для проверки и подготовки к зачислению.Вот цитата из обсуждения в комментариях в П24 в этой меню:
Как только к нам приходят оригинал чека. Средства зачисляются в течение 1 дня. Средства по чеку поступают на наш счет SWIFT переводом. В этом случае Банк корреспондент взымает комиссию порядка 24 $ ( если сумма до 1000$). Комиссия ПриватБанка 3%
Total votes 62: ↑60 and ↓2 +58
Comments 115

Здравствуй Араб.net (Часть 1)

Reading time 6 min
Views 1.4K
image
Если сказать, что меня удивила реакция на мой прошлый пост, то это ничего не сказать.

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

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

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

Читать дальше →
Total votes 90: ↑75 and ↓15 +60
Comments 62

Юный ботаник: Внутренняя жизнь клетки

Reading time 1 min
Views 699
Случайно наткнулся на совершенно потрясную вещь: красивый клип, показывающий небольшой промежуток времени из жизни обычной клетки:



Оригинал видео в лучшем качестве: aimediaserver.com/studiodaily/videoplayer/?src=harvard/harvard.swf&width=640&height=520
Подробное объяснение всего что происходит по ходу клипа: sciuro.livejournal.com/159052.html

PS. Понимаю, что не в формате Хабра и, может быть, боян, но очень красиво и познавательно.

UPD: multimedia.mcb.harvard.edu/anim_innerlife_hi.html — более полное видео, но без музыки и с комментариями на английском. Трафик!
Total votes 59: ↑51 and ↓8 +43
Comments 37

Information

Rating
Does not participate
Location
Львов, Львовская обл., Украина
Date of birth
Registered
Activity