Существует великое множество файловых систем. Это и файловые системы для носителей информации (FAT*, NTFS, ext* и т.д.), и сетевые файловые системы (NFS, CIFS и т.д.), и виртуальные файловые системы, и великое множество других. А появлялась ли у тебя, %habrauser%, потребность в своей, еще несуществующей файловой системе? О том, как ее сделать для ОС Windows на managed-коде (.net), и пойдет речь.
Антон @masterOk
User
Анимации в WPF
11 min
81KПредисловие
Приветствую вас, дорогие хабраюзеры! Сегодня я хочу вам рассказать об анимации в WPF. О ней, конечно, писали ранее на хабре, однако я постараюсь рассказать подробнее. Мой пост будет скорее больше теоретический, однако, я надеюсь, вы извлечете из него выгоду.
Анимация в WPF отличается от всего, что вы видели раньше своей наглядностью и простотой. Раньше вам приходилось вручную перерисовывать сцену по таймеру, разумеется, написав довольно большой объем кода. Теперь вы можете создать анимацию в XAML файле, не написав ни единой строчки кода на C# (или любой другой .Net язык). Разумеется, осталась возможность создавать анимацию в коде, но об этом поговорим позднее. Анимация в WPF не перерисовывает элемент, а изменяет его свойства через определенные интервалы времени (по умолчанию около 60 раз в секунду, если вы не измените в Storyboard). Это позволяет ей оставаться самой собой, например, если анимировать кнопку, то во время анимации она будет оставаться «кнопкой», т.е. на неё можно будет нажать, и производить разнообразные манипуляции над ней.
Много кода, примеров и картинок под катом…
+5
Silverlight + Augmented reality + Shaders
6 min
3KПривет всем.
Я люблю работать с Silverlight, и вот недавно натолкнулся на Дополненную реальность с использованием Silverlight. Про неё и на Хабре уже писали, и в блогах довольно много написано, но я всё же немного повторюсь. Сама идея дополненной реальности интересна, но я хотел использовать её как-то необычно. И вот недавно руки дошли до изучения пиксельных шейдеров. Стало интересно попробовать соединить это вместе.
Если интересно, что из этого получилось, то Добро пожаловать под кат:
Я люблю работать с Silverlight, и вот недавно натолкнулся на Дополненную реальность с использованием Silverlight. Про неё и на Хабре уже писали, и в блогах довольно много написано, но я всё же немного повторюсь. Сама идея дополненной реальности интересна, но я хотел использовать её как-то необычно. И вот недавно руки дошли до изучения пиксельных шейдеров. Стало интересно попробовать соединить это вместе.
Если интересно, что из этого получилось, то Добро пожаловать под кат:
+22
+257
Хотите попробовать VDI, но боитесь? Тогда мы идем к Вам!
4 min
29KОбщаясь со многими Заказчиками, обратил внимание на то, что многие из них вроде хотят попробовать VDI на вкус, но боятся, что не проглотят – слишком сложно, говорят. Специально для тех, кто думает, что даже пилотное внедрение VDI – это слишком сложно, компания QUEST серьезно переработала установщик ПО vWorkspace с целью значительно упростить «вхождение» в увлекательный мир VDI. В этом посте я пройду вместе с вами, уважаемые коллеги, по всему пути, от самого начала, с установки первого сервера виртуализации, до показа Директору на его любимом iPad, что же это такое — загадочная «инфраструктура виртуальных рабочих столов».
+4
Документация по API платежных систем
1 min
7.3KЗа прошедший год в рамках проектов довелось поработать с рядом отечественных платежных системам. После чего, помимо опыта, осталось немного документации, которой и хочу поделиться. Возможно, кому-то пригодится в будущем.
+78
Оптимизация Win 7 для VDI
5 min
20KИтак, коллеги, сегодня поговорим о подготовке виртуальной машины с ОС Windows 7 для дальнейшего клонирования в среде VDI. Не стоит рассматривать этот пост в качестве безусловного руководства к действию, это лишь рекомендации для администраторов, как максимально оптимизировать Windows 7 для эффективного использования аппаратных ресурсов серверов виртуализации. В качестве платформы виртуализации рассматривается гипервизор VMware ESX, как лидер в своей области.
+15
Тюнинг меню Оперы
2 min
7.4K
+24
Взлом журнала Vogue или видео плеер за 119 руб
1 min
57KПоследний номер журнала Vogue, вышел с очень интересным вкладышем от Мартини.
ЗЫ. Видео удалили за нарушение авторских прав Americhip Russia. Перезалил на вимео
ЗЫ. Видео удалили за нарушение авторских прав Americhip Russia. Перезалил на вимео
+262
Строим плагиноориентированную модульную систему
4 min
3.5KГода три назад у меня роились идеи относительно того, как создать такое ядро системы, которое позволяло бы быстро и эффективно расширять его функционал с помощью подключаемых модулей, расширений. При этом нужно было минимизировать проблемы, которые возникают у плагинописателей при развитии продукта, проблемы совместимости множества плагинов.
С одной стороны задача не представляет проблем, достаточно дать разработчикам богатое API по работе с системой. Но с другой стороны, если изучение системы будет требовать слишком много трудозатрат, то она никогда не обретет популярности. Тщательное документирование в быстроразвивающихся проектах зачастую не работает, значит нужно использовать самые простые механизмы, которые позволят в кратчайший срок понять начинающему плагинописателю, как все работает.
Данная статья рассчитана на начинающих программистов, которые ищут идеи подобной архитектуры для реализации своих проектов.
С одной стороны задача не представляет проблем, достаточно дать разработчикам богатое API по работе с системой. Но с другой стороны, если изучение системы будет требовать слишком много трудозатрат, то она никогда не обретет популярности. Тщательное документирование в быстроразвивающихся проектах зачастую не работает, значит нужно использовать самые простые механизмы, которые позволят в кратчайший срок понять начинающему плагинописателю, как все работает.
Данная статья рассчитана на начинающих программистов, которые ищут идеи подобной архитектуры для реализации своих проектов.
+40
Простые правила проведения презентации для предпринимателя
4 min
34KКак вы знаете, StartupIndex почти каждый месяц проводит проектные сессии. Это закрытые конференции, на которых авторы стартапов проводят свои презентации перед независимыми экспертами и инвесторами.
Мы провели уже более десятка таких проектных сессий, на которых было представлено около семидесяти стартапов. Сегодня, по итогам этой работы, мы пришли к выводу, что манера поведения выступающего и качество презентации сильно влияют на то, как инвесторы и эксперты оценивают качество самого проекта.

Сейчас проводится множество мероприятий для стартапов, где они представляют свои проекты перед аудиторией. Часто на таких мероприятиях осуществляется видеосъемка — как, например, на наших проектных сессиях. В этой статье мы расскажем о том, как эффективно провести презентацию стартапа перед профессиональной аудиторией и при этом хорошо выглядеть на видео.
Мы провели уже более десятка таких проектных сессий, на которых было представлено около семидесяти стартапов. Сегодня, по итогам этой работы, мы пришли к выводу, что манера поведения выступающего и качество презентации сильно влияют на то, как инвесторы и эксперты оценивают качество самого проекта.

Сейчас проводится множество мероприятий для стартапов, где они представляют свои проекты перед аудиторией. Часто на таких мероприятиях осуществляется видеосъемка — как, например, на наших проектных сессиях. В этой статье мы расскажем о том, как эффективно провести презентацию стартапа перед профессиональной аудиторией и при этом хорошо выглядеть на видео.
+30
Способы оценки эффективности работника
4 min
43KМногие менеджеры сталкиваются с одной очень занимательной проблемой в IT-сфере. И имя этой проблеме — оценка эффективности работника. Еще пол столетия назад такая задача не вызывала приступов мигрени и паники у руководителей или экономистов, потому что все было просто. Работник закрутил 50 гаек — плохо, закрутил 150 гаек — великолепно! Но пришла революция информационных технологий, и оценка эффективности стала краеугольным камнем.

Давайте разберемся, что к чему. Допустим, у нас есть абстрактный IT-работник, очень сильно смахивающий на программиста, который будет создавать не менее абстрактный продукт в некой компании таких же абстрактных работников. Первое, что сделал бы оценщик середины 19 века, это вывел вполне четкие показатели труда. И были бы это время и количество кода. Чем больше кода создает работник, при минимальных временных затратах, тем более эффективный работник. Все это хорошо, но это не работает.

Давайте разберемся, что к чему. Допустим, у нас есть абстрактный IT-работник, очень сильно смахивающий на программиста, который будет создавать не менее абстрактный продукт в некой компании таких же абстрактных работников. Первое, что сделал бы оценщик середины 19 века, это вывел вполне четкие показатели труда. И были бы это время и количество кода. Чем больше кода создает работник, при минимальных временных затратах, тем более эффективный работник. Все это хорошо, но это не работает.
+118
Настройка групповых политик ограниченного использования программ в Windows 7
2 min
210K
Прочитав статью Windows-компьютер без антивирусов, я загорелся такой идеей обеспечения безопасности и решил попробовать сделать у себя так же.
Поскольку у меня стоит Windows 7 Professional, первой идеей оказалось использование AppLocker'a, однако быстро выяснилось, что работать в моей редакции винды он не хочет, и требует Ultimate или Enterprise. В силу лицензионности моей винды и пустоты моего кошелька, вариант с AppLocker'ом отпал.
Следующей попыткой стала настройка групповых политик ограниченного использования программ. Поскольку AppLocker является «прокачанной» версией данного механизма, логично попробовать именно политики, тем более они бесплатны для пользователей Windows :)
+49
Давайте знакомиться!
8 min
18K
Я пришел в Microsoft чуть более шести лет назад, начав работать в этом же департаменте, который на тот момент состоял всего из восьми человек, евангелистом (или экспертом по технологиям разработки ПО, как было написано на визитке). Сейчас нас уже больше 40 (точное число зависит от методики подсчета). До Microsoft я работал в компании DocsVision, где руководил разработкой этого продукта. А начинал я свою профессиональную карьеру в IT в компании Digital Design разработчиком ПО. До сих пор программирование считаю самым интересным занятием в жизни, хотя профессионально этим уже давно не занимаюсь.
Нашел я, как и мои коллеги, свое призвание в другом: в том, чтобы сделать более успешными и счастливыми всех разработчиков, ИТ-специалистов, архитекторов, технических студентов, в общем, всех технических специалистов в России. И это действительно та цель, которую большой Microsoft ставит перед нашим департаментом, без всяких прикрас. А планы по порабощению мира и задача «be evil» действительно не стоят у нас на повестке дня.
+18
Телефония на Cisco (Call Manager Express) — Часть 1
5 min
59KНачав изучать CVoice (642-436) я решил выкладывать некоторые лабы в виде статей. Первая часть — такой себе «Hello World», звонок с одного телефона на другой.


+27
Вскрываем эксплоиты, шифрованный javascript, вредоносные iframe — русский мануал Malzilla
3 min
5.7K Интересуясь информационной безопасностью, я часто имею дело с зараженными сайтами, содержащими фреймы на эксплоиты, шифрованный javascript, запутанные редиректы… Для облегчения работы я использую open source программу Malzilla. К сожалению на русских просторах интернета очень мало информации об этой тулзе, поэтому я хочу перевести официальный мануал к ней. Всего в нем 6 частей, ниже следует перевод первой из них.
+75
Сервер на стероидах: FreeBSD, nginx, MySQL, PostgreSQL, PHP и многое другое
16 min
40K
Введение
С момента написания мной предыдущей статьи по оптимизации этой связки прошло довольно много времени. Тот многострадальный Pentium 4 c 512Мб памяти, обслуживающий одновременно до тысячи человек на форуме и до 150,000 пиров на трекере уже давно покоится на какой-нить немецкой, свалке, а клуб сменил уже не один сервер. Всё сказанное в ней всё ещё остаётся актуальным, однако есть вещи которые стоит добавить.
Статья большая, так что будет поделена на логические блоки:
0. Зачем вообще что-то оптимизировать? 1. Оптимизация ОС (FreeBSD) 1.1 Переход на 7.х 1.2 Переход на 7.2 1.3 Переход на amd64 1.4 Разгрузка сетевой подсистемы 1.5 FreeBSD и большое кол-во файлов 1.6 Softupdates, gjournal и mount options 2. Оптимизация фронтенда (nginx) 2.1 Accept Filters 2.2 Кеширование 2.3 AIO 3. Оптимизация бэкенда 3.1 APC 3.1.1 APC locking 3.1.2 APC hints 3.1.3 APC fragmentation 3.2 PHP 5.3 4. Оптимизация базы данных 4.1 MySQL 4.1.1 Переход на 5.1 4.1.2 Переход на InnoDB 4.1.3 Встроеный кеш MySQL - Query Cache 4.1.4 Индексы 4.2 PostgreSQL 4.2.1 Индексы 4.2.2 pgBouncer и другие. 4.2.3 pgFouine 4.3 Разгрузка базы данных 4.3.1 SphinxQL 4.3.2 Не-RDBMS хранилище 4.4 Кодировки 4.5 Асинхронность Приложение. Мелочи. 1. SSHGuard или альтернатива. 2. xtrabackup 3. Перенос почты на другой хост 4. Интеграция со сторонним ПО 5. Мониторинг 6. Минусы оптимизации
+361
Создаем OLAP куб. Часть 2
4 min
66K
Итак, продолжаем создавать куб.
Напомню, что в предыдущей статье, мы создавали Data Warehouse для хранения голосов хабра-пользователей за хабра-топики. Для тех, кто хочет начать сразу создавать куб, я выложил скрипт, который создает и наполняет хранилище (на моей машине скрипт занял 10 минут и нагенерил 1866268 хабра-голосов).
Для того, чтобы создать OLAP куб, нам понадобится:
- SQL Server, на котором хранится наш HabraDW (подойдет любой);
- Microsoft SQL Server, с запущенными Analysis Services (2005/2008);
- Business Intelligence Studio, которая входит в пакет клиентских приложений для Microsoft SQL Server-а, и интегрируется с Visual Studio, если она у вас установлена (2005/2008);
+40
asp.net: динамическая генерация изображений
8 min
4.2KГенерация динамических изображений – это очень полезная техника. К сожалению, в asp.net нет стандартного функционала, который бы реализовал возможность динамически создавать изображения. Цель этой статьи показать один из способов реализации динамических изображения в asp.net.
+16
Простое меню с проявляющимися изображениями
1 min
1.5KДопустим у нас стоит задача — сделать меню, состоящее из текстовых заголовков и полупрозрачной картинки, становящейся непрозрачной при наведении курсора на пункт меню.
Делается это очень просто — поместим в таблицу картинку со ссылкой, и текст рядом с ней в ячейку TH:
Делается это очень просто — поместим в таблицу картинку со ссылкой, и текст рядом с ней в ячейку TH:

Python
И оживляем всё это при помощи CSS:
+13
Information
- Rating
- Does not participate
- Location
- Хабаровск, Хабаровский край, Россия
- Date of birth
- Registered
- Activity