Обновить
1043.23

Программирование *

Искусство создания компьютерных программ

Сначала показывать
Порог рейтинга
Уровень сложности

Intel и Facebook совместно повышают производительность библиотеки Caffe2

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

Каждый день окружающий нас мир генерирует все больше и больше информации — текстовой, графической, мультимедийной и т.д. За последние годы технологии искусственного разума и глубокого изучения сумели улучшить ряд приложений, которые помогают людям лучше воспринимать эту информацию, обогатив их возможностями распознавания речи, видео, изображений, а также функционалом рекомендаций.
Как Intel и Facebook ускоряют deep learning

Mockанье зависимостей в node.js приложениях

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

Mocks, fakes, and stubs — три столпа юнит тестирования. Конечно же все знают что это такое, как солить и когда есть. Я честно тоже так думал, пока не столкнулся с действительностью, под которую мне пришлось немного прогнуться.


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


Component = proxyquire.noCallThru().load(‘../Component’, {
 
     ‘../../core/selectors/common': { getData }

}).default;
Читать дальше →

Проблема сохранения контекста при асинхронном программировании в scala

Время на прочтение7 мин
Количество просмотров6.8K
В какой-то момент в проекте встает вопрос отслеживания хода выполнения операции, получения или складирование какой-то информации о ней. Для этого как нельзя лучше служит контекст операции, например, контекст клиентской сессии. Если вам интересно, как это можно сделать относительно безболезненно, прошу под кат.
Читать дальше →

Откуда Рокетбанк знает ваше имя

Время на прочтение3 мин
Количество просмотров28K
Тратить время на поиск ручками по базе или, не приведи господи, на набивку номера из CRM в телефон – это роскошь в прямом смысле слова. Когда Рокетбанк стал набирать популярность, что сопровождалось увеличением количества заявок на новые карты, банку нужно было ускорить обработку входящих обращений. Первым делом они решили научить CRM-систему звонить. Как им удалось обуздать свою CRM, читайте под катом.

Smart IDReader SDK — как добавить распознавание в iOS приложение за 5 минут — теперь и на Github

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

Ранее мы, Smart Engines, уже писали про наши технологии распознавания (паспорта РФ, банковских карт и многих других). Основной ценностью SDK является "ядро" или "движок" распознавания Smart IDReader, который объединяет функциональность сканирования всего, что мы умеем сканировать, под единым интерфейсом.


Библиотека распознавания написана на С++ для достижения максимальной производительности, но для использования с различными языками программирования у нас есть версии интерфейсов библиотеки на C++, C, C#, Objective-C, Java и даже Visual Basic. Мы поддерживаем все популярные операционные системы: iOS, Android, Windows, Linux, MacOS, Solaris и, разумеется, Эльбрус и AstraLinux. Наши алгоритмы оптимизированы под такие архитектуры, как ARMv7-v8, AArch64, x86, x86_64, SPARC, E2K.


Мы решили выложить демо-версию нашего SDK на Github, чтобы вы могли ознакомиться с интерфейсом библиотеки (как Objective-C часть, так и C++), почитать документацию и попробовать встроить Smart IDReader в ваше приложение. Репозиторий с демо-версией Smart IDReader iOS SDK доступен по ссылке: https://github.com/SmartEngines/SmartIDReader-iOS-SDK


Чтобы посмотреть, как Smart IDReader выглядит в нашем исполнении после встраивания, вы можете скачать бесплатные полные версии приложений из App Store и Google Play.


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

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

learnopengl. Урок 2.1 — Цвета

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

Перевод очередного урока с сайта learnopengl.com. Недавно обнаружил на русском Уроки по OpenGL с сайта OGLDev, но некоторые из них требуют 4 версию opengl, а примеры кода слишком зависимы от предыдущих уроков и объектно-ориентированы. Поэтому, вниманию всех интересующихся opengl'ем новичков со стареньким железом предлагаю коротенькую статью о цвете, с которой начинается вторая часть обучающего курса от Joey de Vries:

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

Russian Code Cup — по следам отборочного раунда

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


14 мая прошёл отборочный раунд Russian Code Cup 2017. По традиции выкладываем разбор задач и подводим итоги.


A. Маленькие числа
B. Новая клавиатура
C. Складывание фигуры
D. Остроугольные треугольники
E. Объединение массивов
F. Два поддерева


В раунде участвовали 603 человека: приблизительно по 200 лучших программистов с каждого квалификационного раунда. По результатам отборочного раунда мы взяли в финал 55 участников.

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

О дженериках в PHP и о том, зачем они нам нужны

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


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

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

Дни открытых дверей перед запуском нового курса по Java

Время на прочтение1 мин
Количество просмотров3.2K
Приглашаем всех 27 мая и 1 июня на Дни открытых дверей! Из любой удобной точки мира — приходите к нам — формат проведения онлайн.


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

Пятничная дискуссия: российская vs зарубежная IT – компания. Почему все стремятся работать в Google

Время на прочтение2 мин
Количество просмотров20K
Google сегодня – мир удивительных возможностей для ИТ-специалистов различных специальностей, навыков и опыта.

Работать в этой компании стремятся инженеры по всему миру, а для российских разработчиков компания представляется настоящим технологическим эдемом, в который еженедельно поступают более 50 000 резюме.

И стоит отметить, что компания хорошо вложилась в создание технического рая из 70 офисов в 40 странах мира, в которых уже сейчас творят более 60 000 сотрудников и функционирует секретная лаборатория Google X.


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

Разработка шахматной программы

Время на прочтение10 мин
Количество просмотров77K
Было ли вам когда-либо интересно написать свою шахматную программу? Настраивать и развивать её, проверять её на знакомых любителях шахмат и радоваться её победам. Но как написать такую программу? Об этом я и расскажу в этой статье.
Читать дальше →

Intel открывает доступ к clDNN [высокопроизводительной библиотеке для глубокого обучения]

Время на прочтение2 мин
Количество просмотров8.4K
Официальный репозиторий проекта был запущен буквально пару дней назад. Расскажем немного подробнее об этой новости и приведем полезные источники по теме.


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

Чек-лист по выживанию сайта

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


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

«Это все только для хайлода» — скажет вдумчивый и прозорливый читатель. Плох тот веб-проект, который не мечтает стать популярным хайлодом.

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

Ближайшие события

Лучшие доклады на Google I/O 2017: Архитектура и не только

Время на прочтение5 мин
Количество просмотров12K
Привет! Меня зовут Михаил Баранников, я — Android-разработчик в e-Legion. Недавно вернулся с Google I/O и решил поделиться впечатлениями и ссылками на интересные выступления. Всего на конференции было 14 параллельных треков, а значит — огромное количество докладов. Статья полезна для тех, кто планирует посмотреть видеозаписи докладов по Android-разработке, но не знает с чего начать.


Финал чемпионата мира по спортивному программированию ACM ICPC: победитель уже известен

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

Победители принимают заслуженную награду из рук организаторов

Вчера в 18 часов по московскому времени начался финал известнейшего мирового соревнования для программистов, которое называется ACM ICPC. В этом году в соревнованиях участвует более 46 тысяч человек из 103 разных стран. Это даже больше, чем участников Олимпиад — как зимних, так и летних. Напомним, что ICPC проводится каждый год, начиная с 1977 года.

Изначально российские участники были одними из основных претендентов на победу. Этому можно не удивляться, поскольку на предыдущих соревнованиях команды отечественных программистов становились абсолютными чемпионами соревнования 11 раз. При этом 6 раз победителями оказывались программисты из университета ИТМО. Сам университет этим очень гордится, поскольку такое количество побед — это мировой рекорд.
Читать дальше →

Стать востребованным на рынке труда: какие темы нужно знать Java разработчику?

Время на прочтение4 мин
Количество просмотров16K
Нам часто задают вопросы про программу обучения: почему мы предлагаем именно такую программу и почему считаем, что именно специалисты, изучившие темы, которые мы рассматриваем на курсе, будут востребованы на рынке.
Читать дальше →

Vue.js для сомневающихся. Все, что нужно знать

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


В данной статье речь пойдет о замечательном фронтенд фреймворке Vue.js. Как вы видите, статья называется «Vue.js для сомневающихся», и, если вы до сих пор не могли решиться попробовать Vue.js на практике, то надеюсь, что после прочтения вы все-таки на это решитесь.
Читать дальше →

Тонкости отладки или Как (не)убить полдня с debug'ом

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

Вчера потратил полдня в попытках разобраться с причиной появления исключения в PHP-коде, а с утра в голову пришла мысль, что причиной был я сам. Вернее, использование мной отладчика в IDE PhpStorm для трассировки хода выполнения кода.


image


Условия возникновения ситуации — под катом.

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

Делаем превью-снимки WebRTC видеопотока в PNG картинках

Время на прочтение2 мин
Количество просмотров4K
Есть 10 пользователей, которые стримят видео с веб-камеры по WebRTC. Нужно вывести снапшоты (thumbnails) их стримов на одной веб-странице, чтобы выглядело примерно так:


Можно просто воспроизвести видео вместо картинок, но давайте посчитаем каким будет битрейт, если каждый из потоков занимает 1 Mbps полосы. Если воспроизводить все десять, получится 10 Mbps. Не многовато для превьюшек?
Читать дальше →

Что скрыто внутри платформы автомобильного аукциона

Время на прочтение11 мин
Количество просмотров29K
Сервисы по продаже подержанных автомобилей обычно построены по одному принципу: «разместил объявление, позвонили, показал машину, продал». В таких проектах высокие технологии сконцентрированы, в основном, вокруг самого сайта. Но у нас всё иначе. Мы создали платформу, на которой любой желающий может продать автодилерам через аукционную систему свою подержанную машину (даже аварийную), с проверкой технического состояния нашими специалистами. За кажущейся простотой описания скрывается сложная экосистема из самописных и сторонних программных продуктов, о которой мы хотим рассказать.

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

Вклад авторов