KnigaRead.com/
KnigaRead.com » Компьютеры и Интернет » Прочая околокомпьтерная литература » Игорь Савчук - Отъявленный программист: лайфхакинг из первых рук

Игорь Савчук - Отъявленный программист: лайфхакинг из первых рук

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн Игорь Савчук, "Отъявленный программист: лайфхакинг из первых рук" бесплатно, без регистрации.
Перейти на страницу:

Для «ниггеров» или нет Один китайский трактат с труднопроизносимым для меня названием занудно объясняет, что всякому желающему преуспеть никогда не следует заниматься бизнесом на том, что любишь. Никогда! К примеру, любишь антиквариат — не торгуй антиквариатом. Обожаешь автомобили — не торгуй автомобилями. В состоянии аффекта сначала купишь не то и не по той цене, потом товар будет трудно скинуть. А если отчасти деньги и отобьешь, так совесть замучает — такую цацку, и за копейки... Эх! Еще пример из трактата — не любишь людей, иди спокойно заниматься политикой, хотя бы денег заработаешь, и никаких душевных мук взамен. Короче, трактат призывает, что зарабатывать на жизнь надо только тем, к чему полностью равнодушен. Именно этот бизнес станет самым доходным в твоей жизни. Вопрос в том, что же делать с тем, что любишь? Например, талантливому молодому программисту, который получает реальный кайф от своей работы и готов фигачить код в измененном от восторга состоянии ночи напролет? И тут теория рекреационного программирования Терри Дэвиса оказывается очень к месту. Китайская теория в этом случае дает такой ответ — зарабатывать с таким отношением к делу нельзя, таких увлеченных можно только спонсировать. Иначе неизбежное противоречие между местечковой выгодой и невыносимым желанием постигать все новые земли в конечном счете погубит специалиста. Прокрастинация и подспудное желание пораньше свалить с работы — первые симптомы запущенного офисным грибком равнодушия процесса саморазрушения специалиста. Хуже, когда такой человек-зомби ждет выходных или отпуска, начиная откровенно филонить, или если нависающий над ним манагер отвернулся на минуту покурить. В результате такой неприметной для отдела кадров внутренней мутации шаг за шагом работа превратится в бизнес, а выбор работы станет предметом выгоды и торга. Вся боль от этого ломающего вдохновение процесса анестезируется обществом гибкими социализирующими фреймворками, продаваемыми под соусами «взросления», «успешности» и «надо же себе цену знать». Пример спонсорства: Абрамович любит футбол, поэтому его футболисты хорошо зарабатывают. Эти грациозные небритые мужчины живут исключительно за счет своего спонсора и получают кайф от абстрактного пинания мячика. Это пример истинной любви к своему делу. Намного больше рабочих на предприятиях Абрамовича — им можно предложить зарплату и приставить бдительного манагера, который сформулирует вполне конкретную задачу для их, в сущности, пустой и никчемной жизни. Задача первых — делиться вдохновением, чтобы побуждать. Задача вторых — работать, чтобы исполнять прихоти других. Так абстрактные планы меньшинства никак не пересекаются с прагматичной конкретикой большинства, утверждают китайцы. В заключение этого заковыристого китайского трактата постулируется неожиданный вывод — никогда не имей дела с теми, кто тебя не ценит и не любит (без исключений и компромиссов). Иначе сам не заметишь, как станешь безликой шестеренкой чужого бизнеса.

Приложение: несколько технических фактов о TempleOS На данный момент исходники этой ОС составляют более 150 000 строчек кода (включая собственный компилятор). Система использует собственный компилятор Holy-C («ниггеры» произносят этот язык, намеренно коверкая как «холи щит») — это диалект языков семейства C/C++. Это изначально 64-битная система и по своей архитектуре во многом воспроизводящая Commodore 64. Вся TempleOS полностью размещается в кольце ring-0 и использует Single-Address-Mapping. Для взаимодействия (интерпроцессинга) с другими программами и процессами требуется прямая перезапись содержимого участков памяти этих самых программ. Дешево и сердито — кредо всей ОС. Никаких драйверов нет и не нужно — все обращение к железу можно осуществлять напрямую (если вы сможете, конечно). Все это напоминает Commodore 64, где все зиждется на честном слове и вашем глубоком понимании происходящего. Поддержки сети нет и не будет, равно как и USB, — по довольно витиеватым религиозным причинам (нет времени объяснять, но ЦРУ и уже знакомые нам «ниггеры» фигурируют в этой длинной истории). Есть множество встроенных игр разной степени тупости. У системы нет аналогов пейджинга страниц и файла подкачки, характерных для современных ОС, она загружает и держит в памяти все открытые и запущенные программы. Поэтому в readme.txt Бог довольно цинично советует прикупить «как можно больше оперативки». В качестве файловой системы используется открытая FAT32 с дополнительной самописной поддержкой метафайлов в качестве расширения. Встроенный архиватор — все файлы физически хранятся на диске уже заархивированными и запароленными (нет времени объяснять почему). У системы есть своя самописная графическая оболочка (что-то типа X-ов в *nix), а также параллельный режим командой строки, где в качестве оболочки выступает прикрученный туда компилятор языка «холи щит» (как бы круто это ни звучало, но это всего лишь вольная вариация на тему шелла Ch). У ОС за все время ее существования чуть больше 50 000 скачиваний (Терри переживает, что ЦРУ в том числе невозбранно скачивает его ОС для изучения, но пока ничего не может поделать с этим коварством). Система поставляется с полным открытым исходным кодом в виде public domain и написана на собственном диалекте С. Вы можете использовать ее и модифицировать как угодно на свой страх и риск (если, конечно, выучите «холи щит», то есть преодолеете барьер, воздвигнутый создателем ОС как раз против праздного любопытства разного рода «ниггеров» из ЦРУ). «Холи щит» в TempleOS сочетается с ассемблерными вставками и низкоуровневым программированием контролеров устройств. Видимо, именно это та причина, по которой Терри так ненавидит UEFI. Всем своим хэйтерам Терри советует смириться, по его данным, «существование этой системы было предсказано в Библии много веков тому назад».

Часть II  Страна советов:  о программистской  карьере

ГЛАВА 8. Вся правда  о собеседованиях в Google: за пределами NDA

В пятницу 9 июля 2007 года на многих калифорнийских автобанах появились рекламные щиты с довольно странным содержанием. На их большом полотне не было никаких опознавательных знаков или каких-то фирменных логотипов, все, что было размещено, — лишь загадочный текст: {Первое 10-значное простое число, найденное в последовательности разрядов e}.com. Непосвященные обыватели в недоумении проезжали мимо, ведь данное сообщение предназначалось лишь тем, кто способен его понять, — тем программистам, у которых развитое чувство любопытства удачно сочеталось с сообразительностью. Конечно, для решения этого ребуса проще всего составить программу, которая могла бы перебирать значения константы е и проверять все ее 10-значные значения на факт их соответствия простому числу. Найденное число, очевидно, было частью URL-адреса, полный адрес которого можно получить, просто добавив к нему суффикс доменной зоны .com. Попав на заветный сайт, умники натыкались на вторую зубодробительную задачу, где требовалось выявить скрытую закономерность в наборе якобы случайных цифр. И только если искомое число было найдено и требуемое действие совершено, счастливчик попадал на скрытую страницу со следующим сообщением на своем экране: Одна из вещей, которые мы усвоили, создавая Google: то, что ищешь, всегда легче найти, если оно само ищет тебя. Мы ищем лучших в мире инженеров. И вот ты здесь. Нетрудно догадаться, что к нам каждый день поступает множество резюме, и мы придумали этот нехитрый процесс нашего знакомства, чтобы улучшить отношение сигнал/шум. Подобные сюрреалистические послания от этого именитого работодателя посылаются в мир с завидным постоянством как на неприметных растяжках перед крупными мировыми учебными заведениями, в скрытой рекламе на телевидении, так до сих пор избирательно предлагаются по какому-то неведомому для обычных смертных алгоритму при входе в свой обычный почтовый ящик GMail.

* * *

Как заявляет популярная ныне уже и на своей бывшей родине в России американская писательница Айн Рэнд: «Двумя абсолютными величинами и основой системы ценностей у любого обычного человека являются вовсе не смерть, государство или налоги, а именно его жизнь и работа». Раскрывая эту мысль — настоящая работа не только гармонично развивает личность, принося ей глубокое удовлетворение и общественную пользу, но и обеспечивает то качество жизни, которое позволяет поднимать планку своих устремлений на новый уровень. Неудивительно, что в связи с этими, в общем-то, очевидными установками многие отечественные специалисты хотели бы попробовать свои силы в крупнейших мировых ИT-компаниях, которые с лихвой как удовлетворяют самые смелые профессиональные амбиции, так и обеспечивают безусловно высокий материальный уровень жизни. В последние годы одна из крупнейших мировых компьютерных компаний Google демонстрирует рекордные в своей истории темпы найма. В среднем компания получает в год около миллиона анкет от соискателей, но несмотря на это, на момент написания этих строк в ней оставались открытыми около 900 свободных позиций, для которых шел активный поиск и подбор кандидатов по всему миру. Google привлекает практически всех: сисадминов, дизайнеров, тестеров и архитекторов ПО и баз данных и особенно — программистов (носители родных для компании языков C/C++/C# и Python здесь особенно в почете). Традиционно в этом потоке свежей крови весьма ощутимую долю новобранцев составляют выходцы из Восточной Европы и России, которые славятся своей советской математической школой и высоким качеством компьютерного образования, подтверждаемого неоднократными победами на международных профильных турнирах. Если вы когда-нибудь подумывали попробовать свои силы в Google, именно сейчас настал наиболее благоприятный для этого момент. Увеличивающийся наем, с одной стороны, и ухудшающаяся местная экономическо-политическая конъюнктура, с другой, — все это подталкивает попытать удачу в далекой и легендарной поисковой компании. На фоне практически полного отсутствия русскоязычных материалов на подобную тему я хочу в меру своих сил помочь сделать этот первый и психологически сложный шаг для карьеры в международной компании, для чего предлагаю подробное интервью о деталях прохождения подобного собеседования. Сразу подчеркиваю: я не имею никакого отношения к Google, и предоставляемая мною информация носит неофициальный и, возможно, отчасти субъективный характер. Я лишь делаю попытку последовательно описать весь цикл прохождения трудоустройства от начала до конца, учитывая корпоративную специфику именно Google. Кроме того, я постараюсь обобщить в художественной форме опыт прохождения аналогичных интервью сразу у нескольких сотен других кандидатов, чтобы представить максимально усредненную и достоверную картину этой процедуры. У меня нет связанных рук благодаря стандартным условиям неразглашения вопросов и задач (NDA), также я буду стремиться излишне не детализировать процедуру найма, но постараюсь выделить типичные закономерности и последовательности подобных собеседований, которые в плане обобщающей информации помогут вам правильно расставить акценты и приоритеты, скорректировать свои ожидания в сторону большей реальности. Настало время представить моего собеседника и главного консультанта в рамках этого большого разговора. Это Джон Эсмальд, который возглавляет небольшую тренинговую фирму на западе Калифорнии, специализирующуюся на предварительной подготовке ИT-специалистов для успешного прохождения интервью в известных мировых фирмах из Кремниевой долины. Я специально встретился с Джоном рядом со сверкающим на весеннем солнце кампусом Google, чтобы узнать побольше о специфике трудоустройства именно в Google. Он, бывший работник этой компании, прошедший самые разные уровни в ее управленческих структурах, непосредственно участвовал в найме рядовых сотрудников в двух разных офисах. На данный момент кроме своего основного места работы в собственном стартапе Джон является создателем продвинутого образовательного тренинга, который облегчает адаптацию программиста к специфическим требованиям найма этой известной поисковой компании, существенно повышая шансы на оффер у такого предварительно «оптимизированного» претендента. Кроме множества полезных советов и инсайдов главный лейтмотив нашего интервью сводится к тому, что работа в Google доступна практически любому программисту средней руки, более-менее хорошо владеющему разговорным английским. «Не так страшен черт, как его малюют» — вот главный вывод из нашего разговора. Если при этом вы молоды и уверены в себе, ваши шансы резко возрастают. Как достаточно прямолинейно резюмирует секрет успеха член совета директоров Google Эрик Шмидт: «Похоже, не столько знания отличают действительно успешных гуглеров от посредственных, сколько их настойчивость».

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*