Новости про программирование

Avast выпускает открытый декомпилятор

Выявление самого свежего вредоносного кода — всегда сложная задача, даже для профессионалов отрасли.

Чтобы помочь инженерам вести реверсный анализ машинного кода, компания Avast выпустила декомпилятор RetDec, который находился в разработке 7 лет. Примечательно, что он поддерживает не только PC архитектуру, но и другие, ключаря ARM, PIC32, PowerPC и MIPS. В дополнение к версии декомпилятора с открытым исходным кодом, опубликованным на GitHub, RetDec также выпущен в виде веб сервиса.

RetDec

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

RetDec

Разработчики Avast также подготовили специальный REST API, который позволяет сторонним разработчикам использовать декомпилятор RetDec своих продуктах.

Microsoft развивает квантовые вычисления

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

Язык и прочие инструменты будущей технологии объединяют традиционные средства из C# и Python. Таким образом, компания надеется привести работу со сложными машинами на уровень обычного программирования.

Очевидно, Microsoft не хочет пропустить столь важный этап в эволюции вычислительных систем, именно поэтому она решила создать язык, которого на самом деле негде использовать. Этот язык не имеет имени, однако фирма уже строит планы по написанию на нём квантового искусственного интеллекта. Пока в Рэдмонде планируют использовать квантовые системы для обучения Cortana за несколько дней, вместо нынешних месяцев.

Кот Шрёдингера

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

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

Google создаёт новый формат изображений

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

Согласно файлу ReadMe на GitHub, директория содержит энкодер и декодер для этого формата. Компания предупреждает, что проект находится на ранних стадиях исследования и не может быть использован ни для каких целей.

Google

Также поясняется, что формат Pik требует процессор с технологиями AVX2 и FMA, например, Haswell. Несмотря на то, что разработчики предупреждают о начальных этапах, они опубликовали исходный код и инструкции по компиляции, так что если вы обладаете необходимыми навыками, вы можете собрать свою утилиту для кодировки изображений.

Современный формат изображений от Google, WebP, работающий как с потерей качества при сжатии, так и без, был анонсирован в сентябре 2010 года. И пока не ясно, станет ли компания менять WebP на Pik, или нет.

Python — самый популярный язык программирования

Согласно рейтингу языков программирования, составленному IEEE Spectrum, самым популярным языком в мире является Python.

За пару лет Python показывал быстрый рост популярности. В прошлом году он занимал ещё третье место, а уже в этом получил рейтинг 100, став самым популярным. Сразу за ним, с рейтингом 99,7 идут C и Java, с 99,4 баллами. Авторы исследования отметили, что популярность использования языка сильно зависит от области его применения. Так, Python прекрасно работает для Web окружения и настольных систем, а вот в отраслях встраиваемых решений и мобильных устройств он не так популярен.

Статистика языков программирования

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

Замыкает первую десятку Swift, а двадцатку — CUDA. Давно забытый Fortran оказался на 28 месте, а другой язык, стоявший на заре ЭВМ, Cobol — на 41-м.

Искусственный интеллект может уничтожить программирование

Датский стартап UIzard Technologies IVS презентовал новую нейронную сеть, которая может создавать приложения, преобразовывая предварительные формы интерфейса в исходный код.

Основатель компании Тони Белтрамелли опубликовал исследование, в котором показан принцип использования искусственного интеллекта для построения нейронной сети, которая может генерировать код автоматически, анализируя скриншоты GUI.

Pix2Code

Названная Pix2Code, система обгоняет по производительности нескольких программистов, поскольку может создавать код для Android, iOS и «основанных на веб технологиях». Точность кода, создаваемого по GUI, составляет 77%, однако это величина вырастет по мере дальнейшего обучения сети.

Автор системы представил ролик с демонстрацией работы системы.

Microsoft отказывается от совместимости с Android

Компания Microsoft долгое время пыталась создать «мост», который позволял бы с лёгкостью портировать приложения для смартфонов на Windows 10 с популярных мобильных платформ. И если утилита преобразования программ с iOS была создана без проблем, то с её Android эквивалентом что-то пошло не так.

Ранее мы сообщали о том, что Microsoft замедлила разработку моста для Android, и как теперь оказалось, утилита Windows Bridge for iOS станет единственным средством трансформации мобильных программ.

Кросс-платформенные приложения

Проект преобразования Android приложений, известный под кодовым именем Astoria, был анонсирован в прошлом году на конференции Build. Технология должна была позволить преобразовывать Android приложения для работы в системах Windows 10, Windows Mobile 10 и Xbox. Будучи созданным, приложение должно было резко увеличить количество доступных для Windows приложений, однако Microsoft решила прекратить проект.

Кевин Галио, представитель Microsoft, заявил, что компания получила много отзывов, согласно которым, в использовании двух технологий для преобразования приложений от разных ОС нет необходимости. «Мы бережно учли эти отзывы и решили, что мы сфокусируемся над нашим предложением Windows Bridge for iOS, и сделаем доступным единый мост для предобразования мобильного кода на все устройства с Windows 10, включая Xbox и PC».

Процессоры Intel будут поддерживать Clang

Компания Intel объявила о том, что процессоры Cannonlake будут поддерживать Clang, фронтэнд языка семейства C для компилятора инфраструктуры LLVM.

По информации Phoronix Елены Демихвоски, старшего программного инженера Intel, процессоры Cannonlake получат поддержку AVX-512. Однако вряд ли расширение появится на всех чипах Cannonlake, поскольку компания решила отключить технологию на многих популярных моделях процессоров, таких как Core i3 и Core i5. Скорее всего, технология станет особенностью высокопроизводительных  Core i7, которые также получат расширения SHA и UMIP.

CPU

Этот шаг является очень важным, поскольку инструкция AVX-512 позволяет приложениям, подобным Prime95, получить преимущества дополнительных регистров и исполнительных блоков. Таким образом, процессор может удвоить пиковую пропускную способность в операциях с плавающей запятой.

Инструкция AVX-512 обеспечит преимущество в высокопроизводительных расчётах, хотя пока такие приложения ещё не выпущены.

Что касается AMD, то архитектура Zen должна получить два 256-битных блока FMAC, которые совместно смогут обрабатывать 512-битные инструкции AVX с плавающей запятой. И возможно, что Intel, опасаясь нового расширения процессора в архитектуре Zen, решила не отставать от конкурента.

Новый алгоритм GPS позволит увеличить точность до сантиметров

Команда исследователей из Университета Калифорнии представила новый алгоритм, который может кардинально повысить точность систем GPS. При использовании этого алгоритма точность GPS систем повысится до сантиметрового уровня, в то время как сейчас она находится в пределах 10 м.

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

GPS навигация

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

AMD хочет открыть графические чипы

Компания AMD уверена в том, что залогом ускорения работы GPU является не только архитектурная составляющая и технология их производства, но и программный код, исполняемый на этих процессорах.

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

GPUOpen

Данная инициатива может стать очень важным шагом. По словам AMD, она будет касаться множества платформ. Компания не станет делать это из великодушия. Очевидно, что в хай-энд сегменте инициатива будет подавлена традиционно консервативной позицией NVIDIA, которая и лидирует на рынке дискретной графики. На рынке интегрированной графики идея будет заблокирована лидером Intel, так что GPUOpen позволит лишь в некоторой степени увеличить привлекательность для разработчиков решений Radeon, позволив фирме немного продвинуться на рынке.

Создана версия XCOM для Microsoft Excel

Не стоит недооценивать возможности электронных таблиц. Пользователь Reddit с ником crruzi, изучая возможности Visual Basic, создал работоспособную копию XCOM для таблицы Microsoft Excel.

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

EXLCOM

Конечно, EXLCOM находится на начальных этапах разработки, но игру уже можно загрузить. Не стоит также забывать, что игра корректно работает лишь в определённых версиях Microsoft Excel, и совершенно неработоспособна в альтернативных приложениях, таких как Google Docs или Open Office. В соответствующем треде Reddit можно ознакомиться с решением некоторых проблем.

EXLCOM

В любом случае, среди игр для Excel работоспособный проект XCOM является большим достижением.