Архив за 14 марта 2017 - 5

Микроклоны — это дублированные фрагменты кода очень малого размера — всего лишь несколько инструкций или строк. В этой статье мы рассмотрим «эффект последней строки» — явление, при котором последняя строка или инструкция в микроклоне с гораздо большей вероятностью содержит ошибку, чем предыдущие строки или инструкции. С этой целью мы изучили 219 открытых проектов и 263 предупреждения о дефектных микроклонах, а также опросили шестерых авторов реальных приложений, допускавших такие ошибки в своем коде. В нашей междисциплинарной работе также изучаются психологические механизмы, обуславливающие сравнительно тривиальные ошибки этого типа. Опираясь на результаты опросов и дальнейшего технического анализа, мы предполагаем, что в существовании эффекта последней строки ключевую роль играют так называемые «ошибки последовательности действий»: при копировании кода внимание разработчиков переключается на другие задачи из-за отвлекающих факторов и монотонной природы самой этой процедуры. Более того, все микроклоны, чье происхождение мы смогли установить, были обнаружены в непривычно больших коммитах. Знание о данном эффекте имеет два полезных следствия для программистов: 1) им будет легче распознавать ситуации, в которых особенно велика вероятность допустить ошибку в микроклонах; 2) они смогут использовать автоматический детектор микроклонов / PVS-Studio, что упростит обнаружение ошибок этого типа.
Читать полностью »

Как затруднить идентификацию, обмануть видеоаналитику и скрыть лицо от камер - 1

Этот человек, которого мы будем называть Фред, ибо таково кодовое имя, под которым он сообщает собранную информацию, находясь в костюме-болтунье, не может быть опознан по внешнему виду или голосу. Он похож на расплывчатое пятно и ни на что больше, не правда ли, друзья? «Помутнение», Филип К. Дик.

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

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

Читать полностью »

В конце февраля появилась информация, согласно которой новые планшеты iPad с дисплеями диагональю 10,5 и 12,9 дюйма точно не выйдут в первом квартале. Тогда сообщалось, что они могут появиться на рынке даже не в мае, а в июне этого года.

Теперь же источник из тайваньской цепочки поставок сообщает, что производство iPad с диагональю дисплея 10,5 дюйма начнется уже в марте. Кроме того, по данным, предоставленным информатором, анонс устройства состоится в первых числах апреля и будет посвящен официальному открытию штаб-квартиры Apple Park.

Ягеллонский университет разрабатывает приложение-тренер с использованием возможностей IBM Watson - 1

Корпорация IBM совместно с институтом прикладной психологии Ягеллонского университета относительно недавно начали разрабатывать приложение JaneAI. Эта программа задумана в качестве персонального тренера физической активности. Система, как говорят разработчики, будет анализировать физическую активность своих пользователей и мотивировать их выполнять упражнения на регулярной основе. И да, программная платформа отличается от всего, что было выпущено в этой сфере до настоящего момента. Все потому, что помогать человеку будет не просто приложение, а целая когнитивная система.

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

Долго ли, коротко ли, вместе с новой Visual Studio 2017 в релиз вышел ASP.NET Core. Тулинг лишился приставки preview, как и все инфраструктурные сборки, поставляемые Microsoft'ом. На мой взгляд, фреймворк получился отличным, а история с cjproj=>xproj=>project.json=>csproj и поломанная совместимость при переходе с RC1 на RC2 — это всё же разумная плата за скорость развития. Ну да ладно, опустим дела минувших дней, и вернёмся к текущим реалиям.

А реалии таковы, что есть задачи, и есть инструменты которые их решают. В частности, передо мной встала задача генерирования PDF-документов средствами ASP.NET Core. «Хмм… Наверняка уже есть что-то готовое...», — подумал я. Как бы не так. Вернее готовые библиотеки для этого есть, но платные, а вот чего-то OpenSource'ного нет. «А как же iText?», — спросите вы. «AGPL», — ответит вам страничка с лицензией на гитхабе. Для OpenSource проектов бесплатно, а для коммерческого использования, извольте заплатить. Ну что ж, раз нет инструмента, решающего мою задачу, значит я сделаю его сам.
Читать полностью »

Всем привет! Я хочу рассказать историю разработки игры на Delphi от идеи до релиза.
Статья больше носит характер истории, без вникания в подробности реализации. Честно говоря, очень хочется написать про то, как мы строим картинку в игре, или локализуем её, как мы делали GUI, но это я выделю в отдельную статью, больше техническую, с кодом. Иначе эта окажется слишком большой. Кода тут не будет, но детали под катом. Прошу!

Blast-off. От идеи до релиза - 1

Application.Initialize;

Итак. Игра наша придумана была давно для конкурса разработки игр (джема) IGDC №77 — джампер Это было начало 2012 года. Игру мы делали в состоянии перманентного кранча аж две недели. Код вышел ужасным. Расширять было невозможно, порой возникали необъяснимые глюки, но в целом игра работала и некоторые товарищи умудрялись проводить в ней дни, недели. Пара человек залипали в течение месяца. Стало понятно, что реиграбельность у неё хорошая и надо бы её доделывать. Но, как я сказал выше, код был ужасен из-за скомканных сроков, так что доделок было сделано не очень много и всё благополучно забыто.
Читать полностью »

image

Ведя со знакомыми диспут об эскадренных миноносцах-вертолётоносцах типа Hyūga (16DDH), порождение IHI Corporation (Япония), по вопросу: японский ли это «Мистраль» или масштабированный в «минус» советский авианесущий крейсер (ТАВКр пр. 1143), потроша сайты японской судостроительной промышленности, случайно наткнулся на творение Mitsubishi Heavy Industries судов Ramform(SSS) W-класса, о коих я и не знал и не слыхивал. Прежде, чем перейти к ним, не удержусь, и приведу фото самого предмета спора и цитату из wiki:

image

Официальная классификация как эсминец-вертолётоносец не соответствует реальным боевым возможностям корабля. Корабль значительно превышает по водоизмещению эсминцы-вертолётоносцы предшествующих типов, имеет сплошную полётную палубу и относительно большую авиагруппу, что позволяет классифицировать его как лёгкий авианосец. Авторитетный военно-морской справочник Jane’s Fighting Ships классифицирует его как вертолётоносец

[1]
Читать полностью »

В прошлом году в Emercoin обратился Михаил Шляпников — глава фермерского хозяйства Колионово, ставший в настоящее время первым в мире фермером, успешно использующим блокчейн в сельском хозяйстве. Сегодня в Emercoin и к Михаилу все чаще поступают вопросы: «Как использовать блокчейн в сельском хозяйстве? С чего начать? Будет ли выгоден блокчейн для меня? » и т.д. Опираясь не на теорию, а на практику, команда Emercoin создала пошаговую инструкцию применения блокчейн-технологии для фермеров.

image
С блокчейном будущее сельского хозяйства стало чуть ближе
Читать полностью »

Всем привет. В этой статье я расскажу, как контролировать работу windows-службы с помощью системы мониторинга Zidium.

Зачем мониторинг?

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

Но возник вопрос — как мне отслеживать возможные проблемы со службой?

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

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

image
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js