Как стать автором
Обновить
0
0
Юрий @jury

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

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

Электронная книга своими руками на STM32H750 от А до Э

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


В этой статье я хочу поделиться опытом разработки электронной книги с использованием недорогого контроллера STM32H750VB, распространенных дискретных компонентов и относительно недорогого дисплея E-Ink. Статья будет большой, так как приведены будут все процессы от постановки задачи до получения первой версии устройства, способного выполнять поставленную задачу. Все будет снабжено схемами, трассировками, кодом и комментариями. Почему в названии от «от А до Э»? Потому что нельзя просто так взять и сделать конечный продукт без ошибок и недоделок.

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

Continuous integration в Яндексе

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

Поддержка огромной кодовой базы с одновременным обеспечением высокой производительности большого числа разработчиков — это серьезный вызов. В течение последних 5 лет в Яндексе идет разработка особой системы непрерывной интеграции. В данной статье мы расскажем про масштаб кодовой базы Яндекса, про перенос разработки в единый репозиторий с trunk-based подходом к разработке, про то, какие задачи должна решать система непрерывной интеграции для эффективной работы в таких условиях.



Много лет назад в Яндексе никаких особенных правил в разработке сервисов не было: каждый отдел мог использовать любые языки, любые технологии, любые системы деплоя. И как показала практика, такая свобода не всегда помогала двигаться вперед быстрее. В то время для решения одних и тех же задач часто существовало несколько собственных или open-source разработок. С ростом компании такая экосистема работала всё хуже. При этом мы хотели остаться одним большим Яндексом, а не разделиться на множество независимых компаний, потому что это дает массу преимуществ: много людей делают одни похожие задачи, результаты их труда можно использовать повторно. Начиная от разнообразных структур данных, типа распределённых хеш-таблиц и lock-free очередей, и заканчивая множеством разного специализированного кода, который мы написали за 20 лет.

Читать дальше →
Всего голосов 52: ↑47 и ↓5+42
Комментарии100

Топливо для ИИ: подборка открытых датасетов для машинного обучения

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


Связанные проекты сообщества Open Data (проект Linked Open Data Cloud). Многие датасеты на этой диаграмме могут включать в себя данные, защищенные авторским правом, и они не упоминаются в данной статье


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


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


Мы разобрались в этом вопросе и собрали данные по датасетам, удовлетворяющим критериям открытости, востребованности, скорости работы и близости к реальным задачам.

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

Квантовый компьютер: большая игра на повышение. Лекция в Яндексе

Время на прочтение15 мин
Количество просмотров34K
Мы то и дело слышим, что не за горами эпоха активного использования квантовых вычислений, что такие системы уже скоро станут доступны специалистам, включая аналитиков данных. Но сколько осталось ждать на самом деле? Научный сотрудник Российского квантового центра Алексей Фёдоров вводит в курс дела и рассказывает, как идут дела с разработкой квантовых компьютеров.


Под катом — расшифровка и часть слайдов Алексея.

Всего голосов 57: ↑55 и ↓2+53
Комментарии11

Метод оптимизации Нелдера — Мида. Пример реализации на Python

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


Метод Нелдера — Мида — метод оптимизации (поиска минимума) функции от нескольких переменных. Простой и в тоже время эффективный метод, позволяющий оптимизировать функции без использования градиентов. Метод надежен и, как правило, показывает хорошие результаты, хотя и отсутствует теория сходимости. Может использоваться в функции optimize из модуля scipy.optimize популярной библиотеки для языка python, которая используется для математических расчетов.
Читать дальше →
Всего голосов 33: ↑33 и ↓0+33
Комментарии17

10 основных ошибок, совершаемых Django-разработчиками

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


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

Читать дальше →
Всего голосов 52: ↑50 и ↓2+48
Комментарии62

Рост автономных платформ обработки данных или еще раз про Big Data

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


Большие данные сегодня, ну, БОЛЬШИЕ. В исследовании IDC за 2016 год под названием «Полугодовое руководство по расходам на большие данные и аналитику» прогнозируется, что общемировой оборот на больших данных вырастет со $130 млрд в 2016-м до более чем $203 млрд в 2020-м, то есть совокупный годовой рост будет на уровне 11,7%. По мнению IDC, росту способствуют три фактора: увеличение доступности гигантских объёмов данных, богатый ассортимент развивающихся open source-технологий для работы с большими данными, культурный сдвиг в бизнес-среде в направлении принятия решений на основе анализа массива данных. Звучит правильно, да? А если допустить, что это не совсем так. Повсюду публикуется множество отчётов о неудачах, постигающих инициативы, связанные с большими данными. В этой статье мы обсудим причины этих неудач, почему решения, принимаемые для исправления ситуации, являются лишь временными мерами, и почему автономные платформы обработки данных являются жизнеспособным долгосрочным решением.
Читать дальше →
Всего голосов 22: ↑22 и ↓0+22
Комментарии2

Алгоритмические задачи в биоинформатике. Лекция в Яндексе

Время на прочтение19 мин
Количество просмотров16K
Мы уже несколько раз упоминали серию мероприятий Data & Science, где специалисты по анализу данных и учёные рассказывают друг другу о своих задачах и ищут способы для взаимодействия. Одна из встреч была посвящена биоинформатике. Это отличный пример отрасли, где есть масса ещё не решённых задач для разработчиков.



Под катом вы найдёте расшифровку лекции Игната Колесниченко — выпускника мехмата МГУ и Школы анализа данных. Сейчас Игнат работает ведущим разработчиком службы технологий распределённых вычислений Яндекса.

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

Спортивный анализ данных, или как стать специалистом по data science

Время на прочтение17 мин
Количество просмотров60K
Меня зовут Пётр Ромов, я — data scientist в Yandex Data Factory. В этом посте я предложу сравнительно простой и надежный способ начать карьеру аналитика данных.

Многие из вас наверняка знают или хотя бы слышали про Kaggle. Для тех, кто не слышал: Kaggle — это площадка, на которой компании проводят конкурсы по созданию прогнозирующих моделей. Её популярность столь велика, что часто под «кэглами» специалисты понимают сами конкурсы. Победитель каждого соревнования определяется автоматически — по метрике, которую назначил организатор. Среди прочих, Kaggle в разное время опробовали Facebook, Microsoft и нынешний владелец площадки — Google. Яндекс тоже несколько раз отметился. Как правило, Kaggle-сообществу дают решать задачи, довольно близкие к реальным: это, с одной стороны, делает конкурс интересным, а с другой — продвигает компанию как работодателя с солидными задачами. Впрочем, если вам скажут, что компания-организатор конкурса задействовала в своём сервисе алгоритм одного из победителей, — не верьте. Обычно решения из топа слишком сложны и недостаточно производительны, а погони за тысячными долями значения метрики не настолько и нужны на практике. Поэтому организаторов больше интересуют подходы и идейная часть алгоритмов.



Kaggle — не единственная площадка с соревнованиями по анализу данных. Существуют и другие: DrivenData, DataScience.net, CodaLab. Кроме того, конкурсы проводятся в рамках научных конференций, связанных с машинным обучением: SIGKDD, RecSys, CIKM.

Для успешного решения нужно, с одной стороны, изучить теорию, а с другой — начать практиковать использование различных подходов и моделей. Другими словами, участие в «кэглах» вполне способно сделать из вас аналитика данных. Вопрос — как научиться в них участвовать?
Хардкор
Всего голосов 71: ↑66 и ↓5+61
Комментарии13

Gixy — open source от Яндекса, который сделает конфигурирование Nginx безопасным

Время на прочтение10 мин
Количество просмотров35K
Nginx, однозначно, один из крутейших веб-серверов. Однако, будучи в меру простым, довольно расширяемым и производительным, он требует уважительного отношения к себе. Впрочем, это относится к почти любому ПО, от которого зависит безопасность и работоспособность сервиса. Признаюсь, нам нравится Nginx. В Яндексе он представлен огромным количеством инсталляций с разнообразной конфигурацией: от простых reverse proxy до полноценных приложений. Благодаря такому разнообразию у нас накопился некий опыт его [не]безопасного конфигурирования, которым мы хотим поделиться.



Но обо всем по порядку. Нас давно терзал вопрос безопасного конфигурирования Nginx, ведь он — полноправный кубик веб-приложения, а значит, и его конфигурация требует не меньшего контроля с нашей стороны, чем код самого приложения. В прошлом году нам стало очевидно, что этот процесс требует серьезной автоматизации. Так начался in-house проект Gixy, требования к которому мы обозначили следующим образом:

— быть простым;
— но расширяемым;
— с возможностью удобного встраивания в процессы тестирования;
— неплохо бы уметь резолвить инклюды;
— и работать с переменными;
— и про регулярные выражения не забыть.
Читать дальше →
Всего голосов 112: ↑112 и ↓0+112
Комментарии18

Введение в криптографию и шифрование, часть первая. Лекция в Яндексе

Время на прочтение20 мин
Количество просмотров242K
Чтобы сходу понимать материалы об инфраструктуре открытых ключей, сетевой безопасности и HTTPS, нужно знать основы криптографической теории. Один из самых быстрых способов изучить их — посмотреть или прочитать лекцию Владимира ivlad Иванова. Владимир — известный специалист по сетям и системам их защиты. Он долгое время работал в Яндексе, был одним из руководителей нашего департамента эксплуатации.


Мы впервые публикуем эту лекцию вместе с расшифровкой. Начнём с первой части. Под катом вы найдёте текст и часть слайдов.

Всего голосов 96: ↑92 и ↓4+88
Комментарии29

Алгоритм Джонкера-Волгенанта + t-SNE = супер-сила

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



После:



Заинтригованы? Но обо всем по порядку.

t-SNE


t-SNE — это очень популярный алгоритм, который позволяет снижать размерность ваших данных, чтобы их было проще визуализировать. Этот алгоритм может свернуть сотни измерений к всего двум, сохраняя при этом важные отношения между данными: чем ближе объекты располагаются в исходном пространстве, тем меньше расстояние между этими объектами в пространстве сокращенной размерности. t-SNE неплохо работает на маленьких и средних реальных наборах данных и не требует большого количества настроек гиперпараметров. Другими словами, если взять 100 000 точек и пропустить их через эту волшебный черный ящик, на выходе мы получим красивый график рассеяния.
Читать дальше →
Всего голосов 65: ↑64 и ↓1+63
Комментарии2

Сможет ли Питон прожевать миллион запросов в секунду?

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


Возможно ли с помощью Python обработать миллион запросов в секунду? До недавнего времени это было немыслимо.


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


Python-сообщество в последнее время уделяет много внимания производительности. С помощью CPython 3.6 за счет новой реализации словарей удалось повысить скорость работы интерпретатора. А благодаря новому соглашению о вызове (calling convention) и словарному кэшу CPython 3.7 должен стать еще быстрее.


Для определенного класса задач хорошо подходит PyPy с его JIT-компиляцией. Также можно использовать NumPy, в котором улучшена поддержка расширений на Си. Ожидается, что в этом году PyPy достигнет совместимости с Python 3.5.


Эти замечательные решения вдохновили меня на создание нового в той области, где Python используется очень активно: в разработке веб- и микросервисов.

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

Let's Encrypt и nginx: настройка в Debian и Ubuntu

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

image


Если вдруг вся эта история прошла мимо вас, Let's Encrypt — центр сертификации от некоммерческой организации ISRG, существующий при поддержке EFF и многих компаний, взявшей на себя миссию дать людям бесплатные SSL/TLS сертификаты для сайтов и серверов. Сертификаты от Let's Encrypt уже используются на более чем 10 миллионах доменов.


Кроме очевидной бесплатности у сертификатов от Let's Encrypt есть особое, отсутствующее у любых других коммерческих сертификационных центров, достоинство: если вы однажды получили сертификат от Let's Encrypt, то, при прочих равных, это навсегда. Не нужно раз в год-два вручную обновлять сертификаты. Не нужно вообще вспоминать что сертификаты где-то есть. Получил, настроил и забыл!


Внимательный читатель сразу захочет возразить: как же так, ведь известно что сертификаты выдаются со сроком действия в три месяца? Всё дело в автоматическом обновлении сертификатов, которое возможно при полном отсутствии действий со стороны человека.


Организации автоматического обновления сертификатов в статье уделено пристальное внимание, с тем чтобы вы могли в полной мере оценить это принципиальное преимущество Let's Encrypt.

Читать дальше →
Всего голосов 48: ↑46 и ↓2+44
Комментарии96

React + mobx путь с нуля. Mobx + react, взгляд со стороны

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


В «настоящих» проектах мы получаем данные от сервера или пользовательского ввода, форматируем, валидируем, нормализуем и производим другие операции над ними. Всё это принято считать бизнес логикой и должно быть помещено в Model. Так как react — это только треть MVC пирога, для создания пользовательских интерфейсов, то нам потребуется еще что-то для бизнес логики. Некоторые используют паттерны redux или flux, некоторые — backbone.js или даже angular, мы же будем использовать mobx.js в качестве Model.
Читать дальше →
Всего голосов 19: ↑18 и ↓1+17
Комментарии53

Анабиоз для длительных космических путешествий скоро станет реальностью

Время на прочтение4 мин
Количество просмотров34K
image
Представление художника о камерах для анабиоза от Spaceworks

7 октября 2006 года Мицутака Утикоси [Mitsutaka Uchikoshi], поев шашлычков на горе Рокко в западной Японии, решил пойти вниз с горы пешком, а не ехать на канатной дороге. Он потерялся, поскользнулся, сломал таз и, поскольку рядом не оказалось никого, кто бы мог ему помочь, потерял сознание. Через 24 дня проходивший мимо альпинист нашёл Утикоси. Температура его тела упала до 22 °C, его пульс едва прощупывался, а метаболизм почти остановился. Несмотря на отказ многих органов и серьёзную потерю крови, без еды и воды он выжил, и затем полностью восстановился.

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

Среди медиков был и Джон Брэдфорд, президент американской компании Spaceworks из Атланты, шт. Джорджия, разрабатывающей технологии исследования космоса. Брэдфорд, однако, не собирался разрабатывать новые методы лечения; он хотел найти способ вводить людей в анабиоз на длительных межзвёздных перелётах.
Читать дальше →
Всего голосов 22: ↑20 и ↓2+18
Комментарии71

Цифровой нотариус на блокчейне: Emercoin DPO Antifake

Время на прочтение4 мин
Количество просмотров6.7K
EMC DPO — это система, основанная на блокчейне EmerCoin и неопровержимо доказывающая право обладания чем-либо, цифровое свидетельство, подтверждающее подлинность того или иного предмета, товара или услуги. Документ, заявляющий о правах на любые виды собственности, за которыми закреплены уникальные номера: VIN автомобилей, кадастровые — земельных участков, лицензионные — программного обеспечения и многое другое.

image
Есть вещи понадёжнее обычной подписи

Определений много, суть одна. Сегодня ЕМС DPO — это, пожалуй, технически наиболее надёжный инструмент защиты от мошенничества и подделок.
Читать дальше →
Всего голосов 21: ↑16 и ↓5+11
Комментарии42

Как понять, что перед вами «полусырой» блокчейн

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

Когда «чейны» и «блоки» еще не гарантируют, что перед вами полноценный блокчейн


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

И, конечно же, взрывной рост блокчейн-проектов выступил в роли движущей силы для разработки частных блокчейн-платформ, на базе которых эти проекты работают. К примеру, решение MultiChain за прошедший год стало популярнее в три раза как по количеству веб-трафика, так и по количеству ежемесячных скачиваний или коммерческих запросов. И конечно же, существует множество других платформ, таких как BigChainDB, Chain, Corda, Credits, Elements, Eris, Fabric, Ethereum (его закрытый вариант), HydraChain и Openchain. И это не говоря о других стартапах, разработавших собственные блокчейн-платформы, и пока не сделавших их доступными для широкой публики.
Читать дальше →
Всего голосов 17: ↑12 и ↓5+7
Комментарии0

Практическое применение DNSSEC

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


В статье описываются недостатки существующей структуры DNS, полный процесс внедрения DNSSEC на примере доменов .com и .org, процедура создания валидного самоподписанного SSL-сертификата подписанного с помощью DNSSEC.

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

История участия (и почти победы) в ежегодном соревновании Russian AI Cup 2016

Время на прочтение25 мин
Количество просмотров25K
Привет, Хабр! Меня зовут Дичковский Алексей, и я хочу вам рассказать о том, как я потратил полтора месяца своей жизни на написание бота для упрощённой версии DotA.

Ежегодно компания Mail.ru проводит онлайн-чемпионат по программированию игровых стратегий (Russian AI Cup 2016). Я принимал участие в данном соревновании в 2012 году (СodeTanks) и, совсем немного, в 2013 (СodeTroopers). В этом году, изрядно наевшись веб разработкой, я решил попробовать принять участие ещё раз. Я изначально не надеялся (но, конечно же, очень хотел) занять какое-либо призовое место и в целом для меня это был скорее тест, насколько я ещё могу реализовать нечто интересное. О том, что из этого получилось, можно прочитать под катом.


Читать дальше →
Всего голосов 63: ↑61 и ↓2+59
Комментарии32
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность