Тестовете в Judge
Скъпи момичета и момчета от СофтУни - Team!
Бих искала да помоля някой от вас да аргументира липсата на качени авторски тестове на задачите от миналите изпити по Programming Fundamentals.
Ще се опитам да обясня противоречието, в което постоянно изпадам, когато се опитам да разбера логиката на това Ваше решение и ползата от него:
Подготвям се за изпита, който е след седмица. Повечето от задачите, които са ми били по-трудни, се опитвам да ги реша повторно, като целта е да се отдалеча максимално от първия ми алгоритъм и лексика. Това са задачи, на които съм изгледала Вашите клипове за евентуалните им решения или съм обходила форума за най-често срещани пропуски и уловки.
И в момента, точно когато съм набрала смелостта да използвам най-"завъртяния" за мен материал и да го превърна в рутинен, отново не мога да хвана защо има пак тестове, които гърмят. И, каква алтернатива имам:
1. Да прекарам няколко часа, с неясен ефект, в търсене на грешката ми в материал, в който явно имам нужда да наваксам /в ситуация, в която постоянно се надбягваш с времето/;
2. Да попитам във форума и да се надявам, че някой в моето положение /седмица преди изпит, притиснат от всякакви житейски отговорности/ да ми дебъгне код от n реда;
3. Да се откажа да ползвам този недоусвоен материал и да се придържам към открития работещ алгоритъм, колкото и да е повтаряем съобразно наличието на варианти във форума или във Вашите клипове.
Имам ли друга опция?
Вие какво печелите от некачването на тестовете на вече минали изпитни задачи? И защо е такъв хаос - на някои има качени, на други няма, на някои задачи има условия, на други ги търсиш из отминали курсове? Защо на входния курс за СофтУни всичко е толкова подредено и са качени всички тестове? Това някаква хлапашка небрежност ли е? Или някой от тима Ви все още е фен на мотото: "защо да е лесно, като може да е трудно"?
Ако приемем ситуацията, в която се склоните на update и ги качите тези тестове, мислите ли, че наистина хората ще намалят нивото си, /като не говоря за задачите от упражненията и лабовете - става дума за задачи за подготовка за изпит/? Вярвате ли, че няма да търсим други варианти и решения във форума? Не е ли добро обучение, ако успеем сами да дебъгнем и да намерим работещ сто процентов алгоритъм въз основа на достъп до тестовете на задачата? То си е ясно, че на някои хора и с фуния да им наливаш, ще е от пусто в празно, но тук качеството на участниците е на съвсем друго ниво.
Като гледам, тази тема почти ежедневно присъства в ума на студентите Ви, това не е ли някакъв знак, че е крайно време нещо да се промени?
.
RoYaL,
аз ще направя още един опит , защото наистина мисля, че бъркате за това - хората, които могат да бъдат "пречупени", не могат да изкарат обучението Ви. Те просто се отказват от него и ако са яко зарибени в коденето, търсят и намират алтернативи. Качествените хора се "пречупват" само през себе си, няма как едни тестове да променят отношението им към каквото и да било, просто им е по-сложно.
Не бихте ли искали да опитате, дали наистина ще е в ущърб на нивото на обучението? Нали, в края на краищата, изпитът решава каква е била подготовката на всеки? Има и друг момент - защо още от първия етап в СофтУни? За един лаик в програмирането, който току-що е разбрал колко видове скобички има по клавиатурата, е много трудно да разбере процесът на допускане на грешки - как му се случва, къде се чупи логиката му, има ли повтаряемост в грешките?
Съгласна съм, че вписването в сферата на програмирането не е лесно, но не мога да приема, че е по-различно от всяка друга професия, в която се иска яко учене. Може би точно този начин на мислене прави обучението Ви толкова трудно?
Истината, Nona, е че сме опитвали. Преди всяка задача вървеше с авторски решения и тестове в zip-чето с условието. Това за if/else-а не си го измислям. Това е нещо, което съм виждал като честа практика. Също така съм виждал и много изненадани физиономии на изпита, когато изкарат 40/100 и не могат да видят тестовете. И се започват едни въпроси по време на изпита - "ама аз да подготовките виждах тестовете, дайте ми ги и сега" и т.н.
Защо от първия етап? Programming Fundamentals е курсът, който трябва да създаде това мислене. На първо място като отношение към решаването на проблеми и на второ място като алгоритмично мислене.
Нима щеше да е различна от втория или третия етап? Тъкмо повече време, в което хората са свикнали с отворени тестове и по-трудно да ги научиш на друго. Аз мисля, че скриването на тестовете от по-късно в обучението е просто едно отлагане на неизбежното. Пък и една такава отсрочка, би повлякла със себе си друга такава. През доста подобни периоди сме минали вече. Срок за стари критерии за Диплома до Декември месец, после до Април, после някой иска до Септември, всеки ще иска отсрочка, ако не се сложи срока - няма никога да го има. Същото е и с тестовете.
Смяташ, че образованието при нас е трудно - това е твое мнение. От други хора пък съм чувал обратното. Те пък казват - "при вас е много лесно, ще отида някъде, където няма да ми дават на готово нищо". На кого да вярвам? Истината е, че с всички промени, които правим през годините се опитваме да го правим по-достъпно за все повече и повече хора. Без да компенсираме обаче с качество.
В крайна сметка не разбрах какво те притеснява това да създаваш дискусии във форума относно пропуснати случаи в някои задачи? Нали ми прочете по-горния отговор към края. Аз лично намирам за много полезно обсъждането на задачи, говоренето за гранични случаи и т.н. Доста по-полезно от открити тестове. Снощи например с един приятел (всъщност, човекът написал judge системата) бяхме седнали на кафе в C35 и до три през нощта откарахме, говорейки за алгоритъма на една задача в topcoder (could be kind of geeky, but well..) и граничните и случаи. Много по-обогатен се чувствах след това, от колкото ако бях свалил тестовете при мен и бях начаткал задачата за 30 мин :)
P.S.: Скобичките по клавиатурата и останалата граматика са маловажни, те така или иначе ще се наизустят с времето. По-важно е на лист хартия да измислиш граничните случаи, пък все тая дали знаеш как става синтактично. Ще го Google-неш синтаксиса, 'дет се вика. В един друг мой отговор бях дал пример как само с гугъл можеш да решиш задача, без да си наясно дори как се декларира променлива + бях дал линкове към гугъл търсенията. Мога да изровя отговора :-)
P.P.S.: За този отговор говорех - https://softuni.bg/forum/8714/tehniki-za-pisane-na-algoritmi#answer-24847