Thursday, November 12, 2009
Подбор цветов
Поставил ColorZilla плагин к FF (позволяет без лишних телодвижений определить цвет в любой точке страницы). Затем пошел на сайт http://kuler.adobe.com , затем перешел сюда ввел Base Color (который я достал при помощи вышеупомянутого плагина) и по нему подобрал несколько схожих цветов. Затем выбрал один из этих цветов и прикрутил к css-классу. Просто и быстро)
Monday, November 9, 2009
Если черная обезьяна собрала много бананов, то ей доверят собрать еще больше. Если белая обезьяна загубила много бананов, то ей доверят загубить еще больше. (о неграх и шерифах)
Sunday, June 7, 2009
CLIP - быстро скопировать все из консоли в буфер обмена
Вот что она сама о себе сообщает (clip /?)
CLIP
Description:
Redirects output of command line tools to the Windows clipboard.
This text output can then be pasted into other programs.
Parameter List:
/? Displays this help message.
Examples:
DIR | CLIP Places a copy of the current directory
listing into the Windows clipboard.
CLIP < README.TXT Places a copy of the text from readme.txt
on to the Windows clipboard.
Теперь проблема копирования всего списка файлов из папки в буфер обмена в текстовом виде решена)
DIR c:\ | CLIP
Удачи.
Tuesday, June 2, 2009
Тех. Люди #6. Труд и удовольствие
Тех. Люди #6
Труд и удовольствие
По-моему, подошло самое время для следующего поста. У меня в последнее время складывается впечатление, что какие-то потусторонние силы готовят меня к запуску в космос: английский, учёба вождению, перегрузки на работе, энергетические вампиры, представленные детьми, придуманный мной для себя режим (самосовершенствование вечером и пробежки утром), сон по 6 часов, постоянные стрессы из-за вождения... Наверное, точно в космос полечу. И тут самое, наверное, важное - не сорваться и сохранить себя.
Жизнь слишком коротка. Труд занимает основную часть нашей жизни. И было бы совершенно неправильно не получать ничего от того, что ты делаешь.
Получать удовольствие от труда иногда достаточно трудно. Не всегда интересные проекты, много стрессов, короткие сроки, монотонность работы, разрдражение на коллег, телефон, который мешает работать, доступ в интернет, который отвлекает и т.д.. Но надо постоянно напоминать себе, что работа – это удовольствие, а значит и твоё душевное равновесие.
Для себя я выработал набор правил, которые соблюдаю и которые помогают мне беречь себя. Ниже они перечисляются. Не все они безукоризненно исполняются, но если стремится к этому, то это будет уже пол-дела.
Центр
В центре всего и работы в том числе стоите вы сами. Не начальник, не проект, не успех проекта. Вы. Прежде всего вы сами. Проекты приходят и уходят, а вы остаётесь.
Поэтому никогда не надо идти на уступки проекту, если надо будет перешагнуть через себя. Постоянно находится в согласии со своим внутренним миром поможет поставить дополнительный барьер между стрессами на работе и вами.
Не важно как проект закончится, в конце у вас должно остаться удовлетворение самим собой – вы сделали всё, что было в ваших силах. Вы работали честно, упорно и сделали всё, что в ваших силах.
Самое главное понимать, что в центре всего этого стоите сами вы. Не работа, а вы контролируете себя и ваше равновесие. Это ваша жизнь и несёте ответственность за неё вы сами, вы должны контролировать её, а не кто-то или что-то извне.
Жить на все 100
Давно уже приметил, что если пытаешься посидеть в интернете и одновременно поиграть с детьми, то не получится ни того и ни другого. На выходе вместо удовольствия получишь одно разрадражение. Пару раз вот так было и после этого решил, что если чем то занимаешься, то заниматься нужно только этим и ничем иным. И не просто заниматься, а отдавать себя этому.
Играешь – отдаёшь себя полностью игре, занимаешься с детьми – ты только с ними, работаешь – поглащаешься целиков в свои труды, занимаешься любовью – пусть это будет страстно, быстро и со всей твоей энергией.
После в другой замечательной книге нашёл подтверждение этой практики. Точного названия не помню, но смысл приблизительно – жить на все 100. Т.е. чтобы ты не делал, отдаёшься этому на 100% без остатка и тебе идёт максимальный возврат в виде удовлетворения от того, что ты делаешь.
А ещё один человек описывал, как дети смотрят мультфильмы (конечно, когда их очень очень редко смотрят). Они смотрят не глазами, они смотрят этот мультфильм всем телом. Каждая клеточка от кончиков пальцев на ногах до макушки жаждет этого мультфильма и после идёт поглощение этого мультфильма всем телом. Замечательно, конечно, описал. Идея в том, что если ты что-то делаешь, то отдаёшься этому на все 100. Ты ешь – и каждая твоя клетка получает удовольствие от еды, ты едешь на машине и ловишь постоянно себя на том, что как это классно управлять автомобилем, ты идёшь и чувствуешь огромное счастье, что тебе ничего не болит (обычно такое состояние мы испытываем после того как пару дней нам, например, зуб поболел, но почему не ловить такое состояние всегда – тебе ведь ничего не болит).
От работы даже самой рутинной начинаешь получать удовольствие, если отдаёшься ей полностью и не даёшь другим вещам вмешиваться в это. За собой заметил, что если начинаю переключаться на чтение, к примеру, почты или блогов, несвязанных с работой или заполнением какого-нить бланка (опять же не по работе), то всё... можно сказать день потерян. К вечеру, не чувствую никакого удовольствия, от проведённого дня.
Уже давно завёл себе за правило - на работе только работа. Поменьше личного. Никаких блогов, видосов, самообразования – это я откладываю на нерабочее время. Даже сейчас, я разграничил себе чётко время – если прихожу до 10 часов, то никакой работы до 10, а после 10 – ничего лишнего. И это помогает.
Что заметил, чем сильнее человек в команде, тем больше он отдаёт себя работе на работе. А кто послабее, у того вижу постоянно "не те" страницы открыты на экране. У одного человека один раз чисто случайно у него на компьютере, когда вместе сидели, увидел историю посещений сайтов за день. Ммм... как полегче выразиться – нельзя получать удовольствия от работы, если ты её практически не занимаешься.
Проблема телефона на работе всё ещё остаётся для меня проблемой, но всеми силами пытаюсь эту проблему разрешить. В чём проблема. Выше уже сказал, что если ты на работе, то только работа. Но что делать с теми вещами, которые нельзя просто так выкинуть из повседневной жизни. Телефон как-то особенно выбивал из колееи. Сидишь, работаешь, полностью в работе, а тут звонок – любимая, к примеру, звонит узнать как дела. Тебя прерывают, тебе нужно остановиться на полстрочке кода или на полписьме – вот тут на тебя наплывает раздражение. А ведь тебя любимая просто хочет приободрить, узнать как дела, сказать что любит и ждёт. Частично эту проблему уже решил для себя: принял как должное, что телефон тебя может останаваливать в работе и это нормально, и разговору по телефону отдаёшь себя полностью, т.е. не смотришь в экран, парралельно читая почту, или исправляя в коде ошибку, а полностью, когда только ты и разговор по телефону (лучше выхожу в коридор подальше от компа, или моник полностью выключаю (хотя иногда неподсознательно его включаю во время разговора)).
Конечно иногда стрессы с работы не дают тебе полностью отдаться семье. Но это чаще неконроллируемое чувство, с которым очень трудно справиться. Но с этим нужно бороться и искать пути как их выбрасывать из личной жизни.
Надеятся на других
Вот это самый трудный пункт в плане объяснить. Никогда не полагайся на других в твоей работе. Жутковато звучит, потому что нельзя не полагаться, потому как команда вокруг и один в поле не воин. Но я уже такое кол-во шишок себе в этом плане набил, что понял одно – скажем так, никогда не полагайся 100% на других, даже если человеку полностью доверяешь – у человека могут возникнуть обстоятельства, он может заболеть, он может приоритет задач себе другой выбрать, он может забыть – всякое может произойти.
Ещё раз повторю, это пришло из моего собственного личного опыта. Если можешь сам сделать или проконтролировать это – сделай лучше сам.
Делегируй ответственности
И в тоже время – полагайся на других (не на 100%). Один ты ничего не сможешь сделать. Помню, Юра В. в роли менеджера как-то незаметно начал работать по 12-14 часов и всё одно не всё успевал. И это не нравилось ни ему, ни мне. А кол-во задач и зон ответственности у него всё увеличивалось. А отдать тоже некому, потому как не хватит знаний и сил. И решение мы вместе с ним нашли - делегировать задачи, даже если люди ещё не готовы к таким задач. Научатся. И это сработало.
Если можешь и видишь потребность в делегировании своей работы, чтобы немного разгрузить себя - сделай это. Люди не машины, которым подсовывай таски и они бездумно будут делать это. Они тоже умеют переживать и им хочется думать. Чем больше у человека ответственности на проекте, тем больше он будет думать, как сделать лучше.
Ни в коем случае не говорю, что не надо быть ответственным и спихивать ответственность с себя. Ответсвенным надо быть за любое решение, что ты принял, или кусок, что ты отдал, и сделал за него ответственным другого человека. Но это скорее более высокоуровневая ответственность. Виновным, что этот кусок не сделан, будешь ты.
Не бойся показаться глупым
Это, наверное, многие заметили. Больше всего вопросов (даже самых простых) задают люди кто посильнее. Это, наверное, опыт. С годами начинаешь осознавать, что задавая даже самые глупые вопросы, ты не выглядишь глупым. Да и вообще забиваешь на это, что можешь показаться глупым, когда чувствуешь уверенность в себе.
Это когда молодой да зелёный, киваешь головой даже тогда, когда тебе ничего не понятно. Даже себя помню... Но ни капли не переживаю, так и должно было быть. Это нормально.
Тут правда и в другую крайность в падать не надо. Был у меня опыт, когда вместо того, чтобы что-то делать, было в основном дотошное изучение вопроса, причём процент случайности 95% случаев был менее одного процента. Тут просто не туда энергия тратилась. И на выходе мы получили ничего. Вообще, ничего - этот функционал выкинули с продакшна из-за его слабости.
Боязнь ошибок
Где-то уже ранее в постах мы описывали это. Не делает ошибок тот, кто ничего не делает. Поэтому самое главное не боятся сделать то, что видишь нужным.
Заметил за годы, что многим людям не хватает духу принять ответственность за какое-то решение, хотя они уверены, что они правы. Но они боятся сделать ошибку. И мучаются этим. И им нужен рядом человек, который будет просто и тупо брать ответственность за выполнение задачи на себя.
Понятно, что ошибки будут. Они по статистике будут. Из 100 раз один раз обязательно не получится. Но 99 раз можно сделать и всё пройдёт, и через этот 1% иметь силы перешагнуть.
Отношения в команде
Проекты уходят и приходят, а люди остаются. Не мешай проектам и работе портить отношения с твоими коллегами. Построение отношений между людьми – сложная и трудоёмкая задача. А разрушить отношения и сделать себя неприятным в глазах других людей – минутное дело.
Уважение – вот что главное в отношениях. В любых отношениях между людьми. Никогда не делай ничего неуважительного, по отношению к другим. Относись к другим так, как хочешь чтобы относились к тебе. Золотые слова.
Подумай, будет ли тебе приятно, что тебя в клуб анальных девственников запишут или представят геем на весь мир. Не думаю, что это приятно. Шутки должны быть подобрее и как можно менее оскорбительными.
Уровень приемлимо
Всегда стоит помнить, что есть уровень – приемлимо. Опять же мысль одного человека, с которой полностью согласен (по большей части мы на своём жизненном пути не придумываем что-то новое, а собираем лучшее от других людей).
Лучшее – враг хорошего. Это уже народное.
Помню проект один. Ни одна строчка кода мимо меня не прошла. Практически всё было как мне того хотелось. Уровень качества кода был довольно высокий. Нагрузка на меня как на лида была колосальная. Это качество тянуло очень много доп. ресурсов. Не помню даже, во сколько раз мы превысили бюджет и сроки. А в конце понял одну простую истину – что достаточно было уровня хорошо, а эта разница между хорошим и лучшим могла быть доделана потом или не сделана вообще. Но овертаймов не было бы, и такого превышения бюджета. Хорошего было достаточно.
Сейчас код ревью делаю не так придирчиво как раньше. Пусть кривовато, но если это работает – пусть работает. Конечно, если это кричитическая вещь, то обязательно это к исправлению. Рефакторинг можно делать до бесконечности долго.
Один человек мне когда-то сказал, написать сложный функционал может каждый, а написать его просто – только проффесионал. Cебя помню, когда на любую задачу хотелось сделать что-то универсальное. По большей части этого не надо для проектов с чёткими сроками.
Другой человек сказал. Что профессионалом считается тот, у кого перед дедлайном ещё остаётся время, чтобы что-то улучшить.
Хотя сейчас на проекте мы делаем всё универсальным. ;)
Срывы
Уже видел воочию пару примеров, как люди срываются на работе, и ещё пару случаев рассказали знакомые. Или как люди в больницу надолго ложились по окончанию проекта, тоже видел.
Что тут сказать... Трудно комментировать.
Главное, костьми ложится не надо, сказал один замечательный человек. И я его полностью поддерживаю. Вы можете отдавать себя 100% в работе, но одержимым работой или проектом быть не стоит. В большинстве своём, овчинка не стоит выделки. Это всё таки выше здоровье.
Требование уважения
Уважать нужно не только других людей, но и требовать уважение прежде всего к себе. Я в первом посте писал о зависимости уважения других к тебе от твоего личного опыта и самоуважения к самому себе. Не надо скрывать того, что вы сдали 20 сертификатов, или поломали что-то, или курсы закончили.
Моя огромная официальная подпись (все её видели) это, скажем, первое требование к другим относительно уважения ко мне. В первую очередь это важно при работе с конечными клиентами. Не зря есть корпоративная политика по написанию писем и подписей в частности.
Видел пару раз письма заказчикам от людей, которые первый раз пишут им, без подписей вообще. Представьте, сидит эдакий Бил, приходит ему два письма. В них одинаковые предложения, но в одном стоит подпись, что это PM или архитектор крупной организации, вот такие заслуги, вот такие официальные контакты, даже факс есть. И есть второе письмо от Васи Пупкина, вообще без подписи. Вопрос? Кто требует к себе больше уважения и как заказчик будет разговаривать с Васей и с вами.
Подпись – это только один из примеров. Главное, не стесняться показать, что ты умеешь и на что способен. К тебе будет столько уважения, сколько ты сам к себе этого требуешь.
Качество работы
Конечно, иногда приходится сложно и ты делаешь ту работу, которую не хочешь делать. В можно просто сказать себе – это просто так стеклись обстоятельства, жизнь сама по себе логична и она расставит в конце концов всё по своим местам.
Как пережить такой период? Пытаться получать удовольствие используя вышеуказанные пункты плюс ещё один из самых главных – всегда качественно выполнять свою работу.
Труд программиста сам по себе созидателен. Какое удовольствие получишь ты, если построишь какашку, и какое удовольствие ты получишь, когда вчекинишь код, который никому потом не придётся исправлять, потому как ты отбросил лень и спешку, и качественно сделал своё дело.
Именно лень и спешка мешают программистам писать хороший код.
Но опять же есть у меня один пример запасе. Его уже описывал выше. Люди хотели написать очень качественный код и всё время обсуждали все-все случаи и спешку напрочь выкинули. И не получили ничего. Не надо забывать про уровень приемлимо.
А есть куча других примеров, когда человек чекинов 5 делал, а проект из сорс контрола всё не хотел собираться и работать.
Скажем так, есть не спешка – есть сроки. Сроки как раз для уровня приемлимо.
Вот приблизительно так... Жду комментов.
Saturday, May 2, 2009
Тонкости лома каптчи или как лишить Данчу работы
Привет,
Многие, наверное, слышали о моём споре с Женей Д., что я сломаю его каптчу до конца месяца, которую он лично разработал для нашего сайта.
Признаюсь, когда спорил, даже толком в код не посмотрел, а действовал по принципу – ПОЛОМАТЬ МОЖНО ВСЁ. Я просто пошутить хотел, а Женя всё по-серьёзному решил спорить. И завязался спор на тортик до конца месяца, что я сломаю его творение. J
Сразу хочу сказать, что сама каптча написано высококлассно и защищена практически от всех известных атак по каптчам. Споры разделились относительно можно нашу каптчу поломать распознаванием или нельзя. Мнения были разные. Но в эту сторону я даже не смотрел – во-первых, знаний по распознаванию образов и нейронным сетям ещё не хватает, а во-вторых, есть хорошая пословица – "Двери крепки, да петли хлипки".
Немного о самой каптче. Это серверный хэндлер, который генеряет текст для каптчи и кладёт его в сессию и по этому тексту генеряет картинку. Страница регистрации содержит ссылку на этот хэндлер. Т.е. по загрузке страницы на клиенте идёт ещё один запрос на сервер в хэндлер для получения картинки. Пользовать заполняет форму, разгадывает каптчу и отсылает запрос на сервер. На сервере введённый текст для каптчи сравнивается с тем, что лежит в сессии, и если всё верно регистрация продолжается.
Всё стандартно. И работает отлично.
А потом глянул в код и нашёл таки 2 узких места.
Уязвимость номер 1.
Что будет, если загрузить страницу регистрации, а запрос на генерацию каптчи забанить? С каким значением будет сравнивать сервер пользовательский ввод? Вот здесь и была уязвимость. Женя сравнивал пользовательский ввод с... константой. Т.е. если в сессии ключа нет, то сравнивал с "EmptyText". Ну, дальше, все сообразили, что надо ввести пользователю, чтобы пройти регистрацию.
Почему была? Только-только похвалился Жене, что уже нашёл дыры, Женя ещё раз всё пересмотрел, переписал (даже к сессию стал ложить не сам текст, а только его хэш), и этой дыры больше не оставил. А жаль... это самый простой способ похачить.
Уязвимость номер 2.
Связана с неодноразовостью самой каптчи. Что это значит? Один раз разгдав каптчу, пользователь может зарегистрировать 1000 пользователь под одной и той же каптчей. Из сессии ведь никто не удаляет текст каптчи, оставшейся после предыдущей регистрации пользователя.
Дабы, подтвердить это, я написал небольшой экспоит для всем хорошо вам известного сайта, где наша каптча лежит.
Что скриптик делает:
- Предоставляет красивый итерактивный интерфейс на WPF
- Делает запрос на страницу регистрации на сервер, чтобы получить ASP.NET Session кук
- И делает ещё один запрос на сервер в хэндлер генерации каптчи, дабы получить картинку (ессно с куком полученным на шаге 2)
- Пользователь вручную разгадывает каптчу (один разок всего)
- Скрипт посылает 10(0)(00) постов запросов на сервер использую разгаданную каптчу и сессионный кук, иммитируя настоящую страницу регистрации
- Сервер успешно создаёт всех юзиков
Даже залогиниться могу под этими аккаунтами
Вот, собственно, и всё. Можно сказать, что это проблема не каптчи, а кода, который каптчу юзает (к примеру, сессию после регистрации нужно полностью убивать, или явно вызывать перегенерять текст). Но... Основная цель каптчи как компоненты для регистрации пользователей - это предотвратить построение ботов для автоматической регистрации пользователей. Цель недостигнута – вышеуказанный скрипт не что иное как настоящий бот.
Поэтому эта дыра каптчи, которую надо исправлять. Как? Сами догадаетесь, как одноразовость каптчи организовать.
А ещё это значит, что скоро мы все дружно большой тортик поедим, который нам Женя Д. в салодком фальварке купит.
PS. Я на мыло лично вышлю (если кому интересно) сердцы скрипта по автоматическому созданию юзиков на нашем сайте.
Tuesday, April 14, 2009
Типы файлов и "ASP.NET пайплайн"
Sunday, April 12, 2009
WCF, Known Types, Serialization, Dictionary
Итак, проблема. Есть контракт сервиса:
- [ServiceContract]
- public interface IService1
- {
- [OperationContract]
- string GetData(int value);
- [OperationContract]
- CompositeType GetDataUsingDataContract(CompositeType composite);
- }
* This source code was highlighted with Source Code Highlighter.
Описание CompositeType ниже:
- [DataContract]
- public class CompositeType
- {
- [DataMember]
- public string StringValue
- {
- get;
- set;
- }
- [DataMember]
- public Dictionary<string, object> Parameters
- {
- get;
- set;
- }
- }
* This source code was highlighted with Source Code Highlighter.
Все довольно просто.
Создаем простой клиент для этого сервиса и пытаемся передать int[] в нашем словаре параметров CompositeType.Parametes (Dictionary):
- Service1Client client = new Service1Client();
- CompositeType input = new CompositeType();
- input.Parameters= new Dictionary<string, object>();
- input.Parameters.Add("array", new int[] { 1, 2 });
- CompositeType output = client.GetDataUsingDataContract(input);
* This source code was highlighted with Source Code Highlighter.
И при работе получаем такое вот исключение:
There was an error while trying to serialize parameter http://tempuri.org/:composite. The InnerException message was 'Type 'System.Int32[]' with data contract name 'ArrayOfint:http://schemas.microsoft.com/2003/10/Serialization/Arrays' is not expected. Add any types not known statically to the list of known types - for example, by using the KnownTypeAttribute attribute or by adding them to the list of known types passed to DataContractSerializer.'. Please see InnerException for more details.
В интернете куча таких постов, которые до сих пор висят без ответа. Ни ServiceKnownType, ни KnowType аттрибуты не помогают. Потому что они работают для классов-наследников.
Решение этой проблемы гениально просто.
Добавляем аттрибут [KnownType(typeof(int[]))] или [ServiceKnownType(typeof(int[]))] куда нужно и в DataContract-класс добавляем поле типа System.Object.
(For english readers: solution is pretty smart. Just add to DataContract-class DataMember field of type System.Object. Then use KnownType or ServiceKnownType attributes )
- [DataContract]
- [KnownType(typeof(int[]))]
- public class CompositeType
- {
- [DataMember]
- public object UsedForKnownTypeSerializationObject;
- [DataMember]
- public string StringValue
- {
- get;
- set;
- }
- [DataMember]
- public Dictionary<string, object> Parameters
- {
- get;
- set;
- }
- }
* This source code was highlighted with Source Code Highlighter.
Похожий вопрос тута
All about known types
Data Contract Known Types
Tuesday, March 31, 2009
Command Shell tricks
Теперь как минимум 2 трика знаю:
1) Получить текущую директорию
echo %cd%


2) Установить в бат-файле текущую директорию как текущую директорию где сам файл находится
Пример,


посмотрите что красным выводится. А если я хочу вызывать в той же директории другой бай-файл из этого, то тут начинаются проблемы. мы не можем получить к нему доступ.
Вот такой код просто не работает, если запускать 1.bat по его полному пути.

Здесь на помощь придёт вот этот трик cd /d %~dp0. Он устанавливает текущую директории, где сам бат-файл лежит.


Пишите в комментах ещё трики, если у вас в запасе есть, и пусть это останется в истории. и не надо будет по закоулкам лазить, чтобы поднять старые знания, как это иногда приходится делать.
Using SQL for Active Directory

sp_addlinkedserver 'ADSI', 'Active Directory Services 2.5', 'ADSDSOObject', 'adsdatasource'
go
SELECT REPLACE(userPrincipalName, '@sam-solutions.net', '') as l,
telephoneNumber, Name FROM OPENQUERY( ADSI, 'SELECT displayName,
sn, name, cn, telephoneNumber, userPrincipalName FROM
''LDAP://DC=sam-solutions,DC=net'' WHERE objectCategory
= ''Person'' AND objectClass = ''User'' AND memberOf =
''CN=tbw,OU=groups,OU=dept2,OU=SamSol,OU=Belcaf,DC=sam-solutions,DC=net'' ')
order by l
Sunday, March 22, 2009
Список высокорекомендуемой литературы для программиста
Привет,
Может некоторые заметили, в письме, которое отсылаю для новеньких на проекте от том, что поставить для работы, включаю 2 книги как Highly Recommended для чтения:
- Рихтера (CLR via C#)
- Дино эспозито (ASP.NET)
У меня лежит запрос на "что ещё можно почитать из recommended". Оно и правда – среди книг шлака очень много. Даже сейчас читаю книгу, что Саша С. Подогнал по WCF – руки поотрывал бы автору – очень слабо.
Я прочитал довольно много книг - ~60% из них не рекомендовал бы ни в коем разе – потеря времени. Но есть очень хорошие авторы. Из всего набора сегодня выделил 10 лучших книг, которые читал и которые высоко рекомендую.
30 марта список рекомендуемой литературы со ссылками уйдёт на всю группу разработчиков. Если у вас есть книги, которые читали (обязательно читали) и хотели бы включить в этот список – отпишите обязательно сюда же.
- Security (книга a и b ну просто must – огненные штуки)
- Writing Secure Code
Коммент: читал в бумажном виде, в своей эл. Библиотеке не нашёл
- Hacking the Code by Mark M. Burnett and James C. Foster –
Коммент: есть в эл. Виде в моей библиотеке
(Hacking the Code - ASP.NET Web Application Security Cookbook (2004) .chm)
НЕ ЧИТАЙТЕ РУССКИЙ АНАЛОГ В ИЗБЕЖАНИИ ПОТЕРИ МОЗГА
- ООП
- Объектно-ориентированный анализ и проектирование Гради Буч
Коммент: Книга на русском, есть в эл. Виде. Буч тяжёл для восприятия, но пробивает насквозь. Классика.
- .NET
- CLR via C#
Коммент: no comment – must
- .NET Gotchas By Venkat Subramaniam
Коммент: раскрываются тонкости языков и платформы (OReilly.dot.NET.Gotchas.May.2005.chm)
- Essential .NET - Volume 1 The Common Language Runtime.chm
Коммент: книга про .NET 1.1, но есть часть того, чего в рихтере нет. Не знаю, есть ли продолжение для .Net 2.0 – сам почитал бы (OReilly.dot.NET.Gotchas.May.2005.chm)
- Aрхитектура
- Patterns of Enterprise Application Architecture by Martin Fowler - Коммент: Есть эл. вариант (Addison Wesley - Patterns of Enterprise Application Architecture.chm). Отличная книга как первая для захода в архитектуры
- Шаблоны проектирования для Java
Коммент: Читал бум. Версию. не нашёл в электронной своей библиотеке пока той, которую читал. Буду искать.
- Книга про построение кластеров
Коммент: пока не нашёл. Буду искать.
- Misc
- Refactoring. Improving the Design of Existing Code
Коммент: no comment. Замечательная книга. (Refactoring. Improving the Design of Existing Code.pdf)
Saturday, March 21, 2009
Соблазны модели распределенных объектов
"Зачем все это?" — спрашиваю я.
"Производительность, вестимо, — отвечает архитектор, глядя на меня со слабо скрываемым превосходством. — Мы можем запустить каждый компонент на обработку в своем собственном блоке. Если мощности блока не хватит, мы запросто добавим еще парочку, чтобы сбалансировать нагрузку". Теперь он уже и не пытается утаить самолюбования вперемешку с удивлением по поводу того, что я вообще посмел открыть рот.
Между тем передо мной возникает любопытная дилемма: заявить парню все сразу и выставить за дверь либо не торопясь показать ему дорогу к светлому будущему. Последнее во всех смыслах выгоднее, но гораздо хлопотнее, поскольку архитектор обычнослишком пленен собственными иллюзиями и вряд ли легко с ними расстанется.
Безусловно, все это просто замечательно, но... Хотя многие стороны жизни распределенных объектов действительно приобретают искомую прозрачность, это явно не относится к аспектам производительности. Наш герой-архитектор осуществил распределение объектов, как ему казалось, исходя из соображений производительности, но на самом деле выбор подобной структуры наверняка снизит эффективность системы и существенно усложнит процессы ее разработки и практического внедрения.
(C) Фаулер
Tuesday, March 17, 2009
Тех. люди #5. Быть в согласии со своим внутренним Я
Быть в согласии со своим внутренним Я
Да уж... давненько ничего не писал. Тяжеловато дался период перехода зимы в весну и физически, и на работе работки поувеличилось, поэтому времени не хватало. Но ничего. Теперь опять стало всё более-менее в своё русло и вот вам следующий пост. А то совсем все уснули.
Принцип #3. Всегда работай в согласии со своим внутренним Я.
Это значит всегда придерживаться тех жизненных принципов, что ты себе выбрал. Ты определил себе, что друга обмануть это плохо – и ничто не должно тебя заставить сделать в этом исключение. В этом и есть твоя сила. Ты силён, когда тебя изнутри ничего не мучает. Ты уверен, когда знаешь, что поступаешь правильно. У тебя меньше сомнений, потому что выбор гораздо меньше и чётко очерчен.
Совесть
Одна из вещей, которой больше всего в жизни дорожу – это моя совесть. Для меня это и есть главный показатель моего согласия с внутренним Я. Ты сорвался, нагрубил, это сразу отдаётся внутри тебя. Ты обманул, и тебя в зависимости от глубины и последствий вранья начинает мучать совесть.
Помню большие дядьки недавно меня спросили, сколько тебе лет. Я годик себе накинул, дабы старше показаться. А зачем? Потом только мучался мыслью, зачем это сделал. Зачем унизил себя перед ними. Такая ложь быстро забывается, но даже этих мыслей и мучений не было бы, если бы сказал действительно сколько лет. Да и результат был бы в принципе один и тот же.
Думаю, у каждого в запасе есть такая маленькая история.
Скидки
Здесь самое главное никогда не делать себе скидок. Это очень важно. Каждое исключение будет отдаваться чем-то нехорошим тебе же самому.
Если тебя, кто-то заставляет сделать что-то, что противоречит твоим принципам – пошли его подальше и тебе спокойней будет. Пусть даже это будет твой непосредственный руководитель.
Быть собой - вот что больше всего ценится в человеке.
Умение контроливать себя
В последний раз, ко мне друг приезжал. Завязался небольшой спор. Первые пол-часа я отшучивался. А после не выдержал и сорвался – начал с пеной у рта доказывать обратное, говорить, что за такие вещи за дверь выставлю и т.д. После этого момента, как перешёл больше на эмоции, я уже не контролировал ситуацию, она меня контролировала и руководила. Был ли я сильным в тот момент? Нет ещё слабее, чем когда либо. Тот щит, который в виде шуток имел, у меня выпал из рук, и защищаться было нечем, плюс при сильных эмоциях человек раскрывается сильно, и у него ещё больше брешей видно.
Одно из правил у Карнеги – никогда не спорь с человеком. Его всё равно не переспоришь, только ещё больше каждый останется при своей позиции.
После того, как друг мой ушёл, я понял, что сделал ошибку. Всё что надо было сказать себе тот момент: его цель - сделать мир вокруг лучше и себя тоже. Так ведь на самом деле и и было. И всё получилось бы спокойней и цивилизованней.
Строить и поддерживать отношения между людьми достаточно трудная задача. Тут как раз контролирование себя выходит на первое место. Обидеть человека можно в течении минуты, обидеть человека и не увидеть его больше никогда, можно в течении 10 секунд.
Конечно, иногда ты срываешься, и твой коллега или спутник получает, то что ты выворачиваешь на него. Будь с этим осторожней. Больше самоконтроля и самодисциплины. Может этот человек благую цель имел – ничего в этом мире просто так не происходит.
Уважение
Отностить к людям так, как хочешь чтобы относились к тебе. Поистине золотые слова Карнеги.
Мир сам по себе субъективен – он такой каким ты сам его видишь. В мире не может быть гармонии, если её нету внутри самого человека.
Если ты не можешь с уважением относится прежде всего к себе, ты не сможешь с уважением относится к другим. Есстествено, эти другие не смогут к тебе отнестись к тебе, как ты это желаешь или видишь.
Начать нужно прежде всего с себя. Сделай всё, чтобы для начала самого себя уважать.
Будешь ли ты уважать человека, у которого зарыты скелеты в шкафу, которому самому противно от того, что он постоянно делает, и мучают угрызения совести.
Уже давно говорю, и свято уверен в этом. Семья (настоящая семья) без любви существовать может, без уважения к друг другу нет. И об этом нужно чаще напоминать друг другу и не давать себе и твоему спутнику показывать неуважение к тебе да и к себе тоже. А если всё это ещё и любовью закрепляется – то такая семья через любые невзгоды пройдёт.
Не позволяйте себе и другим показывать неуважение к вам.
Прощение
Умение учится себя прощать – великое дело. Нужно понимать, что человек несовершеннен и ему свойственно ошибится.
Вот я сейчас намного меньше боюсь ошибится, чем пару лет назад. Не ошибается тот, кто ничего не делает. Отличные слова. Ошибки – это твой бесценный опыт. Ты попробовал – не получилось, ещё разок – снова нет, ещё – да... всё получилось. Золотое правило. За двух небитых одного битого дают.
Можно заложить себе какой-то процент ошибок в любом действии. Сделать это можно ожидаемым и меньше разочарований будет. Даже тестированию и исправлению ошибок в проектах обычно выделяют ~30 процентов от времени разработки.
Особенно у женщин, подметил, восприятие своих ошибок - это проблема. Вот уж кто всей душой отдаётся саму себя на растерзание. У меня жена на права ходила. Мне больно было смотреть, как она переживает уже после первых уроков вождения о своих ошибках и промахах. В таких ситуациях, главное понимать, что а по-другому то просто не бывает. Как говорит моя бабка, ребёнок должен сразу определённое кол-во раз упасть, чтобы научится ходить.
Люди
Я вот только недавно (пару лет назад) понял одну истину, вроде простую, но для меня очень важную. Люди - это прежде всего люди, а всё остальное потом. Ты приходишь к доктору и прежде всего перед тобой сидит человек, а потом доктор. К тебе подходит миллиционер, это прежде всего человек, а потом миллиционер. Если ты лидер команды, то ты прежде всего человек, а потом менеджер.
Проекты приходят и уходят, а люди остаются, построенные отношения между людьми остаются, уважение или неважение между людьми остаётся. И если те же люди хотят рядом с тобой идти в бой в следующий проект, значит всё ты построил правильно.
Конечно, в любом правиле есть исключения. Когда человеческие качества ставят на потом, а на передние – твои профессиональные. В армии особо много таких – их ещё называют вояками в ср@#у.
Голова и сердце
Если решение исходит из сердца, оно всегда правильное. Это решение не будет тебя мучать. У головы другое предназначение – постоянно думать и порождать сомнения.
Мы перенесли принятие решений в голову. Мы руководствуемся чужими правилами для принятия решений. Мы выбираем из книг, что человека вот за это нужно наказывать этим, и тогда он будет делать вот это.
Посмотрите для начала, что ваше сердце подсказывает. А потом что ваш мозг говорит. Не всегда нужно оперировать голыми фактами, иногда достаточно посмотреть человеку в глаза, чтобы понять, что он сам знает, что он сделал и что он этого больше не сделает. Не надо добивать его, как иногда хочется сделать. Он сам всё понимает.
Но и ещё одну штуку нужно помнить. Пользоваться вашим сердцем должны вы сами. Если видите попытку кого-либо использовать это в своих целях – включайте мозг и действуйте как считате нужным.
Главное
Так что же главное? Если у тебя внути всё в порядке, если ты ощущаешь внутреннюю гармонию, если работаешь и живёшь в согласии со своим вторым Я, у тебя всё получится. Не будь воякой, будь воином.
PS. Везде по тексту говоря тебе, я подразумевал себя. И буду только несказано рад, если хотя бы в нескольких местах вы поставите себя.
Friday, February 13, 2009
Тех. Люди #4. Здоровье.
Сегодня хотел бы поговорить о принципе #2, о жизненно важном принципе. Звучит он просто: Самое главное в жизни – это человеческое здоровье.
Как и с принципом #1 звучит просто, да включает очень много.
Что имеем не храним, потерявши плачем.
Да уж, это видно человеческая природа и её очень трудно изменить.
Маленькая история:
- Слушайте, пациент, если вы не бросите курить – вы умрёте через месяц, а так вы ещё долго проживёте...
... Он умер через месяц.
Смешно. Неправда ли?
Очень часто мы не делаем ничего загодя для профилактики:
- только когда совсем с зубом плохо стало, пошёл к стоматологу и лишился зуба (хотя в начале была очень маленькая дырочка)
- плоскостопие не лечил, пока ноги не заболели и трудно ходить стало (да и теперь не лечу)
- гастрит не лечил, язву заработал
- язву заработал, но на вечеринку пошёл
Думаю, у каждого в загашнике есть подобная история. Склоняюсь к тому, что это обыкновенная человеческая лень и пренебрежение собой... пока петух в заднее место не клюнет, не пошевелишься.
Состоявляющие здоровья
Для меня здоровье состоит из 3 основных составляющих:
- Духовное здоровье
- Моральное здоровье
- Физическое здоровье
Они написаны по приоритетам, начиная с высшего. Здоровье - это не только твои физические болячки и физическое здоровье. Это твоё общее здоровье. Если ты встаёшь утром и улыбаешься и чувствуешь себя, как заново родился, если идёшь и чувствуешь прилив инергии и тебе хочется прожить этот день и ты с наслаждением вдыхаешь полной грудью – вот такому здоровью можно только позавидовать.
#1 Духовное здоровье
Это основа не только здоровья, но и самого человека. Это нечто незыблемое, фундаментальное, чего человек постоянно держится и к чему стремится.
Мне нравится другим словом это здоровье назвать, исконно русским, – это дух твой.
Во время поиска самого себя, во время депресняков, меня мучали и преследовали глобальные вопросы:
- Для чего человек живёт, какая конечная цель?
- Вот есть Земля, а дальше бесконечность. Насколько бесконечная бесконечность? Она ведь не может быть бесконечной. Насколько мы ничтожны в этой бесконечности?
- Вот я сейчас еду, а вокруг люди. Куда они все? Зачем все спешат и суетятся? Для чего?
- Кто я такой и какое моё предназначение?
- И т.д. – не буду напрягать мозг сейчас и вспоминать те вопросы
Чувство рассклеенности меня в такие минуты охватывало. Причём расклеенности где-то внутри меня. Был ли здоров духовно в те минуты – нет. Не чувствовал фундамента под ногами.
Но, как говорится время и знания приходящие с опытом и возврастом всё исправляют. После каждого депресняка мой фундамент становился ещё крепче, чем был.
Какую основу у меня этот фундамент составляет:
- Семья
- Вера в Бога
- Позитив
- Совесть
На таком фундаменте можно строить что угодно. Но и беречь его нужно как зеницу ока.
Многие у нас, наверное, и спиваются, потому как фундамента такого нету либо он шаток очень.
Приведу пару выражений из мультфильмов про богатырей русских, которые недавно вышли. Сам дух мультфильмов очень нравится:
- Кто духом слаб, у того животное в опале (Илья Муромец).
- В ратном деле всё важно: тактика, стратегия, а главное - это дух укрепить (Добрыня Никитич).
Огонёк. Думаю, комментировать не надо. И так всё понятно.
#2 Моральное здоровье
Это твоя устойчивость к стрессам, твоё каждодневное состояние, насколько твоя психика подвержена стрессам... в принципе, это и есть здоровье твоей психики.
Очень часто люди переживают очень сильно за свои ошибки, изводя себя в состояние депрессняка. Понятно, что от ошибок и стрессов никто не застрахован. И чем сильнее ты, тем больше пользы от ситуации получишь и последсвия уменьшишь – вместо переживаний и обзывания себя лохом, ты можешь оценить насколько богатый и уникальный опыт ты приорбрёл. Только себя мучать не надо. Это только подрывает психику и уверенность в себе. Учитесь лучше на чужих ошибках и подмечайте, как другие люди выходят из сложных ситуаций.
А лучше всего – поделись с другом проблемой, он всегда тебе поможет и подскажет лучшее решение.
Вот это здоровье имеет почти полное отражение на твоё физическое здоровье. Перегрузился работой за день? Получи бессоницу. Получил стрессов? Получи болячку. Плохое настроение? Сейчас твоё тело ещё хуже тебе сделает.
Что входит в твоё моральное здоровье:
- Умение противостоять стрессам
- Твоя уверенность в самом себе
- Твоя уверенность в людях окружающих тебя
- Твои отношения с окружающими тебя людьми
На работе - это самое главное здоровье из всех. Это и твоя защита, если ты можешь противостоять стрессам; это твоя и брешь, если стрессы сильнее тебя.
#3 Физическое здоровье
Ну, это, думаю, все догадались, что значит. Это твои физические болячки, бессоницы, язвы, болящее коленко или ключица и т.д..
Тут, как говорится, я сам пропрофанил. Всё в этом мире компенсировано – уделяя особое внимания и следя за своим здоровьем #1 и #2, меньше следил за этим здоровьем. И понимал это, но сил не находил. По крайней мере, этот пост заставил меня ещё раз передумать многое о здоровье и теперь чувствую, что и этому здоровью нужно уделить такое же внимание и заботу.
Проблемы со здоровьем #1 и #2 находят отражение на физическом уровне. Но и проблемы со здоровьем несовсем хорошо отражаются на твоём духе. Не зря говорят, в здоровом теле здоровый дух.
Поддержка
Цени не только своё здоровье, но и здоровье других. Что посеешь, то и пожнёшь. Ты сам себя лучше будешь чувствовать, если выгонешь с работы человека, который не жалея себя 15-тый час сидит. Это здоровья ни ему не добавит, ни проекту.
Жизнь коротка. И не стоит не дооценивать и не любить то, чем наградил тебя Господь – душой и телом. Только в прекрасном настроении и когда у тебя ничего не болит – ты становишься самым продуктивным человеком на свете.
Но ничего просто так не даётся, и за всё надо платить. Поэтому задумайся, если ты вторую неделю по 12 часов сидишь на работе – стоит ли оно твоего здоровья. Может чуть меньше, но качественнее?
PS. Ещё раз... Здесь я отобразил только свои мысли, и каждый волен найти в этих строках свой смысл либо не найти. Рад буду любым комментам.
Tuesday, January 27, 2009
HTTPS Performance Tuning
Интересные и красивые статьи про HTTPS и перформанс. Я полез их искать, потому что у меня давно было подозрение, что всегда принимаемое за аксиому утверждение, что HTTPS и кэширование контента на стороне клиента не совместимы, не совсем верно. В этих статьях я нашел этому подтверждение, все кэшируется, просто требуется грамотно к этому подойти, как и к любому делу. А тормоза HTTPS могут быть вызваны другими причинами, например долгой установкой безопасных соединений. Про это тоже можно почитать в этих статьях.
Best Practices for Speeding Up Your Web Site
http://developer.yahoo.com/performance/rules.html
Make Fewer HTTP Requests
Use a Content Delivery Network
Add an Expires or a Cache-Control Header
Gzip Components
Put Stylesheets at the Top
Put Scripts at the Bottom
Avoid CSS Expressions
Make JavaScript and CSS External
Reduce DNS Lookups
Minify JavaScript and CSS
Avoid Redirects
Remove Duplicate Scripts
Configure ETags
Make Ajax Cacheable
Flush the Buffer Early
Use GET for AJAX Requests
Post-load Components
Preload Components
Reduce the Number of DOM Elements
Split Components Across Domains
Minimize the Number of iframes
No 404s
Reduce Cookie Size
Use Cookie-free Domains for Components
Minimize DOM Access
Develop Smart Event Handlers
Choose link over @import
Avoid Filters
Optimize Images
Optimize CSS Sprites
Don't Scale Images in HTML
Make favicon.ico Small and Cacheable
Keep Components under 25K
Pack Components into a Multipart Document
Entity Framework guide
Sunday, January 18, 2009
Тех. Люди #3
Привет в Новом году.
Пожелаем себе удачного и главное безопасного года. Ждал когда освободится ближайший свободный вечерок, чтобы продолжить дальше. Следующим, о чём хотел рассказать, это о своих основных принципах, которые выработал сам для себя для решения, вернее, для подхода к решению задач и проблем. Их использую не только на работе, но и повседневно в жизни. Дались они мне не легко – через шишаки, через долгие раздумья, депрессняки и стрессы. Тем сильнее они и засели.
Очень часто, особенно, в последнее время, они помогают находить правильные решения и делать правильный выбор в работе и очень помогают избавляться от ненужных стрессов. По крайней мере, меньше сомнения начинают терзать, а сомнения это плохая штука, которая мешает жить. Если что-то происходит не так в моей жизни и на работе, первое, что делаю, это налагаю все эти принципы и смотрю, что могло быть упущено.
Принципов немного больше, но основные, связаные с работой, приведены ниже:
- Позитив
- Человеческое здоровье
- Согласие с внутренним Я
- Удовольствие и труд
- Ничего идеального не бывает
- Проблемы не решаются
Только соблюдая их, чувствую себя в безопасности, сильным, довольным и счастливым.
_______
Сегодня хотел поговорить о первом из них и самом главном #1. Формулируется он легко: "Самое главное в жизни - позитив".
Вот только идея его более сложна в понимании и глубже в восприятии, чем формулировка. У каждого своё понимание этой формулировки и он абсолютно прав в ней. Выскажу своё понимание этого.
Что имеем не храним, потерявши – плачем. Пару раз в жизни в последние годы от перегрузки на работе лично попадал в лапы депрессняка. Тяжёлые периоды, конечно, ничего не скажешь. Эти периоды обычно называл переоценкой ценностей – много мыслей ходило в голове в такую пору. И бессоница мучала из-за этих мыслей. Но обычно после таких периодов, когда депрессняк заканчивался, чувствовал намного сильнее стал духовно и морально, чем был. Это было чувство как будто ты только что родился заново. Вот в такие моменты начинаешь понимать, что жизнь одна и она прекрасна. Что надо радоваться каждому дню, что у тебя есть и каждой минуте.
Раз и всё. Только недавно смотрел с женой какой-то фильм, слезливый какой-то. Начало фильма - между ним и ней разгорается скандал, она его пилит, что денег нет, дома нет, и, вообще, когда мы, наконец-то, жить начнём. Потом он умирает от рака. Неплохой сюжет, но идея проста – начинать жить надо прямо сейчас с этой минуты и получать от этой минуты удовольствие. Человек не контролирует конец жизни и она может прийти в любую минуту, а ты на небе скажешь, что и не успел пожить даже. С каждым годом, с каждым моим годом количество раз, когда говорят, что кто-то из знакомых умер, растёт. Причём, не от старости. И часть из них не старые люди, а мои ровесники. Один под машину попал, второй на мотоцикле разбился, третий гриппом заболел и организм не выдержал, зарезаной нашли... не буду продолжать. Всё это были мои ровесники, которых очень хорошо знал. Вот только вчера с ними разговаривал и вот никто и не подозревал, что человеку-то начертано всего лишь вот столько. Надеюсь, они все начали жить и успели насладиться жизнью.
Две стороны медали. Ещё из древних кто-то сказал, что любая вещь в этом мире, абсолютно любая имеет две стороны – хорошую и плохую. Пойдем как в математике от противного.
- Поехали знакомые в Египет на отдых недавно. Приехали такие недовольные и неодохнувшие, что ужас - там всё дорого, любая экскурсия это деньги, ночью холодно и т.д....
Человеку не каждый год удаётся выбраться в такую экзотику. За это знакомые выбросили деньги и... не отдохнули. Как правильно было бы поступить: забить на экскурсии, купить одеяла и травы, и гостиницу подешевле.
- Есть у меня знакомый. Подсел он в последнее время на белорусские новости. И впал в депресняк. Он как приходит – всё плохо, все мы в ж..., и будем в ж..., и вокруг всё скоро рухнет, и отдаёт полностью себя этим чувствам. Даже от мобильной связи отказался, хотя имел два телефона.
Я долго читал Библию, и одолел-то только половину ещё, но она даёт большие знания людям. Одно из моих лучших умозаключений по ней – люди за 10.000 лет не изменились ни на йоту. Атмосфера вокруг людей тоже ни на йоту не изменилась – был богатым, стал бедным, был бедным, стал ещё беднее, а потом богатым. Люди переживали времена, по сравнению, с которыми нынешний кризис, это расцвет.
- Медаль отдам другом знакомому человеку. Это верх совершенства. Человек умудрился научиться видеть плохое во всём. Работа – плохо, дом – плохо, семья – плохо, Беларусь – совсем плохо. Он собирается уехать в другую страну. Но у меня есть знаете какие подозрения – ему там тоже будет плохо.
Все перечисленные это прекрасные люди и ни в коем случае не корю и не обвиняю их за то, что они смотрят на вещи немного с другой стороны – каждый волен выбирать себе жизнь сам. Но, по-мне, нельзя отдавать себя и свои чувства кризису. Но ходить улыбаться как дурачок в такую пору, тоже неправильно. Можно видеть текущие проблемы и подстраховываться от них, создавать себе тыл. А откуда возьмутся силы для борьбы с проблемами, если ты их все отдашь им же?
Умение найти, что-то хорошее в любой вещи и получить от неё силы - этому нужно учится и к этому стоит стремится.
Никто не говорит, что плохую сторону не надо замечать. Эту сторону можно и нужно видеть и делать всё возможное, чтобы предотвратить последствия. Секрет - ей не надо отдавать свои эмоции. Правило простое – хорошей стороне отдавайся полностью и зарядись ею, на плохую посмотри трезво и не дай ей ничего от своих чувств.
Проблемы. Они есть всегда. Одни из них большие, другие маленькие. Они есть даже у той птички, что летает, и проблемы у неё может гораздо глобальнее, чем твои – может она птенца лишилась.
Часто знакомые послушав мои мысли про позитив, начинают трунить надо мной. Типа, вот народ увольнять надо, ну, Дёня, где твой позитив, давай, ну где он? Или она опаздывает и мы всё одно уже не успеем, чего нервничаешь, где твой позитив, давай радуйся.
Что тут ответить. Ммм... Это было бы странно, если бы получал удовольствие от этих вещей. Скорее всего за дурачка приняли бы.
Ребёнок может чувствовать себя счастливым только когда он чувствует себя в безопасности (Детская психология). Полностью согласен. Лучше и не скажешь. Если чувствуешь, что что-то, что ты собираешься сделать, может принести дизбаланс в твою жизнь, постоянные сомнения, угрызения совести – не делай этого.
Всё делать правильно нельзя. Это важно понимать. Первые звонки с закачиком подрывали меня достаточно сильно - переживал сильно, что тупил много. Юра рассказал мне после одного из звонков интересную притчу, которая хорошо запомнилась. Отличие дурака от человека знаете какое? Только дурак может переживать перед каким-то событием, что он будет делать что-то неправильно, потом во время события он будет волноваться и из-за этого делать что-то неправильно, а после события корить себя долго, что он сделал что-то неправильно во время события. А получал весь этот негатив герой притчи знаете почему? Потому что он дурак. Он, конечно, не обозвал меня тогда дураком, но идею притчи я понял - если тупанул, то лучше проанализируй почему и в следующий раз так не делай. А если ты подготовлен, то ни одно событие тебя не вспугнёт.
Люди по умолчанию хорошие. Если любую проблему так рассматривать, то решение может найтись быстрее и лучше. Мир такой каким мы его сами себе представляем. Не надо видеть в каждом человеке врага своего или что у него плохие мысли постоянно ходят.
Ессно. Есть исключения. Отличный рассказ у кого то был (Женя часто вспоминает), что человек болты с рельс выкручивал, чтобы сделать что-то хорошее - подарить кому-то, а поезд с рельз сошёл. Есть плохие люди, которые специально плохие вещи делаеют. Таких людей к счастью не так много, по крайней мере в нашей кабинетной профессии. Но их тоже нужно замечать и лучше избавлять коллектив от них либо перевоспитывать и перестарховываться от всяких ненужных случаев.
Вот какое правило для себя понял. Если человек украл, то в 90% случаях виноват не воришка, а тот человек, который спровоцировал человека украсть. Если ты на работе положил кошелёк с деньгами прямо на столе, то это ты полностью виноват, что его лишился. Если разработчику в руки дать продакшн базу, то рано или поздно бедой это обернётся. И виноват не разработчик, а менеджер, который не предусмотрел это.
С этим правилом нужно быть поосторожнее, чтобы на небе тебя не назвали лохом. Для себя я принимаю, что 90% людей хорошие, а 10% всё же имеют недостатки в своём воспитании. Таких действительно видел и попадался в их лапы, но всё же их очень мало. И не стоит видеть в каждом дурные мысли. Если чувствуешь, что что-то не то, то стоит настрожиться.
Чтение между строк. Вот это действительно много сил забирает. На себе испробовано. Иногда придёт письмо о чём-то конкретном, а ты начинаешь думать, что тебя пытались поддеть, или унизить, или оговорить, или ещё что-то. Самый большой фокус в этом – человек всегда найдёт то, что он ищет. Если он ходит с мыслью, что его кто-то пытается поддеть – он найдёт это в любом письме. Если есть у него дурные мысли, он их только будет подтверждвать каждый день фактами.
Есть действительно такие письма или разговоры, когда явно намекают на что-то. Но это из другой песни и их очень-очень мало. Можете забить, если чувствуете, что вам даст это только негатив. Это проблема не ваша. Это проблема другого человека, который не может выразить свою мысль правильно. А может это вам только показалось и письмо не содержит ничего.
Тут категорично себе правило это поставил - если явно чего-то не было высказано, то в баню всё и всех – это могло тебе только показаться. Жизнь легче становится, когда в ней меньше сомнений.
Секрет. Первый раз когда посмотрел фильм "Секрет" был немного приятно удивлён. Это как раз то, о чём думал, только сформулировать трудно было. Недавно скачал книгу в оригинале и прочитал её. Ещё лучше. Идея теории секрета проста – если ты получаешь удовольствие от того что есть, получаешь удовольствие от того, что у тебя будет – то у тебя всё будет. Мир такой, каким ты делаешь его сам. Многие из вас смотрели, многие ещё посмотрят фильм – рассписывать не буду.
Дорогу от ЦУМА до работы называю дорогой совершенствования. Каждое утро я иду по ней, у меня есть своя мантра, которую каждое утро повторяю на ней – каждое утро я благодарю Бога за этот новый день, за то, что я есть здесь и могу чувствовать этот день, за то что он есть, и я чувствую гармонию с этим миром, за эту машину, дерево, мороз, девушку, за то что это и есть жизнь, за то что у меня есть здоровая семья, отличная машина, превосходная работа, и есть всё в достатке и изобилии, за то, что большие деньги легко и часто входят в мою жизнь каждый день, а проблемы есть везде, даже вон у той птички, что летает, а я проведу полной грудью этот день.
И знаете что? Дохожу до работы и чувствую насколько я зарядился и стал сильнее, и любые проблемы мне поплечу и никакой работой и проблемами меня не испугаешь.
Посыл этой басни простой. Получай удовольствие от каждой минуты, что ты работаешь, живёшь, идёшь или поёшь. Пытайся и учись получать удовольствие от всего. Ты сам делаешь свою жизнь и мир вокруг.
Работа за удовольствие, а не за деньги – верх мастерства. Но что приятно видеть, есть порох в наших пороховницах и есть у нас люди, которые работают не ради денег.
Много букофф. Но остановится не мог. Буду рад ещё комментам. Ещё раз, это только моя точка зрения, и каждый волен выбрать для себя что-то своё. Но даже, если хоть одно предложение посеяло хоть маленькое зернышко – буду только несказанно рад.
С уважение ко всем и лично к каждому,
karlito
Tuesday, January 13, 2009
Access Remote SQL Server with SQL Management Studio and Windows Authentication
I found an interesting way how to access sql server, when only windows user is granted access to it (and this user is in different domain).
http://www.galcho.com/Blog/CommentView.aspx?guid=20d0d23f-9f7d-46e8-a82c-971c1118996e

So the command is the following:
/netonly – is required switch. It means that the process should be runned locally under the current windows account, but when accessing remote side it uses the specified credentials.