Как стать автором
Обновить
11
0
Алексей Суслин @AlexSuslin

Пользователь

Отправить сообщение

Новые материалы по IIS на русском языке (160+ статей)

Время на прочтение1 мин
Количество просмотров2K
image

Привет, хабрасообщество! Мы, как и обещали, продолжаем ударными темпами пополнять наши ресурсы полезной информацией и все на русском языке. Вчера мы опубликовали большой пакет статей на русском языке по ASP.Net (150 статей), а сегодня мы разместили 161 статью на русском языке в Техническом центр по IIS. В центре вы найдете материалы по следующим темам:

Читать дальше →
Всего голосов 70: ↑43 и ↓27+16
Комментарии19

Почему Git

Время на прочтение8 мин
Количество просмотров68K
Было время, когда я ничего не знал про VCS, ни что это такое, ни тем более зачем это мне. И верхом своих достижений считал папочку с архивами версий. К моменту осознания необходимости системы контроля версий я уже набил шишек и прочувствовал необходимость такого инструмента. Но борландовский аналог CVS меня не впечатлил. У каждого файла свой номер версии. Как мне получить срез определенного релиза я так и не разобрался. А в это время SVN победоносно шла сквозь умы разработчиков. Черт, это было то, чего мне так не хватало. Прочитав доку и начав работать я просто влюбился в нее. Да, были трудности и определенные неудобства, но куда без них.
Так я и работал бы в SVN, но ничего не стоит на месте. В интернете уже потекли тонкие ручейки новостей про Git. Я не кидаюсь за каждой новой технологией, и прошло уже достаточно много времени, пока мне не прожужжали этим Git’ом все мозги. Мне стало любопытно, я вначале присматривался, примерялся, а потом плюнул и начал новый проект на Git. Мучался с ребятами 2 недели, накачал литературы, написал шпаргалку… ничего, привыкли, … а потом меня поперло.

Теперь меня регулярно просят рассказать про Git и что в нем такого. Уже надоело, поэтому этот пост для тех, кто еще сомневается.
Читать дальше →
Всего голосов 207: ↑195 и ↓12+183
Комментарии265

Создание документации в .NET

Время на прочтение12 мин
Количество просмотров56K
Open notebookКачественная документация – неотъемлемая часть успешного программного продукта. Создание полного и понятного описания всех функций и возможностей программы и программного компонента требует немало сил и терпения. В данной статье я рассмотрю некоторые практические аспекты создания документации для .NET компонентов.

Предположим, что у нас готова или почти готова некоторая .NET библиотека для разработчиков (они же конечные пользователи). API библиотеки безупречен, количество багов впечатляюще мало, да и вообще это не библиотека, а просто кладезь совершенного кода. Дело за малым – объяснить пользователям, как работать с этим замечательным продуктом.

Есть разные подходы к написанию документации. Некоторые команды предпочитают начинать создание документации в момент начала создания продукта. Другие откладывают написание мануалов на окончание работ. В некоторых командах документацию пишут специальные люди, которые ходят от разработчика к разработчику и от менеджера к менеджеру, аккумулируя знания о продукте. Во многих небольших командах таких специальных людей нет, а потому документацию часто пишет разработчик или разработчики. Кто-то использует сторонние средства вроде Help & Manual, в которых, как в заправском текстовом редакторе, можно создавать очень сложную верстку и на выходе получать документацию в многообразии форматов. Многие используют другой подход, широко пропагандируемый в последнее время – написание документации прямо в коде программы/библиотеки.

Читать дальше →
Всего голосов 95: ↑82 и ↓13+69
Комментарии29

Из записной книжки Мистера Томпкинса

Время на прочтение10 мин
Количество просмотров17K
Мистер Томпкинс — человек уже довольно приличного возраста. Первое знакомство с ним состоялось в далеком 1938 году, когда физик и одессит Георгий Антонович Гамов опубликовал в Британском журнале Discovery серию рассказов о человеке, который в своих снах попадал в альтернативные миры, где значения физических констант радикально отличаются от значений оных в реальном мире, что приводит к совершенно неожиданным результатам. Так Гамов популярно объяснял концепции современной физики неискушенному читателю. Незадачиливым же соней был тот самый Мистер Томпкинс.

Практически 60 лет спустя Том ДеМарко решил поделиться свой безграничной мудростью и в столь же популярной форме преподнести идеи из Peopleware, написанной в соавторстве с Тимоти Листером. Итогом стал "Роман об управлении проектами", в котором наш старый знакомый Мистер Томпкинс похищается сексапильной брюнеткой Лаксой Хулигэн и увозится в загадочную страну Моровию, где ему представляется возможность провести настоящий эксперимент по управлению проектами разработки программного обеспечения…

В конце каждой главы Мистер Томпкинс подводит итоги и записывает свои мысли, которые, по сути, являются аксиомами и постулатами управления проектами по ДеМарко и Листеру. Разумеется, лучше будет прочесть всю книгу в целом — иначе не понять, как эти принципы применяются в «реальной» жизни. Но если времени нет (или же просто хочется освежить память), то вашему вниманию предагается…
...Записная книжка Мистера Томпкинса
Всего голосов 77: ↑69 и ↓8+61
Комментарии23

Список команд чата Skype

Время на прочтение6 мин
Количество просмотров692K
...Skype — это дьявольски хитрая программа, написанная бесспорно талантливыми людьми...Крис Касперски

Доброго времени суток!

Skype сейчас я встречаю чаще на компьютерах чем другие IM клиенты, мне он практически заменил icq, вся рабочая переписка ведется в skype, но речь пойдет не о том, что лучше или популярней. Часто бывает так, что участвуешь сразу в нескольких чатах где количество участников превышает 10, что собственно и приводит к тому, что на рабочем столе и в трее постоянно обновляется количество новых сообщений, а также уведомления в виде всплывающих сообщений, а теперь представьте что у вас 3 окна чата с друзьями, 1 с вашим боссом, другой с девушкой — все это в сумме начинает запутывать, отвлекать и порой раздражать. Хотелось бы расставить приоритеты…

Раньше я чаще всего настраивал «политику» уведомлений только через глобальные настройки программы
Случилось так, что я узнал, что в каждом окне чата skype возможно использование команд, например /alertsoff отключит уведомления для конкретного окна чата, соответственно /alertson включит их обратно.
Поискав немного я наткнулся на некое how-to, оказывается у skype чата довольно много текстовых команд, подобие IRC команд. Далее я постарался попробовать все возможные из них на двух имеющихся у меня платформах, как оказалось не все и не везде работает… Прошу под кат.

Читать дальше →
Всего голосов 187: ↑174 и ↓13+161
Комментарии79

Жаргон программистов

Время на прочтение4 мин
Количество просмотров65K
Наткнулся на Stackoverflow.com на интересный топик с вопросом о новом в программистском жаргоне. Предлагаю здесь подборку наиболее интересных выражений.

Египетские операторные скобки

if (a == b) {<br>  printf("hello");<br>}<br><br>
Читать дальше →
Всего голосов 314: ↑284 и ↓30+254
Комментарии282

SMS-уведомления из Nagios малой кровью

Время на прочтение2 мин
Количество просмотров17K
Стоял как-то раз админ в курилке и думал — а как бы ему так в нерабочее время вдали от компьютера и интернетов узнать, что на каком-то из его серверов проблема возникла. Можно конечно посадить студента за монитор с Nagios, чтоб он если что звонил админу и говорил «Тут красненькое что-то появилось»… Стоп. Звонил. На мобильный. Нафиг студента, SMS можно получать. На этом мысль остановилась и админ пошёл пить кофе. Потом вернулся и сел за рабочее место, где в браузуре был загружен Google Calendar… и решение пришло само.
Решение
Всего голосов 33: ↑30 и ↓3+27
Комментарии120

ASP.NET, HTTP 404 и SEO

Время на прочтение2 мин
Количество просмотров10K
Недавно, мой SEO оптимизатор сказал мне, что недоволен тем как ASP.NET возвращает HTTP ответ в случае ситуации 404, то есть страница не найдена. Я начал ковыряться и обнаружил пару интересных моментов, которые возможно кому-то пригодятся.
Читать дальше →
Всего голосов 50: ↑33 и ↓17+16
Комментарии56

Emacs Starter Kit

Время на прочтение8 мин
Количество просмотров15K
Emacs. Большая и сложная программа. Ему как ничему другому подходит это определение. Эмакс был создан очень давно в лаборатории искуственного интллекта MIT, он несет в себе гены очень своеобразной культуры лисп-хакеров былых времен. С тех пор он не раз переписывался, улучшался, дополнялся и обрастал тысячами расширений в течение десятков лет. Эмакс, если и был когда-то мощным текстовым редактором, сейчас стал некоей универсальной программой, в нём можно делать абсолютно всё что угодно, если это хотя бы немного затрагивает собой задачу отображения или редактирования текста, и даже больше. Людям знающим универсальность играет на руку, ведь одной программой можно делать тысячу разных дел, при этом не прилагая усилий для переучивания к разным интерфейсам. Людей, впервые запустивших эмакс подобная универсальность и непривычный интерфейс поначалу пугает. Научиться пользоваться эмаксом, понять его идею и проникнуться ею задача непростая, трудоемкая и долгая (как говорится, пологая кривая обучаемости).
Читать дальше →
Всего голосов 84: ↑79 и ↓5+74
Комментарии76

Плагин авторизации через Вконтакте, Yandex, Google, OpenID и тп

Время на прочтение1 мин
Количество просмотров19K
В недавнем моем посте «Javascript виджет авторизации OpenID» на хабре, я описал свою разработку виджет-consumer авторизации OpenID.

Прошло время, я получил много положительных отзывов, получил замечания и пожеланию по улучшению виджета. Среди пожеланий развития была просьба создать WordPress плагин и добавить поддержку Вконтакте OpenAPI.
Читать дальше →
Всего голосов 105: ↑88 и ↓17+71
Комментарии101

Javascript виджет авторизации OpenID

Время на прочтение3 мин
Количество просмотров7.1K
Где то полгода назад я сильно увлекся OpenID и всем что с ним связанно. Моим главным занятием в это время стало — неспешное чтение спецификаций, форумов, блогов и хабрапостов OpenID тематики.

Все знания, которые мной были получены за это время, я «материализовал» в проекте компании, в которой собственно я работаю.

Изучая спецификацию OpenID и прочих его расширениях (SREG, AX) и надстройках, мне пришла идея разработать JavaScript виджет со своим API-прослойкой, в помощь другим разработчикам нежелающим «коротать» дни и ночи изучая спеки различных способов авторизации и их расширений.

Собственно об этом далее.
Читать дальше →
Всего голосов 91: ↑88 и ↓3+85
Комментарии70

Социализируем сайт с Facebook

Время на прочтение2 мин
Количество просмотров14K
imageВдохновившись общением с Эндрю Босвортом на РИТ++, решил воплотить идею Facebook по социализации всего в интернете у себя на проекте www.bitrixonrails.ru, прежде всего добавив систему комментариев. Хотел рассказать о ее внедрении и узнать ваше мнение о ее полезности/удобности.
Читать дальше →
Всего голосов 94: ↑73 и ↓21+52
Комментарии37

NHibernate vs. Entity Framework 4.0

Время на прочтение3 мин
Количество просмотров14K
Это вопрос мне задают очень часто, и я всегда старался уклониться от прямого ответа, но все же меня так часто об этом спрашивают, что я чувствую, что я просто обязан ответить. В общем-то я больше склоняюсь к NHibernate, поэтому, когда вы читаете эту статью, пожалуйста, имейте это в виду.

В EF 4.0 исправлено очень много проблем, существующих в предыдущей версии EF. Такие вещи как прозрачная «lazy loading», POCO классы, code only и т.д. EF 4.0 явно гораздо приятнее чем EF 1.0.
Читать дальше →
Всего голосов 29: ↑21 и ↓8+13
Комментарии16

Программа из одного exe

Время на прочтение4 мин
Количество просмотров42K
Как правило, при написании .NET программ используются не только классы из .NET BCL, но и сторонние библиотеки. Во время выполнения программы все используемые библиотеки должны быть найдены. Для этого зависимые dll кладут в одну папку с exe файлом.

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

В статье рассказывается, как создавать такие автономные программы из одного файла. Разобран пример как со сжатием зашить библиотеку AutoMapper в программу и как ее потом достать и использовать.

Программа из одного EXE
Всего голосов 90: ↑75 и ↓15+60
Комментарии75

Идеальная CRM. Часть 2

Время на прочтение2 мин
Количество просмотров4.5K
После написания статьи о потребностях «продажников» в CRM, я стал более плотно заниматься этой темой + на мое удивление, мне пришло много предложений от хабраколлег написать такую систему и вместе ее продавать, посмотреть на их, уже готовую CRM-ку.
image
Напомню, что мои основные требования были: online + удобство + малая цена

Кому интересна тема CRM применительно к небольшим компаниям — мои находки и мысли на этот счет.

Итак, что же такое CRM и кому и зачем она нужна. По сути CRM нужна не только отделу продаж, но и всем сотрудникам компании, которые связаны с работой с клиентами. В больших компаниях (телеком, банки) это такие большие системы как Oracle Siebel, MS Dynamics CRM и прочие монстры. В таких системах помимо автоматизации операционной работы (завести контакты, вести учет переговоров, выставлять счета и заводить кейсы) существует много наворотов типа BI, маркетинговых кампаний или совместной работы.

В небольших же компаниях чаще всего продажникам и другим сотрудникам, работающим с клиентом чаще всего нужны:
  1. База аккаунтов (организаций) и контактов
  2. Возможность быстрого доступа к ней лучше online
  3. Ведение истории переговоров
  4. Напоминалки (типа, через 3 месяца не забыть позвонить клиенту)
  5. Ведение протоколов встреч, записи звонков, короче видеть всю историю взаимоотношений


Под катом хорошие варианты:
Читать дальше →
Всего голосов 42: ↑32 и ↓10+22
Комментарии56

#1 Организация активных продаж в веб-студии

Время на прочтение10 мин
Количество просмотров66K
Привет, хабр. Я собираюсь опубликовать небольшой цикл материалов, посвященный бизнесу веб-студий (интерактивных агентств) и его развитию. Начну с нескольких материалов о продажах.

В условиях кризиса продажи стали узким местом почти для всех небольших и не очень веб-студий. Я хочу поделиться своими соображениями по организации одной из трех составляющих продаж в компании.

Итак, продажи в веб-студии делятся на три типа:
  • Новые продажи со входящего потока (заказчик обращается с запросом сам). Расширение данного канала – основная задача внешнего маркетинга и PR компании.
  • Повторные продажи по текущим клиентам. Увеличение продаж по данному направлению – одна из важных задач службы клиентского сервиса.
  • Холодные/активные продажи (инициируется контакт с заказчиком, который не проявлял до этого интереса к компании).

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

Сразу оговорюсь – ни про какой спам и прочие массовые безадресные акции речь не пойдет.
Читать дальше →
Всего голосов 68: ↑61 и ↓7+54
Комментарии35

Managed Extensibility Framework

Время на прочтение7 мин
Количество просмотров14K
(Заранее извините за мой русский)

MEF это новый подход разработанный Майкрософт, который позволяет загружать расширения для вашего приложения очень легко. Он позволяет обнаруживать и составлять части, которые должны быть включены в приложение, и все это во время выполнения. Вы можете расширить поведение аппликации простим добавлением новых плагинов. Managed Extensibility Framework сделает все это за вас.
«Hello MEF World!»

Читать дальше →
Всего голосов 95: ↑69 и ↓26+43
Комментарии31

Шпаргалка по расшифровке имен видеофайлов

Время на прочтение8 мин
Количество просмотров295K
Как то стало интересно что значат разные буковки/цифарки через точку в названиях видеофайлов.

Пост — результаты гугления, обобщения, структуризации и некоторой правки орфографии.
Возможно, кому то пригодится. Я, например, перестал связываться с TC.
Читать дальше →
Всего голосов 334: ↑273 и ↓61+212
Комментарии81

Автоматизация Undo/Redo функциональности с помощью .NET Generics

Время на прочтение11 мин
Количество просмотров5.9K
Перевод статьи Automating Undo/Redo with .NET Generics Сергея Архипенко.

Введение

Эта статья описывает библиотеку, которая предоставляет undo/redo функциональность для каждого действия в вашем приложении. Вы можете использовать сложные структуры данных и сложные алгоритмы не задумываясь о том, как они будут переведены в предыдущее состояния по запросу пользователя или в результате возникновения ошибки.

Предпосылки

Если вы когда-нибудь разрабатывали графический редактор или дизайнер для сложных данных, вы сталкивались с трудоёмкой задачей реализации undo/redo функциональности, которая бы поддерживалась во всём приложении. Реализация парных Do и Undo методов для каждой операции скучный и подверженный ошибкам процесс, когда вы разрабытываете что-либо более серьёзное, чем калькулятор. В результате моих экспериментов я нашёл способ сделать поддержку undo/redo прозрачной для бизнес логики. Чтобы этого добиться, мы будем использовать магию generics.
Этот проект опубликован на CodePlex, чтобы каждый мог его использовать или внести свой вклад.

Читать дальше →
Всего голосов 62: ↑48 и ↓14+34
Комментарии20

Thick As Brick – простейший html шаблон для верстки

Время на прочтение2 мин
Количество просмотров14K
Я почему вредный был?
Потому что у меня велосипеда не было!
Мультфильм «Трое из Простоквашино»


Когда десять раз делаешь одно и то же, на одиннадцатый раз ты волей-неволей начинаешь задумываться о том, как бы процесс оптимизировать. Так и с версткой: после десятка сверстанных страниц хочется слегка упростить свою задачу. Тут на помощь, конечно же, приходят разнообразные фреймворки (чего только стоит oocss или наикрутейший CSS-фреймворк от Яндекса или целая куча других не менее интересных фреймворков). Пригодятся и системы сборки (Ant стоит на службе у студии Артемия Лебедева, да и я потихоньку постигаю его Дао). Не стоит забывать и различные хаки и шаблоны лейаутов, коих в интернете бесчисленное множество.

Однако как быть с сайтом, для которого надо сверстать пару-тройку типичных страниц? Нет смысла тащить с собой кучу лишнего CSS-кода. Кроме того, многим верстальщикам гораздо проще написать качественный код с нуля, чем перегружать кучу заранее объявленных бесполезных классов. Что делать?

Чтобы решить эту высосанную из пальца нетривиальную задачу я написал простейший шаблон для верстки, который сильно облегчил мне работу над проектами. Шаблон примитивен и прост (потому так и зовется), на звание фреймворка ни в коем случае не претендует (минус в карму тому, кто обзовет его фреймворком! ;) ). Он несет в себе заранее объявленные CSS-классы для работы с меню, списками, формами, ресеты основных тегов (вроде сброса отступов у форм и правильных отступов у <p>) и еще кое-какие полезные для меня вкусности.

Читать дальше →
Всего голосов 138: ↑116 и ↓22+94
Комментарии128

Информация

В рейтинге
Не участвует
Откуда
Минск, Минская обл., Беларусь
Дата рождения
Зарегистрирован
Активность