Как с помощью анализа геоданных предсказать количество вызовов экстренных служб в разных частях города?

Автор: admin от 12-04-2018, 22:05, посмотрело: 54

Попробуйте решить задачу из онлайн-хакатона Geohack.112. Дано: территория Москвы и Московской области была разделена на квадраты размеров от 500 на 500 метров. В качестве исходных данных представлено среднее количество вызовов экстренных служб в день (номера 112, 101, 102, 103, 104, 010, 020, 030, 040). Рассматриваемый регион был поделен на западную и восточную часть. Участникам предлагается, обучившись по западной части, предсказать количество вызовов экстренных служб для всех квадратов восточной.



Как с помощью анализа геоданных предсказать количество вызовов экстренных служб в разных частях города?

Категория: Программирование

 

Разбор основных концепций параллелизма

Автор: admin от 12-04-2018, 22:05, посмотрело: 41

Всем кофе!



Завтра у нас плавненько стартует практически юбилейный поток курс «Разработчик Java» — уже шестой по счёту начиная с апреля прошлого года. А это значит, что мы снова подобрали, перевели интереснейший материал, которым делимся с вами.



Поехали!



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



РАЗДЕЛ 1



Вступление



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



РАЗДЕЛ 2



Концепции
















КонцепцияОписание
Atomicity (атомарность)Атомарная операция — это операция, которая выполняется полностью или не выполняется совсем, частичное выполнение невозможно.
Visibility (видимость)Условия, при которых один поток видит изменения, сделанные другим потоком


Таблица 1: Концепции параллелизма



Разбор основных концепций параллелизма

Категория: Программирование

 

Riot Games: анатомия технического долга

Автор: admin от 12-04-2018, 22:05, посмотрело: 52

Привет, меня зовут Билл «LtRandolph» Кларк. Я работаю техническим руководителем команды создания чемпионов LoL. За последние несколько лет я успел поработать в разных отделах разработки League, но единственное, чем я был постоянно одержим — это технический долг. Мне нужно найти его, понять его и, при возможности, устранить его.



Когда разработчики обсуждают любую существующую технологию, например патч 8.4 League of Legends, то часто упоминают технический долг. Я называю техническим долгом код или данные, за которые придётся расплачиваться будущим разработчикам. Этой печальной стороне разработки ПО посвящено бесчисленное количество постов, статей и определений. В своём посте я хочу обсудить виды технического долга, с которыми мне пришлось встретиться при работе в Riot, и рассказать о модели, которую мы начали использовать в компании. Если бы меня попросили выделить самый важный урок, который можно извлечь из этой статьи, то я сказал бы, что это описанная ниже метрика «инфицирования».



Riot Games: анатомия технического долга

Метрики



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

Категория: Программирование

 

Собственные валидации полей для Rules в одном классе

Автор: admin от 12-04-2018, 22:05, посмотрело: 62

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



Собственные валидации полей для Rules в одном классе



Я не думаю, что многие разработчики любят проверять входные данные и делают это достаточно тщательно, поэтому в современных фреймворках, таких как Yii 2, предусмотрены функции rules() для моделей и классы-Валидаторы, которые хоть и не избавляют от этой рутины, но, как минимум, делают этот процесс менее нудным.



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

Категория: Программирование

 

Linux-контейнеры: изоляция как технологический прорыв

Автор: admin от 12-04-2018, 22:05, посмотрело: 69

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



Linux-контейнеры: изоляция как технологический прорыв



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

Категория: Операционные системы » Linux

 

Нумерация двоичных деревьев

Автор: admin от 12-04-2018, 20:35, посмотрело: 64

Как пронумеровать все двоичные деревья? Как на КДПВ: “дерево” из одного листа будет первым, дерево из двух листов вторым, второе дерево с ещё одной веткой, исходящей из корня – третьим. А как найти номер произвольного дерева в такой схеме?



Нумерация двоичных деревьев

Категория: Операционные системы » Linux

 

«Holey beep»: найдена критическая уязвимость в «бипере» Linux

Автор: admin от 12-04-2018, 20:35, посмотрело: 66

В модуле beep операционной системы Linux обнаружена уязвимость, позволяющая запускать побочные эффекты файлов и просматривать их типы, не имея на то соответствующих прав. Расскажем, в чем суть проблемы и как варианты её решения предложило ИТ-сообщество.



«Holey beep»: найдена критическая уязвимость в «бипере» Linux

Категория: Операционные системы » Linux

 

Что общего у компании Crossover, космонавтики и NASA?

Автор: admin от 12-04-2018, 19:05, посмотрело: 49

У удалённой работы и фриланса в буквальном смысле многовековая история. Но её современная разновидность, известная под названием telecommuting, разумеется, гораздо моложе, а к его рождению самое непосредственное отношение имеет космическое агентство NASA. В общем, день космонавтики 2018 года — отличный повод для того, чтобы рассказать об истории дистанционной работы.



Что общего у компании Crossover, космонавтики и NASA?


В 1960-е «автор» определения дистанционной работы «telecommuting» Джек Ниллес (Jack Nilles) работал инженером в NASA. Часто он думал о том, насколько неудобно каждый день добираться до работы. В результате он начал исследовать этот вопрос после ухода из агентства.

Категория: Программирование

 

Транскрипция двенадцатого выпуска подкаста «Прокуратор»

Автор: admin от 12-04-2018, 19:05, посмотрело: 43

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



Краткая справка:

  • Да, подкаст называется «Прокуратор», но не Иудеи, а информационной безопасности.

  • Нет, на картинке не Понтий Пилат, а Николо Маккиавелли, ведь его «Принцепс» (или «Государь») первым описал методологию захвата власти и методы управления — то, с чем (попытками захвата и контроля) мы постоянно сталкиваемся в области «информационной» и любой другой «безопасности».

  • Да, мы решили сделать текстовую расшифровку одного из выпусков подкаста в первую очередь для тех, кто пока не знает, было бы ему интересно слушать подобные обсуждения, а во-вторую — для людей, лучше воспринимающих текст, нежели аудио.

  • Нет, 0c. Он был опубликован 30 марта — в процессе чтения (или прослушивания) вы поймёте, почему это важно понимать в середине апреля.

Категория: Программирование

 

Научное программирование: часть 1

Автор: admin от 12-04-2018, 19:05, посмотрело: 33

Наука в программировании — быль или реальность? Сколько её в языках и почему идут холивары о приемуществах одних языков над другими? Если интересно — прошу под кат.

Категория: Программирование

 
Назад Вперед