Как-то тихо и незаметно подошло время женитьбы моего старшего брата. Из всех свадебных хлопот на меня выпало задание подготовить пожелания молодым в виде надписей на стенах комнаты. Но поскольку такие простые поручения мне давать нельзя ввиду полнейшей расхлябанности, выделенный месяц на подготовку плакатов съели другие не менее важные дела. Соответственно, к задаче я приступил непосредственно вечером перед свадьбой, когда все магазины уже были закрыты. Однако, в таких сжатых условиях самое время проснуться творческой жилке, что и произошло. В результате новобрачные получили свои поздравления, а копилка моих знаний и эго программиста слегка приросли в объёме.
Читать полностью »
Рубрика «Песочница» - 203
Поздравляем новобрачных с помощью связки fortune, xcowsay, nix-машины и телевизора
1970-01-01 в 0:00, admin, рубрики: Песочница, метки: cowsay, fortune, свадьбыЭто рассказ о новой разработке RemObjects — компании, которая начинала с компонентов для Delphi, а сейчас выпускает целый набор компиляторов Elements для всех популярных платформ: Windows, .NET, JVM, Android, iOS, Cocoa. В набор входят компиляторы с языков Oxygene (клон Паскаля-Delphi), C#, Swift (бесплатный), на любом из которых можно писать для любой указанной выше платформы. И вот теперь в этот список добавляется новый язык — Java. Чем не повод для статьи на Habrahabr?
Читать полностью »
Для чего я создал очередную библиотеку, чтобы уменьшить шаблонный код Redux.js
1970-01-01 в 0:00, admin, рубрики: ПесочницаДанный пост — перевод данной статьи
Я работал над новым проектом на React и Redux. Раньше при разработке проектов на React, я работал в одиночку, но в этот раз я был частью команды, где каждый член команды имел некоторый опыт в React и Redux. Проект должен был быть выпущен в продакшн за короткое время.
Читать полностью »
Мотивация. Где ее найти и как с ее помощью сделать что-то полезное
1970-01-01 в 0:00, admin, рубрики: ПесочницаКак я нашел мотивацию для себя и что же это такое
Чем отличается квалифицированный специалист от неквалифицированного? Как выбрать сотрудников к себе в компанию? Я думаю, что каждый, кто занимается подбором (не глупый PR-менеджер, а опять же специалист, который заинтересован в развитии компании и качестве сотрудников, в ней работающих) задавал себе подобный вопрос. Но, увы, ответа на этот вопрос не будет. На эту тему можно много говорить, но каждый, скорее всего, останется при своем мнении.
Читать полностью »
Можно пойти на выставку компьютерной графики. Действительно, если есть компьютерная графика, то должны быть и такие выставки. Для интересующихся есть альтернатива: учебник, идущий в комплекте с одним векторным графическим редактором (впрочем, почему бы его здесь еще раз не назвать — это Inkscape).
Читать полностью »
Интересные Sсi-Fi фильмы, которые вы (не должны были, но) могли пропустить в 2016 году
1970-01-01 в 0:00, admin, рубрики: Песочница, метки: научная фантастикаДля читателей Geektimes (а еще для своего мужа) я составила список интересных Si-Fi фильмов ушедшего 2016 года. Фильмы, указанные ниже, доступны в сети и имели относительно небольшой или неуспешный релиз, поэтому я предполагаю, вы пропустили, по крайней мере, некоторые из них.
Читать полностью »
Алгоритм подсчета кол-ва расстановок n ферзей со сложностью меньше чем O(n!)
1970-01-01 в 0:00, admin, рубрики: ПесочницаПронумеруем строки и столбцы доски размером nxn номерами от 0 до n-1. Номер клетки будет иметь вид (i,j), где i – номер строки, j – номер столбца. Координаты ферзей будут иметь вид (i,p(i)).
Пускай у нас уже расставлены k ферзей в строках от 0 до k-1.
Тогда ферзь с координатами (i,p(i)), где i<k, может бить клетки в строке k с координатами (k,p(i)), (k,p(i)-(k-i)) и (k,p(i)+(k-i)), при этом нас интересуют только клетки с номерами столбцов от 0 до n-1.
Теперь определим битовую маску, для того чтобы определить, в какие клетки строки k нельзя ставить ферзя.
SV(k)=Sum(i=0..k-1,2^p(i))
SD1(k)=Sum(i=0..k-1,2^p(i) shr (k-i))
Если p(i)-(k-i)<0, то 2^p(i) shr (k-i)=0.
SD2(k)=Sum(i=0..k-1,2^p(i) shl (k-i)) and (2^n-1)
Если p(i)+(k-i)>=n, то 2^p(i) shl (k-i) будет отброшено при помощи and (2^n-1).
S(k)=SV(k) or SD1(k) or SD2(k)
где ^ – возведение в степень, or – побитовое или, and – побитовое и, shl – сдвиг влево, shr – сдвиг вправо.
В данном случае используется Sum вместо or, т.к. на любой вертикали или диагонали не может быть более одного ферзя.
Если записать рекуррентно, то получится
SV(0)=0
SD1(0)=0
SD2(0)=0
SV(k+1)=SV(k) or 2^p(k)
SD1(k+1)=(SD1(k) or 2^p(k)) shr 1
SD2(k+1)=((SD2(k) or 2^p(k)) shl 1) and (2^n-1)
Читать полностью »
Разработка редактора (расширение на C# для Visual Studio)
1970-01-01 в 0:00, admin, рубрики: ПесочницаДень добрый.
В связи с созданием большого расширяемого проекта, возникла необходимость дать разработчикам возможность собирать свои пакеты/модули под проект. (Нечто похожее на редактор Feature и WSP Package для SharePoint) Для этого необходимо создать редактор пакетов/модулей для Visual Studio. Для создания расширения под Visual Studio очень мало информации в интернете, а из официального нашел только это. Решил собрать свою библиотеку (VSExtensibilityHelper), которая бы облегчила пользователю создание VSIX дополнений. В ней собраны базовые классы для создания редакторов:
- BaseEditorFactory — Базовый класс фабрика
- BaseWinFormsEditorPane — Базовый класс для редактора на основе WinForms компонента
- BaseWpfEditorPane — Базовый класс для редактора на основе WPF компонента
Варианты преобразования команд средств управления виртуальными машинами
1970-01-01 в 0:00, admin, рубрики: ПесочницаНекоторые команды средств управления виртуальными машинами используемые системными администраторами для выполнения процедур запуска, настройки, удаления и замены виртуальной машины можно заменить на связанные команды другой виртуальной машины, что позволяет выполнить миграцию с одной системы управления виртуальными машинами на другую при необходимости.

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