#AMA! Женат с прошлого века, сыну 21, дочери 6; жил в Самаре, Москве, Виннице, Нью-Йорке (где и сейчас). Работал в куче мест, включая Яндекс, JetBrains и [некоторым образом] Google. Пишу программы лет с 11. Закончил физматшколу, ездил автостопом, строил приборы, пытался заниматься наукой, вместе с женой проектировал и потом управлял суши-баром, etc
Т.к. у меня сейчас наступает ночь, ждите ответов во второй половине дня по Мск. Поддержите, пожалуйста, складывающуюся традицию давать вопросам номера (необязательно последовательные и цифровые.) - 9000
означает ли твой никнейм что фильм Кубрика один из любимых? - BSOD blues
2. Дети как-то общаются между собой? Или они совсем из разных миров? - the girl
33 3/3 что стало с сушечной, когда вы уехали? - порошок уходи
17 у тебя появились в НЙ друзья в реале? не "дружеские отношения на работе", а чтоб вы общались вне офиса. если да - какие у них родные языки? - порошок уходи
18 а у жены как с общением в реале? - порошок уходи
9000 что означает ник 9000? - ПокаОдминНеРазлучитНас
Чем затея с суши-баром закончилась? - Что-то равно чему-то.
на чем писали первую программу? как это началось в 11 лет? - bifurcafe
#1/#9000: Да, связь с фильмом Кубрика (а в большей мере с книжками Кларка) прямая. В глубокой древности был такой www.mustdie.ru, локально популярный веб-чат, где я, согласно самоощущению, завёл логин hal9000, и он долго за мной тянулся. В ЖЖ этот логин был уже занят, поэтому я буквы сократил (все знакомые и так поняли), и эти цифры тоже тянутся за мной везде. Поскольку люди склонны быстро и без подсказки идентифицировать меня как логически мыслящего зануду, identity, связанная с компьютером, сидит как влитая (хотя экипаж Discovery 1, конечно, жаль). Фильм "Odyssey 2001" очень красив, но я не считаю его вершиной кинематографии; с финалом вышло несклько непонятно. Кларка же я считаю автором глубоким (как и, например, Лема; оттого они оба, думаю, такие пессимистичные). - 9000
#2: Дети, конечно, общаются между собой, но в основном по бытовым вопросам. Единственное, что они разделяют — это страсть к рисованию, поэтому младшая иногда просит старшего дать порисовать на планшете (digitizer-е). Разница в 15 лет достаточна, чтобы дети не соперничали за внимание, не ревновали друг к другу, но общих игр не намечается пока. Разве что когда #маленькая_Соня дорастёт до сетевых компьютерных игр; сын наш в своё время очень любил играть с нами в Diablo по сети (не исключено, кстати, что именно Diablo ответственен за его интерес к средневековью и особенно средневековому оружию, фехтованию, etc). - 9000
#33: Сушечная пережила бесславный конец. Заведение было на грани рентабельности (вроде приемлемо к концу второго года), но популярно в городе, книги отзывов (единственное, что мы увезли оттуда) ломились от похвал на разных языках. В связи с уездом его решили продать. Нарисовалось три осторожных покупателя. Но тут внезапно прошла публикация в газете и шум в твиттере по поводу замеченного там таракана (тараканы были везде в здании торгового центра; у нас был отдельный договор с конторой по выведению их), какие-то непонятные движения в администрации ТЦ, и внезапно заведению не продлили аренду. Понятно, что покупатели сразу утратили интерес. Пришлось закрыться. Удалось продать почти всё оборудование, выручив, наверное, 10% вложенного. Всё это выглядело как-то не очень случайным; то ли кому-то было нужно место в здании, то ли зависть или месть чья-то, непонятно. В это время я был уже в США, так что это обрушилось на голову моей бедной жены. - 9000
11. Как так получилось, что дочь до самой школы не учили английскому? Случайно? Если нарочно, почему вам казалось, что это хорошая идея? Как у нее сейчас дела в школе? - unnaturalist
#17-18: Вообще у меня туго с "дружескими отношениями в реале". Я плохой друг; почти все мои свободные ресурсы, в первую очередь время, поглощает семья. Моё общение вне офиса — это frf :) В Москве у нас было пара человек друзей, с которыми мы сколько-то регулярно встречались. В НЙ ни у меня, ни у жены друзьям взяться особо неоткуда. (У сына, конечно, есть — но все его друзья с языковых курсов и поэтому в основном уже поуезжали к себе в разные страны.) - 9000
@bifurcafe: В 11 лет (если я правильно помню) мне купили эпическую машину, программируемый калькулятор МК-61: 102 шага программы, память на 16 регистров, стек глубиной 4. В журнале "Техника-молодёжи" (я читал кучу подобных журналов) этот аппарат подробно рассматривался, приводились программы и даже игры. Эти программы я старательно набивал, изучал, модифицировал, постепенно наловчился писать свои (включая и игровые). Примерно через год я попал в кружок, где учили программированию на ещё более эпических машинах БК-0010. Довольно быстро мне надоел язык Focal (одного класса с бейсиком), зато мне попалась книжка про процессор PDP-11, и понеслось. - 9000
#11: Конечно, дочь учили английскому с раннего возраста, лет с 2 точно. Она до сих пор любит пересматривать англоязычные детские мультики, которые смотрела тогда. Но у неё в целом язык шёл довольно трудно, она и по-русски начала говорить приемлемо очень поздно, она до сих пор говорит скорее как 5-летний ребёнок, чем 6-летний. К тому же в английском её очень интересовали существительные, она знает кучу названий предметов, зверей, растений, etc, но ей трудно сформулировать синтаксически корректное предложение. Лет с 5 она пытается говорить со мной по-английски под настроение, что я всячески поддерживаю. Сейчас её ещё подгоняет среда (школа). У билингвов вообще замедленное развитие языка (надо учить два параллельно), но, говорят, это хорошо отражается на способности мыслить потом. - 9000
Спасибо! но в садик она не ходила? У нас у младшего есть определенная задержка речи, и в русском тоже, но мы сейчас как раз занялись early intervention, и в садик он ходит и будет ходить англоязычный. - unnaturalist
@unnaturalist: В садик (daycare) она ходила почти год, но эффект это дало небольшой. Там не было ни капли русского языка, разумеется. Но набора слов и жестов ей хватало как для понимания, так и для объяснения (буквально на пальцах): назвать предмет, ткнуть, дальше взрослый поймёт по контексту. Синтаксис начинает пробиваться только сейчас. Да, раз уж вы в наших краях, пинайте department of special education, они там способны дать (и нам дали) человека, который будет помогать с языком в школе, направления на всякие развивающие курсы, etc. Подробности, если что, почтой. - 9000
/* забвано видеть, как все лайкают, но мало кто спрашивает; видимо, все надеются, что кто-то задаст интересный вопрос, но сами задать не решаются. */ - 9000
22. Мы несколько раз спорили тут и мне казалось, что Вы довольно-таки бескомпромиссный и прямолинейный. А потом Ваша манера общения изменилась и смягчилась. Почему? - Dortndortn
#9001 какой язык программирования will rule them all лет через 10? 20? то же про ось. выживет винда (as in NT kernel)? или переедет на линуксовое ядро? - ПокаОдминНеРазлучитНас
@cangaroo: Вообще я не люблю конфликтов и стараюсь их избегать; всегда стараюсь прислушаться к собеседнику и понять, какой ход мысли привёл его к его выводам, истолковать сомнения в пользу правоты собеседника. Это "мягкость". С другой стороны, я высоко ценю логику, и при виде логической неувязки непременно обращаю на неё внимание; если собеседники игнорируют или намеренно обходят неувязку, я указываю на неё снова и снова. Это "бескомпромиссность" и "прямолинейность". Хуже всего, если я неправильно понимаю сказанное или не улавливаю контекст шутки; тогда мою настойчивость окружающие расценивают как "занудство". - 9000
#9001: Откуда мне знать. И сейчас-то не то чтобы один язык рулит всем; хорошо себя чувствуют как минимум C, С++, C#, Java, Python, Ruby, Javascript, PHP. Легко предсказать, что важность JS будет расти в силу Atwood Law. 20 лет назад был 1995 год; не так и поменялся с тех пор список "рулящих" — но заметно поменялись сами языки, сохранив название. EcmaScript6 уже заметно не похож на JS 1996 года, а Java 8 довольно радикально отличается от Java 1.1. То же и с другими. Полагаю, что постепенно будут всё больше рулить функциональщина, immutability и всё такое, поскольку железо наконец позволяет, а потребность в корректности и выразительности растёт. С другой стороны, не факт, что тон будут задавать Хаскель или OCaml (оба на подъёме), а не функциональные фичи C#, C++ и JS (которых и так немало, а будет появляться всё больше). За ядро ОС ничего не скажу. Кмк, юниксовый дизайн уже несколько поскрипывает, но в линукс вложено очень много, и он никуда не денется. NT-шное ядро внутри очень клёвое, но закрытость, слои Win32 API и цена ему мешают; может, MS как-нибудь сделает его более доступным или использует в [ещё более] новой ОС. Мне кажется, будет нарастать желание упростить ядро и виртуализовать сильно урезанные машины в целях безопасности: см Docker, см unikernels. Надеюсь также, что появится радикально новая ОС на процессоре Mill или другом новом железе с другими концепциями. - 9000
^никто не знает, был интересен ход рассуждений - ПокаОдминНеРазлучитНас
#9001.1: Могу добавить тогда, что станет более заметным движение от программирования как массового ремесла (сайты на интиуитвно понятном пхп) к программированию как инженерной дисциплине, с большей долей абстракции, математики, etc. Эти "продвинутые" подходы позволят машинам заменить очередную часть малоквалифицированного кодерского труда. Подозреваю, это даст не-программистом какой-то инструмент лёгкого создания некоторого класса простых программ, как spreadsheets дали не-программистам инструмент лёгкого описания расчётов. - 9000
Спасибо! - Dortndortn
(Раз все читают, но мало кто пишет, немного рекламы :) В своё время половину денег на суши-бар нам дала прекрасная во всех отношениях @cheran, которая давно ничего не пишет, зато фотографирует: http://blog.chrn.me/ А в JetBrains меня позвал @yole на практически проект мечты, делать новый продукт с нулевой версии. Надеюсь, они не очень жалеют, что связались со мной!) - 9000
16) вас огорчает (или все равно), если дают понять, что ваши рассуждения неуместны? 23) расскажите немного про автостоп и 41) про попытки заниматься наукой. - понура свинка
#16: слегка огорчает тем, что я потратил своё и чужое время бесполезно (а то и вредно). причины воспринимаемой неуместности бывают разные, так что и выводы делаю разные, от попытки переформулировать до постановки мысленного примечания "с этими людьми больше не заговаривать". - 9000
#23: В конце 90-х, как только появился интернет (а я жил тогда в Самаре), мне попадась на глаза "Практика вольных путешествий" Кротова. Поскольку я тогда был не особо богатый студент, а потом аспирант, я немедленно увидел потенциал. Внимательно прочитав, что пишут в книжках и фидо, я вышел на трассу и достаточно спокойно доехал до Москвы, где обитало большинство моих знакомых по сети. Опыт мне понравился, и я ещё много раз ездил между Москвой и Самарой, иногда на скорость, иногла целенаправленно заезжая в попутные населённые пункты в экскурсионных целях (напр. Рязань). Был полезный опыт нахождения рядом с крайне разнообразными людьми: то бизнесменами, то дальнобойщиками, то один раз даже "братками" (развесёлыми, кстати; ­накормили пиццей за свой счёт). Очень интересно (и пугающе) было посмотреть на маленькие городки и тамошних жителей (не всегда мирно, но школа научила меня сбивать желающих поприставать со стандартныз рельсов и переходить к разговору). В другие города, помимо Москвы (и, кажется, Тольятти, до которого всего 200 км) я не ездил: слишком далеко, а второй по плотности кластер моих онлайн-знакомых располагался в Сургуте, куда ехать ещё и весьма некомфортно в смысле дорог. Поскольку езда сочеталась с обычной цивильной жизнью, она ограничивалась, как правило, выходными или 3-4 днями отпуска. - 9000
#41: В 1995 после диплома мне совсем не хотелось идти в армию, даже на год офицером после военной кафедры. Поскольку диплом у меня был красный и на полгода раньше большинства сокурсников (тоже забавная история), меня без проблем взяли аспирантом. В качестве темы я выбрал (из списка) "визуальное программирование". Надо сказать, что параллельно я ещё и работал за умеренные деньги программистом, поэтому в 1996 у меня уже был толстый по тем временам канал в интернет. Начав шерстить сеть на предмет статей по теме, я обнаружил массу любопытного и постепенно сформулировал тему работы: IDE, которая позволяет конструировать программу в виде AST, непрерывно проверяя её корректность и соотв. помечая, где что не так. В качестве подопытного языка была Java, но предполагалось, что можно будет представлять конструкции визуально (типа как в Scratch), что давало более компактный вид, folding, графические подсказки и смутные идеи по манипулированию более крупными блоками. Увы, реализовать это всё толком у меня не хватило сил и решительности, сузить scope не хватило сообразительности, да ещё и работа и личная жизнь отнимали массу времени. Кажется, я написал пару обзорных статей для каких-то сборников, в нормальные журналы ничего. Также я напрасно рассчитывал на научного руководителя, увы. В общем, через три года всё это дело закончилось пшиком. В целом академическая среда, в отличие от инженерной, не ощущалась (и не ощущается) мной как "своя", как область интересов. Положение науки вообще в 1995-98 в России было не ахти, кто помнит, а уж финансово выбор между индустрией и наукой.... Больше я к этому всему не возвращался, но мне приятно видеть, что кой-какие идеи, которе я тогда сам (думаю, параллельно с сотнями, если не тысячами людей) выдумал, сейчас стали типа мэйнстримом в средах разработки. - 9000
(ни у кого вопросов не осталось. а, казалось бы, я в фиде писал в основном про абстрактные идеи, забавные случаи и ссылки, а про себя примерно ничего.) - 9000
что ты думаешь о модульных телефонах? приживутся? останутся узкой нишей? - ПокаОдминНеРазлучитНас
модульные телефоны, мне кажется, вряд ли приживутся. приемлемые для пользователя коннекторы до́роги, ненадёжны и занимают много места. батарейки вон не везде "модульные", из-за вопросов цены и пространства. не исключено, место под солнцем завоюет очень крупноблочная модульность, и модули можно будет менять в условиях, условно говоря, мастерской (отвёрки, etc), но без пайки и без полной перепрошивки. например, может появиться стандартный интерфейс экрана и возможность его замены с самонастройкой (см. экраны на PC). мне с трудом верится в сменную память и процессор — разве что в стандартный стык радиомодуля и "компьютерного" модуля, но очень вряд ли. было бы здорово, если бы на мобилках / планшетах распространён стал host-интерфейс типа USB, но со стандартной и прочной механической защёлкой. к нему можно было бы подключать более-менее скоростные внешние устройства; нынешние считыватели кредиток через аудиовход — жуткий хак. - 9000
#-1Расскажи, пожалуйста про приборы? - Nazer
#-1: В студенческие времена я работал в институте, в группе, делавший прибор для измерения турбинных лопаток. Турбина набирается из хитро изготовленных деталей (см. http://bit.ly/1CxkAL6), и результат должет быть точно пригнан и отцентрирован. Для этого надо точно измерить собственно лопатки по куче параметров. Люди сделали опто-механическую часть измерителя, мы привинчивали к нему электронную. Она состояла из линейной ПЗС (длинной узкой штуки вроде тех, что снимают изображение на ксероксе/факсе, только покороче), аналогового контроллера её (с эпического размера чипом АЦП) и компьютера, который этим рулил. На прототипе компьютером был "Партнёр", 8-битный, с 64 кб памяти, но с кучей внешних интерфейсов. В такой интерфейс втыкалась наша платка сбора данных. К этому делу я отчасти написал управляющую прогу на ассемблере, отчасти расчётную и дисплейную часть на встроенном бейсике. Работать они были должны параллельно, поэтому я написал двухзадачный монитор, который их переключал по таймеру :) Всё это дело работало, но было громоздко. Поэтому я попытался сконструировать одноплатный контроллер на том же 8080, и даже развёл плату в P-СAD (на 20-МГц 80286 плата авторазводилась целую ночь). Но на этом я с проекта ушёл зашибать деньгу компьютерной вёрсткой ($300 чёрного нала в месяц было круто для 1993 в провинции); надеюсь, те, кто пришёл на моё место, ругали меня не очень сильно :) - 9000
#'-2 Как удается поддерживать интерес к программированию -- книги / блоги / конференции / что-то еще? - D_K
42. О, а вот это интересный кейс: "школа научила меня сбивать желающих поприставать со стандартныз рельсов и переходить к разговору". Нельзя ли подробнее? - понура свинка
43. Как получилось, что у детей такая большая разница в возрасте? ​44. Вы планируете как-то менять род занятий? - понура свинка
#'-2: Мне не требуется для этого специальных усилий :) Собственно, с детства меня занимали два занятия: решение головоломок и создание каких-нибудь штук. Программирование удачно сочетает оба эти занятия. Также меня интересовали (и продолжают интересовать) языки; программирование очень сильно завязано на языки. Книги? Ну, иногда. Надо сказать, я вообще мало сейчас читаю книг, время и концентрация расходуются в других местах. Конференции? Ну, разве что посмотреть слайды или избранные доклады. Блоги? Несомненно; туда же попадают обычно интересные выжимки из конференций. Важным источником свежего материала служит news.ycombinator.com, а также github.com/trending — они дают выглянуть за края колеи. Ну и с работой мне всё же везло: даже когда приходится делать прозаические вещи, у коллег / менеджеров достаточно понимания и вкуса, чтобы можно было делать эти вещи надёжно и изящно (as in "as simple as possible but not simpler"), а не тяп-ляп как можно быстрее. Программирование сейчас развивается так же бурно, как 10 и 20 лет назад, но местами заметно более толково, хотя бы потому, что имеющиеся железо и софт позволяют идти на меньшее число компромиссов, эффективно делать то, что раньше было запретительно дорого или невозможно. - 9000
#-3: а можно какие нибудь советы начинающим программистам (теорминимум, куда стоит двигаться, куда не стоит, толковые тренды и т.п) ? - Nazer
#42: С 5 по 8 класс я учился в школе в "пролетарском" районе. Одноклассники мои были персонажами жёсткими и иерархичными (тут ещё и возраст). А я был физически хил от рождения, сердце у меня работало плохо, и спортивные тренеры гнали меня из секций, мол, ты становишься зелёным, мне не надо, чтоб ты у меня на занятии в обморок упал. Поэтому на меня, разумеется, всё время наезжали: как на новичка, непохожего, чо такой умный ваще, etc. Через несколько месяцев я понял, что конфронтация следует по некоторым рельсам, и, скажем, драться стулом (как я делал в первые дни) — это как раз следование рельсам, к чему противник готов лучше меня. Как-то при очередной встрече-наезде на улице я решил сломать ритуал, взявшись, кажется, буквально ответить на вопрос "тебе чо ваще надо", не демонстрируя ни страха, ни агрессии; это сбило наезжающих с толку. Их попытки продолжить разыгрывание ритуала я сбил с рельсов аналогично. Через некоторое время они, озадаченные, ушли от меня, не тронув пальцем. Понятно, что я принялся развивать успех (разумеется, переменный). Желающие на меня наехать всегда ощущали, что меня они не победили, даже если удалось побить. Ко временам, когда я ушёл из этой школы, я уже мог, встретив на улице толпу незнакомых агрессивно настроенных подростков, перейти к чинному разговору с их предводителем, отпустить комплимент его подруге и, к разочарованию толпы, расстаться с вожаком по-приятельски. Это умение пару раз выручало меня при встрече с агрессивными людьми на трассе при автостопе. - 9000
#43: Такую большую разницу мы не планировали — ну лет 8, ну 10. Но по медицинским причинам завести второго ребёнка у нас много лет не получалось; мы уж практически перестали надеяться. Когда наконец неожиданно всё получилось, врачи обещали нам всякие врождённые ужасы, но в результате некоторых чудес #маленькая_Соня родилсь практически нормальной. Это стоило моей жене очень большого куска здоровья, но она была решительно против прерывания беременности, за что я ей всячески благодарен. - 9000
#44 Ваша семья имеет какое-то отношение к спектру? Ответ можно в личку, мне правда важно - Dortndortn
#44: Боюсь, я даже не знаю, что такое "спектр" в этом вопросе. (За разъяснение здесь или в личке буду благодарен, любопытно же.) - 9000
я не могу вам написатьв личку, вы на меня не подписаны. подпишитесь ненадолго - Dortndortn
#9001 как тебе работается на текущем месте? Есть ли планы и желания поработят в другом есте? Если есть - то в какой отрасли , в какой роли и с какими технологиями? - vvlad
#9002 нравиться ли жить в Нью Йорке/Бруклине. Думали ли вы о переезде в другое место, когда (если еще не) появиться возможность? - vvlad
/* я помню про неотвеченные вопросы и отвечу, как будет время */ - 9000
(@cangaroo: подписался — и, пожалуй, не буду отписываться!) - 9000
#44: Род занятий радикально менять не собираюсь; последние примерно 30 лет показывают мне, что компьютеры мне по-прежнему наиболее интересны, и новое интересное не устаёт появляться. Меня не интересует уход в менеджеры: если бы я хотел работать с людьми, давно бы работал. Могу представить себя (со)основателем бизнеса в IT-сфере, но пока у меня нет ни достаточной "подушки", ни супер-идеи (хотя пара идей попроще есть). В принципе, то, чем я занимаюсь на работе, не особо далеко от того, чем (бы) я занимался в качестве хобби. Поэтому надеюсь, что не перестану заниматься инженерной деятельностью до смерти. - 9000
#9002: Да, мне нравится. Я вырос в городе с миллионом населения, мне нравится городская, мегаполисная среда. Мне нравится возможность дойти пешком до кучи мест, и я предпочитаю ехать на поезде, а не вести машину (у меня даже нет прав). В этом смысле другие крупные города США (вроде Чикаго или Сиэтла) и Европы тоже были бы мне приятны. Надо сказать, что Нью-Йорк по числу людей примерно вдвое меньше Москвы. При этом на Манхэттене плотность людей сильно выше московской, а Бруклин / Квинс / Бронкс — в основном "пятиэтажные" районы с относительно редкими высотками. Субурбию же я не особо люблю в целом, а, скажем, Силиконовая долина особенно печальна в смысле проблем с транспортом, ценами на жильё и некоторым недостатком нормальной для такого числа людей инфраструктуры (спросите тех, кто там живёт). Просто так я переезжать не собираюсь (трёшка рядом с метро и огромным парком, 40 мин до работы), но, возможно, когда-нибудь придётся переехать либо за другой работой, либо в другой школьный округ, если потребуется устроить Соню в какую-то конкретную школу. - 9000
#-3: Начинающим программистам: пишите код! (http://programmers.stackexchange.com/questio...) Читайте чужой хорошо написанный код, смотрите, как внутри сделаны те вещи, которые притягивают ваше внимание и/или про которые вам нелегко навскидку сказать, как это сделано. Полезно посмотреть в некоторые старые книжки. "Структуры данных + алгоритмы" Вирта хорошо объясняет ряд простых вещей, "Code Complete" by McConnell объясняет некоторые вещи посложнее, а "Structure and interpretation of computer programs" вообще переворачивает ряд представлений (не развлекательное чтение, но хороший учебник). Очень полезно знакоиться с новыми языками: в каждом свои подходы, которые расширяют понимание, "как вообще всё работает", и дают некоторые подсказки для уже известных языков. К примеру, моё знакомство с Haskell и Scheme помогает мне лучше писать на Python-е и JS, а то и на Java; знакомоство, скажем, с Prolog и make позволило мне проще понять идею AngularJS, etc. Полезно не верить себе (вчерашнему, прошлогоднему, etc) и писать тесты; обычно неформально код всё равно приходится тестировать; самое главные случаи надо загонять в тесты, они описывают и объясняют поведение кода на уровне более высоком, чем собственно язык программирования. А также, конечно, надо тренировать умение излагать свои мысли на естественных языках и делать так, чтобы тебя понимали, и самому учиться понимать: любой проект не игрушечного размера — командная работа. А также полезно тренировать умение упрощать: инженерам оно полезно не меньше других, очень облегчает жизнь. - 9000
/* вроде неотвеченных вопросов не осталось */ - 9000