Все потоки
Поиск
Написать публикацию
Обновить
1096.94

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

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

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

Видео о статическом анализе кода

Время на прочтение10 мин
Количество просмотров7K
На IT конференциях и встречах, посвященных различным языкам программирования, появляется все больше спикеров с докладами о статическом анализе кода. И хотя это довольно узкоспециализированная область, но и здесь можно найти немало интересных выступлений, которые помогают понять методологию, использование и особенности статического анализа кода. В этой статье собраны видео данной тематики, которые благодаря лёгкой форме подачи материала, могут быть полезны и интересны широкой аудитории, как профессиональных программистов, так и новичков.

Русскоязычные видео


Статический анализ кода


Picture 19

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

Второй вебинар по SAP Cloud Platform: детальный обзор сервисов

Время на прочтение1 мин
Количество просмотров2.2K
Обновлено: доступна видеозапись вебинара.





Мы продолжаем серию вебинаров по SAP Cloud Platform и сегодня в 11:00 приглашаем всех желающих познакомиться с некоторыми сервисами для платформы. Эксперты SAP расскажут о следующих темах:

  • как связать воедино разные программные приложения на уровне процессов и данных — создать единый бизнес-процесс, состоящий из бизнес-сервисов, с помощью Integration Service
  • как «принести» и использовать свой собственный готовый программный код для запуска на платформе SCP (с помощью Cloud Foundry)
  • как превратить свой программный сервис в продаваемый продукт с помощью API Management
  • сервис геймификации, позволяющий превратить скучное бизнес-приложение в захватывающее приключение
  • WebIDE

Для участия в вебинаре необходимо зарегистрироваться.

Напоминаем, что серия вебинаров приурочена к проведению онлайн-конкурса по разработке приложений SAP Кодер.

Почему Apache Ignite — хорошая платформа для микросервисов

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


Прим. Переводчика. Статья может быть интересна архитекторам и разработчикам, планирующим построение решения на основе микросервисов, либо ищущим способы оптимизации текущего решения, особенно если работа идет с большими объемами данных. Перевод сделан на основе части 1 и части 2 цикла статей о микросервисах на Apache Ignite. Предполагается общее знакомство с экосистемой Java (Apache Ignite работает также с .NET, C++, а через REST и с другими языками, но примеры в статье будут апеллировать к Java), рекомендуется наличие базового знания Spring.

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

Если вы используете решения на основе микросервисной архитектуры там, где есть высокая нагрузка и необходимо работать с активно растущими массивами данных, скорее всего, вы сталкивались или столкнетесь с проблемами классических подходов:
Читать дальше →

Простые числа Мерсенна и тест Люка-Лемера

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

Перевод поста Джона Макги (John McGee) "Mersenne Primes and the Lucas–Lehmer Test".
Код, приведенный в статье, можно скачать здесь.

Выражаю огромную благодарность Полине Сологуб за помощь в переводе и подготовке публикации
.



Содержание


Введение.
Теорема множителей Эйлера и Мерсенна
Люка и Лемер
От ${M_{13}}$ до ${M_{20}}$
Совершенные числа
21-е, 22-е и 23-е числа Мерсенна
24-е, 25-е и 26-е числа Мерсенна.
27-е и 28-е числа Мерсенна
29-е число Мерсенна
30-е и 31-е числа Мерсенна
Великий интернет-поиск чисел Мерсенна
Факторизация чисел Мерсенна


Введение


Простое число Мерсенна — простое число вида ${M_p} = {2^p} - 1$ (значение степени р также должно быть простым). Эти простые числа получили свое название от имени французского математика и религиозного ученого Мерсенна, который и составил данный список простых чисел этой формы в первой половине семнадцатого века. Первые четыре из них были известны уже давно: ${M_2} = 3$, ${M_3} = 7$, ${M_5} = 31$ и ${M_7} = 127$.

Мерсенн утверждал, что значение ${2^p} - 1$ будет простым для простых чисел $p \leqslant 257$, принадлежащих множеству $p \in \left\{ {{\text{2}}{\text{,3}}{\text{,5}}{\text{,7}}{\text{,13}}{\text{,17}}{\text{,19}}{\text{,31}}{\text{,67}}{\text{,127}}{\text{,257}}} \right\}$. Во всем ли он был прав, можно проверить с помощью функции Wolfram LanguagePrimeQ, в которой используются современные методы тестирования чисел на простоту, для которых не требуется поиска конкретного множителя, чтобы доказать, что число составное.
Читать дальше →

Всё плохо

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

image


Что ж, всё плохо. Немного забавно так говорить: на конференции (Web à Québec) было много разговоров об удивительном будущем и вещах, возможных благодаря новым технологиям. О новых средствах и устройствах, которые должны сделать нашу жизнь проще. Мои знакомые знают, что у меня обычно очень циничный взгляд на технологии; лично я боюсь всех этих умных устройств, которые реагируют на мои слова, чем восхищались другие спикеры.


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

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

В поисках быстрого локального хранилища

Время на прочтение7 мин
Количество просмотров25K
Текст этой статьи также доступен на английском.

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

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

Тестирование параллельных процессов

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

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

В статье я расскажу о своем подходе к тестированию таких ситуаций. А также приведу несколько наглядных (и наверное даже классических) примеров багов, которые удобно протестировать с помощью этого подхода. Все примеры багов живые — то, что встречается в работе.

Забегая вперед сразу скажу, что в конце статьи будет ссылка на github, куда я выложил готовое решение, позволяющее тестировать параллельные консольные процессы легко и просто.
Читать дальше →

Открываем доступ к видеозаписям HighLoad++ за последние пять лет

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

Мы выложили в открытый доступ видеозаписи последних пяти лет конференции разработчиков высоконагруженных систем HighLoad++. Смотрите, изучайте, делитесь и подписывайтесь на канал YouTube.

Более терабайта записей и 500 видеороликов! Это всё, под катом только реклама :)

Перейти в канал YouTube!

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

А ваша вебкамера работает в новом Firefox 53?

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

В недавнем апдейте Firefox 53, возможно пропала поддержка некоторых веб-камер либо произошли какие-то сдвиги в WebRTC API. Сейчас разбираемся. Мы заметили это на тестах. Если в Firefox 52 видео корректно захватывалось со всех вебкамер, участвующих в тестировании, то в FF 53 некоторые камеры выпали, а именно встроенные камеры. Стоит заметить, что баг воспроизводится только со встроенными камерами под Windows 7 и Windows 8. Не воспроизводится с USB-камерами на Windows 10 и совсем не воспроизводится на Mac OS.
Читать дальше →

GoTo Data Science Challenge 2: гранты на летнюю школу

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

Мы анонсируем конкурс для получения грантов в рамках направления по анализу данных и машинному обучению летних школ GoTo. К участию приглашаем школьников и младшекурсников. В качестве задания предлагается kaggle-соревнование от Quora, в котором необходимо построить модель для определения вопросов-дубликатов.


image


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


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

DeclarativeCOS — Декларативное программирование на Caché

Время на прочтение5 мин
Количество просмотров2.6K
Проект DeclarativeCOS — крик души по теме программирования на COS.

Цель проекта — обратить внимание сообщества к улучшению внутреннего ядра COS.

Идея проекта — поддержка лаконичного синтаксиса при работе с циклами и коллекциями.

image

Итак, что же лаконичного я придумал? Добро пожаловать в примеры!
Читать дальше →

Трансляция RTMP видеопотока из Live Encoder на WebRTC

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

HTTP протоколы доставки видеоконтента, такие как HLS и DASH давно потеснили Flash в нише воспроизведения онлайн-видео контента в браузерах.

Тем не менее, изначально флэшовый протокол RTMP, остается одним из самых популярных способов доставки Live видео от источника видео до сервера ретранслятора. RTMP продолжают использовать такие сервисы, как Facebook Live, Youtube Live, и другие, где требуется вещать живое видео и проводить трансляции. Таким образом, несмотря на предсказания и констатации скорой кончины Flash, протокол RTMP все еще на коне и не уступает своих позиций в нише видеотрансляций.
Читать дальше →

ZX Spectrum: 35-летний юбилей

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


35 лет назад, 23 апреля 1982, появился ZX Spectrum — замечательный домашний компьютер, который приобщил к программированию немало людей. В первой половине 1990-х эти 8-битные компактные устройства были очень популярны в России. По сути, ZX Spectrum’ы заполнили нишу бюджетных игровых приставок, но при этом позволяли писать полноценные программы на Basic (и не только). В честь очередной годовщины мы решили вспомнить наиболее яркие игры, покорившие сердца многих пользователей ZX Spectrum.

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

Как я писал предложение к стандарту С++

Время на прочтение4 мин
Количество просмотров25K
Это будет история младшего разработчика из Яндекс.Паспорта о появлении предложения в стандарт С++, разработанного в соавторстве с Антоном antoshkka Полухиным. Как часто бывает в жизни, что-то новое началось с боли, а точнее — с желания её прекратить.


Жила-была библиотека у меня на поддержке. Всё у неё было хорошо: собиралась под Linux, работала, не падала. Однажды пришли люди с просьбой (требованием) собрать её под Windows. Почему бы и нет? Но с первого раза не получилось. Корнем зла оказалась рукописная криптография, которая в какой-то момент умножала два 64-битных целых числа. Для сохранения результата такого умножения потребуется число на 128 бит, и в библиотеке использовался тип __int128. Он прекрасен: имеет естественный интерфейс, поддерживается несколькими компиляторами (gcc, clang), работает без аллокации памяти, но главное — он есть.

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

Исследование положения глаз у более 1000000 лиц: правило золотого сечения или правило третей?

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

Перевод поста Майкла Тротта (Michael Trott) "Profiling the Eyes: ϕaithful or ROTen? Or Both?".
Код, приведенный в статье, можно скачать здесь.

Выражаю огромную благодарность Полине Сологуб за помощь в переводе и подготовке публикации




Содержание


Исследование проявления золотого сечения в положении человеческих лиц на картинах и фотографиях
Уровень линии глаз на старых картинах — скорее ROT, чем φaithful
Высота линии глаз в современных картинах
Высота линии глаз в работах профессиональных фотографов
Высота линии глаз в селфи
Фото из профилей LinkedIn
Лица с обложек еженедельных журналов последних трех десятилетий
Обложки комиксов
Ежедневные газеты и журналы мод
Знаменитости из киноиндустрии
Кино: линия глаз в движении
Выводы



Исследование проявления золотого сечения в положении человеческих лиц на картинах и фотографиях


Существует огромное количество литературы, посвященной золотому сечению в природе, в физиологии и психологии, а также в произведениях искусства (см. эту статью о золотом сечении, и вот эти: о золотом сечении в искусстве, в природе и в человеческом теле, и еще — о структуре творческого процесса в науке и искусстве). В последние годы нарастает скептицизм по поводу распространенности золотой пропорции в этих областях. Были пересмотрены более ранние исследования. Смотрите, например, исследования греческих храмов Фотакиса, Марковского, Фостера, Холланда и Бенджафилда, и Свободовой и др. — по физиологии человека.

LinqToSolr — используем LINQ для получения данных из Solr

Время на прочтение4 мин
Количество просмотров4.1K
image
В силу того, что в нашей компании в качестве платформы полнотекстового поиска выбор пал на Solr, возникло сильное желание упростить работу с запросами к Solr через использование LINQ выражений.

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

Результатом стала маленькая библиотека LinqToSolr (GitHub проект), которая содержит в себе реализацию интерфейса IQueriable<> с возможностью конвертации запросов в понятный Solr API и обратно.
Читать дальше →

…And Justice for All

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

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


image

Под катом мои субъективные соображения на этот счет.

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

GeekUniversity — первый в России онлайн-университет с гарантированным трудоустройством

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


Новость для тех, кто мечтает заниматься разработкой сайтов, веб- или мобильных приложений. Образовательный IT-портал GeekBrains и Mail.Ru Group запустили совместный проект — первый в России онлайн-университет, готовящий веб-разработчиков, Android- и iOS-программистов. Студенты GeekUniversity смогут пройти путь от новичка до middle-разработчика всего за год.
Читать дальше →

Все, что вам нужно знать об обнаружении изменений в Angular

Время на прочтение8 мин
Количество просмотров91K
Наткнулся на хорошую статью об устройстве Angular'овского механизма обнаружения изменений (change detection). Т.к. тема достаточна важна, но при этом недостаточно глубоко раскрыта даже на англоязычных ресурсах, а найти русскоязычные материалы на эту тему, вообще, не представляется возможным, решил перевести данную статью.
Перевод под катом

Как Reddit создал r/Place

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

enter image description here


Над проектом работали несколько команд — фронтенд, бэкенд, мобильная разработка. По большей части он был реализован на уже существовавших в Reddit технологиях. В этой статье мы рассмотрим, как с технической стороны создавался Place. Если хотите посмотреть код Place, то он здесь.

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

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