Рубрика «macros»

Векторная геометрия для разработчиков Revit AP - 1

Класс XYZ представляет координаты в RevitAPI. А раз мы имеем дело с координатами, то следует рассмотреть азы векторной геометрии. Всего два действия: сложение и вычитание векторов, позволят сделать кучу полезной работы.
Читать полностью »

Работа с Aerospike на scala при помощи магии макросов

N|Solid

В нашем отделе бигдаты часть данных хранится в Aerospike. Потребителей довольно много, среди них два приложения, написанных на Scala, взаимодействие с базой в которых будет расширено в связи с постоянно растущими требованиями бизнеса. Единственным приличным драйвером для нас был джавовый клиент, упомянутый на сайте самой базы данных aerospike.com (http://www.aearospike.com/docs/client/java). Конвертация скаловых типов данных (а особенно иерархических) в соответствующие аэроспайковские типы приводит к большому количеству бойлерплейта. Чтобы этого избежать, необходим более удобный, а заодно и типобезопасный интерфейс.

Инженеры не любят писать много раз один и тот же код и стараются упростить и оптимизировать все повторяющиеся действия. Такие задачи часто решает кодогенерация. Поэтому мы решили написать свою библиотеку для работы с Aerospike, пользуясь макросами.

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

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

Как сделать презентацию интерактивной - 1Читать полностью »

Многие уже ощутили вызовы, связанные с огромным количеством несистематизированных источников информации; неконтролируемым ростом объёмов данных; критической важностью мобильности и доступности при принятии решений. За всеми этими вызовами стоит один из самых востребованных трендов — продуктивность. Office является одним из ведущих инструментов для решения задач по продуктивности, поэтому Microsoft было важно предоставить возможность разработчикам расширить свои решения, встраивая их в Outlook, Word, Excel , PowerPoint или подключаясь к данным в Office 365.

На недавно прошедшей конференции //build одним из ключевых трендов была продуктивность и Office как платформа для реализация кроссплатформенных решений порадовала новым функционалом. В этой статье мы расскажем о топ 5-ти.

Office как платфома для разработки набирает обороты - 1

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

Макросы в Emacs'е: формируем отряды для обработки - 1

Не забывай свои корни, помни, есть вещи на порядок выше…
Каста здесь

История из жизни

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

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

Сегодня мы поговорим о весёлых макросах.

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

Продуктивность уверенно входит в топ трендов последних лет и является еще более востребованным в 2016ом, причем включая в себя такие направления как Collaborative Software, Smart Virtual Personal Assistants,Bots и многие другие…
В данной статье мы расскажем о том, как компания Wrike расширила свое решение и реализовала Add-In для Office, а так же поделимся опытом его разработки.
Хочу поблагодарить за подготовку статьи Аркадия Рушкевича (Ведущий менеджер продукта) и Владимира Дупелева (Руководитель группы разработки ПО)

Недавно сервис для управления проектами Wrike анонсировал сразу несколько интеграций с продуктами Microsoft. Теперь можно авторизоваться в сервисе с корпоративным логином Azure Active Directory, добавлять в задачи файлы из OneDrive для бизнеса и установить дополнение Wrike в Office 365.

Последнее — пожалуй, самое важное с точки зрения продуктивности на рабочем месте. Мы решили рассказать о том, зачем системе управления проектами понадобилась интеграция с офисными приложениями, и поделиться опытом разработки надстройки для Office.

От документа к проекту: как Wrike создавал дополнение для Office 365 - 1

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

В разговорах об Office Add-ins (надстройки Office) часто упоминается «продуктивность». Это логично, ведь главная цель разработчиков – повышение продуктивности в работе конечных пользователей. Но продуктивность важна и для самих разработчиков. Эта статья о продуктивности в разработке. Речь пойдёт о новом JavaScript API для Office и о том, какие инструменты мы применяем для создания новых решений.

Продуктивность в разработке Office Add-ins - 1

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

В конце 2015-го года Microsoft запустила конкурс по разработке решений на базе Office 365. Участникам нужно было разработать приложение, которое являлось бы либо надстройкой для Office, либо использовало бы Office 365 APIs. Я и двое моих друзей решили участвовать. Идея нашлась очень быстро, достаточно было сесть и обсудить «боли», возникающие у каждого из нас в повседневной работе. Так родилась идея Molecula – решения, позволяющего упростить ведение групповых переписок в Outlook.

Чтобы лучше понять кому и для чего нужна Molecula, давайте посмотрим наш промо-ролик, созданный для участия в конкурсе. История про успешного IT-менеджера Майка (на английском):


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

Макросы в haxe: выполняем код прямо во время компиляции (и это нормально) - 1В предыдущей статье я немного рассказал про haxe — простой и удобный язык общего назначения. Однако, кроме простоты и понятности, есть в нём и вещи глубокие — такие, как концепция макросов — кода, который выполняется в процессе компиляции. Почему в haxe нет традиционных Си-подобных макросов и какие возможности нам отрывают haxe-макросы, и пойдёт речь в статье.
Читать полностью »

Давайте попробуем посмотреть на Sweet.js, компилятор, который реализует гигиенические макросы для JavaScript.

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

Sweet.js оперирует своим собственным форматом синтаксического дерева, почти на уровне токенов, с минимальной структурой. С одной стороны это делает возможным определять довольно экзотические синтаксисы для своих макросов, с другой — делает написание макросов несколько сложнее, как если бы они были определены над стандартным AST JavaScript.

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