• ,

Кто "ЗА" чтобы после большого количества неудачных попыток решения задачи получить в подсказку один из тест-кейсов который не может пройти программа.

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

31 комментарий

maks1m
Я не знаю сколько активных пользователей JavaRush но, возможно, если многие из нас поддержат эту идею то создатели JavaRush сделают нам эту маленькую но такую важную фичу.
RocK_AngeL
Можно даже не тест кейсы, а для начала отрывки тех. материла, который необходимо использовать в задании
tanzwud
Не пойдет. Народ начнет подгонять решение под тесты.
maks1m
То-есть подгонять?
Я имею в виду вот что:
в реальной жизни всегда есть возможность уточнить задачу, здесь же такой возможности нет
поэтому чтоб не биться головой об стену после 10, 20, N неудачных попыток, мы получи еще один
тест кейс который мы не прошли.
Это будет аналогично подсказке которую в реальной жизни можно получить.
tanzwud
Я так понимаю у вас проблема не решить задачу а понять ее условие. В этом случае ответ сервера почему задача не прошла не самое лучшее решение проблемы, как минимум. Так понимаю в юнит тестах разбираетесь. Если где то застряли с задачей, всегда можно все самому протестировать, благо все задачи разбиты на части. Вот так по частям и тестировать. И вам больше опыта и не будет возможности «срезать углы»
maks1m
Когда условие задачи не до конца понятно, и уточнить это условие нельзя, это вылазит в перебор всевозможных вариантов чтоб угадать, а что же на самом деле имелось в виду, вот здесь то мне и хотелось бы увидеть подсказку по условию, потому как в реальной жизни все это быстро уточняется, а здесь сидишь часами и играешь в экстрасенса.
И когда на решение задачи уходит 20 попыток, по причине того что, например, пробел нужно было воспринимать за слово, ну это, как по мне, перебор.
timurnav
как правило, в такой ситуации как ты описываешь, достаточно просто зайти сюда и найти в поиске нужную задачу, почитать что люди пишут — поймешь сразу. у меня пока еще не было такой задачи, которую я не смогу решить из-за непонятного условия.
maks1m
Поверь что не всегда этого достаточно. Иногда бывает что жуть как залипнешь с какой нибудь вроде простой задачей и просто приоходится забивать на нее.
timurnav
  • timurnav
  • +1
  • Комментарий отредактирован 2015-05-18 21:41:15 пользователем timurnav
я помню задачи, условие в которых было откровенно неправильно поставленным, но там нужны не подсказки, а корректировка в условии, в других же случаях, когда ты просто что-то не знаешь, это как раз и требуется подержать некоторое время задачу в голове. это наверно самое лучшее, что в курсе есть много задач, решение которых нетривиально… и для них нужно либо очень долго копаться в документации, чтобы найти как-нибудь метод из стандартной библиотеки, либо просто взорвать себе мозг раздумьями. тут как раз важно понять всё самому — это как раз и набивает скилл программирования, а не умение исхитриться и решить задачу за наименьшее число попыток.
timurnav
Прочитал ветку с комментариями до конца и понял, обсуждать дальше нет смысла)
maks1m
А здесь никто никого не переубеждает, голосование для того и есть чтоб увидеть каких мнений больше.
mrzzzio
Пусть подгоняет. Здесь не школа, учиться не заставляют и за нечестно решенные задачи оценок не ставят. Если человеку после подсказки станет что то понятно и он решит задачу, это будет ему плюсом. Если же человек без раздумья, просто подгонит решение под тест, то максимум чего он добьется — это чуть лучшая статистика, а в голове тем не менее ничего не останется.
maks1m
К чему вообще эта твоя реплика «Здесь не школа, учиться не заставляют»??
По твоему я заплатив деньги, читая лекции и решая задачки делаю это под дулом пистолета или для каких нибудь других целей кроме как получения знаний?
Я что предлагаю не честный вариант решения задач?
У меня 10 лет стаж программирования только в другой сфере и поверь я знаю про что пишу и не нужно мне говорить про бездумное подганяние задач потому что я знаю как это работает на практике в реальной жизни!!!
mrzzzio
Воу-воу, полегче. Вдумчиво прочитай мой коммент и ты увидишь, какую мысль я пытался донести.
maks1m
Я то вдумчиво прочитал твой коммент, а вот ты видимо мою идею так и не понял.
Я не настаиваю, для этого и сделал опрос.
Просто на такие задачи буду дальше забивать, а не сидеть часами в угадайду играть.
maks1m
Да и сейчас тоже часто приходится просто подганять задачу под решение в силу выше описанных проблем. Так что ничего в худшую сторону не изменится.
mrzzzio
Ок, попробую по-другому. Товарищ tanzwud написал:
Не пойдет. Народ начнет подгонять решение под тесты.

Т.е. вместо того чтобы думать и получать знания, начнется тупое набивание статистики. Я ему ответил что пусть народ подгоняет, далее по тексту. И кстати, я проголосовал «За», в твоей голосовалке. Однако, огорчу тебя, даже если проголосуют все участники проекта, а не 25 человек, никто ничего не будет делать, т.к. администрация ресурса подзабила на проект и просто рубит бабло.
tanzwud
Уважаемый вы так пишете будто хвалитесь чем-то. Если администрация решит упростить решение задач путем вывода любой информации почему непроходит то в итоге будущие студенты данного курса начнут покупать решения за деньги. Никто учится не заставляет. Давайте сразу по 100 рублей за решение брать и делов.
Мне как и многим другим посчастливилось пройти большую часть задач когда все это дело только тестировалось, не было даже этого форума. Когда же он появился не много тут было сообщений. Помню было народ кричал что условия неверные или тесты кривые. Если это было так то все исправлялось.
Я вот к чему все это пишу. Многие кто начинал свой путь через javarush уже давно сменили работу и работают не только на позициях junior/middle. Создатели ресурса правильно сделали что не ввели явные объяснения почему не проходит тест и другие фичи которые бы упростили прохождение курса. Я лично знаю десяток пользователей которые стали работать програмистами после прохождения только части задач. Может быть администрация забила на апдейты, мне про это ничего не известно. Но решение изначально было правильное, касаемо данного поста, оно заставляет чуть больше думать, да тратить больше времени. Но не стоит забывать, цель курса подготовить вас к работе-собеседованию а не прошел и забыл.
maks1m
Чем это я хвастаюсь?
Причем здесь покупать решение?! Вас куда то не туда клонит.
Этот форум был создан очень очень давно и на тот момент было меньше 20 уровней, сейчас же 40, тоесть тогда было меньше половины чем сейчас.
Это нормально когда проект тестится и все наступают на грабли но процесс идет вот и мое предложение относится к улучшению, а не к чему либо что там другие подумали.
Я сам залипаю на редких задач но когда это случается то это просто бесит в силу того что условие очень очень мутное, а мутные условия развивают только экстрасенса и брутфорсера, но никак не добавляют знаний. Я и сам работу давно нашел но просто хочеться дойти сервис до конца. Даже сейчас с одним тесткейсом для задачи у кого не выходит с решением будет заниматься перебором, а так человек увидит дополнительную информацию и в следующий раз будет более внимательным и сообразительным, подсказки для того и существуют чтоб развивать и показывать правильный путь.
maks1m
МММ, тогда прошу прощения, я был уверен что ты меня прокомментировал, а не его :(
Reafav
Я обеими руками за. И вот почему:
Сейчас застрял над задачей level18.lesson10.bonus03. Валидатор пишет «не компилируется на сервере».
У меня, естественно, прекрасно компилируется и работает согласно условию.
Создал топик на help.javarush.ru Your text to link... но помощи нет.

При этом предыдущую абсолютно аналогичную задачу bonus02 у меня приняло с первого раза!
Вывод — кривые тесты!
И такое встречается не так уж и редко. Чем выше уровень, тем чаще приходится играть в «угадайку» — локально все работает, а валидатор не принимает.
Reafav
В общем, с задачей помогли. Проблема была в используемой мной Java8. Тогда как нужно использовать 7ю.
Но я все равно поддерживаю данную идею.
maks1m
Вот и я к тому, что никто не идеален и создали JavaRush при таком огромном количестве задач иногда могут недоглядеть или дать маху и такие случаии есть. Понятно что из общей массы кто то найдет в чем был косяк и тогда другие подтянутся, но мы же здесь в первую очередь получаем знания и паралельно практикуемся, в этом самый огромный плюс этого прекрасного сервиса.
Но уверен что у многих тоже было когда материал усвоил, а на задаче залипаешь не по причине отсутсвия знаний, а потому что логика у задачи вообще странная и узнать об этом можно только из форума где уже люди шишки понабивали и то это не всегда возможно.
У меня висит несколько задач с которыми фиг знает что не так.
Мне надоело убивать на них время и набирать рекорды попыток и поэтому я просто двигаюсь дальше, а дело всего лишь в более четком понимании задачи.
hubert
  • hubert
  • +2
  • Комментарий отредактирован 2015-05-18 14:24:23 пользователем hubert
Наличие людей, которые и без подсказок проходят ВСЕ задачи, лично для меня говорит о том, что причину нужно искать прежде всего в себе, а не в окружающих.
Ну и по теме топика: на первых уровнях добавили тестовые значения с подсказками, типа
public static void main(String[] args) throws Exception
    {
        if (min(5, 8) != 5)
        {
            System.out.println("1) Неправильно для a"); //вывод=5
        }
        if (min(-2, -5) != -5)
        {
            System.out.println("2) Неправильно для отрицательных чисел"); //вывод=-5
        }
        if (min(10, 5) != 5)
        {
            System.out.println("3) Неправильно для b"); //вывод=5
        }
        if (min(5, 5) != 5)
        {
            System.out.println("4) Неправильно для всех равных чисел"); //вывод=5
        }
    }

Это задача на нахождения минимума.
А теперь угадайте, насколько меньше стали задавать вопросы по ней?)
Весь топик можно свести к банальному «Хочу меньше думать, дайте мне 1 кнопку „Сделать все за меня“». А это замкнутый круг. И после таких подсказок у многих даже с вышеуказанной задачей возникает множество проблем и головной боли…
maks1m
Хуберт, спасибо тебе огромное за отличный сервис но неужели после всех моих комментариев ты думаешь что я хочу одну кнопку которая решит все за меня. Да люди проходят задачи но путем набивания шишек и потом делятся этим с другими. Просто бывают реально невнятные условия и когда методом перебора люди находят решения и пишут об этом на форуме то многие соглашаются что это довольно не логично. И я не прошу ничего волшебного просто дополнительную наводку после 10-15-… неудачных попыток. Ну дело конечно твое, а так будет у меня просто пару висяковых задач.
Bessus
Если взять, как пример, достаточно популярный ресурс www.codewars.com, то там заимплеменчена достаточно хорошая система: часть тесткейсов открыта плюс к каждому тесткейсу прикреплен комментарий, который отображается при тест фейле.
При реальном кодинге, случаи, когда программа «тупо не работает» случаются довольно редко, как правило программист знает что и где валится (или ему об этом говорит тестер), и у него есть начальная подсказка, где искать ошибку (хотя бы начальная точка, от которой начинать дебаг). А когда ты получаешь «программа не прошла тестирование» хотя с твоей точки зрения код на 100% рабочий, то просто впадаешь в ступор. С точки зрения Agile — это очень не эффективная работа, программист должен на 100% понимать, как программа должна работать правильно. Можно конечно все сбросить на то, что мол программист тупой, но, возможно, в ряде случаев дело не в совсем точно поставленной задаче/условии.
Лично я порешал большую часть задач без подсказок, но были случаи, когда я тратил большое количество времени на относительно тривиальную задачу, потому что попросту не мог понять, чего же точно от меня хотят и что в моем решении не так.
maks1m
Спасибо за ссылку, отличный ресурс :)
Ты там уже далеко дошел?
Reafav
  • Reafav
  • +1
  • Комментарий отредактирован 2015-05-18 23:04:40 пользователем Reafav
Какая то подмена понятий происходит…
Вот некоторые говорят, что для помощи есть форум, а тесткейс — это подсказка и т.д.
Так вот я на форум стараюсь вообще не заходить, только в самых-самых крайних случаях. Потому что на форуме сразу видно чужой код и иногда фактически происходит частичный плагиат решения. Заход на форум — это и есть худшая подсказка, потому что за тебя уже все решили или тебе прямо говорят — тут не правильно.
Меня это не устраивает. Я хочу сам от начала и до конца решить каждую задачу.
Когда человек после 10 попыток получит тесткейс, то он не пойдет на форум «подсматривать», а сам разберется с тестом и исправит программу. Не это ли лучшее обучение, частично воспроизводящее к тому же реальный процесс разработки.
Я себе так это представляю. Поправьте, если я ошибаюсь…
eniqen
  • eniqen
  • -3
  • Комментарий отредактирован 2015-05-21 04:18:51 пользователем eniqen
бред для тех кто не хочет разбираться и не может погуглить, либо передохнуть пару деньков и попробовать написать снова но по другому(помогает проверено). Против
maks1m
И что ты нагуглишь? Нагуглить можно использование технологий но об этом речь не идет, речь идет об логике задачи которая не всегда логична и понятна. И предложение сводится к аналогу TDD.
eniqen
  • eniqen
  • -3
  • Комментарий отредактирован 2015-05-21 06:32:15 пользователем eniqen
решение определенной проблемы можно нагуглить, если ты 10 раз долбишь принятие одного и того же решения то тебе стоит об этом задуматься, или это как из анекдота что китайский сервер после миллионной попытки введения пароля маудзидун согласился с хакером и принял его?
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.