Chat:Ru/2022-05-11
TheMusicalBreakfast_5e64: Привет. Я новичок в этом деле. Хочу попасть в сфере IT
Uljahn: что значит "попасть"? работу что ли найти?
TheMusicalBreakfast_5e64: Для начала освоить программирование, на javascript. Освежить полученные в универе знания) в 2013 закончил ВГУ факультет компьютерных наук. а после окончания ушел по контракту... и так завис тут на 8 лет, хочу свалить отсюда.
TheMusicalBreakfast_5e64: Жить свободной жизнью и развиваться
Uljahn: тут жизни нет, одно выгорание
TheMusicalBreakfast_5e64: Хм...почему?
TheMusicalBreakfast_5e64: у программистов хорошие зарплаты...да и работать можно дистанционно откуда угодно.
Uljahn: а ты не думал, почему у них хорошие зарплаты?
TheMusicalBreakfast_5e64: наверно потому что мало хороших специалистов..
Uljahn: но плохих-то полно (пол Индии), почему они не могут стать хорошими?
TheMusicalBreakfast_5e64: Может нет мотивации, их все устраивает и нет причин для дальнейшего саморазвития.
Uljahn: я лично думаю, это потому, что мало у кого есть нужная степень аутизма/интровертности, чтобы заморачиваться на абстракциях
wlesavo: ладно тебе человека демотивировать Uljahn, раз учился в свое время интереса и способностей хватало, после армии конечно тяжеловато наверное будет, но в целом осуществимо
Uljahn: ну дай поворчать-то :)
TheMusicalBreakfast_5e64: У меня есть мотивация, я очень хочу уйти со своей службы... и заниматься чем то полезным и развивающим, а не деградировать здесь...
Uljahn: нашёл тут в яндексе вакансию с неполной занятостью + удалёнка, мониторить поисковую выдачу по кодерским вопросам, прислали тестовое задание - на поиск простых чисел, двоичный поиск, двоичное дерево распарсить, регулярку составить, SQL-запрос написать...
wlesavo: прикольно
wlesavo: но в яндексе конечно любят тестовые, там же еще вроде своя платформа как раз под эти тестовые и под контесты
TheMusicalBreakfast_5e64: Вы то как устроены в жизни?) ЗП хорошие у вас?
Uljahn: у меня маленькая, но мне хватает, и, главное, времени много свободного выходит
Uljahn: успеваю тут модерировать :)
TheMusicalBreakfast_5e64: маленькая - у всех понятие разное)) кому то и 120 тыс руб маленькая)
TheMusicalBreakfast_5e64: ну не думаю что за 30 тыс будет кто то заморачиваться
Uljahn: я не кодером работаю, поэтому обычная "маленькая", как у нормальных людей, а кодинг у меня - хобби
TheMusicalBreakfast_5e64: хобби могло бы приносить хороший доход)
Uljahn: тогда бы это было не хобби
TheMusicalBreakfast_5e64: :smile:
TheMusicalBreakfast_5e64: согласен
Uljahn: у детей так воспитывают отвращение к музыке, когда родители пихают их в музыкальную школу против воли, тут тот же принцип - когда через "надо", то никакого кайфа уже нет
wlesavo: это да, много знакомых было кто хотел вкатиться просто потому что зарплата и условия труда, в итоге либо не получалось, либо не вытягивали. без настоящего интереса к процессу тяжело очень
wlesavo: даже студентов обычно не берем если они сами в свободное время что-нибудь не прогают
TheMusicalBreakfast_5e64: да, такие зарплаты платят неспроста, реально сложно все это освоить практически с нуля.. Но мне возможно в этом повезло, у меня есть тяга и интерес, да и наставники-помощники имеются.. Мне интересно во всем этом разбираться..хоть и тяжело, но как говорится без труда не воливишь и рыбку...
Uljahn: ну, если база есть, то надо освежать и практиковаться
TheMusicalBreakfast_5e64: да, 5 лет профильного образования.
Uljahn: а почему js?
Uljahn: в веб-разработку хочешь?
TheMusicalBreakfast_5e64: 1.5 года до конца контракта, думаю может получится ха это время хоть как то осовится
TheMusicalBreakfast_5e64: да веб разработку
wlesavo: в этом смысле codingame полезное место, но для веб разработки важнее рабочие проекты и знание фреймворков популярных хотя бы на базовом уровне
TheMusicalBreakfast_5e64: фронтенд бэкенд
TheMusicalBreakfast_5e64: angular?
Uljahn: норм, только тут задачки на алгоритмы в основном, которые в вебе почти не встречаются
TheMusicalBreakfast_5e64: да, буду изучать по мере возможности. я зашел чисто посмтреть что к чему тут, тут можно поразвивать логику и практику в кодинге
wlesavo: из полезного здесь можно неплохо к тестовым заданиям легкого-среднего уровня подготовиться
TheMusicalBreakfast_5e64: Мне тоже мой знакомый говорил нужно больше практики а не чтение книг и прочей литературы...пиши, пиши, пиши...чем больше тем лучше, а разбираться будешь во время кодинга,
Uljahn: или ботов писать - это как полноценный проект получается
TheMusicalBreakfast_5e64: )))Эх как мне далеко до этого всего))
Uljahn: не правда
TheMusicalBreakfast_5e64: знаете что я понял, что здесь больше нужна логика чем знание синтаксиса языка
wlesavo: да, с ботами много вопросов и архитектурных и алгоритмических приходится решать, и проекты полноценные по тысяче строк
TheMusicalBreakfast_5e64: но я все равно сначала почитаю https://learn.javascript.ru/, и только потом буду что то пробывать
Uljahn: никто же не требует с первого раза написать идеально, чтобы всех порвать, можно начинать с простого
TheMusicalBreakfast_5e64: конечно
Uljahn: нужно быть готовым впитывать море инфы, да на английском
TheMusicalBreakfast_5e64: да да)) я это уже понял давно))) английский это вторая так сказать сложность)
TheMusicalBreakfast_5e64: но ничего, путь одолеет идущий
TheMusicalBreakfast_5e64: есть же компании которые берут джунов и их обучают, зп конечно не большие но для начала я думаю было бы норм и опыт и стаж..
TheMusicalBreakfast_5e64: Кстати, подскажите какие параметры использует метод console.log('0 4'); в Mars Lander - Episode 1
wlesavo: определенный уровень у джуна все-равно должен быть, но конечно требования относительно адекватные обычно
TheMusicalBreakfast_5e64: не могу понять что за 0 4, можете глянуть?
BorisZ: на хабре были статьи на эту тему, что-то типа роадмап в ьфронтед разработчика
BorisZ: или бэкенд или какие-то там есть еще )
BorisZ: там конкретные темы которые надо изучать и порядок примерный
wlesavo: 0 4 это параметры которыми ты общаешься с игровым миром, команды кораблю, переведи описание в транслейте, там все есть
TheMusicalBreakfast_5e64: Да я читал, но там не написано ничего про console.log
BorisZ: тут когда нажимаешь на кнопку плей, запускается твоя программа, и одновременно в пару к нему - рефери для этой задачи
BorisZ: рефери берет твои команды, выполняет их и выдает тебе что получилось в итоге
BorisZ: твоя программа общается с режери через стандартный поток ввода - вывода
BorisZ: именно то что ты запишешь в консоль и прочитает рефери
BorisZ: а твои входные данные рефери пишет тебе в stdin
TheMusicalBreakfast_5e64: это понятно, меня интересует что именно за параметры 0 и 4
BorisZ: угол наклона и мощнось двигателя
TheMusicalBreakfast_5e64: может я не корректно задаю вопрос
TheMusicalBreakfast_5e64: понял. попробую поменять угол измениться ли он.
TheMusicalBreakfast_5e64: действительно))
BorisZ: для первого эпизода он всегда 0
BorisZ: но пробовать это самое важное )
TheMusicalBreakfast_5e64: и горизонтальная скорость сразу появилась)
BorisZ: если проблемы с англ, то в хроме есть встроенный перевод, вполне адекватный, суть можно понять
TheMusicalBreakfast_5e64: так теперь мне понятно что за параметры (именно это я и хотел изначально узнать) теперь вопрос в том почему именно эти параметры заданы? (как понять что это именно они, где это определено?, почему это именно угол и мощность, а не скорость или уровеь топлива)
TheMusicalBreakfast_5e64: С переводом проблем нет, я пытаюсь сам переводить, если не понимаю использую переводчик, надо привыкать к языку
BorisZ: в условиях задачи написано, это то что ждет от тебя рефери данной конкретной задачи
BorisZ: в других задачах будут другие входные и выходные параметры,
BorisZ: Input for one game turn Output for one game turn - в этих разделах описано
TheMusicalBreakfast_5e64: ок, спасибо. понял. увидел
TheMusicalBreakfast_5e64: что у нас получается - пока вертикальная скорость меньше или ровна -40м/с у нас угол наклона в 0 градусов и мощность 4, если выше (в данном случае ниже так как отрицательная скорость) -40, то параметры ставим по углу - 0, по мощность - 0, верно?
TheMusicalBreakfast_5e64: соответственно скорость держим в -40м/с
Uljahn: там хитрость в правилах, что мощность меняется не более, чем на единицу за ход, т.е. если была ноль, а ты задаёшь 4, то на следующий ход тяга станет 1, ещё через ход 2 и т.д.
Uljahn: для компенсации притяжения нужна тяга 3.711 (гравитационная постоянная на Марсе), т.е. между 3 и 4, тогда скорость не будет сильно изменяться
Uljahn: но для первого эпизода можно попробовать 0 и 4 с условием для скорости, главное - научись выводить дополнительные данные в дебаг с помощью console.error
Uljahn: промежуточные значения переменных и т.п.
TheMusicalBreakfast_5e64: да, я с этим сталкивался при отладке кода в браузере Хрома, очень удобно, ты видишь каждую итерацию и значения переменных
Uljahn: этот инструмент многие новички тут сильно недооценивают
Uljahn: по мне, так кроме дебага больше ничего не надо, сообщения об ошибках гуглятся, а там и в тонкости начинаешь вникать
Uljahn: как и что происходит "под капотом"
TheMusicalBreakfast_5e64: да, мне это реально помогало при отладке.
TheMusicalBreakfast_5e64: понимаешь как ты сказал что происходит под капотом.
TheMusicalBreakfast_5e64: что откуда берется и что куда кладется)
Uljahn: самое главное, помогает вскрыть моменты, когда ты думаешь одно, а на практике происходит другое :)
TheMusicalBreakfast_5e64: как работает console.error я пока не понял, раскоментил его и что дальше выдает мне красное сообщение Debug message при не выполнении условия и все
Uljahn: вместо Debug message надо вставлять свои переменные, которые хочешь отслеживать
Uljahn: они в консоли появятся под реплеем
Uljahn: т.е. всё, что печается в error stream (с помощью console.error), рефери игнорирует, а то, что печатается в output stream (с помощью console.log), рефери воспринимает как команду
Uljahn: или одну из команд, т.е. можно задать несколько команд уже на первом ходе, но рефери будет их последовательно отрабатывать по команде за ход
Uljahn: возникнет т.н. рассинхрон
Uljahn: новички часто сталкиваются с этим, когда у них в игровом цикле вместо одного вывода срабатывает два или больше
TheMusicalBreakfast_5e64: Ага, все увидел, действительно. для примера задал параметры X Y, и на каждом шаге вижу их значения
TheMusicalBreakfast_5e64: Класс))
Uljahn: :thumbsup:
TheMusicalBreakfast_5e64: спасиб. ну реально интересно, правда времени много надо)
TheMusicalBreakfast_5e64: а так думаю потихоньку чего то и можно будет добится
Uljahn: хз, я за 7 лет тут только один язык выучил, ну и английский в тонусе поддерживаю
Uljahn: но мне за 40 уже, да и с мотивацией плохо, уже не вставляет как раньше
Uljahn: Automaton2000: во многих знаниях - многие печали
Automaton2000: в реальности пид регуляторы активно для термоконтроллеров применяют активно, только оттуда про них и знаю. вообще их фишка в достаточно ...