вторник, 13 октября 2009 г.

ReSharper 5 Overview

Парни из JetBrains в своем блоге рассказывают о том, что будет в 5-м ReSharper-е.

Выглядит о-очень вкусно, один только Call Tracking это какая офигенная штука. Она, я так понимаю в design time анализирует откуда указанный метод может быть вызван и разворачивает это дерево вызовов. То есть – больше никаких веерных Find Usages :)

Еще из понравившегося – Move String to Resource, то есть интернационализация по одному клику, почти так же удобно как и в XCode.

С новыми технологиями тоже неплохо, обещают поддержку .Net 4.0, VS 2010, ASPNET MVC

C HighLoad++

Сейчас разработчиков с mail.ru спросили
- А как вы деплоите изменения ваших проектов?
- Как-как... отделом эксплуатации

пятница, 9 октября 2009 г.

Идеальный менеджер пакетов для .Net

Буду собирать ссылки и мысли по поводу идеального менеджера пакетов для .Net

Преамбула

.Net разработка исторически была не очень “опен сорсовой”, то есть базировалась на проприетарных библиотеках.
Microsoft делает некоторые подвижки в этом направлении – открыл исходники .Net Framework, хостит opensource проекты на CodePlex, но до совершенства еще далеко – например, в VS нет удобного способа при отладке, к примеру, NHibernate, просматривать исходный код этой бибилиотеки.
При этом OpenSource проектов для .Net просто завались – например NHibernate, Spring.Net, майкрософтовские Pattern&Practices Building Blocks etc.
Есть еще и The Mono Project, который мало того, что  сам opensource, так еще и порождает множество проектов с открытым исходным кодом.

Зачем?

Если я подключаю внешнюю библиотеку (тот же NHibernate) то мне нужно руками следить за всеми зависимостями, котоые она тянет за собой, следить за их версиями, следить за конфликтом версий и тп.

Вместе с тем в Java мире это уже все давно пройденный этап – есть Maven, который поддерживается всеми основными IDE, есть Bulildr, есть opensource репозитории, которые подцепляются без проблем. Есть Ivy the package manager в конце концов.

В Java если ты хочешь разработать проект с использованием например Hibernate или Spring Framework, ты пишешь .pom файл из пяти строчек) – и тот же Maven скачивает тебе нужные версии всех нужных библиотек, со всеми их зависимостями, со всеми документациями и пр.

Что же делать?

Ну, есть NMaven (который суть плагин для Maven), есть Byldan, есть предложенный в Хабровской статье менеджер, но как-то оно все не складывается в единую картину.
Я вижу, что идеальный менеджер пакетов должен быть:
  • Клоном хорошо зарекомендовавшей себя Java-вской библиотеки (например, того же Maven);
  • Совместимым с Visual Studio (т.е иметь плагин, аналогичный Maven integration например в IntelliJ IDEA);
  • Использоваться как в .Net так и в Mono – технологии практически идентичные, надо дружить;
  • Иметь репозиторий проектов, куда любой уважаемый разработчик сможет залить свой проект для публичного доступа. CodeHaus и Sonatype Nexus – идеалы для подражания.
Но самое главное, как обычно, не технологии. Самое главное – показать .Net сообществу, что подход, принятый в Java мире, отлично подходит и для мира дотнетовского.
Вообщем, тема для размышлений богатейшая.

PS - Вот обсуждение на Хабре (комментарии тоже интересные)
http://habrahabr.ru/blogs/net/68453/
PS2 - Сравнение подходов Java/.Net на RSDN - http://rsdn.ru/forum/flame.comp/3275597.aspx
PS3 - посмотреть NPanday
PS4 - обсужение на stack overflow

Полезно? Интересно? Скучно?

Нашел в Блоггере (и с радостью установил к себе) кнопки обратной связи (я вообще большой любитель любой обратной связи )

Так что теперь у каждой статьи появился такой вот блок с галками:

image

Захочется поставить отзыв – не отказывайте себе :-)

среда, 7 октября 2009 г.

Несколько советов начинающему eBay-щику

… и владельцу карты Альфа-банка

image

  1. Если у вас карта Альфа-банка, не пытайтесь привязать аккаунт PayPal к обычной карте! PayPal делает пробную транзакцию на доллар, потом говорит

    “We were unable to verify this credit card. Please check if the information you entered is correct. If the problem persists, please try to enter a different credit card.”

    Вообще, дальше надо вводить код из референса транзакции, но код ввести нельзя.

    При этом, доллар-то списан! Я вчера таких долларов несколько уже списал, буду писать в paypal и требовать их обратно :)
  2. Виртуальная карта Альфабанка привязывается идеально, по факту с ней все получилось. Единстенное “но” – код для привязки в Альфа-Клике не показывается, нужно звонить к ним в техподдержку, вводить телефонный пароль (если нет, они его вам по телефону выдадут), объяснять ситуацию – и милая девушка скажет код по телефону. Код в результате подошел :)

Теперь про собственно покупки – среди продавцов электроникой, бесплатно доставляющих в Россию, несметное множество китайцев и тайваньцев. Судя по всему все они накручивают себе рейтинг, отправляя друг другу фидбеки вида “Excellen transaction, great seller, A+!”.

image 

Рабочая теория: не надо смотреть на позитивные отклики, надо смотреть (и читать) отрицательные и нейтральные.

image

Лучше страницу откликов развернуть на максимальные 200 откликов/page (фильтра по типу там нет) и смотреть, чем люди были недовольны и как продавец реагировал

Совсем нет отрицательных (и нейтиральных) откликов – странно. Может вообще человек не торгует?

Если плохих отзывов много (например, >5 за месяц) – я бы поостерегся у такого покупать.

 

Батарею к ноуту я заказал, посмотрим что будет, когда ее пришлют через две недели…

Debugging Tools – как открывать дампы из Explorer-а (.Net Framework 2.0+)

Всем хорошего дня!

Недавно пришлось опять плотно поработать в дампами ASP.NET-овского сайта, снятыми при помощи UserDump.

Дампов было несколько, мы многократно открывали их на разных машинах, каждый раз, открывая дамп приходилось набирать мантру:

  • Open WinDbg
  • Copy длиннючий путь к sos.dll, сказать .load …\sos.dll
  • Open в WinDbg файл с дампом через control-d

Как результат, я начал гуглить на тему скриптов для дебаггера, и нашел чудную статью Carlo Cardella под названием “Never Doubt My Debugger”.

В статье было написано, как настроить WinDbg так, чтобы открывать файлы дампов .dmp в Эксплорере одним кликом (при этом, самостоятельно загрузив еще и sos.dll (sic!):

dbgexp

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

Установка

Все что нужно, это скопировать скрипты в каталог C:\Program Files\Debugging Tools for Windows (x86)\scripts (каталог надо создать) и запустить файл register.reg, который добавить в реестр правильнуб команду на открытие .dmp файлов.

Внимание!

Скрипт расчитывает на следующее:

  • Debugging Tools установлены в каталонг C:\Program Files\Debugging Tools for Windows (x86)
  • используется sos.dll из .Net Framework 2.0 или выше по пути c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\

Соответственно, если вы установили отладчик в другой каталог или у вас другой номер сборки .Net Framework, нужно подправить файлы dbgnet20.txt и/или register.dbg

вторник, 6 октября 2009 г.

Мигрирую на feedburner

Играюсь с фидбернером, adsense и фидовой отчетностью. Настроил редирект на FeedBurner

Читатели! Если у кого появятся проблемы с RSS, дайте пожалуйста знать.

Рабочее место Юры Скалецкого

image
Наконец собрался рассказать о том, как устроено мое рабочее место. Относительно недавно – с полгода назад – я, как мне сейчас кажется, пришел наконец к идеалу.
Я настроил мое рабочее место так, что мне все в нем нравится.
Самое главное, чего мне удалось достичь – я теперь могу быстро выполнять рутинные задачи. Я быстро могу запустить нужную мне программу, быстро открыть плейер, быстро включить или выключить музыку, изменить громкость звука, залезть на какой-нибудь сайт. Больше компьютер в повседневных задачах меня не тормозит.
При выборе часто используемых программах я отказался от мегакрасивости и суперуниверсальности в сторону минимального размера в памяти и быстрого старта. Это сильно улучшило мое настроение.

Ноутбук

Все мое рабочее место умещается в одном Lenovo ThinkPad T-61. До этого я жил на ASUS-ах, но после перехода на IBM/Lenovo я понял, что ASUS ноутбуки делать не умеет. А IBM вот умел и Lenovo не разучилась еще, к счастью.
Самое прекрасно в Lenovo – правильный предустановленный софт. В нем практически все правильно: