Джефф Дан как раз и был таким Уорреном Баффетом для программистов.
Слух о том, что Ёнхо стал его учеником, превратился в самую обсуждаемую тему для сотрудников компании.
И само его имя стало ещё известнее в Jungle.
Дэйв не отлипал от Ёнхо весь день. И дома ситуация не изменилась.
Больше всего он любил программирование; почётное второе место занимали фигурки его любимых героев.
Он просто не мог упустить возможность уталить своё интеллектуальное любопытство.
- Производительность падает там, когда ему нужно предсказать, какие данные идут за каждым байтом в файле.
- Я это тоже знаю.
- Точность предсказания тоже оставляет желать лучшего.
- Вероятность, вероятность...хм....
Ёнхо решил погрузиться в работу и забыть обо всем остальном. Сейчас некогда было думать о том, соглашаться на предложение Джеффа или отказываться.
Сначала ему нужно закончить программу, над которой он сейчас работает.
- Ну хорошо. Давай начнём с самого начала.
Джефф передвинул курсор на начало кода и начал всё снова проверять.
Принцип был достаточно простым.
Например, у нас есть данные ‘xxxaaaaabbccdddd’.
Их можно представить как ‘x3a5b2c2d4’.
15 превратились в 10.
Давайте выразим их иначе, как ‘xabcd’. Объём данных сократился до 5. С помощью прогнозирования и вычисления вероятности, компьютер знает, что здесь 3 x. Он знает, что там 5 a и 2 b.
Данные файла ужимаются именно таким образом.
Главная проблема заключалась в том, чтобы запрограммировать компьютер определить, что там точно 3x.
«Мне кажется, я что-то упускаю...»
- Знаешь, Ёнхо... я думаю, что нам нужен дополнительный источник, чтобы выбирать оттуда следующие данные.
- А-а?
- Разве не так? Если я хочу спрогнозировать «Хо» после «Ён», разве мне не нужны данные о ресурсах? Я думаю, что нам нужно посетить сервер, чтобы найти их.
Под бормотание Дэйва, Ёнхо, наконец, понял.
«Кажется я видела там строчку, в которой было написано «Koogle» что-то там...»
Он почувствовал, что там была дополнительная строка и также ясно осознал, что как раз она и являлась ключом к решению проблемы.
***
Вдек.
На лице Джонатана было написано беспокойство.
- Джефф, ты уверен, что всё будет в порядке? Теперь, когда ты показал ему источник...
- Конечно. Всё нормально.
В отличие от Джонатана, Джефф, кажется, особо не переживал. Словно не было никакой проблемы и волноваться не стоило.
- Но если так... этот проект поддерживает Koogle... разве можно вот так просто показывать ему всё....?
- В любом случае, без Koogle программа бесполезна
- П-правда?
Джонатан нервничал, но и не верить словам Джеффа он не мог. Даже профессионалы из Koogle признавали техническое мастерство Джеффа и инвестировали в его идеи.
Опыт в прошлом во многом помогала ему работать над нынешним проектом.
- Программе, которую я сейчас делаю, необходимы данные, которые предоставляет Koogle в качестве основы.
Даже несмотря на то, что главным элементов в коде является алгоритм, структура должна ссылаться на сервера Koogle, чтобы повысить точность работы алгоритма сжатия. Так что даже если он и увидел код и воспроизвёл его, всё это бесполезно без библиотеки, которой Koogle предоставляет доступ к своим серверам, - объяснил Джефф, проверяя код.
Исходные данные, которые должны были повысить эффективность прогнозирования, предоставлял Koogle, лучшая и крупнейшая в мире поисковая система. Каждый день в ней появлялись миллионы данных и накапливались на протяжении нескольких лет. На серверах хранилось бессчисленное множество данных.
Весьма маловероятно, что их часто отключают.
И именно по этой причине производительность алгоритма сжатия Джеффа была настолько высока.
- Должно быть ты прав...
Даже Джонатан, кажется, всё понял, потому что не стал задавать дальнейшие вопросы.
«Даже если Ёнхо использует программу в окмпании, получит ли он хотя бы 10% коэффициента сжатия? Или в лучшем случае 20%?»
Проверяющий код Джефф отключил связь с Koogle и запустил программу.
!!!!!!Неудача!!!!!!
Коэффициент сжатия: 25.2%
Это был лимит для этой программы без серверов Koogle. И именно из-за этого лимита он словсем не волновался по поводу того, что Ёнхо использует эту программу в коммерческих целях.
В лучшем случае он выжмет из неё 20%, вряд ли больше.
Если Джеффу удастся переманить Ёнхо во Вдек, это станет наилучшим развитием событий.
«Я придумал столько вещей, которые ещё только предстоит воплотить. Если я смогу сделать это с Ёнхо...»
Джефф не собирался останавливаться на этом.
Вдек для него был всего лишь отправной точкой.
***
Ёнхо всё ещё редактировал код, не глядя на Окно Багов. Пока он работал, он продолжал размышлять. Чего-то действительно не хватало, и поэтому сконцентрироваться у него не выходило.
«Я думаю, что Дэйв прав...»
Здесь должен был быть сервер для прогнозирования.
Необходимы были данные, основываясь на которых программа прогнозировала.
Он не спрашивал Джеффа, но он и без того знал, что прав.
«Это значит... что у этой библиотеки есть определённый предел?»
Ёнхо запустил программу снова.
!!!!!!Неудача!!!!!
Коэффициент сжатия: 36.5%
Поднять производительность выше этого числа у него не выходило.
«Значит невозможно поднять до 50%....?»
Он чувствовал, что это предел. И ему даже не нужно было смотреть на Окно Багов. Время шло.
Он сказал Стиву, что ему нужен месяц, но если он не захочет показать ему результат через недели, то «па-пара-пам!», всё это окажется ложью.
Главный Архитектор ПО.
Его может признать человек, который находится на такой высокой должности в компании, что таких людей всего двадцать.
- По словам Дэйва он презирает азиатов, да?
Но также, он «признавал людей с навыками, но даже не считал бесталанных».
Он был меритократом. (Меритокра́тия (букв. «власть достойных», от лат. meritus — достойный и др.-греч. κράτος — власть, правление) — принцип управления, согласно которому руководящие посты должны занимать наиболее способные люди, независимо от их социального происхождения и финансового достатка).
Он гордился своими навыками и его нельзя было назвать скромным человеком. Увидев работника, который хуже него, он на него даже и смотреть не будет.
В компании его не любили, но все признавали его необычайные навыки; он был настолько хорош, что ему даже не решались возражать.
Многие ушли из компании только потому что он смотрел на них свысока.
Ёнхо слышал, что среди них были и корейцы.
В виду того, что он сам работал в другом отделе, он лично не видел эту сцену.
«Значит теперь всё зависит от моей способности. С этого дня...»
Он чувствовал, что в Окне Багов появляется текст, каждый раз, когда запускал программу.
Но он осознанно туда не смотрел. Он уже разработал структуру программы.
Теперь ему необходимло было достичь 50%ю
Если не сработает даже с Окном Багов, тогда ему придётся перейти в компанию Джеффа и попробовать разобраться.
$./run_cmopress_prgm.sh
Ёнхо запустил программу и посмотрел на Окно Багов, которое показывало новое уведомление.
Глава 103. Чёрная Пятница(3)
Дискриминация и сравнение.
Критика и упрёки, которые Стив постоянно использовал, выставили его эдаким монстром. Но это не значит, что он так относился ко всем.
Будь всё так, его бы уже давно уволили.
У Стива были свои собственные стандарты.
Способности и умения.
Если кто-то не подходил под его стандарты, то он мог легко сломать этого человека своей железной логикой.
- Я сказал сделать это с помощью горизонтального развития. Вы что-то разработали с точки зрения DevOps?
DevOps.
Это была методика, которая предполагала развитие и управление одновременно. Она включала множество практических методов в том числе. В DevOps обычно пользовались Docker или облаком.