Глава 1. Окно багов

Гора Джирисан, вершина Чхон Ван.

На вершину Чхон Ван поднялся один человек.

*вздох* *вздох*

Пот стекал по лицу мужчины, и он тяжело дышал.

"Я чертовски устал"

Имя этого человека было Ли Ёнхо.

Ёнхо стремился на вершину Чхон Ван, чтобы начать новую жизнь перед тем, как начнется учеба.

Это было летом. 2-й семестр 4-го года обучения начнется в ближайшее время. И скоро опять начнется ад, называемый занятостью.

«Это, действительно, начнется сейчас»

Ёнхо пробормотал, глядя на облака внизу. Белые облака были повсюду, и, казалось, их можно потрогать.

«У меня точно получится»

Пообещал он себе и сказал это еще раз. Он хотел, чтобы его родители жили в роскоши и покупали еду, не глядя на цену. И для всего этого требовался его успех.

«Я смогу это сделать! Сделаем же это! Лучший программист в мире!»

Дело было на рассвете.

Солнце поднималось над горизонтом. В окрестностях Чхон Ван едва ли были люди. Ёнхо смотрел на облака на склоне горы.

«Интересно, будет ли дождь…»

Серые облака устремлялись к нему. И где-то далеко был слышен гром.

«Похоже, мне лучше спуститься побыстрее»

Беспокойство проступало на лице Ёнхо. Сейчас он находился на вершине горы Джирисан. Это было не то расстояние, которое можно пройти за один или два часа. Он попадет в затруднительное положение, если пойдет дождь, пока он спускается.

"Надо быстрей спуститься"

Ёнхо начал быстро спускаться с вершины.

*Грохот *

Гром стал громче, как только он спустился.

*Вспышка*

Вдалеке сверкнула молния. Вспышка ослепляла Ёнхо.

«Прогноз погоды не обещал сегодня дождь»

Он точно проверил погоду перед восхождением. Однако дождевые облака на небе ясно показали ему, что прогноз погоды был неправ.

«Как всегда, нельзя доверять синоптикам»

Ёнхо ускорил шаги, пеняя на прогноз погоды.

* Грохот *

Грохот все приближался. Звук был громким и становился более пугающими. Гром бушевал, как будто преследуя Ёнхо, спускающегося вниз.

* Бах *

Внезапно молния ударила прямо в голову Ёнхо. Его взгляд стал пустым, а руки и ноги задрожали, как у эпилептика.

«Я… Я так много еще не сделал…»

Его сознание отключилось, как компьютер, выключенный из сети.

* Шлёп*

Здоровый парень рухнул посредине тихой горной дороги. Дождевые облака начали рассеиваться.

………….

"Мистер Ли Ёнхо? Мистер Ли Ёнхо, вы очнулись? "

«......»

«Мистер Ли Ёнхо?»

Палата больницы. Врач в белой одежде, говорящий с ним, выглядит мелькающим светом в глазах Ёнхо.

«Мистер Ли Ёнхо, моргните, если вы очнулись»

Ёнхо моргнул, повинуясь словам врача.

«Это больница. Вы были найдены лежащим на горной дороге»

После слов врача, казалось, его сознание немного прояснилось, и глаза могли немного сфокусироваться.

«Где-нибудь болит?»

«... Нет», - слабо ответил Ёнхо доктору.

«Вам нужно отдохнуть еще немного, так что лучше, если вы остаетесь в больнице еще на один день»

Ёнхо кивнул словам врача и сразу же заснул. Спустя долгое время Ёнхо снова открыл глаза.

«Вот это мне не повезло…»

Он посмотрел на свой телефон после пробуждения. Он положил его в сумку, прежде чем начался дождь. К счастью, ничего не пропало.

«Посмотрим»

Ёнхо включил телефон.

1. java.lang.NullPointerException

2. Sliding Menu Error

3. DrawLayout Function Problem

……

«Ого, что это?»

Ёнхо уронил телефон на кровать. Он потряс головой, взял телефон и посмотрел на экран.

1. java.lang.NullPointerException

2. Sliding Menu Error

3. DrawLayout Function Problem

В правом верхнем углу он видел знакомые строки. Они были знакомы ему, но их не должно быть видно. Удивленный, он посмотрел на доктора.

«Доктор! Доктор!»

Белые занавески, окружающие кровать, раздвинулись, и вошла медсестра.

«Да. Что случилось?»

«Я… Я думаю, что вижу что-то»

«Что?»

«Посмотрите сюда, на экран»

Ёнхо повернул телефон к ней. Заставка на экране была такой же, как на любом телефоне.

«Что не так?»

«Вы не видите слова?»

«Слова?»

Медсестра посмотрела на него с выражением «что за чушь ты несешь?». Она не понимала, о чем он говорит.

«Да. Слова»

Слова парили там даже во время разговора с медсестрой. Это было похоже на голограмму.

«Иногда у пациентов бывают галлюцинации из-за большого шока. После того, как немного отдохнете, станет получше», - сказала медсестра, успокаивая его.

«П…правда?»

«Конечно. Не переживайте»

"Мне не кажется, что дело в этом…" - пробормотал Ёнхо, находя это странным. Вряд ли это пройдет через один-два дня.

«Сначала просто успокойтесь и скажите мне, если симптомы повторятся через какое-то время»

«Хорошо…» - ответил Ёнхо тихим голосом. Строки не исчезли даже после того, как медсестра ушла.

«Уф ... Что, черт возьми, происходит ...»

Он сидел неподвижно, глядя на экран телефона. Значок сообщения загорелся красным. Друзья связались с ним.

«Посмотрим на эти сообщения»

Он нажал на сообщение, и новые слова начали появляться перед его глазами.

«Что ... Какого черта?»

Даже не проверяя сообщения, он смотрел на голограмму, пока появлялось различное содержание.

Название: NullPointerException

Подробнее: NullPointerException происходит на линии 1025 в SendMessageActivity.class. Происхождение ошибки из-за ссылки на объект без значения.

Решение: Создать Message Object в строке 1025.

«Что, что это …»

Похоже, что там описывалась ошибка в программе, и был способ решить эту проблему. Будучи старшекурсником информатиком, Ёнхо понял его смысл.

"Кажется, это значит, что есть ошибка в приложении сообщений"

Он изучал Indroid, его ОС (операционная система, если ты еще не знал). Это не делало приложение сложнее, но он знал, что был NullPointerException и что нужно делать.

«Почему…Почему я вижу все это?»

Он не понимал, но реальность была прямо перед ним. Он видел эти ошибки и решения приложения, как будто видел галлюцинацию.

«Надо поспать. После сна станет лучше»

Ёнхо попытался отрешиться от реальности, он положил телефон и закрыл глаза. И слова исчезли, как будто их там никогда не было...

Глава 2. Окно багов (2)

«……»

На следующее утро слова все еще парили, не исчезая.

«Д-доктор!»

Ёнхо со страхом взглянул на врача. Пришла снова та же медсестра.

«Что случилось, сэр?»

«Я, я снова вижу то же, что и вчера. Кажется, у меня галлюцинации»

«Пожалуйста, подождите минуту»

Медсестра ушла, и к нему пришел врач с растрепанными волосами. Выглядело так, будто он недавно проснулся.

«Д-доктор, я вижу странные слова»

«Какие слова вы видите?»

«Ну... Например, ошибки в программе»

«Ошибки в программе?»

«Эм, то есть ошибки, которые есть в программе, можно увидеть в моих глазах...»

Видя, что Ёнхо говорит глупости, в которые сам не верит, доктор схватил его за руку и сказал: «Эмм... Сэр»

«Да...»

«Когда вы получаете большой шок, возможны такие ситуации, когда видишь вещи, как эти. После выписки следите за своим состоянием около недели, и если не будет никаких изменений, приходите снова»

Те же слова доктор сказал медсестре. Ёнхо был на грани помешательства. Но так как это был совет профессионала, он не должен был сомневаться в этом.

«……»

«Возможно, они скоро исчезнут»

«... Я понимаю», - слабо ответил Ёнхо врачу. Затем он снова взял смартфон.

Ошибка уведомления до сих пор парила в верхнем правом углу, как бы говоря ему поймать её.

Окно багов.

Так он назвал таинственный экран. Он сделал несколько открытий в автобусе по пути в Сеул.

Во-первых, сосредоточившись на предупреждении об ошибке около 3 секунд, он мог увидеть подробности.

Во-вторых, окно показывает не только синтаксические ошибки, но также логические ошибки и ошибки функции.

«Это все реально? Удивительно...»

Он сильно сомневался. Будет ли смартфон работать правильно, если следовать этим решениям.

«Пойду домой и попробую»

Он быстрей зашагал к своему дому.

***

Гэ По Дон (*Находится в районе Каннам в Сеуле)

Это место, где он жил. Из-за облупленной краски и треснувшего бетона, оно выглядело так, будто было построено в 1980-х.

«Нам пришлось уехать и отсюда»

150 миллионов вон (≈130, 000 долларов США) за 15 Пён (≈50 кв.м.), и половина из этого долг. Открыв дверь, он никого не увидел внутри, так как родители ушли на работу.

«Это хорошо...»

Его отец был уволен из центра администрирования, и теперь он работал охранником в здании. Его мать была официанткой в ресторане. Все это было для оплаты его обучения. Они много ожидали от него, так как он был их единственным ребенком. Но он не смог оправдать эти ожидания.

Университет Сон Мин.

Университет находился в Сеуле, но многие люди не знали о нем. Ёнхо пытался написать CSAT на отлично (* CSAT (College Scholastic Ability Test) - стандартный тест, принятый в Южной Корее, результаты которого нужны для поступления), но результаты тестирования оказались не такими высокими, как он ожидал. Он немного интересовался математикой и информатикой, поэтому решил поступить в один такой колледж.

«Сначала помоюсь».

От него сильно пахло потом, потому что он не мылся несколько дней.

Сразу после душа он сел за компьютер.

«Если это действительно устранит ошибки...»

Устранение ошибок без отладки (процесс нахождения и устранения ошибок)? Это способность, которую бы хотели все программисты в мире. Более половины разработки программы - это отладка.

«Надо убедиться, что это правда»

Он открыл Eclipse (программная платформа с открытым исходным кодом, написанная на языке Java) и сделал новый файл класса. Затем он специально изменил исходный код так, чтобы возникла ошибка.

Исключение в поток «main» java.lang.NullPointerException

в Main

Консольное окно в Eclipse показало протокол ошибок. И тут же несколько слов появилось перед Ёнхо.

-java.lang.NullPointerException

Через 3 секунды слова изменились и показались подробности.

Название: NullPointerException

Подробности: NullPoiinterException происходит на линии 28 Main.class. Происхождение ошибки из-за ссылки на объект без значения.

Решение: Пожалуйста, создайте Main2 Class, который является ссылкой в строке 28

«Вау, это правда!»

Решение было абсолютно верным. Ёнхо специально не создал Main2 Class, создав ошибку. И окно багов совершенно точно это определило.

* звук открывающейся двери *

Ёнхо услышал звук открывающейся двери, и его рот раскрылся от удивления.

«Ёнхо, ты вернулся?»

«М-мама?»

«Да. Поездка прошла хорошо?»

«Ну, да, я думаю».

«Что ты сейчас делал?»

«Я занимался».

«Занимался?» - cпросила мама Ёнхо с подозрением.

«Да, правда».

Университет Сон Мин был одним из университетов низкого уровня в Сеуле. И он был №30 в рейтинге.

«Я понимаю, ты как выпускник должен усердно учиться».

Его средний балл до сих пор был 3.5 (из 4.5). Это не высокий, но и не низкий балл. Однако, учитывая рейтинг университета, он определенно не высокий.

«Ты что-нибудь ел?»

«Да».

«Откуда у тебя деньги, чтобы есть вне дома...»

«……»

«Я слышала, что сейчас уровень занятости среди молодых мужчин низкий... Ты уверен, что найдешь работу?»

«Я понимаю».

«Только не говори так».

«……»

Он хвастался, что получает стипендию, но не получил её ни разу за все 4 года. Ему было нечего возразить, он вернулся в свою комнату и закрыл дверь.

***

Кан Сонгю.

Он был бывшим президентом SUC (Software Union Circle - кружок союза разработчиков).

«Хэй, сколько лет сколько зим»

«Хён, как дела?» (*Хён - в Корее это обращение младшего к старшему среди мужчин)

«Ну, так себе. Как на Джирисане?»

«Хорошо».

Но Сонгю не смотрел на Ёнхо. Он даже не повернулся, а продолжал смотреть в монитор. Ёнхо подошел к нему и посмотрел на экран.

«Что ты делаешь?»

«О, я пытался создать приложение»

«Приложение?»

Eclipce все еще был открыт. Это был экран разработки Indroid, с которым он уже имел дело.

«Да, хён, я получил подработку»

«O...»

На факультете Сонгю был лучшим. До такой степени, что старшие, уже получившие высшее образование, искали его. Может быть поэтому ему часто предлагали работу на неполный рабочий день.

«Но эта вещь просто показывает ошибки», - говорил Сонгю, прогоняя приложение в Eclipse.

«NullPoint на линии 107?»

«О? Как ты это узнал?»

В этот момент по спине Ёнхо пробежал холодок.

«А..! Я заглянул сзади»

На самом деле он сказал это, посмотрев на окно багов. Оно показало ему тип ошибки, а также место, где они произошли в подробностях.

«Правда? Во всяком случае я не знаю, почему он содержит значение null. Когда это происходит, я хочу сломать клаву».

Сменив тему, он заговорил спокойнее.

«Ну, это же ты, хён, я уверен, ты с этим быстро разберешься»

«Я застрял на этом на 2 часа. После всего этого хвастовства с подработками», -пожаловался Сонгю.

«Тогда, хён, давай я сделаю это? С тебя ужин сегодня вечером».

«Правда? Ты хочешь?»

«Предоставь это мне»

«Ладно, (говорит на английском языке), если ты решить эту проблему, я накормлю тебя ужином. Я пока пойду проветрюсь».

«Не торопись, я сделаю всё к тому времени».

«Хорошо»

Было уже понятно, что окно багов работает. Но до сих пор у него оставались подозрения. Чтобы окончательно во всем убедиться, он должен проверить разные ситуации.

Глава 3. Окно багов (3)

Вызванные: java.lang.NullPointerException

Indroid.content.ContextWrapper.getResources(ContextWrapper.java:81)

com.nail.launcher.Loading. (Loading.java:107)

«Линия 107?»

Ёнхо снова прогнал приложение. Смотря на уведомление в правом верхнем углу около 3 секунд, он открыл подробности.

Название: NullPointerException

Детали: Текущая ошибка происходит из-за строки

String [] mTitle = getResources().getStringArray(R.array.app_title)

Эта ошибка возникает, когда ссылаются на значение null.

Решение: Метод getResources() создает объект из SDK Indroid, когда выполняется метод onCreate(). Его нельзя использовать до метода onCreate.

«Итак, все должно заработать, если я поставлю метод getResources() после метода onCreate»

После перемещения getResources() ошибка NullPointerExceptionerror исчезла. Сонгю вошел, как только Ёнхо закончил изменения кода.

«Хэй, оно заработало?»

«Я думаю, да»

«Дай посмотрю»

Сонгю сел и запустил программу.

«О? Реально работает!»

«Видишь»?

Сонгю, запустив программу на подключенном смартфоне, посмотрел на Ёнхо.

«Вау ~! Я думаю, у тебя есть способности»

«Ха-ха, ну, это все благодаря тебе»

Ёнхо часто писал программы для подработки вместе с Сонгю. И он изучал разработку приложений для Indroid, пока делал это.

«Теперь ты можешь сказать, что учился у меня».

Сонгю легко щелкнул Ёнхо по лбу, сделав горделивое лицо.

«Тогда... Может, ты поможешь мне найти подработку?»

Это была реальная причина, из-за которой он искал Сонгю. Даже несмотря на то, что его родители платят за обучение, он должен был платить за проживание самостоятельно.

2-й семестр 4-го года обучения.

Он хотел заработать деньги на написании программ, так как это могло помочь ему в учебе.

«Ну, тогда давай сначала пообедаем. И там поговорим».

Может быть потому, что Сонгю заработает много на этом, он повел Ёнхо в барбекю-ресторан, вместо здания студенческого союза. (Кафетерий колледжа обычно находится в здании студенческого союза).

* шипение *

Барбекю из свиной грудинки выглядело вкусно.

«Ты думал, где искать работу?»

«Ну, сейчас я готовлюсь к TOEIC и пишу резюме». *(TOEIC (Test of English for International Communication) - стандартизированный экзамен для проверки владения английским для не носителей, работающих в международной организации)

«Тогда почему ты ищешь подработку?»

«Ну, подготовка не бесплатная... Ты же знаешь все это, не так ли?»

«Ну, я думаю, что это правда»

Всем нужны деньги. От школ TOEIC до групп для написания характеристики к резюме.

Некоторые люди даже делают пластику, чтобы соответствовать критериям компаний. Если хочешь тратить деньги, есть бесчисленное множество способов сделать это.

«Есть что-нибудь интересное на примете?»

«Давай посмотрим...»

«Работа с тобой поможет мне больше, чем работа в мини-маркете, ты не думаешь?»

«Сейчас есть много предложений для разработки приложений».

«Ты же знаешь мои способности, мы не можем сделать это вместе?»

«Есть кое-что подходящее для тебя...»

«Я сделаю это!» - крикнул Ёнхо, даже не дослушав до конца. Еще одна подработка добавляет еще одну строчку в резюме.

«Ну что ж, ты хочешь быть моим помощником? Я не смогу тебе много платить»

Ёнхо был взволнован, услышав слова Сонгю. Нельзя было заниматься подработкой с Сонгю, поскольку просто не было мест (Так как все хотят получить это место, и оно обычно занято). Зарабатывая деньги и одновременно учась, он бы убил сразу двух зайцев.

«Это здорово!»

«Я делаю это только потому, что ты, кажется, не прохлаждался все это время. Ты понимаешь?»

«Да, конечно! Хён!»

«Что ж, давай сначала поедим и обсудим детали».

Той ночью.

* Бам * (громко хлопнула дверь)

Ёнхо пошел в гостиную. Его отец только что пришел домой.

«Привет, пап»

Было видно, что он был сильно пьян, от него несло алкоголем. Его пьяное лицо было в морщинах. На его голове среди черных волос виднелись седые пряди.

«Сын, ты был дома...?»

Он шатался, идя к кровати. Наконец, Ёнхо мог вернуться в свою комнату. Однако ему не удалось. Его мать говорила с отцом в комнате.

«Ты получил зарплату в этом месяце?»

«Это... Они не дают мне ничего, потому что они сказали, что управляющая компания скоро поменяется»

* Вздох * «Чем мы будем платить в этом месяце?»

«Твоих денег не хватит?»

«Нужно оплатить обучение Ёнхо. И еще задолженность за дом»

Ёнхо молча пошел обратно в свою комнату в середине разговора.

***

Проснувшись, Ёнхо поспешил в колледж. Сонгю уже был в клубе.

«Ты выглядишь усталым».

«Не выспался сегодня».

«Здоровье - это самое главное».

«Я понимаю».

«Что я говорил тебе?»

«7/10 программирования - это выносливость».

«Да, поэтому тренируй своё тело как следует».

После этого Сонгю пошел в главный корпус. В этот раз было приложение для чата.

«В этот раз запрос на приложения для чата».

«Чат? Тогда тебе будет нужен сервер для него».

«Да, нужен»

«Как вы собираетесь создать его?»

«Я попробую использовать КСМ (Koogle Cloud Message)»

«……»

(*КСМ - сервис доставки мгновенных сообщений, предоставляемый Koogle).

“Он принимает сообщение и помещает его как Chat Bubble на экране телефона. Оно уведомляет, что КСМ получил сообщения, по мере того, как они структурированы в справочном руководстве».

«Тогда что я должен сделать?»

«Ты можешь создать сервер. Возможно, тебе не нужно много файлов классов. Тебе только нужно получить запрос от клиента и просто перенести его. У меня уже есть наработки, так что тебе нужно только исправить некоторые строки».

«Тогда как насчет оплаты...?»

Ёнхо был обеспокоен тем, что он будет получать немного за такую небольшую работу.

«Общая сумма составляет 1 500 000 Вон (≈86 600 рублей). Мне 900,000 (≈51 950 рублей) и тебе 600,000 (≈34 650 рублей), согласен?»

Это было, в общем-то, не плохо. Ёнхо подумал, что хорошо, что он спросил у Сонгю про подработку.

«Согласен. Какой дедлайн?»

«Срок 2 недели, но думаю, что мы управимся за одну».

600 000 Won(≈34 650 рублей) было очень хорошо для недельной работы. Ёнхо взволнованно спросил Сонгю: «Но это действительно можно сделать так быстро?»

Сонгю ответил так, будто это было обычным делом.

«Ну... Нам необходимо только создать чат. И мы можем, вероятно, найти исходные коды в Интернете»

«Вау! Мне действительно интересно, почему ты ходишь в этот колледж».

«Я никогда не интересовался учебой».

«Правда?»

По мнению Ёнхо, никто не учился так же усердно, как Кан Сонгю.

«Корейский, английский, математика, обществознание, науки. Мне неинтересно ничего из этого».

(* Примечание : эти 5 предметов включены в тест CSAT)

«Оу...»

«Это проблема. Мне не интересно ничего, кроме компьютерных исследований».

«Проблема?»

«Чтобы стать продвинутым техническим специалистом, требуются математические навыки, но я ненавижу это... Так что я занимаюсь подработками как эта каждый день».

«Что такого неправильного в этом образе жизни?»

«Ты, может ты слышал о кодерах?»

«Кодеры?»

Глава 4. Окно багов (4)

«Кодер - этот тот, кто только пишет код в соответствии со спецификациями, заданными техническими специалистами более высокого уровня».

«Разве они не программисты?»

«Ты узнаешь, если присоединишься к ним».

После окончания разговора Сонгю быстро сел за компьютер. Ёнхо сел рядом с ним.

«Хён, я могу просто использовать Tomcat (тип сервера), верно?»

«Да, нет проблем».

«Вы собираетесь создать DB(database - база данных - БД) тоже?»

«Да, мне понадобится около 5 таблиц».

«Какими будет адрес и учетная запись для БД?»

«Погоди немного».

Они работали вместе не первый раз, поэтому ритм их работы совпадал. Они были похожи на две шестерни, которые хорошо взаимодействовали.

«Я могу просто переделать и использовать API (интерфейс программирования приложений, вид соглашения между клиентом и сервером) существующего документа, да?»

«Да, давайте сделаем это так».

Если Сонгю превзошел способности обычных студентов, то Ёнхо имел необычные навыки. Хотя это лишь небольшой проект, но он хорошо понимал, какой должна быть законченная программа. Всё это благодаря работе с Сонгю.

«Посмотрим на окно багов».

Уточнив задание, Ёнхо посмотрел на окно багов. Это был только начальный этап, но уже можно было увидеть одну или две ошибки.

***

Работа шла гладко.

«Хён, вот так будет хорошо, правда?»

«Да, нормально».

«Тогда я проверю его на Scalaphone».

«Ок, сделай».

Само приложение Indroid может работать на различных телефонах. Так что когда они начали работать, они нацелились на несколько терминалов. Если не будет ошибок на этих нескольких терминалах, то на других телефонах оно точно запустится. Ёнхо загрузил программу в телефон и запустил её.

– Программа завершена из-за неизвестной ошибки.

«Что за черт? ANR(Application Not Responding - приложение не отвечает)?»

«Почему это произошло?»

«Да, это странно. На других телефонах оно просто отлично работает».

Ёнхо сделал вид, что он не знал причину ANR, но, на самом деле, он уже узнал с помощью окна багов.

Конфликт версии ОС.

Проблема была с версией ОС Indroid . Версия OС Scalaphone слишком устарела для поддержки новейших UI (пользовательский интерфейс: в основном, окно программы).

Ёнхо некоторое время притворялся, что ищет что-то в Интернете, и спросил Сонгю, как будто он просто что-то вспомнил.

«Хён, ты случайно не использовал последнюю версию интерфейса? Иногда ошибка возникает, когда старая версия ОС Indroid не поддерживает новый интерфейс».

«Правда?»

Сонгю искал в Интернете протокол ошибок соединения между Eclipse и Scalaphone. Услышав слова Ёнхо, он перестал искать, откатил последнюю версию Action Bar UI и прогнал программу снова.

«Это действительно работает... вау, кажется, я снова потратил бы несколько часов, если бы не ты».

«Ты бы и сам быстро разобрался, хён».

«Но как ты узнал, даже не посмотрев на него?»

«Я вспомнил, что делал нечто похожее когда-то».

«О, ты стал действительно более способным».

«Скоро ты будешь поражен еще больше».

Даже сам Ёнхо был удивлен, что он на самом деле устранил ошибку. В первый раз он думал, что это было совпадение. Во второй раз он засомневался. В третий раз он был уверен, что это правда. Он больше не думал сходить к психологу.

«В этот раз я бы поразил его еще больше».

Окно багов.

Он снова был удивлен из-за функций окна багов.

Сонгю и Ёнхо стояли возле офиса в Комплексе Gasan Digital (*Gasan Digital Complex - торговый район с магазинами одежды).

*Дин-дон*

Они нажали на звонок, и работница, открыв дверь, поприветствовала их.

«Что вы хотели?»

«А, мы – программисты для чат-приложения».

«Входите».

Сонгю нашел свою подработку на сайте аутсорсинга, даже несмотря на то, что он мог найти работу, используя свои связи. Будучи только студентом колледжа, он установил невысокую цену за свои услуги, возможно, из-за этого, он смог легко найти работу. В этот раз работа тоже была найдена на сайте. Войдя, они увидели офис размером около 20 Пён (≈66 кв.м.), где работало около 5-ти человек.

«Вот как».

Следуя за женщиной, они увидели человека лет сорока, сидящим в окружении мониторов. Это был директор, который предложил эту работу.

«Добрый день, г-н Директор».

«Рад вас видеть, а рядом с вами...»

«Мой знакомый с того же факультета»

Директор говорил кратко. Ёнхо напрягся. Когда Сонгю представил его, он поклонился.

«Добрый день, сэр.»

Пока они разговаривали, женщина принесла два стула.

«Пожалуйста, присаживайтесь».

Директор приступил к главному, как только они сели.

«Я проверил APK (Application Package: Загрузочный файл для программ андроида), который Вы прислали мне», - после представления продолжил он.

«На моем телефоне выходит ошибка».

«Ошибка? Сэр?»

«Да, приложение даже не запустилось».

Директор дал свой телефон. Сонгю попытался запустить чат-приложение, которое было установлено в нем.

– Программа завершена из-за неизвестной ошибки.

Это было ANR. Директор, победоносно повысив голос, сказал:

«Видишь»? Оно не работает».

«……»

«За это я не могу заплатить тебе».

Директор попытался изобразить невежество. Если он действительно хотел, чтобы оно работало, он должен был сказать им об обнаруженной ошибке сразу же. Однако, оставив всё так, было похоже на то, что он не хочет платить.

«Что?»

«Это ошибка, как я могу вам заплатить? Вы не думаете?»

«Оно прекрасно работает на моем телефоне. Пожалуйста, проверьте».

Сонгю передал президенту свой телефон. Но директор даже не притронулся к нему.

«Что из того, что оно работает на твоем?»

«……»

«Я ведь сказал, что оно не работает на моем телефоне? Не то чтобы я не хочу платить вам».

«Вы должны были рассказать нам, как только обнаружили ошибку. Тогда мы могли бы устранить её и прислать приложение снова».

«Я тоже только сегодня узнал об этом».

Кан Сонгю закусил губу.

«Директор».

«Почему? Вы, возможно, думаете, что я делаю это, потому что я хочу лишить вас этой небольшой суммы? Это просто нонсенс».

Сонгю сильно сжал кулаки, услышав слова директора. Ёнхо положил свою руку на кулак Сонгю.

«Хён, разве это не та же ошибка, как в прошлый раз?»

Ёнхо знал, что именно происходило в телефоне директора с помощью окна багов.

Проверив, он убедился, что это снова был конфликт из-за версии ОС.

«Оу! Конфликт версии ОС в этом Scalaphone?»

Кулак, который схватил Ёнхо, начал разжиматься.

«Да, мы должны проверить версию ОС».

ID продукта телефона директора был таким же, как у Scalaphone, в котором обнаружилась ошибка. Ёнхо зашел в меню настроек. Версия ОС была еще старее, чем на Scalaphone.

«Директор, это не проблема нашей программы».

«Что?»

«Это не ошибка в программе, а проблемы самого телефона».

«Что за ерунду ты говоришь? То есть он работает на некоторых, но не будет работать на других?»

Сонгю потерял дар речи. По правде говоря, он не разбирался в разработке приложений на Indroid. Сонгю достал договор из сумки.

И с громким звуком * БАМ * положил его на стол.

«Более того, договор определяет терминал и ОС, необходимые для работы с приложением. Телефон директора не соответствует спецификации».

«Не поддерживает? Что за глупости ты говоришь?»

«Здесь, взгляните», - указал Сонгю на место в договоре. Там был список телефонов, в которых приложение должно работать. Scalaphone в списке не было.

«Так вы говорите, что я должен заплатить вам, даже если он не работает?»

Директор фыркнул. Сонгю устал от упрямства президента.

«Ничего не знаю. Это не работает, я не буду платить».

Председатель сказал с «убейте меня, но я не дам вам денег» выражением. Программа и источник уже был в руках компании. Ему было нечего терять.

«Таким образом, Вы нарушаете договор, сэр?»

«Если вам не нравится, то обращайтесь в суд».

«……»

Лицо Сонгю начало краснеть. Ёнхо, в свою очередь, не мог больше это терпеть и встал.

Но вдруг кто-то пинком открыл дверь в конференц-зал.

*бах*

Глава 5. Окно багов (5)

«Директор О!»

С лохматой бородой и толстым животом, в черном костюме, плотно прилегающем к телу... С первого взгляда можно было сказать, что он мог применить грубую силу.

«Знаете что? Я чувствую себя сейчас очень плохо».

За ним стояли люди, выглядящие как его подчиненные. Сотрудники офиса от страха прятали глаза. Когда человек вошел, директор начал заикаться.

«Д... Директор, что вы делаете здесь, сэр?»

Человек, который вошел, пнув дверь офиса, начал подходить к Директору О со спины. Затем он схватил Директора О за плечи и сильно их сжал.

«Приложение для клуба, которое я просил. У меня реально проблемы из-за Вас, вы знаете?»

«Что... Что вы имеете в виду?»

«Я даже разрекламировал, что в нём можно бронировать номера. Но оно НЕ РАБОТАЕТ НАХРЕН! ТЫ СУКИН СЫН!»

«Ты!» (кричит)

Из-за того, что мужчина схватил Директора слишком сильно, он просто упал. Его лицо стало красным, как помидор, от боли он закусил губу.

«Оно не работает, не работает, ясно? Наш босс установил его и даже лично позвонил мне, ты сукин сын!»

«С-сначала давайте посмотрим, какие возникают ошибки. Тогда мы р-решим это сразу».

«Манчхи, принеси телефон». (*здесь Манчхи - это имя)

«Да, сэр!»

«Захвати с собой Манчхи (*здесь Манчхи - молоток). Если он всё не исправит, я просто уничтожу его вместе с телефоном. (* игра слов... Манчхи приносит Манчхи)

Человек по имени Манчхи взял телефон и положил его на стол. И поставил кулак, размером с молот, рядом с ним. Ёнхо был настолько удивлен, что все еще стоял и не мог произнести ни слова.

Директор О трясущимися, как у эпилептика, руками взял телефон. Он запустил приложение.

– Программа завершена из-за неизвестной ошибки.

Приложение даже не запускалось.

«Гл... Главный разработчик Кан!»

Директор О поспешно позвал работника.

Главный разработчик Кан, который как раз собирался выйти под предлогом сходить в туалет, развернулся.

«И... Иди сюда, быстро!

Человек, чья рука лежала на плече Директора О, махнул Главному разработчику Кану.

* дрожь *

Рука Главного разработчика Кана, держащая клавиатуру, дрожала.

«Осталось 8 минут».

Рука Директора О была распластана на столе, как лягушка. Один из мафии сжал его запястья, поэтому он не мог двинуться. Рядом с ним стоял человек с молотком.

«7 минут, вы устранили ошибку?»

Пот струился по лбу Главного разработчика. Возможно, из-за пота, заливающего его глаза, он продолжал вытирать глаза.

«Вы держали меня за дурака. Вот почему просто нельзя доверять этим ублюдкам. Вы продали мне мусор, который не работает? Если вы не исправите это или Главный разработчик Кан, или любой другой, я переломаю вам руки».

После этих слов руки Главного разработчика Кана задрожали еще сильнее. Вряд ли он мог печатать в таком состоянии. Директор О сказал, видя это:

«Так...Так не пойдет. Просто...Я просто отдам обе руки».

Директор О положил правую руку на левую. Но он не мог ничего сделать из-за дрожи.

«Вау, как душещипательно. Вот дерьмо, ты слышал, что надо делать?»

Однако Главный разработчик Кан был не в состоянии решить проблему. Более того, казалось, ему срочно нужна врачебная помощь.

Холодный пот выступил у Сонгю и Ёнхо, находившихся, к несчастью, так же в этой комнате в такой опасной ситуации. Ёнхо, который все еще стоял, тихо сел.

Они видели, какая ситуация назревает из всего их разговора.

«И правда выглядит так, как будто его руки сломают».

Пару минут назад он пытался надуть их двоих, но теперь он выглядел жалким. Более того, он выглядел неплохо, прикрывая своих подчиненных. Но подобные мысли были забыты из-за насилия мафии.

«Что... Что вы имеете в виду?»

При таком раскладе скоро он увидит разбрызгивающуюся повсюду кровь. И нет никакой гарантии, что его это не затронет. Он заглянул в телефон на столе.

«Посмотрим на окно багов».

«Конфликт версии ОС»

Это была та же самая проблема. Операционная система была настолько старой, что ему стало интересно, когда он был куплен. Однако парень, зовущийся Главным разработчиком Каном, не мог решить проблему из-за нервозности и страха.

Время истекало, в то время как в голове Ёнхо роились противоречивые мысли.

*Бах*

Человек-молоток ударил в пол. На полу осталась выбоина.

«Дерьмо, это чертовски утомительно. «Осталось 5 минут».

Может быть, решившись именно из-за этих слов, Ёнхо встал и подошел к Главному разработчику Кану.

«Что ты? Куда ты, б**дь, пошел?

«Я... Я помощник программиста и могу всё исправить».

«Серьезно?» Исправь это быстрее, чем чем рука твоего директора пострадает».

Человек-молоток мягко поставил молоток на руку директора, как бы показывая, что это не преувеличение. Может быть, из-за веса молота, лицо Директора О исказилось.

«Г... Главный разработчик Кан, пожалуйста, уступите место».

Ёнхо сел рядом с ним и подвинул компьютер. Глядя на экран, он понял, что Главный разработчик Кан не сделал ничего. Даже когда Ёнхо подвинул компьютер, он не шелохнулся.

После подтверждения исходного кода Ёнхо поправил программу в соответствии с решением в окне багов. Это не заняло даже 5-ти минут.

Подправив код, он нажал кнопку тестирования в Eclipse. В консольном окне появлялись протокол за протоколом, и приложение было загружено в телефон.

Построение завершено успешно.

После последнего протокола приложение запустилось на телефоне, на экране появился черный логотип.

«Прямо сейчас».

Это было название приложения.

«Если я увижу тебя снова, это все закончится как сейчас, ясно?»

«Да...»

«В следующий раз поработаем должным образом, правда?»

«Д-да, конечно».

Мужчина ударил директора лицом об стол и покинул конференц-зал. Помещение выглядело, как будто здесь бушевал шторм.

После ухода мафии Ёнхо потребовал деньги.

«Пожалуйста, отдайте нам деньги».

«В... Возьмите».

Директор взял конверт с деньгами и бросил его на стол. Когда Ёнхо и Сонгю встали, он тихо сказал:

«С... Спасибо».

«Подайте на меня в суд» выражение лица исчезло. Вместо этого там сидел несчастный пожилой человек.

Как только они покинули офис, Сонгю сказал Ёнхо.

«Тьфу... Ты хорошо справился, Ёнхо».

«Это было не сложно».

«Ты реально нечто. Теперь я думаю о тебе по-другому».

«Это было не сложно, правда».

«Здесь 800 000 Won(*≈45 712 рублей)»

Сонгю вытащил эти деньги из конверта и отдал Ёнхо. Он заработал 800,000 вон за 2 недели.

«Хён, я должен был получить только 600.000 Won(*≈34 284 рубля)...»

«По сравнению с тем, что ты сделали сегодня, даже 800,000 не достаточно. Просто возьми их, мне до сих пор страшно».

«Спасибо, хён».

Ёнхо не стал отказываться. Чем больше денег, тем лучше.

«Ты сейчас домой?»

«Да. Я думаю, мне тоже нужно отдохнуть».

«Ясно. Будь осторожен по пути домой».

«Хён, спасибо, правда. Ты тоже будь осторожен».

Ёнхо и Сонгю разошлись; сердце Ёнхо бешено стучало.

***

На лестнице в доме.

Ёнхо замер на лестнице между 4-м и 5-м этажом.

«Дорогой... Ты в порядке?»

«Все нормально, да».

«Ты не спал все эти дни».

«Я действительно сделал это?»

«Что произойдет, если ты, в конечном итоге, упадешь в обморок? Я заработаю денег, поэтому, может, тебе отдохнуть пару дней? Тебе не заплатят в любом случае».

«Мне нужно идти. Что произойдет, если мне перестанут платить зарплату?»

«Дорогой...»

Квартира была старой, поэтому звукоизоляция была плохой. Ёнхо не мог войти в дом, и он, стесняясь, стоял перед ним.

«О, боги...»

Он сжал конверт с деньгами в кармане.

800,000 вон.

Это было и не много, и не мало.

Но он, конечно, не мог кормить семью из 3-х человек в течение месяца. Ёнхо не мог войти в его дом, ему был стыдно.

«Куда бы пойти сейчас...»

Он не мог показаться родителям сейчас. Из-за чувства вины на сердце было тяжело.

Ёнхо тихо спустился вниз по лестнице.

Глава 6. Регистрация на курсы (1)

В клубной комнате для членов клуба стоял лакулаку (*типа пляжного лежака с матрасом). На нем лежал Ёнхо. Студентка, которая только что вошла, начала жаловаться, увидев Ёнхо.

«Что это такое, почему сонбэ (*в Корее так называют старшего независимо от пола) снова спит здесь?»

«Это в его стиле».

«Какого черта он спит здесь, если живет в Каннаме?»

(* Каннам - район в Корее в Сеуле, своего рода русская Рублёвка)

«Су... Сумин, не говори так».

«Это же правда, не так ли? Он из благополучной семьи».

Джи Сумин.

Как одна из немногих девушек на факультете информатики, она, можно сказать, была лучшей и в учебе, и по внешности. Самая красивая девушка. Другими словами, Королева в инженерном колледже Сон Мин. Высокая, с большими глазами и правильными изгибами тела... Она была безупречной.

«Сумин, нельзя такое говорить прямо в лицо».

«Какой сонбэ, это просто биндэ (постельный клоп)». (*игра слов)

«Эй!»

«У него даже есть прозвище - клоп Юн».

«Эй, прекращай, ты его разбудишь. Давай уйдем».

Но Ёнхо уже не спал, когда вошла Сумин.

«Почему ЭТА здесь, сейчас же выходные?» (он называет её «эта»)

Ёнхо знал Сумин. Она не уважает старших и не обращается к сонбэ как положено. Ей было свойственно невежество.

«Проваливай, просто проваливай».

Ёнхо хотел, чтобы Чхве Хеджин ушла вместе с Сумин. Но этому было не суждено сбыться. Подойдя к лежаку и схватив одеяло, которым укрывался Ёнхо, Сумин сказала:

«Сонбэ, это твой дом? Не собираешься вставать?»

*тянет*

Однако Ёнхо не растерялся. Он сильно схватил одеяло, заметив намерения Сумин.

«О? Не хочешь уходить?»

«……»

«ПОДНИМАЙСЯ, ЧЕРТ ПОДЕРИ!»

Если бы Ёнхо внес немного денег с подработки или заботился о своих хубэ (*обращение к младшим в Корее), она бы относилась к нему по-другому. Сонгю делал вклад с каждой подработки. Но Ёнхо не сделал этого ни разу.

«ПОДНИМАЙ СВОЮ ЧЕРТОВУ ЗАДНИЦУ!»

Сумин дернула одеяло со всей силы.

«Я уже понял! Просто вали», - сказал Ёнхо, открыв глаза. Но Сумин была беспощадна. Она продолжала тянуть одеяло.

«Ты должен был встать, когда я говорила по-хорошему!»

*Бам* (падение на пол)

Ёнхо первым отпустил одеяло. Сумин не удержалась и грохнулась на попу.

«Кья!» (Крик)

Но это крикнула Хеджин, стоявшая позади неё. Ёнхо был в одних трусах, и через них было видно треугольную выпуклость.

Кан Сонгю, который появился из ниоткуда, сдерживал Сумин.

«Сумин, достаточно».

«Сонбэ, этот...этот ублюдок просто...»

«Нельзя называть сонбэ ублюдком...»

«Даже за такое!»

Сумин свирепо смотрела на Ёнхо, как будто её ложно обвинили. Ёнхо, натянув штаны, посмотрел на неё и сказал:

«Кто тебе разрешил забирать моё одеяло?»

«Этот извращенец!»

Покрасневшая Сумин зло смотрела на Ёнхо. Сонгю сдерживая её, сказал:

«Сначала успокойся. Во всяком случае, девушки, я позвал вас потому, что...»

Сонгю пояснил, что есть подработка - нужно мониторить сервер во время периода записи на курс. Куратор сказал им, что если они успешно пройдут испытание, это будет стимулом. Сонгю позвал Сумин и Хеджин, чтобы рассказать им об этом.

«Хён, я могу тоже сделать это?»

В отличие от Сумин, которую позвал Сонгю, Ёнхо не звали. Но он хотел принять участие в этом. Ему нужно заработать денег любыми способами до начала семестра.

«Иди в ж**у, это не для тебя, так что не встревай», - сказала хладнокровно Сумин. Но Сонгю ответил, как будто это было очевидно:

«Я уже сказал профессору, что ты будешь это делать. Я позвал Сумин и Хеджин сюда, чтобы спросить, хотят ли они участвовать в этом или нет».

«О...Спасибо, хён».

Ёнхо оперся спиной на стул.

«Сонбэ, если он будет участвовать, то я отказываюсь».

«Точно?»

«Да. Работать с этим извращенцем... Я ненавижу его».

«Эта работа - хорошая возможность, ты понимаешь? Профессор сказал, что это будет хорошая практика, если тебе удастся закончить эту работу.

После слов Сонгю Хеджин согласилась.

«С... Сонбэ, я сделаю это».

«Хеджин!»

«Сумин, хорошо подумай. Это хорошая возможность. Я думаю, раз профессор сказал, что это будет хорошо для трудоустройства...»

«Стоп».

Сонгю остановил Хеджин.

«Итак, вы согласны или нет?»

«……»

Видя колебания Сумин, Хёджин пыталась убедить её.

«Мы уже на последнем курсе. Это последний шанс для профессоров нам помочь».

«Я сказал стоп, Хеджин. Это не то, что вы думаете».

Реакция Сонгю успокоила Хеджин.

«Кстати, участвуешь ты или нет, но я не буду убирать Ёнхо».

Сумин надулась из-за решительных слов Сонгю. Как всегда. Сонгю был на стороне Ёнхо. Сумин знала это очень хорошо.

«Что вы собираетесь делать? Профессор сказал выбрать вас, потому что вы хорошо учитесь. Если вы еще не хотите сделать это, то у меня нет выбора».

«Давай же Сумин, это хорошая возможность».

Сумин колебалась и грызла ногти. Наконец, она заговорила.

«Тогда, пожалуйста, сделайте это так, чтобы этот извращенец не сидел рядом со мной».

«Хорошо, скажу профессору, что вы согласны, ок?»

«Да».

После разговора с девочками Сонгю позвал Ёнхо пообедать.

«Эй, почему ты спал в одних трусах в клубной комнате, зная, что может произойти?»

«Ты думаешь, я этого хотел? Просто было слишком жарко, и...»

«И Сумин тоже, она не могла просто сказать тебе?»

«Несмотря на то, что я живу в Каннаме, наш дом сдается в аренду, а половина из этого долг. Чтобы его выплатить, я должен вернуть студенческий кредит после выпуска.

«……»

«Это тяжело».

«Верно...»

Ёнхо потягивал кофе из банки и глядел на людей, проходящих мимо, сидя на скамейке возле здания студенческого союза.

«Но спасибо за все, хён.»

Вероятно, в списке имен куратора SUC (*кружок союза разработчиков) не было Ёнхо. И это Сонгю вписал его. Ёнхо не нужно было спрашивать его, чтобы узнать об этом.

«Если ты так благодарен, тогда работай усердно. Если ты будешь усердно работать и хорошо станешь жить в будущем, угости меня разок».

После слов Сонгю Ёнхо подумал про себя:

«Я отплачу тебе чем-то большим, чем просто еда».

Глава 7. Регистрация на курсы (2)

На подработку было выделено 2 недели. Перед этим работник аутсорсинговой компании запланировал встречу, чтобы объяснить им план курса системы управления. Ёнхо и остальные посмотрели на работника, который находился в офисе поддержки студентов.

«Добрый день, сэр».

«Ах, да. Я слышал, что вы придете».

Сонгю, как представитель, поприветствовал его. Работник, в свою очередь, поприветствовал их. Небольшое раздражение можно было увидеть на его лице.

Под глазами были темные круги. Он выглядел очень усталым.

«Проходите сюда».

Работник повел их в конференц-зал.

Объяснение длилось около часа. От структуры оборудования системы управления до программного обеспечения, установленного в каждом из них... Время шло быстро.

«Итак, по сути, система в целом состоит из одного БД-сервера и двух серверов приложений?»

«Да, вы правы. Существует дополнительный сервер для резервного копирования».

«Где можно увидеть исходный код?»

«В конце презентации я собрал информацию о доступе к DB (DataBase: Программа, которая управляет данными на предприятиях) и SVN (Subversion: Средство управления версией источника программы). Учетная запись администратора сервера и все остальное, так что вы можете посмотреть здесь».

Казалось, что Сонгю уже делал подобное. У Ёнхо, Сумин и Хеджин, сидящих рядом с ним, даже не было шанса сказать что-нибудь. Это было не то, что можно понять, просто учась в колледже.

«Что-нибудь еще вы хотите рассказать нам?»

«Вы можете делать все, что хотите на TestBed (продукт, где можно протестировать прототип программы), но не трогать управление БД, если это возможно. И НИКОГДА не делать что-то вроде Commit (кодирование) на SVN. Вы можете делать, что хотите, до тех пор, пока выполняете эти условия».

«Я понимаю».

Объяснение закончилось после ответа Сонгю. Остальные, в любом случае, ничего не понимали.

Поев, все четверо собрались вместе. Разговор был, конечно, о Кан Сонгю.

«Сонбэ, ты все это понял?»

«Ну. Частично».

«Тогда что такое SVN?»

«Это система управления версиями программного обеспечения. Вы такое не используете, когда делаете командные проекты?»

«Так это был SVN?» - спросила Джи Сумин, слыша об этом первый раз.

«Вы использовали его, даже не зная, что это? Да?»

«……»

Сумин не могла ничего сказать.

«Если что-то не получается во время работы, сначала спросите меня. Если я не знаю, я спрошу работника и дам вам ответ. Если каждый будет спрашивать, то работник будет раздражаться».

«Да, сонбэ».

Сонгю стал выглядеть по-другому в глазах Сумин и Хеджин. Ёнхо уже знал о навыках Сонгю. Кан Сонгю также был известен как Бог Сонгю в SUC.

(В Корее к имени приставляют «Бог», если он/она восхищаются кем-либо)

***

Для большинства университетов подача заявлений длилась более 5 дней. Именно для того, чтобы предотвратить перегрузку сервера путем деления по учебному году. Первый день был для 4-го курса.

«С 4-м курсом не будет проблем, верно?»

«Должно быть так. Там меньше студентов, и не так много направлений, которые они могут выбрать».

Вероятно из-за этого, он был спокоен.

«Мониторинг идет хорошо»?

«Да».

Ёнхо показал экран ноутбука. Они получили доступ к серверу для проверки состояния CPU и RAM вручную.

«Проверяйте хорошо. Эти знания вам будут нужны везде, когда вы выпуститесь».

«Но мы должны делать это все вручную? Разве нет какой-нибудь автоматизированной системы для этого?»

После слов Ёнхо Сонгю понизил голос:

«Наверное, есть. Но масштаб системы управления курсами мал».

«Даже так... заставить людей сделать эту работу... »

«Тсс, не командуйте на чужой территории. Вы узнаете это позже, когда все сделаете».

Мониторингом занимался не только Ёнхо. Хеджин и Сумин также открыли 3 окна Telnet (программное обеспечение, которое хранит протокол доступа с другими серверами) и мониторили каждый сервер.

«Несмотря на это, я думаю, это слишком много...»

Ёнхо посмотрел на место, где сидела Сумин. Работник торчал вокруг Сумин, как приклеенный.

«Если вы что-то не знаете, спросите меня, хорошо?»

Он крутился около Сумин весь день. Он не был холоден к Ёнхо, но был слишком дружелюбным по отношению к Сумин.

«Есть один вопрос... Мы должны все это мониторить вручную?»

Сумин спросила то, что хотел бы спросить Ёнхо. Ёнхо и Сонгю тоже ожидали ответа сотрудника.

«Конечно, есть автоматизированное программное обеспечение. Но это слишком дорого применять его для такой системы».

«Тогда почему бы не разработать его здесь?»

«У себя? Нет... не будем говорить об этом».

«Простите?»

Работник собирался сказать об этом, но сразу же замолчал. Ёнхо и Сонгю были заинтересованы причиной, но не мог заставить его говорить. Работник, успокоившись, продолжил.

«Не болтайте об этом. На самом деле, дело в деньгах».

«Деньги?»

Из-за интереса Сумин работник начал взволнованно болтать.

«Для разработки софта вам нужны люди, и чтобы найти людей, вам будут нужны деньги, так?»

«Все верно».

«Но в действительности, университетам не выгодно вкладывать деньги в это, потому что он не принесет им прибыли в краткосрочной перспективе».

«……»

«Вы узнаете все это, когда пойдете работать».

Сонгю его не понимал. Молчание повисло в конференц-зале.

Второй день был для 3-го курса. В этот раз работник был напряжен.

«Пожалуйста, будьте сегодня особенно внимательными», - посоветовал он им. Ёнхо внимательно наблюдал, одновременно смотря на окно багов. Он видел несколько ошибок, но они не создавали никаких проблем для подачи заявок на курс.

«Минута до выхода».

Из студентов 2-й и 3-й курсы были наиболее интенсивными. 4 курс был занят поиском работы, а 1 курс многого не знал.

«Запускай. Состояние сервера?»

Как только система заработала, CPU для всех трех серверов поднялась до 99,9%.

«Проблем нет».

спокойно ответил Ёнхо.

«БД?»

«Также отсутствуют», - ответил Сонгю работнику. БД была более важной, чем сервер приложений. Если сервер приложений полетит, можно просто повторно активировать его, и он продолжит работать, в то время как БД перестанет работать.

«Пожалуйста, подождите минуту».

Вдруг сказал Ёнхо, посмотрев на экран.

«Что такое?»

«Память достигла более 70%, и продолжает увеличиваться».

«Что?»

Сотрудник посмотрел на экран. Ёнхо был прав. Коэффициент использования памяти для БД всё увеличивался.

«Д... Давайте понаблюдаем еще минуту. Если она по-прежнему не заработает, то мы можем просто повторно активировать его.

Сеансы, которые получили доступ к БД через сервер приложений, возвращали ресурсы после того, как они были закончены. Нормально, когда уровень поднимается и опускается. Но сейчас он просто продолжал подниматься.

«Больше 80%»

Процент все увеличивался. На лице работника появилась растерянность.

«Вот черт. Все прекрасно работало во время тестирования, так почему сейчас...» - ругался работник. Если сервер упадет, придется писать отчеты об ошибке. И это в лучшем случае. Если они попросят о снисхождении...

«90%».

В словах Ёнхо слышалась настойчивость.

«98%».

Память занималась слишком быстро. В этом случае единственным решением будет вытащить вилку из розетки, если сервер не мог даже принимать команды.

«По... Повторное включение».

Работник дал команду для сервера БД.

«немедленное выключение»

Внезапно экраны для регистрации студентов на курсы зависли. Сервер БД остановился.

«Запуск»

До тех пор, пока не была дана команда для повторной активации.

Глава 8. Регистрация на курсы (3)

Это был второй повторный запуск БД из-за той же самой ошибки. Программа RDBMS (система управления реляционными базами данных) по-прежнему занимает более 90% памяти на сервере. Если бы это продолжалось недолго, то это нормально, но проблема заключалась в том, что все зависнет, когда память заполнится на 100%.

«Хён, разве это нормально, перезапускать ни с того ни с сего?»

«Нет».

«Я не думаю, что это правильно».

«Я тоже... Я такого же мнения».

* дзинь * * дзинь * (звонок телефона)

Телефоны в конференц-зале начали звонить, не переставая. Это были жалобы от студентов, у которых зависла страница.

«Когда я могу зарегистрироваться на курсы снова?»

«Скоро мы все исправим».

«Такое произошло не только у меня, да?»

«Да. Это произошло у всего 3-го курса. Так что не переживайте».

Студентов заботила только одна вещь:

Я единственный, у кого возникла такая проблема? В то время как страница зависла, не займут ли мое место на курсе? – Они беспокоятся об этом.

«Хм...»

Даже сейчас, когда он отвечал на звонки, Ёнхо был сосредоточен на чем-то другом. Он проверял систему через окно багов. Но со стороны выглядело, как будто он просто бродил.

«Посмотрите на это, у сонбэ по-прежнему есть время, чтобы просто ходить даже в такой ситуации».

«Не говори так, Сумин».

«Я не могу понять, почему Сонгю-сонбэ защищает такого, как он».

«Но он хороший!»

«Хороший? Не видела, как он сидел в одних трусах в клубной комнате?»

Из-за слов Сумин лицо Хеджин покраснело. Она сменила тему.

«Е...Еще звонок, я отвечу».

Хеджин быстро схватила телефон. Ёнхо, сосредоточенный на окне багов, слышал их разговор. Если кто-то говорил в этом зале размером 5 пён (≈16.5 кв.м.), невозможно было не услышать.

«Почему она меня так ненавидит?»

Ёнхо действительно не сделал ничего плохого. Кроме решения вопросов с едой и жильем, он не сделал ничего, чтобы он нем думали плохо.

«Но в любом случае, строка 107, т.е. где SQL (язык структурированных запросов, используемых в реляционной базе данных), запускается...»

Ёнхо посмотрел на подробности ошибки.

«Хм... Но что это значит?»

Несмотря на то, что он уже на последнем курсе и выполнял много подработок, он был еще студентом. Это не первый раз, когда он видел содержание, как сейчас, но не мог ничего понять.

Название: Table Lock (блокировка таблицы).

Подробнее: Из-за команды SELECT FOR UPDATE произошла Table Lock. Из-за блокировки другие пользователи, пытающиеся получить доступ к связанной таблице, находятся в режиме ожидания, и это является причиной текущей ошибки.

Решение: Измените SELECT FOR UPDATE на SELECT FOR UPDATE WAIT 3, чтобы сессии других пользователей осуществлялись после примерно 3-х секунд.

«Мне нужно как-то сказать об этом».

Теперь Ёнхо знал, что за баг произошел. Но что-то связанное с SQL... это было исключением. Все, что он знал, было из курса по базам данных, который читали год назад.

«Надо как-то намекнуть об этом Сонгю-хёну».

Сначала он хотел бы подтвердить это у Сонгю. Даже сейчас память использовалась на 100%. Они смогли пообедать только после 2-х перезапусков.

Ёнхо тихо позвал Сонгю, который собирался войти в конференц-зал.

«Хён, подожди секунду».

«Что такое?»

«Просто давай поговорим секундочку».

«Зачем? Я сейчас занят».

«Это из-за этого. Мне нужно уточнить только один момент».

«Хён, случайно, ты не знаешь, что такое Table Lock?»

«Table Lock?»

«Да. Ты знаешь, как ошибка вытекает из строки 107?»

«Ну?»

«Оператор запроса (сокращенный вариант SQL, видимо), который выполняется в этой строке, содержит что-то, запускающее SELECT FOR UPDATE.»

«SELECT FOR UPDATE?»

«Я поискал об этом в Интернете и узнал, что это та же система используется для бронирования билетов в кинотеатрах. Кажется, мы используем её для системы регистрации на курсы.

«В этом проблема, ты думаешь?»

«Я обнаружил, что суть Table Lock такая: когда я использую таблицу, никто другой не может делать тоже самое. Если ты хочешь использовать её, то нужно подождать, пока я не закончу».

«Хм...»

«Поэтому пока я не закончу работать с таблицей, остальные будут ждать бесконечно долго».

«Так ты говоришь, память заполняется, потому что один человек не закончил работать с таблицей и другие люди ждут его?»

Казалось, что Сонгю получил представление о ситуации.

«Ты прав. Из-за ожидания скорость использования памяти продолжает увеличиваться все это время. Так что даже несмотря на то, что все прекрасно работает после перезапуска, память будет продолжать заполняться.

«У тебя есть идеи?»

«Чтобы избавиться от статуса ожидания, надо вставить запрос WAIT 3 для автоматического завершения сеансов пользователей».

«Это все было в Интернете?»

Сонгю был очень удивлен, слушая Ёнхо эти несколько минут. Он не знал об этих навыках Ёнхо.

«Ты знаешь? «Stack Overfly». Но на самом деле, я реально не знаю, что это значит...»

«Говоришь, Stack Overfly... я пользовался им. Давайте поговорим об этом с работником».

Stack Overfly (*пародия на Stack Overflow - популярная система вопросов и ответов о программировании).

Как крупнейший в мире веб-сайт вопросов и ответов он может похвастаться 1.7 миллионами пользователей и более 5 миллионами вопросов. Сонгю часто использовал его, когда работал с программами на подработке.

«Пойдем скорей».

Ёнхо последовал за Сонгю в офис поддержки студентов.

Уже много раз БД перезапускали. Все были измучены из-за звонков, которые обрушивались после каждого перезапуска.

«Простите, сэр, вы обнаружили проблему?»

Сонгю осторожно спросил помощника менеджера Ким Вонхо. Но ему не ответили. Помощник менеджера Ким по-прежнему смотрел на экран. Он просто что-то пробормотал.

«Вот дерьмо... Почему оно не работает».

«Помощник менеджера Ким».

«Нет никаких проблем со строкой 107».

Помощник менеджера Ким продолжал смотреть на протокол сервера. В протоколе было сказано, что ошибка происходит в строке 107.

«ПОМОЩНИК МЕНЕДЖЕРА КИМ!»

Когда Сонгю говорил тихо, помощник его не слышал. Поэтому Сонгю позвал его громче. Наконец, помощник менеджера Ким обернулся к Сонгю.

«Я занят, поговорим позже».

Он обращался к Сонгю, как будто он его не существует. Он не думал, что студент колледжа поймет что-то из этого.

«Я посмотрел протокол, и думаю, что это из-за блокировки таблицы».

«Вы меня не слышали? Просто идите и проводите мониторинг».

Сонгю даже не дали договорить до конца.

Глава 9. Регистрация на курсы (4)

После обеда в офис поддержки студентов зашел мужчина средних лет.

«О? Профессор».

«Здравствуй, Сонгю».

«Почему вы здесь, сэр? Сегодня же выходной...»

«Я пришел посмотреть, как идет работа, но кажется, я выбрал неудачное время для этого».

Профессор Чон Хёншик пришел в поисках рабочей группы регистрации на курсы в офис поддержки студентов. Профессор был куратором SUC и предложил им эту работу.

«Н... Нет, сэр».

«Я слышал, что была проблема с системой регистрации курса»?

«Да».

«Понятно, так что, вы нашли причину?»

Посмотрев на помощника Кима краем глаза, Согю начал решительно рассказывать все профессору. Они больше не доверяли помощнику Киму, который даже не выслушал их и просто продолжал перезапускать систему.

«Это... Я думаю, что это проблема блокировки таблицы».

«Table Lock?»

В глазах профессора Чона загорелся интерес. Сонгю сказал ему то, что он слышал от Ёнхо. Выслушав его, профессор заговорил.

«Это разумно... Что вы думаете, помощник менеджера Ким?»

«Э... Это...»

«Может, стоит попробовать?»

После слов профессора помощник Ким торопливо открыл браузер. Помощник менеджера Ким все неправильно понял.

«Помощник менеджера Ким».

«Д... Да?»

Профессор Чон сразу понял, что собирается делать помощник Ким. Он ничего не знал об ошибке.

«Студенты не подсматривают в свои лекции, а вы ищете в интернете?»

«П... Профессор!»

«Пожалуйста, позовите сюда ответственного менеджера прямо сейчас».

«П... Профессор... это...»

«Быстро!»

Система управления курсами университета Сон Мин состоит из одного постоянного сотрудника и одного внешнего временного работника. Вместо этого они заплатили меньше временному работнику.

В конце концов, все решилось, когда пришел менеджер аутсорсинговой компании.

«Ты прав. Запрос SELECT FOR UPDATE является причиной ошибки».

«Поэтому у студентов проблемы с подачей заявок на курсы»?

«Да. Некоторым людям не удалось зарегистрироваться, поэтому было бы лучше продлить дату регистрации на один день».

«Давайте сделаем так, как вы говорите».

«Это он? Тот, кто обнаружил проблему?»

Профессор представил менеджеру Кан Сонгю.

«Представься, Сонгю. Это менеджер Ан Бёнхун из «Мирэ IT»

«Добрый день, сэр. Меня зовут Кан Сонгю. Но в этот раз не я обнаружил ошибку».

«Простите?»

«Это Ёнхо тот, кто сказал мне».

«Хен...» - сказал испугано Ёнхо, стоявший позади него. Все взгляды в комнате были устремлены на Ёнхо.

«На каком ты сейчас курсе...?»

«На 4-м, профессор».

«Кажется, есть причина, по которой Сонгю вас порекомендовал».

«Н... Нет, сэр».

Сумин и Хеджин также были удивлены этой ситуации, происходившей в конференц-зале.

«Помощник менеджера Ким. Как вы можете не знать то, что знает даже студент?»

«М... Менеджер...»

«Вам надо еще поучиться».

Отругав помощника, менеджер протянул руку Ёнхо.

«Менеджер Бёнхон из «Мирэ IT».

«Добрый день, сэр. Меня зовут Ли Ёнхо».

«Студент Ли, вы раньше работали в компании? Это не то, что можно знать, только учась в университете».

«Я занимался подработками несколько раз с Сонгю-хёном».

«Правда?»

«Да».

«В любом случае, ты отлично в этом всем разбираешься, даже несмотря на то, что все еще учишься в колледже».

Ёнхо не знал, что сказать в ответ.

«Н... Нет, сэр, в этом не было ничего такого».

«Это моя визитная карточка. Давайте как-нибудь встретимся. Я угощу вас обедом».

В отличие от своего придирчивого помощника менеджер был любезным человеком. С очками в роговой оправе и плотным телосложением; от него исходила доброжелательная аура.

«Да. Спасибо, сэр».

На этом короткое приветствие закончилось, и менеджер ушел. Увидев неловко стоящего Ёнхо, профессор заговорил с ним.

«Ты выпускаешься в этом году?»

«Да, профессор».

«Если ты на 4-м курсе, то тебе нужно готовиться к поиску работы».

«Я понемногу готовлюсь».

Именно по этой причине он выполнял все те подработки. Во всяком случае, он не превосходил своих сверстников. Единственный способ, который мог его поставить выше других, это иметь больше опыта.

«Я понимаю. Сонгю, вы рассказали об этом Ёнхо?»

«Пока еще нет, сэр».

«Тогда отлично, я сам расскажу ему».

Все, кроме Сонгю, смутились от его слов. Профессор продолжил говорить.

«Не думал ли ты стать стажером? Не обычным стажером, а стажером с почти полной занятостью?».

«Стажером, сэр?»

В голосе Ёнхо слышалось удивление. Стать стажером было бы хорошей возможностью. Более того, стажером почти с полной занятостью. Такое было непросто найти.

Ёнхо осторожно переспросил.

«Могу я узнать название компании?»

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

«Это место вы знаете очень хорошо».

Ёнхо подумал о нескольких крупных компаниях. Если это была компания, которую представляет профессор, он думал, что кто-нибудь точно о ней слышал.

«Которую я знаю... Может быть это «Heaven»?»

«Heavensoft» была одной из лучших крупных компаний в Республике Корея.

«Нет».

«Тогда...»

«Почему я должен о ней знать? Неужели это «Мирэ IT»?»

«……»

Мирэ IT.

Это была компания, которая отделилась от Мирэ Корпорейшн, имевшей 30 филиалов, после её банкротства. Хотя это не крупная компания, она считалась средней в IT отрасли, но не в SI индустрии. (*System Integration: Предоставляет IT услуги по запросу других компаний или организаций).

«Это правда?»

«Да, это так. Видимо, это Ёнхо-сонбэ разрулил тот хаос с регистрацией на курсы».

«O май гад, невероятно! Этот сонбэ ТАК хорош в учебе?»

«Это верно... Я не думаю, что он учился ТАК хорошо».

«В любом случае, он удивительный. Я слышал, что профессор Чон лично отобрал стажеров».

«Профессор Чон?»

«Да. ЭТО сделал профессор Чон».

Смесь правды с преувеличениями и вздором распространялись на факультете.

«Судя по всему, профессор Чон особенно заботился о нем?»

«Я слышал, что они были дальними родственниками».

«Серьезно? Согласно тому, что я слышал...»

Длинная тень упала на студентов в классе.

«Видимо, профессор Чон и Ёнхо знакомы».

«Правда?»

Сонгю, положив руки на двух студентов, которые говорили, сказал:

«Что? Серьезно? Не говорите ерунды. Идите учитесь, парни».

«С...Сонбэ».

«Напишите еще одну строку кода, если у вас есть время, чтобы распространять странные слухи».

После слов Сонгю оба студента быстро ушли. Сонгю спросил Ёнхо, стоящего позади него.

«Ну, что ты теперь собираешься делать?

«Мирэ IT не кажется плохим местом...»

«Я тоже думаю, что это неплохое место для стажировки».

«Думаешь?»

«Да. Подумай об этом хорошенько. Я говорю это сейчас, но на самом деле, эта подработка с регистрацией была сделана специально для будущей стажировки».

«Что?»

Ёнхо первый раз слышал об этом. Подработка была вместо собеседования для набора стажеров. Ёнхо оставил сильное впечатление во время неё.

«Профессор сначала позвал меня. У Сумин и Хеджин были хорошие оценки, а у тебя хорошие навыки».

«Ах... Так ты тоже собирался?»

«Да. Я тоже решил попробовать».

«Хён».

«Это не потому, что я хочу пойти с тобой. Просто я думал, что было бы неплохо найти работу через это вместо того, чтобы готовиться к этому после выпуска. Это тоже не маленькая компания».

«Пожалуйста, позаботься обо мне».

«Нет, это я должен говорить такое».

Глава 10. Снова встретились (1)

Обеденный стол.

Отца Ёнхо ещё не было дома. Обедая только с матерью, Ёнхо осторожно заговорил.

«Мама, я начинаю работать с завтрашнего дня».

«Работа? А как же колледж?»

«Я получил работу благодаря рекомендации профессора».

«Рекомендации профессора? Куда?»

«Мирэ IT».

«Мирэ? Разве это не большая компания?»

Мама Ёнхо думала, что Мирэ IT большая компания. Было понятно, почему она так удивлена.

«Не такая большая, как раньше».

Мама Ёнхо обхватила его лицо двумя руками.

«Это хорошо для тебя! Замечательно... Теперь усердно поработай и после этого женись».

«Д... Да».

Глядя на ее счастливое лицо, Ёнхо не мог сказать, что он стал только стажером.

Во всяком случае, скорее всего он станет постоянным сотрудником, поэтому он решил не говорить ей об этом.

«Если они скажут тебе что-нибудь сделать, ответь «Да, сэр/мэм!» и сделай это, хорошо?»

«Я понял».

«Подумать только, мой сын получил работу в крупной компании. Теперь мама ни о чем не жалеет».

«Мам».

«Ёнхо. Быстро доедай и ложись спать пораньше. Иначе ты будешь уставшим с утра».

В ту ночь он сообщил отцу, который снова пришел пьяным, новости о своей новой работе. И теперь он мог спать спокойно.

***

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

«О, хён, ты здесь?»

«Да, недавно пришел».

Сонгю вошел в конференц-зал, где находился Ёнхо. Вскоре пришли Сумин и Хеджин.

«Здравствуй, сонбэ».

Сумин, как всегда, была холодна, а Хеджин поздоровалась, улыбаясь.

«Ах, да».

«Похоже, мы работаем вместе?»

«Может, вместе, а, может, и раздельно. Мы точно не знаем».

Как только Сонгю закончил говорить, в конференц-зал вошел работник компании.

«Доброе утро всем. Мы виделись на собеседовании, верно?»

«Да. Доброе утро».

«Тогда начнем подписывать трудовой договор по очереди. Первый г-н Кан Сонгю».

Один за другим они подписывали договора и возвращались на свое место. Ёнхо был последним.

«Вот здесь про ваш годовой оклад, а ниже срок действия контракта. Срок от 1-го сентября до 1 марта следующего года. Если не будет никаких проблем во время стажировки, вы станете постоянным сотрудником».

Он посмотрел на контракт, слушая работника из отдела кадров.

1,000,000 вон (≈57 870 рублей) в месяц.

Правда, с вычетом налога получается около 880,000 вон (≈50 930 рублей).

«Вероятно, на подработках я заработаю больше, чем здесь».

Подумал он про себя.

«Подписать здесь?»

«Да».

Трудовой договор, или Рабский договор.

Имя Ёнхо чётко виднелось на нем.

***

Сонгю и Хеджин ассистировали Группе Разработчиков 1, а Сумин и Ёнхо Группе Разработчиков 2. И они были допущены к работе без какого-либо предварительного обучения.

«Что за черт? Они сразу дали нам работу».

В метро в направлении станции Ёксам.

Сумин продолжала бесконечно жаловаться.

«И более того...»

Замолчав, она на секунду взглянула на Ёнхо.

«Ах, так раздражает».

«……»

«Почему, черт возьми, этот ноутбук такой тяжелый?»

Бормотал рядом с ней Ёнхо, явно не в состоянии держать его дольше.

«Тогда брось его».

«Что?»

«О, мы приехали».

Они прибыли на станцию Ёксам.

5 или 6 человек сидели за столами, стоявшими близко друг к другу. На их лицах была написана усталость. Не верилось, что так выглядят программисты.

«Мы должны были остаться здесь на всю ночь, потому что возникла проблема. Из-за этого, как вы можете видеть, все это... Ну, проходите, садитесь здесь».

Одного взгляда было достаточно, чтобы понять, что столами пользовались много лет, а стулья были перекрашены.

«Вот влажные салфетки, хорошенько его протрите и поставьте свой ноутбук туда».

Ёнхо вытер стол и сел за ноутбук. И продолжал сидеть с пустым выражением лица. У него не было ключа для входа и выхода из офиса, поэтому он не мог выходить, когда захочет.

После обеда ответственный помощник менеджера позвал Ёнхо и Сумин выпить кофе. Казалось, у него есть немного времени.

«Приятно поработать с вами. Я помощник менеджера Со Джесок и я буду отвечать за вас двоих».

После приветствия помощник менеджера Со продолжил говорить.

«Как вы видите, сейчас здесь не очень хорошая обстановка. Так что, может быть, я не смогу заботиться о вас какое-то время».

«Что случилось?»

«Ошибка в системе, которую мы обнаружили недавно. Давайте я позже расскажу подробности... Есть другие вопросы?»

Сумин и Ёнхо даже не знали, что еще спросить.

«Тогда возвращаемся».

Помощник менеджера Со сел за компьютер. Нужно загрузить JDK (Java Development Kit: Базовые условия для разработки программ с использованием языка Java) для разработки, Eclipse, Sql Developer, который является инструментом для доступа к БД и многие другие бесплатные инструменты для разработки.

«Нужно скачать больше, чем я думал».

Ёнхо загрузил все из списка, который дал помощник Со. Некоторые программы он видел в первый раз, но он не обнаружил никаких трудностей. Если программа не загружается должным образом, для большинства из них решение можно найти в Интернете. Он загрузил все программы только через час.

«Фух... Загрузка завершена».

Потянувшись, он взглянул на Сумин, которая кусала ногти.

«Она хорошенькая».

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

«Похоже, у неё что-то не работает».

Глядя как она хмурится и кусает ногти, он понял, что что-то не ладится. Ёнхо, уже закончив загрузку, немного отклонился и посмотрел на экран ноутбука Сумин.

«Черт, почему постоянно выскакивают ошибки?»

Сумин не могла понять. Она, наверняка, следовала инструкциям, чтобы загрузить Sql Developer. Однако выходила ошибка, когда она запускала программу.

«Не удается создать экземпляр виртуальной машины Java...»

Сумин решила спросить помощника менеджера Со. Однако она боялась, что будет выглядеть глупо.

«Это убивает меня».

Грызя ногти, она никак не могла найти решение. Она попробовала некоторые рекомендации, которые нашла в интернете, но ошибка не исчезла.

- Изменить на AddVMOption-Xmx256M

Это было решение из Интернета. Но она не могла найти AddVMOption в файле, который она открыла для изменения. Она искали с помощью ctrl + f, но ничего не нашла.

Глава 11. Снова встретились (2)

«Она ничего не сделает, если не спросит».

Ёнхо хорошо понимал, в какой ситуации оказалась Сумин. Ее гордость не позволяла ей спросить у Ёнхо. Она боялась, что если спросит старших, то будет выглядеть глупо или её отругают: «ты не знаешь даже этого?»

«Она младше меня, поэтому я должен помочь ей. Ну, в этом нет ничего сложного».

Ёнхо, наблюдавший со стороны, знал, почему Sql Developer не запускается и как исправить эту проблему.

«Оу! Итак, я должен добавить AddVMOption-Xmx256M».

Сказал он тихо. Но Сумин, сидевшая рядом с ним, хорошо это слышала.

«А я-то думал, почему программа не работает. Просто AddVMOption не должен находиться в файле. Не могли объяснить получше...»

Пробормотал снова Ёнхо. Сначала Сумин думала только о том, что её раздражает бормотание Ёнхо. Но оказалось, что это была та же проблема, что и у неё.

«Только не говорите, что...»

Сомневаясь, Сумин добавила AddVMOption-Xmx256M в последнюю строку Sql Developer.

Загрузка...

SQL Developer запустился!

Проблема, на которой она надолго застряла, разрешилась. Программа запустилась нормально.

IT мир Ёнхо.

Он создал этот блог по совету Сонгю на втором курсе колледжа. После возвращения в колледж с военной службы он часто писал в нем. Постов было около 300 штук. Сегодня был добавлен новый пост.

-Как устранить ошибки во время загрузки Sql Developer.

Ёнхо обновил свой блог после завершения установки среды разработки по распоряжению помощника менеджера Со. По словам Сонгю это станет большой ценностью, если он будет записывать такие моменты всякий раз, когда решение найдено. При пополнении блога он будет искать различный контент по теме и это станет его знаниями.

«Я думаю, что это поможет».

Блог поможет ему в обучении, и также он научится писать посты. Подобные методы - это полезные умения.

***

После обновления своего блога он получил доступ к SVN (Источник управления версией программы) и загрузил текущий проект и соответствующие исходные коды. Красным крестиком были отмечены источники, загруженные локально...

«Хм...»

Название проекта: salesMng.

Это был проект, который он скачал из SVN. В нижней правой части возле названия проекта стоял маленький крестик.

«Ты даже загрузил источники?»

Сказал помощник менеджера Со Ёнхо, который был сосредоточен на экране своего ноутбука.

«О, помощник Ким».

«Это трудно?»

«Ха-ха... это ничего».

«Как далеко ты продвинулся?»

«Я скачал все программы, которые вы мне сказали, я только что закончил загрузку источников, и я собирался получить доступ к серверу обкатки и серверу БД».

«Ты сделал довольно много. Это только первый день, так что не переусердствуйте и отдохните от работы».

Время было уже больше 6 часов вечера. График был с 9 утра до 6 вечера. Но Ёнхо увидел, что после слов помощника Со никто не уходит.

«Остальные...»

«В будущем ты тоже будешь оставаться сверхурочно, так что сегодня иди домой пораньше».

«Несмотря на это, давайте...»

Из-за слов Ёнхо Сумин нахмурилась, она уже встала и собрала вещи.

Два интерна.

Один собрался и один сказал, что остается. Было очевидно, кто заслуживал лучшей оценки. В представлении Сумин Ёнхо просто подлизывался.

«Даже если вы останетесь, пока нет ничего, чем вы могли бы помочь, г-н Ёнхо. Поэтому можете идти».

Ёнхо собрал вещи, только после того, как помощник Со повторил свои слова. Вот так закончился первый день стажировки.

***

Место, куда направили Ёнхо, было местом поддержки системы управления продажи фэшн-компании. В настоящее время они только что закончили настройку новейшей системы, и сейчас они на стабилизирующей стадии.

«Это все. Есть вопросы?»

Ёнхо и Сумин сидели в конференц-зале. Помощник менеджера Со показывал презентацию и только что закончил объяснять им систему. Содержание было похоже на то, которое они слышали на курсе управления системами в университете Сон Мин.

«...»

Сумин и Ёнхо сидели молча. Молчание повисло в конференц-зале.

«Если у вас нет вопросов, то я расскажу, что нужно делать сегодня».

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

«Вы должны закончить изменение настроек сегодня».

Настройка среды разработки.

Обычно они сначала устанавливают программное обеспечение и сразу настраивают БД и параметры для запуска скомпилированных источников, загруженных из SVN для локального запуска на соответствующее программное обеспечение. Однако, думая о стажерах, он поделил процесс на этапы. (Программное обеспечение здесь относится к среде разработки, или в основном, кодированию программного обеспечения)

«Вы должны сделать загруженные источники работоспособными в локальной среде, и, используя информацию о БД, которую я вам дал вам, вы должны сделать доступным каждый тест БД, вы понимаете?»

«...Да».

«Работы здесь сейчас очень много, поэтому если хотите что-то спросить, поищите сначала в интернете, и только потом можете спросить у нас».

«Я понял».

«Пытаясь разобраться самостоятельно, вы надолго это запомните. И не забудете так легко знания, которые получили методом проб и ошибок».

В этот момент Ёнхо и Сумин подумали, что работа здесь в будущем будет нелегкой. Ёнхо мог устранять ошибки, но ему не хватало опыта. У Сумин были хорошие оценки, но она мало практиковалась.

«И еще одно. Если вы не закончите за сегодня эту работу, то будете работать сверхурочно».

Сверхурочная работа.

Ёнхо постоянно видел это в последние несколько дней. Даже когда он уходил в 8 или даже 9, никто в офисе не покидал рабочего места. В этот момент Ёнхо было любопытно, сколько платят за сверхурочную работу.

«Если вы работаете сверхурочно, как быть с едой или... транспортом?»

Ёнхо задал вопрос издалека.

«Питание предоставляется компанией, а после 11 ночи компания оплачивает такси. Что касается сверхурочной оплаты... Ёе нет».

Ёнхо ничего не мог сказать после этих слов. Как и Сумин.

«……»

* хлопок *

Вероятно, пытаясь разрядить обстановку, помощник менеджера хлопнул в ладоши.

«Ну что ж, давайте работать».

Глава 12. Снова встретились (3)

Ёнхо работал проворно. Он разобрался с крестиками на salesMng проекта по одному с помощью окна багов. Для Ёнхо, который выполнял подработки с Сонгю, разобраться с различными программами для разработки было не трудно.

«Готово!»

http://localhost: 8080/salesMng.

Ёнхо ввел адрес в браузере, и страница открылась. Он ввел логин и пароль (1234) и вошел в систему.

«Думаю, работает».

15: 00

Это было время, когда Ёнхо выполнил свою задачу, поставленную помощником менеджера Со на утренней планерке. Ему встречалось бесчисленное количество ошибок, но он устранял их без затруднений, используя окно багов и Интернет.

«Как она справляется?»

Он посмотрел на Сумин. Может быть, потому что она сидела рядом с ним, он постоянно думал о ней.

«Хм...»

Сумин запускала и выключала tomcat (тип открытого исходного кода веб-сервера, сделанного Apache). Возникала ошибка из-за salesMng, импортированного в tomcat. Но salesMng даже не работать как надо.

«Что это? У неё есть только хорошие оценки?»

Хорошие оценки не гарантируют, что вы будете хороши на практике.

Вещи, которые вы изучаете в школе - это основы, необходимые для разработки программ.

Конечно, эти основы нужны, но на практике необходимы и другие навыки.

«Это займет весь день при такой скорости», - сказал Ёнхо, взглянув на диаграмму системы макета и источники, загруженные из SVN. Новая изученная вещь означала меньше шансов на увольнение.

В 5:30 помощник менеджера Со подошел к Ёнхо.

«Ну что? Справляешься?»

«Да, сэр. Я изучаю источники».

«О? Правда? Могу я взглянуть?»

Он был удивлен.

Ёнхо запустил tomcat на Eclipse. И протоколы по одному в консольной вкладке.

ИНФОРМАЦИЯ: Запуск сервера в 8982 ms

Tomcat запустился без ошибок, и Ёнхо открыл интернет-браузер и зашел на главную страницу управления продажами.

«Ты хорошо поработал. Как насчет вас, мисс Сумин?»

«Э... Это, сэр...»

«Я же ясно сказал вам. Вы должны закончить это перед уходом».

«……»

«Вы можете спросить или сделать это самостоятельно. Это не имеет значения. Просто покажите мне главную страницу управления продажами перед уходом. Кажется, мне придется оставить вас сверхурочно...»

Сумин начала грызть ногти еще сильнее после его слов. Было не похоже, что она долго продержится.

Если Ёнхо уйдет с работы один, понятно, что будут думать другие.

«Она ни за что не спросит».

Она могла бы спросить Ёнхо сейчас, но Сумин не обратилась к нему до самого конца. Ёнхо подумал, что ему придется, в таком случае, провести ночь в офисе, поэтому он заговорил первым.

«Я не думаю, что проблема будет решена, если постоянно перезапускать tomcat».

«……»

Но Сумин даже не прислушалась. Он не знал, почему Сумин была настолько враждебной к нему, в конце концов, он был ее сонбэ.

«Ты заходила в настройки БД?»

«……»

«Ошибки при запуске tomcat, вероятно, оттуда. Источники, загруженные из SVN, стандартны для общих источников, поэтому установка для общего источника такая же. Тебе нужно изменить настройки, чтобы протестировать его локально».

«……»

Ёнхо, раздражаясь из-за узколобости Сумин, которая по-прежнему сидела, поджав губы, спросил.

«Ты меня слушаешь?»

«Эти, э-э... настройки БД... как это сделать...»

Ёнхо показалось, что он не расслышал. Но он услышал все правильно. В колледже оценки Сумин были высокими. Здесь в Мирэ IT, она была, как чистый лист бумаги.

«Ты даже не знаешь что это?»

Ей нужно было объяснять все с нуля. Она не могла сделать это самостоятельно. Было удивительно, что она вообще установила программы. Именно поэтому она не осмеливалась спросить старших.

«Ты... занималась java-программированием до этого?»

«… Да».

Однако даже установленная версия JDK была другой. Согласно списку помощника менеджера Со версия должна быть 1.6.0. Но Сумин установила 1.7.2. Даже если версия отличается, программа будет по-прежнему работать. Однако чтобы избежать ошибок, обычно все программисты устанавливают одну и ту же версию.

«Но почему ты скачала неправильную версию JDK?»

«……»

«Ты вообще знаешь, как получить доступ к БД?»

«……»

Сумин не смогла ответить ни на один вопрос Ёнхо.

«Что ты собираешься делать в будущем?»

«Я... Я думала, они сначала о... обучат меня или что-нибудь вроде. Я думала, что это тренировка, и я пока учусь...»

“Мало где обучают прежде, чем дают работу, я думаю».

Ёнхо говорил о том, что есть лишь несколько компаний, которые обучают своих новых сотрудников перед работой. Мирэ IT не была одной из них. То, что старшие курировали их, уже было хорошо.

«……»

«Ну, во всяком случае, мы справились».

Уже было 10 вечера, когда Ёнхо закончил, помогая Сумин.

Темная ночь. Ёнхо указал на станцию метро. Еще не было 11-ти, поэтому он не мог вызвать такси.

«Я поеду на метро, а ты?»

* бип! * * бип! * (сигналит автомобиль)

Позади Сумин и Ёнхо просигналил и помигал фарами автомобиль. Раздраженный из-за громкого звука Ёнхо первый повернул голову. Benz S класса.

Это был автомобиль, стоивший более 100 миллионов вон (≈ 5 807 610 рублей). И он просто стоял там.

«Сумин!»

«Ах, мама».

Женщина средних лет высунула голову из окна и позвала Сумин.

«Ах, так что она родилась с золотой ложкой в рту». (*это выражение означает, родиться в богатой семье. В английском варианте используется серебряная ложка, а в корейском можно назвать любой металл - это степень богатства).

Он знал, что она богата, но не до такой степени, что её мама водит Benz. Ёнхо сделал глубокий вдох и подошел домой.

На следующий день.

Глаза Ёнхо расширились. Как и Сумин.

«Вы знали друг друга раньше?»

«Ах... Да, мы виделись в колледже».

«Что ж, помощник менеджера Ким работал в университете Сон Мин некоторое время, поэтому вам будет легче».

«Это...Думаю, да».

Помощник менеджера Ким Вонхо стоял позади помощника Со.

«Думаю, вы бы могли работать в нашей компании стажером. Позвольте мне официально представиться, помощник менеджера Ким Вонхо».

«Оу. Добрый день, сэр. Меня зовут Ли Ёнхо».

«Я уже знаю. Как можно вас забыть? Я действительно должен поблагодарить вас за то, что вы для меня сделали».

Плохое предзнаменование одолевало от его слов. Враждебность исходила от слов «Спасибо» и «как я мог забыть».

«Простите?»

Ёнхо не стал возражать и отвел взгляд.

«И мисс Сумин тоже здесь, а?»

«Да. Добрый день, помощник менеджера».

Помощник менеджера Со заговорил после того, как помощник Ким представился.

«Из-за обстоятельств проекта отвественный менеджер был заменен на помощника Кима. Если у вас будут какие-либо вопросы в дальнейшем, то вы можете задать их ему».

Ким Вонхо вышел вперед и снова заговорил с Ёнхо.

«Ну, тогда, выпьем чаю?»

Он улыбнулся. Но улыбка получилась натянутой. Помощник Со, казалось, знал причину, но ничего не сказал.

Глава 13. Снова встретились (4)

1-й этаж кафе.

Помощник менеджера Ким Вонхо сидит перед Ёнхо и Сумин.

«Я действительно должен поблагодарить вас за ту неделю с регистрацией курса».

«Ахаха... Не говорите такие вещи».

«Спасибо вам, меня даже уволили из университета и перевели сюда».

В этот момент Ёнхо подумал, что неправильно услышал.

«И... Извините?»

«Вы не знали? Ваш профессор пожаловался компании, и куратора сменили».

«Оу...»

Ёнхо даже не мечтал, что это произойдет. Ким Вонхо потягивал свой напиток и продолжал.

«Благодаря Всемогущему стажеру Ли Ёнхо, я был заклеймен как бесполезный парень и в компании тоже».

«……»

Ёнхо тихо слушал. Он выглядел нервным, но внутри был спокоен. Это было ничто, по сравнению с теми переживаниями, которые он испытывал, занимаясь различными подработками.

Но Сумин, которая сидела рядом с ним, казалось было неудобно, потому что она опять кусала ногти.

«Я ожидал нечто выдающееся от наших способных стажеров в будущем».

Ёнхо не собирался отвечать на его сарказм.

***

Ким Вонхо перестал говорить вежливо и начал говорить даже свысока.

«Так вы закончили настройку среды разработки»?

«Да».

«Значит, теперь вы можете начать саму разработку».

«Разработку»?

«Да. Вы уже закончили настройку. Что еще нужно сделать? Кажется, планируется добавить несколько функций для домашней страницы управления в этом году».

Не прошло даже недели, как он был включен в команду проекта. Кроме того, он был стажером. Он еще не занимался этапом работы, где нужно писать программы. Сумин и Ёнхо думали об одном и том же. Сумин, догадываясь, к чему все идет, заговорила.

«Несмотря на это, мы еще стажеры...»

«Почему же? Г-н Ёнхо просто создан для работы».

«……»

«Вы знаете WBS Excel (структура декомпозиции работ), верно? Давайте создадим с помощью неё страницы».

«Помощник менеджера».

«Да.

«Для меня разработка программ, я...»

Его навыки улучшились от подработок, но большинство из них он выполнял вместе с Сонгю. Он мог бы написать простую CRUD (создание, чтение, обновление, удаление), но он никогда не писал программы с более сложной логикой.

«Ах, и г-ну Ёнхо не нужен Интернет, потому что вы такой способный, верно?»

«Э... Это...»

Ким Вонхо не дал Ёнхо договорить.

«Я скажу им, чтобы отключили Интернет, так что не волнуйтесь, и просто сделайте это. Вы же теперь стажер, так что вам нужно улучшить свои навыки».

Интернет был необходим. Большинство обычных программистов ссылаются на Интернет при разработке. Ёнхо ничем не отличался. Он ссылался на источники в Интернете и менял их в зависимости от ситуации.

«Мне нужен Интернет», - сказал он, потому что ему определенно нужен Интернет. Но Ким Вонхо даже не пытался его слушать.

«Разве ваши способности улучшатся, если вы будете пользоваться интернетом? В любом случае, он ведь вам даже не нужен, не так ли?»

«……»

«Я дам вам заметку с подробностями позже, так что пока взгляните на источники».

Ким Вонхо вернулся на свое место. Сумин не могла сдержать удивления. Ёнхо потер лицо. Но он до сих пор не мог избавиться от зловещего чувства.

***

Могло быть и хуже. Частью Ёнхо была основная доска обьявлений. Однако было необходимо иметь возможность кросс-браузерности.

«Ах... Меня отметили».

Ёнхо заботила одна вещь.

Оценивание.

По тону Ким Вонхо было понятно, что он определенно отмечен. Это приведет к низкой оценке. Из-за особенностей иерархической структуры компании оценка будет зависеть от людей, которые с ним близко работают. Начальство будет оценивать его по словам Ким Вонхо.

Но Вонхо был настроен враждебно к Ёнхо. Они сказали, что большинство, вероятно, станет постоянными сотрудниками, но теперь он мог провалиться.

«Пока просто сделаю то, что он сказал».

Ёнхо создал новую JSP (страницы сервера Java: Можно вставить java-код в HTML) и начал кодить, ссылаясь на другие файлы. Ключ-карта прибудет только через неделю, но не нужно даже часа, чтобы отключить интернет.

«Вроде готово...»

В браузере была доска объявлений, сделанная Ёнхо. Он протестировал просмотр, удаление, создание и редактирование по очереди.

«Мне действительно нужно как-нибудь угостить Сонгю-хёна».

Подработки с Сонгю оказали большую помощь. Большинство подработок были на создание приложений и веб-программирование. Его опыт сейчас ему сильно помог. Но без интернета ему потребовалось больше времени, чем раньше.

«Кажется, я закончил это до конца рабочего дня».

Навыки Ёнхо были как у человека с одним-двумя годами опыта. И также у него было окно багов - его большой помощник.

«В любом случае, он не слишком силен для меня?»

Рядом с Ёнхо сидела не только Сумин. Потому что рядом с ней сидел Ким Вонхо.

«Таким образом, вы должны получить ресурсы, необходимые для доступа к базе данных из объекта DAO.

«О... угу».

«А сейчас... Как вы думаете, что вы должны делать дальше?»

«Теперь у нас есть данные, поэтому...» - неясно сказала Сумин и в конце концов не смогла ответить. Но не было не ругани, ни какого-либо пренебрежения.

«Теперь у нас есть данные, поэтому мы должны вставить их на страницу, верно?»

«Да».

«Вот почему вы вставили его в объект запроса, а затем в браузер»

Слова Вонхо звучали теплее, чем когда он говорил с Ёнхо. Он учил ее всему от начала до конца.

«О...»

«Теперь мы должны обработать данные, которые получили на странице, так?»

Сумин нужно было только смотреть, что делал Ким Вонхо. Страница была сделана.

«Теперь все готово, верно?»

«С... Спасибо».

«Нужно выпить, чтобы отметить это».

«Ах, да».

Даже не спросив Ёнхо, эти двое встали со своих мест и вышли на улицу. Ёнхо просто молча тестировал страницу, которую он создал.

***

«Сделал?» - спросил Вонхо у Ёнхо в конце рабочего дня.

«Думаю, работает».

«Ты «думаешь», что оно «работает»? Программы имеют значение, только когда они работают. Одна ошибка - значит, программа не готова. Ты понимаешь?»

Ёнхо думал о том, что Вонхо только придирается к нему. Поэтому он не возражал.

«……»

«Ты даже сейчас не возражаешь, да?»

«Нет, сэр».

«Попробуй запустить».

Ёнхо запустил программу. Возможно, из-за любопытства, Сумин заглянула в экран ноутбука Ёнхо.

Глава 14. Снова встретились (5)

Ким Вонхо не мог скрыть удивления, смотря на доску объявлений, сделанную Ёнхо.

«Ты только стажер и ты можешь сделать доску объявлений без Интернета?»

Когда Ким Вонхо впервые пришел в компанию, он был примерно таким же, как Сумин.

Совершенный пустым.

Теперь он может создавать такие доски легко, но тогда он даже не знал, с чего начать. Кроме того, он даже отключил Ёнхо интернет.

«Э... Хм...»

«Какие-то проблемы?»

«Запусти в другом браузере».

Кросс-браузинг.

Когда функции работают в любых браузерах. По просьбе Ким Вонхо он открыл новое окно Grome от компании Koogle.

«Судя по всему, источники из SVN были закодированы с использованием стандарта html5. Поэтому я кодил, используя тот же стандарт, так что с этим не возникло больших проблем».

Как и сказал Ёнхо, доска объявлений работала в Grome без проблем. Но на этом проверка Вонго не закончилась.

«Какой аккаунт ты использовал сейчас для входа?»

«Простите?»

«Я сказал, чей аккаунт ты использовал для входа на домашнюю страницу управления продажами?»

Из-за внезапного вопроса Ёнхо начал заикаться.

«Я... Я думаю, что это был рут-доступ...» (*рут -специальный аккаунт в UNIX-подобных системах с идентификатором (UID, User IDentifier) 0, владелец которого имеет право на выполнение всех без исключения операций).

«Так ты тестил, используя рут-доступ?»

«Да».

Вонхо вышел из этого аккаунта и залогинился как пользователь, а затем перешел на страницу, сделанную Ёнхо.

«Хм? Функции редактирования, удаления и создания работают».

«……»

«Разве ты не знал, что в НЕ рут-аккаунтах не работают никакие функции, кроме просмотра?»

«Откуда мне знать что-то подобное?» - эти слова застряли в горле. Но он знал, что не скажет это.

«Но такого контента все равно нет в WBS»

«Ты читал от начала до конца? Может, проверим, действительно ли нет?»

Очевидно, в Excel не было такой строки, когда он смотрел. У Ёнхо было плохое предчувствие, но он очень хотел закончить эту работу, поэтому открыл файл Excel, где был WBS.

«Точно нет?»

Просмотрев его снова, он не нашел ту строку, о которой говорил Вонхо.

«Нет».

«Посмотри здесь».

Ким Вонхо навел курсор и нажал кнопку «Показать». И на экране появилось несколько строк.

По сути, кроме администратора никто другой не может создавать, редактировать и удалять посты на всех страницах сайта управления продажами. Если необходимо разрешение, то его можно дать конкретному пользователю.

Руки Ёнхо задрожали. Вонхо спросил снова.

«Есть или нет?»

«Есть...»

«СДЕЛАЙ ЭТО ПРАВИЛЬНО!»

Его тело напряглось от гнева. Совсем не обращая внимания на Ёнхо, Ким Вонхо продолжал говорить.

«Ты не знаешь основ разработки. Ты должен изучить спецификации медленно и внимательно. Не так ли? Я буду обучать тебя, начиная с завтрашнего дня».

Ёнхо не видел связи между изучением основ и сложившейся ситуацией. Он только думал, что Вонхо издевается.

* Тук * * Тук *

Ким Вонхо заговорил, постучав по плечу Ёнхо.

«И отредактируй материал, который ты сегодня разработал. Я проверю завтра. Понял?»

«Да...»

«Мисс Сумин может уйти сейчас».

«Ах, ладно...»

Даже испытывая сильную злобу, он не мог ничего сделать.

Ёнхо был стажером.

И никому нет дела до того, ушел он или нет.

Все ушли домой.

Ёнхо остался в офисе один.

«Хорошо, что у меня с собой телефон».

Если Ёнхо что-то не понимал, он искал через телефон вместо того, чтобы использовать ноутбук без интернета. Он закончил работу.

2: 00 ночи.

Он закончил проверять права учетной записи.

«Ах, будущее выглядит мрачно», - бормотал Ёнхо, держась за голову.

Интернет запрещен.

Eclipse запрещен.

И ctrl + C, ctrl + V запрещено.

Это был Ким Вонхо, так называемый «Обучу с тремя запретами». В целях обучения он лишил Ёнхо рук и ног. Интернет был источником информации, когда он чего-то не понимал. Eclipse - это главный инструмент для написания программ. Без Eclipse пользователю придется делать все от компиляции до построения. Для сравнения: это как будто у вас есть стиральная машина, но вам сказали стирать на руках. И это слишком - запретить ctrl + C, ctrl +V. Ёнхо приходилось вводить повторяющиеся строки вручную.

Сверхурочная работа стала нормой, а усталость стала его другом.

«Ох, черт».

У Ёнхо пошла кровь из носа. Он приложил салфетку и торопливо направился в сторону туалета.

«Я действительно должен продолжать здесь работать?»

Нормальное время окончания рабочего дня стало 2 ночи. Кроме того, он приходил на работу добровольно-принудительно в выходные дни. И даже в выходные было трудно уйти до 6 вечера. Ким Вонхо давал ему невыполнимые задачи, вероятно, пытаясь заставить его уволиться.

«Тьфу».

В эти солнечные выходные Ёнхо был один в офисе, пытаясь выполнить задачу, поставленную Вонхо.

«Но есть и плюсы».

Было одно преимущество. Его способности явно улучшаются. Стало привычно не использовать ctrl + C, V, и так он узнал о различных API. Он стал быстрее кодить.

Кроме того, не используя Eclipse, он узнал, как использовать ANT (Apache Ant Project Build Tool - популярный инструмент сборки ПО, полностью написанный на Java), как скомпилировать и построить. Также он теперь мог даже запустить SVN на CMD (команда: по сути, просто страница, где пользователь вводит в поле команды и запускает различные вещи).

Методы разработки программ, в целом, были очень похожи. Если вы знаете несколько принципов, то изучать другие становится легче.

Офис, выходные...

Человек открыл дверь и вошел в офис, где не было слышно ничего, кроме стука клавиш.

«Ах, помощник менеджера Пак, добрый день, сэр».

«Ах, да».

Помощник менеджера Пак Чольун.

Ёнхо слышал, что он пришел в компанию в то же время, что и Ким Вонхо. Чольун, слегка поклонившись, сел на свое место.

«Мне кажется, я скоро стану прозрачным».

Обычно люди в офисе не интересовались друг другом. Каждый был занят своей работой. Первый раз помощник менеджера Пак пришел в офис в выходные.

«Есть что-нибудь?»

Помощник менеджера Пак взял свой телефон.

«Да, менеджер. Да, да, я понимаю».

* Звук, когда положили трубку *

«Черт, почему это случается на выходных?» - выругался Пак Чольун, повесив трубку. Он был явно раздражен, вероятно, потому что его вызвали в такие солнечные выходные.

«Какого хрена это вдруг не работает?»

В программе, за которую он был ответственным, возникли ошибки.

* Дзинь * * Дзинь *

Телефон в офисе начал звонить.

«Да. Я сейчас занимаюсь этим».

«Нет, это не будет исправлено так быстро».

«Да. Я разберусь с этим сегодня».

Помощник менеджера Пак отвечал на звонок, потупив взгляд. Звонил менеджер по работе с клиентами.

(* Примечание: здесь слово «клиент» это 갑 (Гап), что также может означать кого-то значительного. В Корее «Гап» означает кого-то из начальства. Гап - превосходящее положение, а 을(Ыль) подчиненное положение. 병(Пён) и 정(Чон), которые появятся позднее в истории, еще ниже, чем Ыль. И эти четыре слова - только часть из 10 символов, обозначающих иерархию).

* Вздох *

Пак Чольун, тяжело вздохнув, посмотрел на монитор. Ёнхо тоже повернулся к своему монитору, чтобы закончить задание.

Глава 15. Ошибка доступа (1)

«Эй, помощник Пак! Вы еще не устранили ошибки?» - завопил менеджер Чхве, войдя в офис.

«Менеджер».

«Мне звонил управляющий, это все очень плохо! Мы должны показать программу Совету директоров в понедельник. Что вы собираетесь делать, а?»

Бизнес-моделью Мирэ IT была SI (Системная Интеграция: клиент просит подрядчика компании создать систему и оплачивает её). Помощник менеджера Чхве был ответственным за создание системы.

(* Примечание: Помните «Гап» и «Ыль»? Гап = клиент, Ыль = подрядчик).

Как менее важный человек помощник менеджера Чхве вынужден был заискивать перед клиентом. Иначе контракт могут не продлить. И если это произойдет, его понизят в должности.

Менеджер Чхве распрашивал помощника менеджера Пака, который нерешительно отвечал.

«Так вы выяснили, в чем причина?»

«Это... Еще нет...»

*Вздох* «В чем суть ошибки?»

«Это...»

««ЭТО», «ЭТО», «ЭТО» КАКОГО ЧЕРТА ВЫ ПОДРАЗУМЕВАЕТЕ ПОД «ЭТО»?»

«ETL просто не работает».

ETL (аббревиатура - извлечение, преобразование и загрузка). Это была программа, которая извлекает и преобразовывает данные из хранилища удаленных данных и загружает их в нужное место.

«Что? Просто не работает?»

«Да...»

Менеджер Чхве говорил, будто не веря помощнику Паку.

«Попробуй запустить».

Пак запустил Putty (*свободно распространяемый клиент для различных протоколов удалённого доступа, включая SSH, Telnet, rlogin) и ввел команду для запуска программы ETL.

./miraeETL.sh

И нажал «ввод».

Оба не хотели верить в это, но ничего не вышло. Несколько минут спустя программа просто вылетела.

* Вздох * «Что, черт возьми, это за проблема?»

Менеджер Чхве вздохнул, увидев результат своими глазами. Помощник Пак был недвижим, думая, с чего ему начать. В окне протоколов не было никаких ошибок.

«Что делать, менеджер?»

«Что значит, что делать, мы должны исправить эту ошибку».

«Но протокола ошибок нет...»

«Я даже не знаю. Давайте подумаем».

Менеджер Чхве сел на свое место и повернул свой включенный ноутбук. Молчание повисло в офисе.

Спустя час менеджер Чхве позвал Ёнхо.

«Эй, г-н Ёнхо».

«Да, сэр».

«Чем вы занимаетесь сейчас?»

«Я сейчас выполняю задачу, которую дал мне помощник менеджера Ким».

«Это срочно?»

«Н... Наверное, нет».

«Тогда ты не мог бы помочь нам?»

Сегодня было воскресенье. Им необходимо было восстановить программу, чтобы завтра Совет директоров мог посмотреть текущее состояние продаж. Если программа ETL не заработает, данные по продажам посмотреть не удастся.

Это означает, что Совет директоров не сможет подтвердить текущее состояние продаж. Если проблема не буде решена вовремя, компания-заказчик будет очень недовольна. Возможно, потому, что менеджер Чхве был под большим давлением, он даже попросил Ёнхо помочь.

«Д... Да, сэр».

Ёнхо подошел к помощнику Паку и спросил.

«Помощник менеджера, чем я могу помочь?»

После его вопроса помощник Пак сказал менеджеру Чхве.

«Менеджер, он только стажер, что он может знать...»

«Вы меня не слышали? Он тот, кто устранил проблему с записью на курсы в университете Сон Мин».

«Правда?» - спросил Пак у Ёнхо.

«Ты действительно решил проблему?»

Его лицо выражало недоверие. Но с другой стороны, у него зародилась надежда.

«Мне просто повезло. Это можно найти на Stack Overfly».

Stack Overfly - крупнейший в мире форум программистов. Множество программистов пользуются этим сайтом.

«Серьезно? Так вот как вы решили это... Садитесь здесь. Проблема заключается в...»

Он вкратце рассказал Ёнхо о программе ETL и текущей ситуации. После этого Ёнхо спросил:

«Можем мы запустить программу один раз?»

«Она в любом случае не заработает, что там можно увидеть».

«Я просто хочу посмотреть сам сначала...»

Он сможет вызвать окно багов, только если увидит запуск программы своими глазами. Если есть ошибка, то она появится в окне багов.

«Хорошо».

Может быть из-за той истории, когда Ёнхо исправил ошибку в системе регистрации курсов, Пак Чольун выполнил его просьбу. И программа была запущена еще раз.

«А, оу...» - негромко воскликнул Ёнхо, смотря на ошибки в окне багов. Возможно, Чольун услышал его и поэтому спросил:

«Что такое? Ты что-то узнал?»

«……»

«Что, что такое? Говори».

Протокола ошибок не было, но Ёнхо и без него знал, что за ошибка и как её устранить. Но ведь протокола не было. Если он так быстро проанализировал проблему и сразу скажет решение, они не поверят ему. Замявшись, Ёнхо ответил Чольуну

«Случайно, вы не забыли прописать запрос try-catch для протокола ошибок?»

«Ах!»

Воскликнули и менеджер Чхве, и помощник Пак. Оператор try-catch и был ошибкой выполнения запроса в коде Java. Когда происходит ошибка, то требуется процесс обработки ошибок. Если оператор catch забыл вывести ошибку, протокол не появится».

«Согласен. Это вполне возможно».

«Понятно, почему нет протокола ошибок, но программа не работает...»

Сказал менеджер Чхве на слова Ёнхо.

20 минут спустя Ёнхо дождался подходящего момента.

«Вот сейчас будет нормально, если я все расскажу».

У него уже было готово решение. Ёнхо выжидал время, чтобы о нем сказать. Острие камня встретится с долотом. (Корейский вариант поговорки: «самое высокое дерево поймает самый сильный ветер» Означает, что если будешь привлекать много внимания, то нарвешься на неприятности). Ёнхо хотел выглядеть, как человек с обычным способностями. Его навыки ограничивались должностью стажера и опытом военной службы (корейские мужчины должны нести обязательную военную службу).

«Помощник менеджера. Я думаю, что обнаружил проблему».

«Серьезно? Где?»

«В строке 302 в классе FileTransfer».

«Подойди сюда и расскажи».

Позвал Пак Чольун Ёнхо, который работал за своим компьютером. Подойдя к нему, Ёнхо продолжил объяснения.

«В строке 302 оператор try-catch пытается вызвать файл, но файл не найден».

«Серьезно? Могу я взглянуть?»

Чольун выбрал источники и вставил в запрос catch вывода ошибок в протоколе. И запустил программу. Программа вылетела, но протокол остался.

java.io.FileNotFoundException: /homes/salesdata (нет такого файла или каталога)

в java.io.FileInputStream.open (Native Method -метод с реализацией в неуправляемом коде)

в java.io.FileInputStream. (FileInputStream.java:106)

com.mirae.FileTransfer(FileTransfer.java:302)

Протокол ошибок был в точности такой, как сказал Ёнхо. Но это не означало, что проблема решена. Сейчас они просто узнали причину.

Глава 16. Ошибка доступа (2)

Менеджер Чхве подошел к нему и сказал:

«Это ошибка, которая возникает, когда файла не существует».

«Менеджер».

«Помощник менеджера Пак, вы проверили имя файла?»

«Уже проверяю».

«Это не могут быть правила для создания имен файла, они не меняются так внезапно...»

Менеджер Чхве наклонил голову, выглядя озадаченным. Они приближались к решению. Это была одна из причин, почему Ёнхо сделал это постепенно.

«Не получу ли я ненависть, если выделюсь?»

Взглянув на ситуацию по-другому, понятно, что причина ненависти Ким Вонхо заключалась в том, что Ёнхо выделился, когда это было необязательно. Если бы он этого не сделал, то не пришлось бы страдать из-за всех этих издевательств.

«Если и помощник Пак ополчится на меня, то у меня не будет выбора». Если он выделится, пока менеджер Чхве здесь, то Пак Чольун получит выговор. После этого помощник Пак, вероятно, станет относиться к нему враждебно. Ёнхо беспокоился об этом.

«Хм... Это... Я не могу сказать, несмотря на то, что я знаю решение».

Пока Ёнхо обдумывал это, Пак Чольун проверил правила создания имен файлов.

«Менеджер, с кодом проблем нет».

«Ах, тогда что, черт возьми, это за проблема?»

Менеджер Чхве разочаровано покачал головой. Нет проблем с правилом для создания имен файлов. Это означает, что файл, прописанный в программе, и файл в удаленном хранилище данных тот же самый.

«Менеджер, у меня есть вопрос...»

Осторожно сказал Ёнхо.

«Что такое?

«У меня есть аккаунт SVN, но нет права доступа».

«Что? Я слишком занят сейчас из-за этой ошибки, а ты спрашиваешь о таком!»

«Ну, мне нужен доступ для загрузки источников, чтобы исправить ошибки. Помощник менеджера Ким попросил меня сделать это в выходные...»

«Я займусь этим позже, когда разберусь с ошибкой».

Помощник Пак ответил с явным намеком на раздражение. И как только посмотрел на экран, он забормотал.

«Право доступа... Ах! Право доступа!»

Он внезапно встал, как будто что-то понял.

«Менеджер, разве это не из-за доступа к файлу?»

«Доступ?»

«Да. Если нет никаких проблем с именем, то остается только проблема с правом доступа».

Менеджер Чхве сказал с недоверием:

«Хей, почему проблема с доступом возникла так внезапно?»

«IDC не говорили, что собираются сегодня что-нибудь делать?»

IDC - аббревиатура от Internet Data Center (Центр обработки интернет-данных). Это место, где размещены различные серверы. Сервер, где был установлен ETL, также находился в IDC.

«Так из-за этого...»

«Сначала я проверю».

Помощник Пак зашел на сервер и проверил доступ к файлу.

-r – r — –

Доступ был установлен правильно. «r» значит доступ для чтения. Первая «r» означает, что читать может создатель файла, а вторая, что создатель группы.

«Что за черт? Доступ ЕСТЬ».

«Так это значит...»

Голос помощника Пака был наполнен радостью. Они, наконец, нашли решение.

«Что, что такое?»

«Наш аккаунт был исключен из корневой группы».

«Какой гад изменил это?» - кричал злой менеджер Чхве. Помощник Пак пробормотал сам себе, имея подозрения на этот счет.

«Кажется, как это сделал IDC».

Менеджер Чхве сразу взял телефон и позвонил диспетчеру сервера IDC.

«Сегодня проводили технические работы на сервере?»

-Да. Мы уведомили вас по электронной почте.

«Теперь у нас проблемы с нашим аккаунтом!»

- Проблема?

«Учетная запись, которую мы используем, исключена из корневой группы, поэтому программа не работает».

- Если бы вы прочитали почту, вы бы знали, что из-за соображений безопасности корневая группа в настоящее время не доступна. Поэтому мы отправили Вам письмо с просьбой изменить аккаунт.

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

«К... Когда вы отправили сообщение на электронную почту?»

-3 дня назад

«Понятно, я понял».

Закончив звонок, менеджер Чхве посмотрел на Чольуна и сказал.

«Эй, проверь почту. Проверь, отправляли ли они сообщение о технических работах».

Менеджер Чхве вернулся на свое место и тоже проверили почту. Он просмотрел все письма одно за другим.

«О? Помощник Пак!»

«Да, сэр».

«Черт, оно здесь». Письмо существовало. Даже в Excel было видно, что проблема с аккаунтом.

«Почему не мы смогли проверить это?»

«В любом случае уже поздно. Сначала запросим рут-аккаунт и дадим доступ к файлу, создадим другую группу и учетную запись, которая запускает программу ETL и аккаунт FTP».

«Немедленно».

После этого работа пошла быстро. Ёнхо даже не успел вмешаться. Проблема была решена. Время приближалось к 7-ми вечера.

***

«Хорошо поработали».

«Нет, сэр».

«Если бы не г-н Ёнхо, нам бы пришлось остаться на всю ночь».

«Нет, я ничего не сделал».

После того, как работа была закончена, менеджер Чхве похлопал Ёнхо по спине, сказав «хорошая работа». Помощник менеджера посмеялся и тоже сказал.

«Да. Если бы не г-н Ёнхо сегодня, нам бы понадобилось больше времени».

«Нет, помощник менеджера».

«Менеджер. Может, устроим небольшие посиделки? Мы тяжело потрудились, несмотря на выходные».

«Думаешь? Вы свободны прямо сейчас, г-н Ёнхо?»

«Да».

У него, в любом случае, не было девушки. Но проблема была в том, что из-за таких тусовок он все больше отдалялся от девушек.

Ресторан барбекю неподалеку.

После нескольких рюмок соджу (*традиционный корейский алкогольный напиток) началась пьяная болтовня. Первый начал менеджер Чхве.

«Ты на четвертом курсе университета?»

«Да, сэр».

«Тогда как ты попал в компанию, как наша?»

«Извините, сэр?»

«Мне интересно, почему парень с такими навыками пришел сюда».

Это была первая неофициальная встреча после назначения на должность. Кроме того, это был разговор с менеджером. Задать первый вопрос «почему вы пришли в эту компанию?»... Это немного шокировало Ёнхо.

«Ну, появилась возможность и...»

«Знаешь, эта компания среднего размера».

«Но раньше она была больше».

«Ну, теперь все не так».

Помощник менеджера, который жарил свиную грудинку, присоединился к разговору.

«Зачем вы говорите это новичку, менеджер?»

«Разве это не правда?»

«Это как говорить ему уволиться сразу после поступления на работу».

«Ну, он все еще стажер, поэтому у него еще есть возможность хорошо над этим подумать. Если он останется, то непросто будет уйти».

«Ох, менеджер... Ну а вообще, как вам работается, Ёнхо? Справляетесь?»

«Я стараюсь изо всех сил».

Ему задавали похожий вопрос во время военной службы.

«Солдат Ли Ёнхо. Это работа выполнима?»

«Да, сэр! Выполнима, сэр!»

«Серьезно? Ты выглядишь спокойным. Ладно, я скажу им, чтобы тебе дали больше работы».

Лучший ответ заключается в том, чтобы сказать, что он делает все возможное. Помощник Пак спросил Ёнхо, глядя на его лицо.

«Кажется, Ким Вонхо настроен против тебя».

«……»

Все в офисе знали об этом. Они просто не обращали внимание.

«Даже если ты расстроен, потерпи. Потому что у Ким Вонхо есть некоторая поддержка».

«Поддержка?»

«Он сын директора».

«Оу...»

«Вот почему мы притворяемся, что не знаем об этом».

Ёнхо этого не знал. Он думал, это нормально, что атмосфера офиса была такой унылой. Он думал, что общество, где происходят издевательства в офисе и никто не вмешивается, это норма. Но это еще не все. После этого менеджер Чхве поднял стакан и сказал.

«Ну, тогда давайте не будем здесь говорить о грустном!»

* Дзинь * (чокнулись стаканами, говоря «Выпьем»)

Соджу в стакане покачнулось. Раздутый живот менеджера Чхве и растущий живот помощника Пака тоже покачивались. В этот момент Ёнхо посетили странные мысли.

«Ах! Они работают сидя весь день, и пьют алкоголь и едят мясо всю ночь - и так они толстеют»!'

Я не хочу становиться таким. Пообещал он.

Глава 17. Регулярный мониторинг (1)

Утро понедельника.

Ким Вонхо посмотрел на Ёнхо.

«Ты все сделал, что я тебе сказал?»

«Я все сделал».

«Покажи».

Ёнхо открыл окно браузера и показал ему на экране то, над чем он работал на выходных.

«Хм...»

Не найдя ошибок после непродолжительного тестирования, Ким Вонхо не знал, что сказать. Он холодно посмотрел сначала на Ёнхо, а затем на экран.

«Какие-то проблемы?» - спросил Ёнхо, но Вонхо просто продолжал нажимать на клавиши, не отвечая.

«Нет, ты хорошо поработал. Идеально».

«……»

Ёнхо знал, что Ким Вонхо всегда говорил с сарказмом, поэтому он не стал отвечать.

«Тогда я дам тебе задачи на эту неделю. Мисс Сумин, вы тоже приходите в конференц-зал».

Загрузка...