Показаны сообщения с ярлыком useful. Показать все сообщения
Показаны сообщения с ярлыком useful. Показать все сообщения

вторник, 21 июня 2011 г.

Visio - mouse pan

Пока опять не забыл, чтобы двигать холст мышкой (pan mode) - Ctrl+Shift+Right mouse click

понедельник, 19 апреля 2010 г.

для всех кто пользуется Caretta GUI Design Studio

Народ из Caretta открыл блог, в котором рассказывает о том, как эффективно прототипировать в GUI Design Studio и выкладывает библиотеки контролов на разные темы.

Например, вот, выложили библиотеку контролов для iPhone

Итак, встречаем: http://www.guidesignpatterns.com/

понедельник, 16 ноября 2009 г.

Обзор: Телефон HTC Hero с интерфейсом Touch Sense или "Android, превед!"



Как некоторые уже знают, я после того как потерял свой iPhone на склонах Чегета, где-то с год не мог выбрать себе нового телефона, в результате чего пользовался Старой Нокией (tm), совершенно неубиваемой и удобной.

После iPhone ты уже не можешь купить обычный телефон – ту же нокию или sony ericsson – берешь телефонку в руки, крутишь, вертишь, нажимаешь какие-то кнопки, а потом плюешь и уходишь из магазина – ну нафиг такое счастье. Все как-то не так.


понедельник, 14 сентября 2009 г.

Tip: Как запустить ASP.NET Development Server из командной строки

Все очень просто:

сделал себе такой вот .CMD файл для запуска примеров ASP.NET Charts

start /B C:\windows\Microsoft.NET\Framework\v2.0.50727\webdev.webserver.exe /port:12543 /path:"C:\samples\dotNet\MSChart\WebSamples" /vpath:"/"


Понятно, что точный путь к webdev.webserver.exe зависит от вашей системы


via this

понедельник, 17 августа 2009 г.

Встречаем: AutoPatchNet with nice UI

.Net port of Tactiknowledge AutoPatch.

Доработал и выложил на Google Code исходники и инсталлятор пре-пре-альфа версии 0.0.1 .Net-овского порта AutoPatch. Авторы начали портирование, но забросили его в лохматом году.

Я довел порт до состояния, когда он уверенно патчит SQLServer-ные базы и добавил к нему консольный и WinForm-овские front-end-ы.

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

В планах - ввести пакеты для обновления БД (архив, содержащий манифест+каталоги с патчами), сделать чтобы AutoPatch UI открывал такие пакеты в один клик.

Ссылка на страницу проекта: http://code.google.com/p/autopatchnet

См также

среда, 22 апреля 2009 г.

Матрица компетентности программиста

Перевод

1 часть: http://spreadsheets.google.com/pub?key=pmAWNZu8sBj_tXy5ms5foVQ 
2 часть: http://docs.google.com/View?docid=d28gm4q_56hmv6f72z

Оригинал http://www.indiangeek.net/wp-content/uploads/Programmer%20competency%20matrix.htm

На мой взгляд, это офигенно. Практически готовая аттестационная таблица для разработчиков.



воскресенье, 12 апреля 2009 г.

Вебинары для всех и занедорого

Рассматриваю сейчас, какие возможности существуют для проведения некоммерческих вебинаров. После небольшой поиска среди вебинарного софта набрел на DimDim - это платформа для проведения вебинаров.


DimDim

От остальных игроков проект выгодно отличают две вещи - поддержка до 20 участников в бесплатной версии (у других вебинарных компаний бесплатный аккаунт поддерживает обычно вебинары для трех слушателей). Платная версия - от 20 долларов в месяц - позволяют делать вебинары на 50 и более слушателей.

Проверка показала, что система работает - исправно передает звук, позволяет расшаривать десктоп, просматривать PowerPoint-овские презентации и совместно браузить интернет.

Звук правда немного отстает, из всех залогинившихся участников можно одновременно дать микрофон троим (в принципе, при большем количестве все равно эффективность общения стремится к нулю). Вебинар можно записать и запись можно будет потом проиграть (формат - ожидаемый flash+html)

Второй плюс - наличие opensource версии DimDim, который можно  поставить  себе на сервер (лицензия - GPL). Авторы утверждают, что в коммерческой версии они используют коммерческие вещательные компоненты, а это надежнее, но думаю, что для большинства нужд и при наличии хорошего канала opensource будет отличным вариантом (при желании конечно заниматься хостингом).

TeamViewer

По удобству и функционалу еще приятно выделяется TeamViewer - систему, специализирующуюся на различных сценариях общения one-to-one. TeamViewer отличают очень удобная инсталляция и богатство всяких поддержечных штучек -- передача файлов, удаленное управление, получение system info и пр.

Программа бесплатна для некоммерческого использования а для коммерческого - от 25 евро/месяц.

Skype (update 6 sep 2009)
Начиная с версии 4.1, скайп позволяет абсолютно бесплатно передавать при звонке содержимое своего экрана. Причем версия 4.1+ нужна только на стороне того, кто презентует - смотреть можно и со старого скайпа, даже с версии 3.

Как инструмент для показов "один-на-один" - самое то. Группового вещания пока не сделали, ждем.

Слова:
Screen Share, Screen Casts, Presentations, Презентации

воскресенье, 15 февраля 2009 г.

Best Disk Cleaner Ever

Себе напоминание - когда в следующий раз нужно будет чистить диск, надо опять воспользоваться JDiskReport http://www.jgoodies.com/freeware/jdiskreport/ - он медленно запрягает (читай - строит отчет по disk usage) но потом очень быстро работает, очень ясно показывает, где самые жирные каталоги и сегодня с ним я вычистил с рабочего ноута огромное количество всякой ерунды. Доволен, короче

UPD 3 may 2009: в Кулере народ обсуждает, какие есть мониторилки.

четверг, 21 августа 2008 г.

КЛАДР as a Service

Чудесно, что нашелся человек, который сделал REST версию справочника КЛАДР

http://gazdovsky.blogspot.com/2008/08/blog-post.html

Полезное

вторник, 5 февраля 2008 г.

Полезная утилита

Тестирование скорости загрузки страниц + советы по оптимизации.
http://webo.sunnybear.ru/

воскресенье, 2 сентября 2007 г.

reCAPTCHA

reCAPTCHA - это прекрасно! Бесплатный сервис, который генерит т.н. capchas - картинки, защищающие от регистрации на твоем сайте нечеловеческих роботов. Но самое замечательное - что эти картинки берутся из оцифрованных книг. То есть люди, регистрируясь на сайтах, тем самым помогают оцифровывать книги.

Приятно видеть, что сервис не только лично, но еще и общественно полезный.

Очень интересно сделан алгоритм распознования. Ведь компьютер не может проверить, правильно ли проходящий captcha-тест человек "оцифровал" то, что ему показано. Поэтому человеку даются на распознование два слова - одно, которое уже было распознанно, и другое, которое еще не распознано. Если человек одно из слов распознает верно, то второе автоматом тоже считается правильно распознанным.

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

UPD: А у Амазон, гад такой, получил патент на Human Computing: http://soft.compulenta.ru/313616/ (c подсказки Макса Космыча)

суббота, 28 июля 2007 г.

Script#

НЕ МОГУ ПОВЕРИТЬ

существует компилятор C# -> JavaScript

http://www.nikhilk.net/ScriptSharpIntro.aspx

Это может быть убийцей Google Web Toolkit :-)

Скачал, засел разбираться...

UPD: http://code.google.com/p/extsharp/ - C# programming for ExtJS

Утилиты для отладки веб-приложений

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

Раньше, я использовал Proximitron. Это приложение Windows, которое изначально предназначно для фильтрации всякого рода рекламы, pop-up-ов и проч. Ну и заодно, показывает HTTP трафик.

Но Proximitron давно не обновлялся, да и настраивать каждый раз параметры proxy в браузере мне было очень лениво, и я стал искать замену...

Devolutions.HTTPSpy

Почти сразу я нашел очень прекрасный и совершенно бесплатный (есть и pro-версия за $50) Devolutions.HTTPSpy.Net, который показывал мне HTTP трафик между локальной машиной и удаленным сервером.



Правда, у HTTPSpy есть один большой минус - он не умеет показывать локальный трафик. То есть, если я отлаживаю свое приложение локально - толку от него нет. И я стал искать дальше...

IEAnalyzer

Поиск выдал довольно коммерческих продуктов, которые встраиваются в браузер и умеют показывать локальный трафик. Одним из низ был довольно удобный HTTPAnalyzer, который сделали те же ребята, что и IEInspector. Скачал, поставил месячный evaluataion, все в нем понравилось, только 130 долларов платить было жалко.

Nikhil Kothari's Web Development Helper
И вот - о чудо! В книге Dino Esposito про ASP.NET AJAX я наткнулся на упоминание утилиты, которую написал один из разработчиков Atlas - Web Development Helper. Бесплатный и все умеет. Работает как плагин для Internet Explorer. Умеет, кроме трафика, показывать еще всякие другие полезности:
* Показывает ASP.NET ViewState
* Atlas JavaScript Class Browser
* DOM Browser
Очень рекомендую
Ссылка на статью, посвященную WDH: http://www.nikhilk.net/WebDevHelperDebuggingTools.aspx
IE Development Toolbar
Ну и напоследок, IE Development Toolbar от Microsoft. Тоже незаменимая штука. Посмотреть описание и скачать.
UPD 22 aug:
* HttpWatch ($200+): http://www.httpwatch.com/

UPD 19 jan 09
* еще можно пользоваться сниффером (http sniffer) - WireShark  (бывший Ethereal)

воскресенье, 22 июля 2007 г.

Command Line Arguments Parser

UPDATE Feb.09
Выложил парсер командной строки, которым мы пользуемся, в Google Code:
http://code.google.com/p/commandlineargs/

Собственно, сам пост

Разбираясь с исходниками NUnit, наткнулся на любопытный способ разбора параметров командной строки.

Вообще-то, не могу понять, почему в .Net Framework не предусмотрели классов для парсинга командной строки. Банальный же массив string[] args, который передается в Main(), для серъезного дела вообще никак не подходит. Вот и пишет каждый разработчик себе такой класс самостоятельно, потому что дело вроде плевое и импортить что-то чужое не хочется. Я вот тоже писал, и не раз.
Что нужно хорошему парсеру аргументов командной строки? Несколько вещей, на мой взгляд:
- поддержка опции /help. То есть утилита должна напомнить пользователю, как ее правильно вызывать
- поддержка именованных параметров, вне зависимости от очередности их расположения в строке вызова. То есть util.exe /console /admin должен интерпретироваться так же, как и util.exe /admin /console
- грамотная валидация. То есть утилита должна объяснить пользователю, что он ввел не так
Так вот, в NUnit используется класс Codeblast.CommandLineOptions. В нем используется интересный подход, суть которого в следующем:

Разработчик command line утилиты создает наследник класса CommandLineOptions, в котором описывает требуемые параметры командной строки просто как properties. Такие properties он помечает специальным атрибутом Option("..."), указывая описание свойства, которое потом автоматически сгенерируется и покажется пользователю.

Авторы (Gert Lombard и James Newkirk) в коментариях к коду дают вот такое описание возможных параметров:


// I define 3 types of "options":
// 1. Boolean options (yes/no values), e.g: /r to recurse
// 2. Value options, e.g: /loglevel=3
// 2. Parameters: standalone strings like file names
//
// An example to explain:
// csc /nologo /t:exe myfile.cs
//
// + parameter
//
// + value option
//
// + boolean option


Вот так этот класс применяется в NUnit console runner. Посмотрите на диаграмму классов:



Пользоваться таким парсером очень просто:


ConsoleOptions options = new ConsoleOptions(args);

if(!options.nologo)
WriteCopyright();

if(options.help)
{
options.Help();
return 0;
}


Решение, на мой взгляд, простое и зрелое - проверяется безопасность типов (при парсинге args[] проверяется PropertyInfo требуемых свойств) и использующему параметры коду уже не нужно беспокоиться об парсинге строковых значений, как это бывает в не столь красивых парсерах. Плюс к тому - описывать набор принимаемых параметров через атрибуты очень удобно.

Во всем этом великолепии, на мой взгляд, не хватает всего пары вещей

  • Декларативного описания правил валидации. Ну например, через атрибут RequiredOption().
  • Множественных layout-ов, когда в зависимости от значения какого-нибудь параметра изменяются требования к наличию-отсутствию других параметров. Можно сделать, например, через дерево классов-наследников CommandLineOptions.
  • Неименованных параметров, чтобы можно было бы сделать так: util.exe /update Module1/src

четверг, 19 апреля 2007 г.

Eclipse Process Framework Composer

Радостное событие - мне показали EPF Composer. С помошью этого чуда можно описывать процессы и делать сайт процессов, примерно как это сделано для RUP. И инструмент очень удобный, и сайт с описанием процесса тоже очень удобный.

Чувствую, в ворде процессы я больше описывать не буду :-)


Ссылки
* http://www.eclipse.org/epf/
* http://www.aprocessgroup.com/products/tool_03_0301.asp