четверг, 14 августа 2025 г.

Собес с G5 Entertainment

Собес с G5 Entertainment

yurembo

Я периодические прохожу собесы в разные компании. Обычно я об этом не пишу, потому что ничего интересного не происходит. Так как большинство компаний не дают никакую обратную связь. Однако в прошлый раз произошел вопиющий случай, компания дала отчет по собесу (но не сразу), хотя бы из-за этого она превосходит остальных. Но не будем заранее хвалить ее, так как отчет получился скорее надуманным. И молчать относительно собесов мне уже надоело.


Итак, в июле я прошел собес на позицию C++-программиста в компании G5 Entertainment. Интервьюрер пообещал отчет. Жду неделю, две. Эйчарка не отвечает в Телеграмме. Нашел ее емайл. Отправил письмо. Она: «Наш специалист был на больничном. В ближайшее время составит отчет, отправит.»


Через несколько дней приходит письмо со стандартными фразочками. Я говорю: «И это все, на что он способен?» Проходит еще несколько дней. И в отчете: «Вы неправильно рассказали про ключевое слово override». Я тут же на эмоциях отвечаю: "Ваш специалист никчемный болтун и пиздабол".


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


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


По пунктам расскажу об их претензиях, и какие еще ошибки они мне нарисовали:

1) возникли сложности с описанием действия модификаторов доступа при наследовании (по умолчанию);

a) Я ему подробно описал действия модификаторов доступа. Только забыл их использование по умолчанию при наследовании. Потому что всегда задаю их явно. Чтобы читающему мой код было удобнее сопровождать.


2) определение статического метода не удалось сформулировать сразу;

a) На этот вопрос я ответил не сразу. Понадобилось несколько секунд, чтобы вспомнить. Но ответил-то я правильно. Потому что цитирую Мэйерса.


3) вопрос по работе с константными и неконстантными методами вызвал затруднения;

a) Чушь! Я сразу ответил на этот вопрос! Со всеми пояснениями. Отвечая на такие вопросы, цитирую Скотта Мэйерса. Современное поколение программистов его не читает? Это же не устаревающая истина! Скотт Мэйерс, кстати, у меня в переписке. Душевный человек.


4) определение виртуального метода, а также принцип действия ключевого слова override и пример его применения вызвали трудности.

a) Чушь! Не было никаких трудностей! Я сразу ответил на этот вопрос. Также упомянул стандарт языка, в котором это слово было введено. Более подробно этот необоснованный наезд рассмотрен выше.


Кроме того были вопросы:

1) Как выкинуть исключение?

a) На что я ответил: с помощью throw.


2) Как убрать константный признак?

a) Я ответил: есть ключевое слово mutable.

        b) Я считаю, что если надо нарушать константнось, то всё это неправильно спроектировано. Гнать в шею надо тех, кто это задумал. Очень близорукое видение проекта.

c) Еще для удаления константности значения можно использовать шаблонную функцию std::remove_const, появившуюся в C++11. Но об этом на собесе я не сказал, так как интервьюрера устроило слово mutable.


3) Какие инструменты вы используете для оптимизации работы с кодом?

a) Об этом можно целую статью написать, какие я использую инструменты для оптимизации работы с кодом. На собесе я остановился на двух плагинах для Visual Studio: Visual Assist и Deleaker.


Кого они пытаются нанять? Таких же дураков, как сами?

От этого становится понятным застой, а местами регресс в области современного программного обеспечения.

Гнать в шею надо этих недоумков! 


Время игр

Книга Андрея Подшибякина «Время игр»

Yurembo von Yazev

Наконец-то моё внимание дошло до этой книги. Она была издана в 2020-м году издательством «Эксмо», так сказать, в мирное время: до пандемии Covid-19 и мировых конфликтов. И автор, говоря: «Русские игры», — подразумевал игры, созданные в республиках бывшего Советского Союза, будучи уверенным, что никого не оскорбит и не обидит своими словами.

 

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

 

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

 

В книге в подробностях рассматриваются процессы разработки следующего списка игр:

  1. Parkan

  2. Вангеры

  3. Дальнобойщик, Дальнобойщики 2, Дальнобойщики 3: Покорение Америки

  4. Аллоды: Печать тайны

  5. Корсары: проклятие далеких морей, Корсары II: Пираты карибского моря

  6. ИЛ-2: Штурмовик

  7. Операция Silent Storm

  8. Периметр

  9. S.T.A.L.K.E.R.: Тень Чернобыля, S.T.A.L.K.E.R.: Чистое небо

  10. Cut the Rope

  11. World of Tanks

  12. Всеслав Чародей

  13. Приключения капитана Блада, Axle Rage / Rage Rider

  14. Солнце

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

 

Судя по годам выхода указанных игр, «золотой век» русских игр по мнению Андрея Подшибякина начался в середине 90-х и закончился в 2010-м году. С началом этого периода я согласен, однако, по-моему, конец наступил раньше, чем описывает Андрей. После Сталкера по-настоящему «русских игр» не было. Изменилась технология доставки и потребления контента. Вместе с ней закончилась и эпоха русских игр. Для меня настоящие игры – это синглплеерные игры, которые устанавливаешь на свой компьютер / консоль и играешь в одиночку без сетевых друзей и врагов, без донатов и платежей. Между тем на протяжении своей карьеры мне больше доводилось работать над многопользовательскими онлайн проектами, поскольку моя карьера началась уже на исходе «золотого века».

 

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

 

В следствии этого, из приведенного в книге списка можно с уверенностью исключить World of Tanks – многопользовательскую онлайн игру и Cut the Rope – мобильную игру, потому что они по определению не попадают в «золотой век».

 

Между тем, хотелось бы продолжения рассказа о «золотом веке» русских игр. Ведь, попавшими в книгу тайтлами, список игр «золотого века» не ограничивается. В список, к сожалению, не попали Ex Machina от Targem Games, Мор Утопия от Ice-Pick Lodge и многие другие.

 

Об авторе. На момент написания книги (2019-й год) Андрей Подшибякин являлся креативным директором компании Xsolla. В прошлом он был редактором многих периодических изданий, в том числе, на рубеже веков такого знакового игрового журнала, как Game.exe. В книжных интернет-магазинах я иногда встречаю полноформатные художественные книги Андрея.

среда, 13 августа 2025 г.

Мега-велозагон до деревни Казаево II

Мега-велозагон до деревни Казаево II

Осмотр территорий Чусовского района

Юрий «yurembo» Язев
независимый игродел

Этим велозагоном я повторил путешествие трехлетней давности (https://yazevsoft.blogspot.com/2022/09/yurembo.html). Поэтому подробно описывать окружение не буду. Ничего по-большому счету не изменилось. Новых зданий на пройденном пути не появилось, новых магазинов не открылось. Ещё бы, — деревня.


г. Чусовой, Аллея молодежи

Между тем в этот раз у природы было другое настроение. Три года назад во время поездки, по-сути, была уже ранняя осень. Листва на деревьях желтела, на полях лежали стога сена. Температура воздуха была комфортной 12*. В этот же раз — разгар лета – последний день второго летнего месяца. На улице жара — 26*, вместе с тем облачное небо немного сглаживало зной. На полях вовсю зеленеют посаженные культуры.

 

Стартанул, как обычно, с Красного поселка. В этот раз не стал объезжать по Северному коридору, рванул напрямую под гору — одно из немногих мест, где можно разогнаться до 60 с копейками км/ч, через Лисики до отворота с пермской дороги на деревню Саламатово. Сделал остановку. Передохнул. Поехал в гору по брусчатке. После подъема и поворота направо следует относительно прямая дорога с небольшими спусками и подъемами. Так как на этом отрезке скорость уже значительная: 15 км/ч — по прямой, 30 км/ч – под горку и 7 км/ч — в горку, от брусчатки в руках ощущается каждый камень. Что заставило меня настроить переднюю вилку помягче.

 

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


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

За следующим поворот, двигаясь вдоль берега реки Чусовой по улицу Береговой, я въезжаю в село Верхнее Калино.

Дорога пролегает по краю села, поэтому я решил заехать внутрь него, посмотреть что в там имеется. Фоток в нем не сделал, но впечатлился. На въезде находятся два магазина. Чуть поодаль справа большой Дом культуры, который приютил множество других организаций: сельская администрация, почта России, Сбербанк. Напротив — слева находится детский сад. Чуть дальше – Верхнекалинская школа.


Рядом с ней стоит желтый автобус для сбора детей на уроки и развоза обратно по ближайшим деревенькам. Эта переулочная асфальтированная дорога, по которой я двигаюсь, разделяет деревню на две почти равные части. Она пролегает дальше, справа вразумительная дорога отсутствует, слева — улица Гагарина тоже асфальтирована. Еду вперед. Дорога поворачивает налево и делает обход вокруг аккуратного скопления не менее аккуратных одноэтажных каменных домиков. Этот порядок радует глаз. На расстоянии нескольких десятков метров старушка ругает свою корову, хлыщит ее кнутом. Вернувшись по улице Гагарина на проселочную дорогу, я поехал на улицу Береговою – вон из Верхнего Калино.

 

Повернув на запад, через некоторое время я въехал в деревню Мичурино.



После Мичурино почти сразу следует совсем небольшая деревня Нижнее Калино в сравнении с Верхним.

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

yurembo

Наконец, я добрался до деревни Казаево.

 

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

 

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

 

На обратном пути сначала крутил педали бодро, но, доехав до Мичурино силы уже начали кончаться, поэтому впоследствии приходилось часто делать остановки для отдыха. Временные промежутки стоянок тоже увеличились.

 

Возле отворота на Саламатово сделал фото Чусовской безмятежности. Пейзаж, запечатленный на фото, похож на фоновую картинку Windows XP.

Чусовская безмятежность

Преодолев подъем от Саламотово, сделал привал на автобусной остановке.

На этом месте у меня закончилась питьевая вода во фляжке. Тем не менее расстояние до дома было еще приличным. Ближайший магазин — на вьезде в город, в начале Лисиков. А оттуда уже рукой до дома подать. На самом деле, нет.

 

Продолжая свой путь дальше по спускам и подъемам, я задумался об устройстве трансмиссии велосипеда. По очень скромной оценке существуют два вида переключения скоростей на велосипеде, которые были у меня, по крайней мере. На моем первом горном велосипеде в системе (передняя звездочка) было три звездочки, а в кассете (задняя звездочка) было восемь звездочек. Что в общем количестве составляет 24 скорости. Несколько лет спустя, я купил новый горный велосипед, так как первый начал приходить в негодность: механизм переключения скоростей стал плохо работать и в краевые состояния перестал переключать. Под веянием современных трендов я купил велосипед с одной звездочкой в системе и восемью — в кассете.

 

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

 

Я много думал об этом: может, старею? И это тоже. Но очевидно, при большем количестве звездочек, большая комбинация скоростей, из которых можно подобрать подходящую для разных подъемов.

 

Думал я об этом, размышлял, и, вот, вьехал в город. Пересек поселок Лисики, проехал микрорайон Углежжение (это площадь от поселка Лисики до реки Усьва). Он прямо-таки преобразился. Если раньше по сторонам дороги виднелись только шлаковые насыпи, непонятно кому принадлежащие, а главное зачем здесь находящиеся. То теперь, все площади обнесены заборами, за которыми стоят облицованные и облагороженные здания, в которых по-видимому находятся офисы управляющих работами фирм. Все это стало выглядеть цивильно.

 

После моста через Усьву я проехал по улице Южной, далее поднялся ко Дворцу Культуры и расположился на лавочке у фонтанчика.

До пункта назначения мне остался еще один рывок. Уже без сил, преодолев железнодорожный путь, я доехал до подстанции ПермЭнерго. За ней передо мной выросла краснопоселковская гора (на самом деле, она уже давно здесь стоит). Но у меня уже не было сил выжимать эту гору, поэтому я пошел рядом с велосипедом. После подъема в гору и, проехав пару улиц, я был на базе.

 

Итого. Велозагон у меня занял приблизительно шесть часов и составил 44 км. Самым трудным отрезком стала заключительная часть пути: подъем с улицы Южной ко Дворцу и подъем от электростанции на Красный поселок.