Search
Write a publication
Pull to refresh
17
0
Айван @AivanF

Программный Инженер, Разработчик, Аналитик

Send message

Серьёзному успеху в квантовых вычислениях помешал подросток

Reading time5 min
Views70K

18-летний Ювин Тан доказал, что классические компьютеры могут решать «задачу рекомендаций» почти так же быстро, как квантовые. Этот результат аннулирует один из наилучших примеров квантового ускорения расчётов.




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

В наиболее практичном виде проблема рекомендаций связана с тем, как сервисы вроде Amazon и Netflix определяют, какие продукты могут вам понравиться. Специалисты по информатике считали её одним из наилучших примеров задач, решать которые на квантовых компьютерах будет экспоненциально быстрее – что подчёркивало потенциальные возможности этих футуристических машин. И вот теперь Тан опроверг это мнение.
Читать дальше →

Пишу книгу о первом «нашем» стартапе, покорившем мир: помогайте

Reading time5 min
Views37K
А вы знаете, что Newton, легендарный девайс Apple, работал на российской технологии распознавания рукописного текста? А вы знаете, что и сейчас всю американскую почту сортирует эта же, доработанная и усовершенствованная, технология? А вы знаете, что первая успешная в мире софтверная фирма родом из России была основана еще в Советском Союзе и называлась Параграф? Обо всем этом я и пишу книгу — и вы можете мне помочь (не деньгами).

image

Читать дальше →

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

Reading time5 min
Views69K


Эта история началась 1 октября 2012 года, когда мне позвонил институтский товарищ Игорь и попросил помочь с горящим проектом. Они пытались сделать терминал сбора данных для технологического применения в РЖД. Такая штука для обходчиков путей и вагонов, чтобы они могли фиксировать все неполадки онлайн.

Если лень читать - смотрите что получилось в итоге

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

Читать дальше →

Как устроен пассажирский вагон дальнего следования

Reading time9 min
Views118K
Современный вагон при соединении с остальным поездом автоматически включается в локальную сеть и получает параметры с сервера штабного вагона. У одноэтажного вагона Тверского вагоностроительного завода сейчас в мониторинге примерно 280 параметров (начиная от уровня заполнения фекального бака и заканчивая напряжением аккумулятора), а у двухэтажного — около 400.



Начнём с межвагонных связей. Это тормозная пневматическая магистраль (пневматические рукава, которыми вагоны соединяются между собой, железнодорожники называют их «лягушками»), высоковольтная магистраль, аварийная магистраль 110 В, интерком и локальная сеть, плюс радиорелейные мосты между вагонами на случай обрыва локальной сети.
Читать дальше →

Прощай, Google Maps

Reading time6 min
Views271K
Google решил сделать из Google Maps новый миллиардный бизнес, подняв цены в 14 раз и уменьшив лимит бесплатного использования почти в 30 раз, всё с минимальным периодом уведомления. К счастью, это немедленно стимулировало конкуренцию. Apple Maps, MapBox, TomTom — что выбрать?

Наш стартап GdziePoLek.pl позволяет пациентам находить нужные лекарства в обычных аптеках. И даже по названию («где найти лекарства») понятно, насколько важно отображение на карте. Работу сервиса легко объяснить одной картинкой, на фоне которой всегда были карты Google Maps:


Типичная страница нашего сервиса показывает наличие лекарства в аптеках
Читать дальше →

Как нам удалось прочитать рукопись, найденную в 80-х возле третьего крематория в Аушвице-Биркенау

Reading time15 min
Views73K
Эта история для меня началась в 2015 году, когда я посмотрел передачу на Youtube с Павлом Поляном, посвященную 70-летию освобождения Аушвица-Биркенау. Он рассказывал о своей книге «Свитки из пепла», его новых переводах с оригиналов документов от непосредственных свидетелей холокоста — членов зондеркоммандо, о найденных им цензурированных первыми переводчиками местах, о состоянии рукописей и о технических проблемах чтения, с которыми он столкнулся.

Меня заинтересовал момент: каким же образом выглядит процесс перевода военных документов, насколько качественно они были оцифрованы, все ли было сделано для того, чтобы не ломать глаза переводчику. Когда я получил на анализ копии оцифрованных документов, я был удивлен нераскрытым потенциалом одной их них – Марселя Наджари. Ее часть в «свитках из пепла» занимала совсем малую главу, через несколько лет эта история раскрутилась до публикаций в мировых СМИ. Она интересна так же, как и страшна.


Читать дальше →

Бесконечный узор на основе простых чисел

Reading time1 min
Views26K
image

Привет, Хабр! Однажды утром мне пришла в голову идея находить "исключающее ИЛИ" между координатами точки пространства и проверять полученное число на простоту. Результат такого простого алгоритма вы можете видеть на картинке. Подробнее под катом.

Оптимизации, используемые в Python: список и кортеж

Reading time4 min
Views58K
В Python, есть два похожих типа — список (list) и кортеж (tuple). Самая известная разница между ними состоит в том, что кортежи неизменяемы.

Вы не можете изменить объекты в tuple:

>>> a = (1,2,3)
>>> a[0] = 10
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment

Но вы можете модифицировать изменяемые объекты внутри кортежа:

>>> b = (1,[1,2,3],3)
>>> b[1]
[1, 2, 3]
>>> b[1].append(4)
>>> b
(1, [1, 2, 3, 4], 3)
Читать дальше →

Как меняются подходы к разработке терминалов для торговли на бирже: 4 тренда 2018 года

Reading time5 min
Views6.7K


Мы в ITI Capital занимаемся развитием собственных инструментов для торговли на российских и зарубежных биржах уже более 10 лет. За это время требования к подобным продуктам и подходы в их разработке неоднократно менялись. Сегодня мы поговорим о главных трендах текущего года, используя в качестве иллюстраций изменения, произошедшие за последнее время с нашим терминалом SMARTx.
Читать дальше →

Контейнеры для взрослых (Часть 01): Практический гид по терминологии

Reading time16 min
Views27K
Вы можете спросить, зачем разбираться с терминологией, если концепция контейнеров выглядит вполне простой и понятной? Однако, довольно часто неверное использование терминов создает препятствия на пути к освоению контейнеров. Например, люди часто считают, что термины «контейнеры» и «образы» взаимозаменяемы, хотя на самом деле между ними есть важные концептуальные различия. Другой пример: в мире контейнеров «репозиторий» означает вовсе не то, что вы думаете. Кроме того, контейнерные технологии – это гораздо больше, чем только docker.



Так что, не владея терминологией, будет сложно понять, чем docker отличается от CRI-O, rkt или lxc/lxd; либо оценить роль Open Container Initiative в деле стандартизации контейнерных технологий.
Читать дальше: Практический гид по контейнерной терминологии

GitHub превращается… превращается GitHub… в элегантный Windows 95

Reading time7 min
Views81K


В Твиттере какое-то время назад запостили шутку в честь приобретения Майкрософтом ГитХаба — страницу сайта, перестилизованную в стиле Windows 98. Я решил, что шутка слишком хороша, чтобы оставаться шуткой.

Давайте перекрасим GitHub!

Clang. Часть 1: введение

Reading time4 min
Views81K

Что такое Clang?


Я провёл последние несколько месяцев, работая с Clang, фронтендом LLVM. Clang умеет парсить и анализировать любой исходный код на языках семейства С (C, C++, ObjectiveC, и т.п....) и имеет удивительную модульную структуру, которая делает его простым в использовании.


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

Лично я использую Clang для статического анализа драйверов ввода-вывода ядра Linux, включая драйвера камеры и драйвера DRM графической карты. Код ядра, особенно код драйвера, может быть очень сложным и трудным для анализа, но Clang позволяет нам легко поддерживать его. Давайте посмотрим, что можно сделать с его помощью.
Читать дальше →

Рефакторинг программы на Go: ускорение в 23 раза

Reading time8 min
Views35K


Привет! Меня зовут Марко, я работаю в Badoo в отделе «Платформы». У нас довольно много всего написано на Go, и зачастую это критичные к производительности системы. Именно поэтому сегодня я предлагаю вашему вниманию перевод статьи, которая мне очень понравилась и, я уверен, будет вам очень полезна. Автор пошагово показывает, как он подходил к проблемам производительности и как их решал. В том числе вы познакомитесь с богатым инструментарием, доступным в Go для такой работы. Приятного чтения!

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

Так-так-так, я всё вижу

Reading time12 min
Views65K
8 лет назад я написал на Хабре публикацию «Мой опыт восстановления зрения», в которой рассказал про свой опыт безоперационного восстановления зрения — путём закапывания капелек и различных упражнений. Тогда на Хабре ещё не было счётчика просмотров постов, поэтому те 75 тысяч просмотров — это многолетний поисковый трафик, лишний раз доказывающий очевидное — вопрос зрения беспокоит не только меня.



Сегодня я расскажу про второй опыт восстановления зрения, но на этот раз более радикальный и с каким-то вообще невероятным результатом. А именно — о лазерной коррекции по технологии ReLEx SMILE.

Как я автоматизировал дачу на 90%

Reading time9 min
Views138K


Дачная электрика – известная проблема, отношение к ней в большинстве случаев наплевательское, если не сказать хуже. Если есть возможность подключить что-то не так и не туда — это, конечно, будет сделано.

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

Туннели и VPN, устойчивые к DPI

Reading time10 min
Views168K
Мы живем в интересное время. Я бы даже сказал, в удивительное. По одну сторону мы видим неких лиц, которые очень хотят знать, о чем между собой разговаривают другие люди, и очень хотят указывать им, что можно читать, а что нельзя. С другой стороны граждане, которые хотят отстоять свои права тайны личной переписки и свободного получения информации, и не хотят, чтобы факты этой самой переписки и получения этой самой информации были использованы против них. Бонусом страдает огромное количество сторонних сайтов, сервисов и бизнесов, которых задевает «ковровыми блокировками».

Но нет, эта статья не об обществе, а о технологиях.

image
Читать дальше →

Будьте осторожны, — Байкал-Т1! Или история одного проекта с попыткой применения «импортозамещения»

Reading time8 min
Views161K
«Эффективные» менеджеры и поставщики компонентов могут смело проигнорировать этот материал. Эта заметка — для разработчиков аппаратуры, которые уже смотрят, или только собираются смотреть в сторону процессора Байкал-Т1. Так сказать, «информация к размышлению» о реальной истории общения с фирмой Байкал Электроникс (БЭ) и что в результате получилось из прикладного проекта с попыткой применения «импортозамещения».

Итак, все по порядку…
Читать дальше →

Выявление преступных группировок, ворующих из магазинов – Data Mining

Reading time5 min
Views65K


Группа из 3–4 лиц по предварительному сговору способна вынести из большого магазина типа «Ашана» или «Перекрёстка» товара до 400 тысяч рублей в месяц. Если обычные шоплифтеры просто мирно воруют колбасу, протаскивая её под одеждой или ещё где, то эти парни оказываются в разы наглее и деструктивнее.

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

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

В-третьих, при попытке их остановить и вызвать полицию они применяют силовые меры к охраннику и уходят. Силовые меры — это от банального оттеснения охранников от подозреваемого до угроз оружием.

К нам обратилось ЧОП, которое попросило сделать видеоаналитику по тем, кого они уже знают. Чтобы при входе в магазин такого товарища сразу вызывалась полиция и их брали уже тёпленькими.
Читать дальше →

Сколько стоит компилятор?

Reading time7 min
Views31K
Компилирующий тулчейн является одним из самых больших и самых сложных компонентов любой системы, и, как правило, основан на опенсорсном коде, либо GCC, либо LLVM. На Linux-системе, только ядро операционной системы и браузер имеют больше строк кода. Для коммерческих систем, компилятор должен быть абсолютно надёжным, каким бы ни был исходный код, он должен генерировать надёжный, высокопроизводительный бинарный код.

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


Читать дальше →

Откровения аварийного инженера

Reading time27 min
Views44K
image

Или как сэкономить 15% и более от бюджета на разработку


Я профессионально работаю с Unreal Engine уже более 9 лет. За это время я освоил множество специальностей и занимал разные должности в разработке игр: от разработчика-«пехотинца» до менеджера больших команд разработчиков игр и даже консультировал инвесторов игровых компаний.

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

Если у игровой компании в Лос-Анджелесе появляется проблема с Unreal Engine 4, которую никто не может решить, в конце концов звонят мне. Я пишу эту статью, чтобы объяснить, почему мне звонят, как избежать необходимости таких звонков, и что я обычно делаю, получив такой звонок.

Большинство проблем разработки игр хорошо понятно тем, кто находится «в траншеях», но эти проблемы пролетают над головами менеджеров и руководства. Кроме того, похоже, подобные статьи читают только люди из траншей на передовой, а не те, кому они действительно необходимы.
Читать дальше →

Information

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