Про силу спрощення і не тільки

Колись я ходив на курси з патернів програмування. Вів їх такий прикольний дядько з багатим досвідом роботи консультантом. Найцінніше було не самі патерни (про які легко можна прочитати будь-де), а приклади з його досвіду.

Одна з таких історій мені найбільше запам’яталася. Розкажу як пам’ятаю…

Сам цей лектор є великим фанатом космічних технологій, польотів і усього іншого. Але найбільший його інтерес це місячна програма. Він зустрічався особисто з багатьма її учасниками, причому не тільки з вченими та інженерами, але і з людьми які приймали участь у виготовленні і збірці залізяк, тренуваннях, транспортуванні, тощо.

Однією з найскладніших проблем була проблема з постійним коригуванням курсу ракети. Звісно приходили радіосигнали з Землі, але йшли вони повільно і повність покластися на них було не можна.

Значить треба розраховувати положення корабля на самому кораблі, а сигнали з Землі приймати лише для уточнення.

Комп’ютери ж в ті часи були розміром з невеличкий будинок, причому обчислювальні потужності їхні були в сотні разів менші ніж у сучасних недорогих телефонів.

І от університет що розробляв комп’ютер для місячної програми створив невеличке диво – комп’ютер розміром з пару шлакоблочин. Такого маленького комп’ютера в історії на той час ще не було. Це була технічна вершина.

А для того щоб результатами розрахунків можна було користувався треба щоб програма обчислювала нове положення тричі на секунду. Один раз з цих трьох допускалося не встигнути розрахувати.

Проблема була в тому що комп’ютер був хоч і крихітний, але і повільний – програма встигала розрахувати лише одне значення за секунду.

І от дуже тривалий час талановиті інженери, програмісти і математики билися над цією проблемою. І все безрезультатно.

А тут один студент зацікавився проблемою і з’ясував що розрахунки дійсно важкуваті – в них враховувалося що Земля обертається навколо Сонця, Сонце рухається, Місяць обертається навколо Землі… І ледь не вплив Юпітера і Урана враховувся. Студент почав задавати питання – а чи так це важливо що Земля рухається навколо Сонця, і чи не достатньо враховувати лише рух Місяця навколо Землі. На це йому спочатку пояснювали що зараз не кам’яний вік і плотмеєвська модель застаріла і не точна. Спочатку пояснювали, потім і слухати перестали.

Студент, у відчаю від того що не може донести свою думку світилам самостійно у вільний час переписав програму зі спрощеною моделлю (це рівнозначно майже як зараз гугл самому переписати) і продемонстрував що вона видає 3 результати за секунду і точність результатів до якогось там знаку така сама.

Після прискіпливої перевірки кораблі літали на Місяць з програмою яку було написано так наче Земля є нерухомим центром Всесвіту навколо якого обертається Місяць (і Сонце).

Лектор приводив цю історію як приклад того що хоча програмна модель повинна відображати об’єкти реального світу та їх співвідношення, іноді треба робити спрощення які не відповідають реальному світу (Земля не центр Всесвіту і обертається разом з Місяцем навколо Сонця), але значно спрощують і реалізацію і архітектуру.

Але мені здається тут є це один важливий патерн. І полягає він у тому що навіть якщо ви знаєте що праві іноді щоб довести свою правоту треба докласти при всій очевидності непропорційно багато зусиль (читай зробити все самому). І виникає така ситуація тоді коли ви знаходитеся далеко від вершини ієрархії в плані позиції, досвіду, звань і нагород. І будьте ви очевидно праві вас не почують і не помітять просто через те що від вас не очікують притомних рішень та ідей такого рівня.

Останній день в bing…

Так, сьогодні мій останній день в bing, з понеділка починаю в новому проекті (теж в МС). А в якому не скажу, спробуйте вгадати Smile В кінці наступного тижня напишу.

Взагалі то у мене весь наступний тиждень буде тренінг з Windows Internals (windbg і інша веселуха) який ведуть Девід Соломон і Марк Русинович (одні з головних розробників Windows). П’ять днів з 9 ранку до 5 вечора. Має бути цікаво.

Буду працювати знову в Редмонді, ближче до дому. Тепер доведеться придумати як бігати чи їздити на велосипеді “в обхід” щоб більше кілометрів виходило.

Свій затишний маленький офіс з вікном міняю на темний але великий офіс без вікна (взагалі будинки у Редмонді нижчі і ширші, тому офісів з вікном там менше).

А потім візьму відпустку на кілька днів і вже після того почну.

Взагалі то збирався брати довгу відпустку, але не склалося з ріщних причин…

Таке тут часто трапляється що люди приходять в нову команду і перше що роблять – йдуть у відпустку. Найкращий варіант бо поки на тобі ніяких задач нема і критично від тебе ніхто не залежить.

А погода у нас зараз приблизно ось така:

[english] rat’s ass

Переклад “крисяча дупа”, або по нашомулітературному “ломаний гріш”.

Використовується коли хочуть показати наскліьки щось є неважливим і не цікавим.

Найчастіше використання – фраза “I don’t give a rat’s ass [about something]”, яка означає “Мені абсолютно пофіг [на щось]”.

У словниках:

 

Для тих хто не зрозумів картинку пояснюю – ass, тобто “дупа”, пишеться і вимовляється точно так само як ass – осел. Проте кляті бритіші з їхнім смішним акцентом навіть слово “жопа” виговори/написати нормально не вміють – у них воно arse і вимовляється з таким глибоким і довгим “а” наче вас хтось душить, послухати можна тут – http://dictionary.reference.com/browse/Arse (порівняйте з американським – http://dictionary.reference.com/browse/ass).

Колись Олена…

…працювала в магазины косметики “Арбат-Престиж”, був такий десь близько до Майдану. Керувала там якимось комырниками та менеджерами.

 

Я приколювався з їхніх ацьки-незрозуміло-ускладнених вимог щодо “як одягатися”, “як відправляти електрону пошту”. Ще там якісь були системи замовлення зі складів які неймовірно глючили.

 

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

Навіть якісь там зірки приходили до них фотографуватися на рекламу магазину.

 

А сам магазин це типо така мережа пафосної косметики із Московії. Причому якщо там у них ця мережа начебто має низькі ціни і душить усих конкурентів, то в Україні ціни були не нижче, а то і вище ніж у інших. Та і магазин я чув невдовзі як ми поїхали закрився. Не пішло… Smile

 

Я все сказав!

Роджер Валков’як–проігнорований герой

У 1956 році в найвідомішій велогонці в світі несподівано жовту майку лідера несподівано отримав син польського емігранта, працівник металургічного заводу нікому не відомий Роджер Валков’як.

Не вигравши жодного етапу він тим не менше так і залишвився у жовтій майці до кінця гонки і виграв її.

Преса і публіка ще за довго до кінця гонки прийняла факт його лідерства дуже негативно. Професійні атлети теж так і не визнали його за свого – з ним практично ніхто із зірок тогочасного велоспорту не хотів спілкуватися.

Більше того – у пресі постійно писали що Роджеру в черговий раз вдалося залишитися лідером “лише через те що А та Б по чесному боролися на гірському етапі”, або “порадували публіку прекрасною боротьбою на високих швидкостях”, а Роджеру просто поталанило.

 

З часом, ближче до завершення гонки почали з’являтися статті типу “Національна ганьба”, “Як таке могло трапитися” і подібні інші. Шокувало усих те що не француз, і навіть не італієць, не розкручена зірка, а який простий хлоп виграє таку гонку.

На фініші стадіон зустрів його мовчанням, а преса старанно уникала писати про нього.

Відчуваючи неймовірний тиск і отримавши кілька травм Валков’як пішов з велоспорту у 1960-му році. І преса знову проігнорувала цей факт.

Ображений на весь світ (і не дивно) Роджер до не давнього часу не давав ніяких інтерв’ю, продувжував працювати на тому ж заводі.

 

У нещодавньому інтерв’ю журналу Bicycling на питання чи варто було вигравати ту гонку він відповів словами іншого гонщика – “Якби я міг виграти Тур де Франс хоча б один раз”.

Мені чомусь соромно за тогочасних французів Sad smile

[Хроніка регулярної мандрівки] Повторення експерименту (стр. 34)

Ніч. Як тільки зірки почали падати за обрій, він почав розуміти життя. Він зрозумів що вона лежить збоку від нього і вивчає закритими очима невидиму стелю. Вона не знала що є живою. А він не міг їй про це сказати. Це було б важко зробити, це було б довго, і це не дало б результату. Вона б зрозуміла зовсім не так. Вона могла б йому не повірити, а не повіривши раз могла б подумати що все сказане ним до цього є чимось абсолютно протилежним правді.

Стало неспокійно. Необхідно терміново підняти руку! Як це зробити? Рука під ковдрою. А ковдру піднімати зовсім не треба. Чому ж нас вчить історія? Що роблять великі у таких випадках? Що вони будуть робити коли у них настане така сама складна ситуація?

О Боги! Чому ви не існуєте? Чому не можете зробити мене одним з вас? Я б показав як знищувати те, що ще не з’явилось. Я би примусив всіх вірити що час плине постійно і рівномірно. Вулкани би плювалися кривавим людським м’ясом, а річки б текли крізь землю в розпечене серце планети.

Музика стала твердою як камінь і несесеться під землею як потяг. Хочеш лягти на лагідну поверхню і нечутно поплисти в нескінчену темряву? Саме для цього утворилися амінокислоти, саме через це риби вибралися на суходіл, це інша сторона того що Сонце згасне і нерозумні створіння бездумно зжеруть холодний і прекрасний порядок Всесвіту.

Чи порятунок є? Зерно смерті розпуститься хижою квіткою, пожираючи усе живе як вогонь радісно їсть сухе дерево. В кришталевій нескінченній самотності без кольорів завдяки зусиллям Хаосу виникне теплий, пульсуючий неправильною формою шматочок життя. І ще не розумний він почне зручніше облаштовуватися всередині діаманту, не розуміючи, нещадно до порядку стане милим і жалюгідним, а потім жадібним і ненажерливим.

Він не хотів рятуватися. Як би стати іншим? Як би знати нічого про очі, про тактильні відчуття, про час? Темно-помаранчевим оком ненависті він спостерігав як ростуть відрізані нігті.

Він спробував зосередитися на чомусь матеріальному. І вирішив що як тільки з’явиться можливість то візьме олівця та блокнот і щось намалює з того що бачить у темряві. Ось, він побачив контури предметів. Темрява рвонулася йому назустріч у нестримному прагненні розвитку. Зачерствіла шкуринка хліба розчинилася у підлозі, розтанула вогкою калюжею з грудочкою цукру по центру. Забіліли провода домашньої електроніки, на них повільно набрякли бруньки, і лопнувши розпустилися соціальними інститутами та установами. Хтось з певною метою збирав людей у групи і настійливо пояснював їм що у них є спільні цілі та прагнення, що може стати краще, що саме він знає як це "краще".

Але невидимий матеріаліст помилявся. Він робив усе правильно, за наукою. А його помилка була в тому що він вважав що люди можуть думати. Це підтверджувала і наука. Наука яку начебто вигадали, створили і виростили люди. Він забув що у своєму прагненні структурувати та закріпити у часі нетривку конструкцію з плоті та кісток саме він і вигадав миттєво і віртуозно і науку, і мистецтво і натхнення. Здається він сам не помітив як переступив у своїх роздумах дозволену межу. Зараз щось має статися.

Спрацював сигнал тривоги. Беззвучна сигналізація, щоб не будити жителів облаштованих дірок у бетонних прямокутниках, почала вібрувати стінами, розхитуючи зуби та витрушуючи з кісток вживлені засоби спостереження. Зараз всі прокинуться!

Але ні. Пройшла секунда, друга… Чому не чутно стрілянини і сирен, чому не плачуть діти та не з’являються безпритульні тварини? Це мабуть його індивідуальна сирена? Що ж вона означає? Так, він вирішив при першій же нагоді спробує подумати про це. А поки ніколи. Прямо зараз треба згадати для чого він усе життя дихав. Він вдихав і видихав.

Ну видохи то не важливо. То ще можна проігнорувати. А ніщо йому стільки вдохів? Він точно знав що для чогось вони були потрібні. І він не забув. Він просто перестав знати. А все ж таки цікаво – для чого йому знадобилося так багато разів вдихати, та ще й з такою регулярністю?

Він задумався на мить і побачив що минули мільйони років. Він остаточно вирішив коли небуть народитися…

Зима 2006-2007 у Києві

Пост без теми, просто публікую старі (і погані) фотки, заразом і пост для статистики додаю.

Це ми такі тільки понаїхали у столицю, місяць чи два прожили.

 

 

Після Дніпропетровська Києв здавався чисто вилизаним, майже європейським містом. Потім пообжилися і почали бачити різні некрасивості…

Про житло в США

А вірніше про рентовані квартири.

Треба сказати що помешкання в нашому районі доволі дорогі, і вартість будинків в середньому починається від пів-мільйону долярів, а то і більше. Можна знайти й за 350 тис. будиночки, але доволі далеко, до роботи пиляти в районі години. Є лише одне чітко виділене місто – Сіетл. Все інше – Редмонд, Бєлєв’ю, Кіркленд, Ісаква, Лінвуд і так далі непомітно переходять одне в інше, і навіть вулиці можуть починатися в одному, йти через друге і закінчуватися в третьому.

Весь цей час ми жили виключно у квартирах в комплексах де їх здають у ренту. Хоча можна і рентувати окремий будинок, або частину будинку, або житло у власника.

Середня ціна за квартиру з 1 спальнею і 1 ванною – від 1000замісяць. Можна знайти й дешевше, але далі від роботи. Також на ціну впливає площа (чим далі від міста тим вона дешевша), наявність гранітних покриттів на кухні (за містом майже будь-де, в місті в основному дерево) і так далі. Розмір ванної кімнати також вар’юється.

Всі квартири здаються без меблів, але в них як правило є пральна та сушильна машина, посудомийка, плита з духовкою, бойлер, холодильник, витяжка. Може бути мікрохвильова . Може бути камін. При чому каміни тут для паління дерева, і лише в одній з квартир в яких ми жили були газові каміни. Каміни використовуються і для опалення в тому числі.

Підлоги у всіх вкриті ковроліном, душе пухнастим і класним. Опалення, як ви мабуть вже зрозуміли, від електрики – у певних місцях квартири є такі спеціальні дірки з яких дме тепле повітря. Температуру регулюєш сам (як правило на кожну кімнату). В одній з наших квартир навіть були програматори – виставляєш температуру на конкретний час дня у різних кімнатах, плюс додаткові настройки на вихідні.

 

Можна квартиру купити у подібних комплексах (кондо), і ціни відповідно будуть від 300 тисяч десь. Є свої переваги і недоліки – можуть у комплексі бути додаткові бонуси типу спортзалу та басейну, все оновлення та інші ремонти проводяться масово. З іншого боку можеш бути вимушений платити за те що тобі не надто потрібно. З іншого боку у своєму будинку треба постійно і багато платити за різні ремонти і самому займатися усима проблемами.

Є і комбінований варіант – так званий міський будинок. Це по суті будинок який своїми боками переходить в сусідні будинки і часто не має ні заднього двору ні галявинки перед входом. 

Треба ще зауважити про особливості позначення квартир. Тут вказують кількість спалень і ванних. Це означає що ще є кухня та велика “сімейна” кімнаті. А ванних/туалетів як правило стільки ж скільки і спалень. Бувають половинки ванних – це просто унітаз з рукомийником. Причому самих ван у нашому розумінні і нема – це фактично невисокі борти, знавіска і душ. Ну і завжди ванна комбінована з туалетом. Ми зараз знайшли доволі дивний варіант – дві спальні, але одна ванна кімната Smile

 

Кухні геть не пристосовані щоб у них сидіти, тільки готувати можна.

В деяких комплексах нігліють до того що починають вимагати гроші за криту парковку (20-30 доларів на місяць). Там де ми зараз живемо у нас одне безкоштовне крите місце для паркування. У попередній квартирі ми спочатку платили по 20 за місяць за парковку, але коли підписували наступний контракт то вмовили їх зробити парковку безкоштовну.

І платежі за електрику, воду, каналізацію і прибирання сміття суттєво різняться в залежності від міста (деякі міста мають додаткові податку на воду, наприклад) та того наскільки жадібними є власники. В нашій квартирі зараз плата за деякі з цих послуг входить в квартплатню що економить нам майже сотню на рік.

 

Щоб вам ще таке написати? Коротше давайте питання якщо є.

Ще трошки світлин з Mercer Island Half Marathon

У продовження ось цього – 2012-03-25–Mercer Island Half Marathon–1:25:41.

Розміри такі маленьки бо це скріншоти з сайту контори що продає такі фотографії Smile Ну а платити по 15-20 баксів за фотографію я морально не готовий, тому отоке от…

 

 

До речі ось вже результати опублікували – http://onlineraceresults.com/race/view_race.php?race_id=23666&relist_record_type=result&lower_bound=0&upper_bound=1868&use_previous_sql=1&group_by=default#racetop.

 

Я там 49-й у загальному заліку (з 1800+ учасників), 5й у своїй віковій групі.

 

 

 

Весь альбом – https://skydrive.live.com/?cid=b21290194214a37d&id=B21290194214A37D%211905#cid=B21290194214A37D&id=B21290194214A37D%211905