Отпраздновал надеванием фирменной футболки stackoverflow.
Конечно кто-то скажет "фи". Конечно где мне с ихними десятками тыщ мерятся?
Но по мне вот тоже достижение...
Как говорил Петр Алексеевич Романов - надо и малому уметь радоваться.
Вчера удалось поближе познакомится с David Padbury и наконец-то понять что же такого удивительного в этом node.js и почему все те, кто хоть как-то связан с разработкой web проектов так и галдят о нём. Штука оказалась наинтереснейшая, но как-то очень уж сомневаюсь я, что очень уж скоро, массово начнёт оно применяться в enterprise уровня web проектах. Я имею ввиду, что кажется мне, ох непростая это будет задача - разрабатывать и поддерживать проект, целиком построенный на этом. Вот если можно будет частично его пользовать на некоторых страницах обычного проекта asp .net или mvc(хотя я думаю технически уже сейчас так можно), тогда да, будет круто.
Дэйв показал несколько трюков, которые видимо таки сложновато будет повторить на имеющейся модели http-request-response asp.net-а. На семинаре я заметил оператора с камерой, так что я думаю, Дэвид у себя в блоге скоро видео выложит.
После семинара мы сидели и болтали на всякие сторонние темы. Дэвид рассказывал как и зачем он переехал в Нью-йорк из Лондона. Почему он выбрал именно восточное побережье, ведь считается что вся IT-индустрия Штатов сосредоточена на западном. Интереснейший оказался собеседник. Хотя мне с умными людьми редко бывает скучно. Хороший у меня день рождения получился. Удалось его провести в компании очень умных людей. Мой мозг то и дело получал множественные оргазмы. Я как-то даже съёрничал, что мол "интересно говорит ли мистер Пэтбюри хоть когда нибудь что нибудь глупое?". -"О, да я частенько этим грешу", улыбаясь заметил Дейв. -"А по моему даже самая невероятно глупая и банальная фраза только благодаря твоему британскому акценту будет звучать очень остроумно", заметил я.
Вообще честно говоря в Lab49 очень уж строгий отбор и работают там исключительно талантливые люди. Мне, к сожалению врядли когда нибудь доведётся дорасти до их уровня.
Вчера удалось отлично посидеть и пообщаться в компании с интереснейшими людьми. Был семинар в Нью-Йоркском офисе Microsoft. Первый доклад был на тему IoC контейнеров - тема для меня не то чтобы совсем уж незнакомая, но плаваю я в ней вполне себе поверхностно, любая попытка погружения глубже может меня легко утопить. Презентацию вел Скотт Вейнштейн (Scott Weinstein) и честно говоря я бывал на его сессиях, по мне - докладчик он неважный. Как и следовало ожидать уже на десятой минуте я потерял нить повествования и вообще практически не понимал ничего, Скотт забрел в такие дебри, что мне стало как-то неуютно, я почувствовал себя мальчиком на встрече подрывников-специалистов по обезвреживанию мин, мальчиком, который незаметно для взрослых на досуге играет со спичками. Да и еще и место мне досталось на задних рядах. Зато всех улыбнуло, когда я смущаясь и стесняясь собственной невежественности задал вопрос о DependencyResolver и Скотт вдруг честно признался "я понятия не имею...". В зале раздался смешок, Скотт выдержал паузу давая понять что он не шутит. "Это просто работает, а как это работает - меня никогда не волновало. По крайней мере до сих пор". Тут несколько человек из зала взялись мне объяснить, но даже после этого я понял как это работает только в общих чертах. Либо я действительно непроходимый тупица, либо мне надо просто на это забить. Действительно - работает же, а как это работает может и знать не обязательно.
Второй доклад был про Aspect-oriented programming. Вел его совсем молоденький парнишка Bailey Ling, который просто подготовил обалденую презентацию по теме. Запомните это имя, я думаю его еще много раз услышите - парень просто динамит. Он рассказывал так увлекательно, что даже если совсем ничего не смыслить в программировании его было бы интересно послушать. Он показывал яркие слайды, набирал куски кода, шутил - делал все для того, чтобы всем было интересно. Один раз даже показал как работают аспекты на примере небольшой Hello World программы написанной на Ruby.
После докладов несколько человек были приглашены для беседы в непринужденной обстановке ближайшего кафе. Мне удалось побывать в компании очень умных людей, среди них были Bulos Dib, имеющий более чем двадцатилетний опыт работы в индустрии и David Padbury и еще много кого, имен которых я не знаю. David- это вообще какой-то монстр, code ninja, как говорят в Штатах. Его блог открытый в браузере на айпаде взрывает мозг. Причем так интенсивно взрывает, что айпад начинает жаловатся на нехватку памяти.
Как-то обсуждая всяческие проблемы программирования, незаметно переключились на тему трудоустройства. Тема для многих достаточно актуальная, учитывая экономическую ситуацию в стране. Кроме того, наверное я был один из немногих, который работал на постоянной основе "за зарплату". Многие же из тех ребят работают в основном независимыми консультантами на контрактной основе и относительно часто меняют место работы. Многие жадловолись на уровень предлагаемых зарплат. Если не знать о каких суммах идет речь, то можно было подумать, что это работники котельной, взорвавшейся на прошлой неделе и оставшиеся вдруг без работы жалуются на свою нелегкую судьбу.
Короче говоря с удовольствием провел время. Я не знаю может быть кому нибудь будет интересно ( в чем я честно говоря сомневаюсь), можно скачать примеры и содержание докладов:
https://github.com/ScottWeinstein/IoC-Demos
https://github.com/bling/AOPDemo

Сходил на NYC WPF & Silverlight Meetup. Вроде начинался как обычный семинар. Но не совсем получился обычным. Во первых я неожиданно для себя пришел раньше времени. Обычно у меня никогда не получалось приходить вовремя, я всегда опаздывал минут на двадцать. Но на сегодняшний семинар не опоздал. Никто меня на работе не задерживал, потому как я сейчас безработный. Надеюсь не очень надолго.
Итак первый докладчик Wayne Richmond очень быстренько прошелся по анонимным типам, лямбдам и extention methods. Потом показал пример где обнаружилось, что если коллекцию из объектов анонимных типов привязать к ItemsControl-у на странице Silverlight приложения, то можно будет увидеть что данные есть, но значений этих данных видно не будет. На вопрос о WPF, он ответил что не знает, поскольку он не пробовал. Но вот в Silverlight как видите не работает. На этой непонятной ноте вдруг он неожиданно решил закончить свой доклад...
Второй докладчик Boulos Dib очень долго рассказывал про DataBinding, про INotifyPropertyChanged, ObservableCollection и пр. В самом начале доклада он извинился заявив, что он совсем новичок в Silverlight. Непонятно тогда зачем он вообще взялся рассказывать о том, в чем сам еще не до конца разобрался. Из зала то и дело докладчика поправляли или задавали вопрос, на который он не мог ответить с полной уверенностью. Несколько раз примечали, что определенный функционал имеет свои особенности в WPF, и каждый раз он заявлял что он к сожалению с WPF никогда не работал - только c Silverlight. Пару раз даже я ввел его в ступор, чем жутко горжусь честно говоря. Всегда ведь приятно осознавать, что ты что-то знаешь, о чем не знает кто-то другой. Но все же надо отдать должное, человек видно старался. За какие-то двадцать минут он попытался охватить не только вышеперечисленные темы но и немножко MMVM, Blend и еще по мелочи. Хотя конечно доклад получился не на двадцать минут, а на все тридцать пять, потому что каждый раз когда он что-то говорил неверное, начиналось бурное обсуждение. В целом получилась плодотворная дискуссия.
Третий докладчик вообще поразил всех. Именно по его вине обычный вроде семинар превратился непонятно во что. Он сильно опоздал. Он привез с собой ящик вина. После того как он подсоединил свой компьютер к проектору, он зачем-то напялил на уши огромные наушники, шнур от которых болтался у него между ног в течении всего доклада (зачем он их напялил, если не собирался их куда-то воткнуть – оставалось загадкой). Потом он отвлекся на минуту чтобы найти у себя в рюкзаке… штопор. Он откупорил одну бутылку вина и начал свой доклад. Причем очень резво. Не стесняясь в выражениях он то и дело вставлял чуть ли не между каждым словом нецензурщину. Народ воспринял это как особый стиль ведения доклада. Время от времени он отхлебывал из открытой бутылки, прямо из горла. Народ веселился вовсю. Докладчик разошелся так, что казалось что это не семинар, а какой-то фанатик на шабаше призывает убить всех людей на планете, потому что те не используют MMVM и RIA Services. На пятой минуте он вдруг после очередного «Это блять дерьмо, так нельзя девелопить вашу мать» вдруг заявил «меня сейчас стошнит». Все подумали, что это он так в переносном смысле выражает свое отношение к неправильному дизайну ПО. И вдруг неожиданно для всех, он достал какой-то пакет из своего рюкзака и начал на самом деле в него блевать. И тут все поняли, что представление которое докладчик все это время разыгрывал на самом деле не что иное, как результат очень приличного опьянения. Пришлось доклад прерывать. Для всех было шоком наблюдать подобное в офисе Microsoft. Я стал жалеть, что не заснял это все на видео. Я вначале попытался, но в зале был погашен свет, а включать подсветку я постеснялся. Вместо этого я записал аудио. Но там на самом деле малопонятно что происходит. Конвертить amr и выкладывать на йотуб охоты нету, какой-то другой сервис искать тем более. Кому очень интересно - чисто чтобы поржать, могу прислать по почте.
Вот не пойму, кому в Майкрософте пришла в голову идея в pstools из пакета SysInternals запихать EULA?
Вот нахрена это было делать?
Не, ну хрен с ним - запихали так запихали, один черт никто ее не читает, так нахрена было диалог делать без тайминга?
ЭТО ЖЕ БЛЯТЬ консольные утилиты. Ну ведь разве не идиоты?
Теперь что получается: если ты запускаешь тулзу из под LOCAL SYSTEM account, ты интерфейса не видишь, а процесс запускается и молча висит. Потому что где-то там в фоновом потоке висит тот самый диалог с лицензионным соглашением.
Уроды - я из-за них часа три потратил, чтобы понять, почему эта штука не работает*
Вот пример того, как отличный продукт написанный в одиночку энтузиастом, может быть испорчен в большой корпорации.
Еще один подобный случай с .net Reflector-ом Лутца Родера. Red Gate его выкупили несколько лет назад, божились и клялись, что продукт останеться бесплатным и свободным для скачивания. В принципе они бесплатную версию сохранили, но добавили фичи, за которые уже надо деньги платить. Один только этот факт все портит.
Нет, ну если Вы божились и клялись что продукт останется бесплатным и развитие его будет бесплатным, так блять держите слово.
Я и сам программист, и я чрезвычайно уверен, что софт абсолютно весь должен быть совершенно бесплатным. Надо зарабатывать на рекламе и сервисах, на показе сисек и еще на чем нибудь, но не на ПО. Программное обеспечение должно быть бесплатным!
___________________
Долго разбирался какие ключи реестра затрагиваются в процессе запуска и наконец нашёл решение проблемы – просто руками реестр подправил.