Good afternoon to everybody,
I'm making this post in order to give my feedback about what happened with these two homework.
Before starting this degree course, I was completely a noob in programming. As many students of this course, I came from a scientific high school that doesn't have computer science as subject. Therefore I had to start from zero and I had to build my own study method for a subject that I never approached before. In this sense, the homework helped me a lot since they are a way to apply what we have learned so far with 'anti-conformist' exercises. I spend a lot of time doing them and I actually enjoy make my code better, trying to find a way to simplify the idea of the solution and get the result in a faster way. Therefore I'll say that from my perspective the idea of give bonuses to the cc and the efficiency of the code is great. Thanks to these bonuses I've learned:
how to really understand a problem and how to solve it in different ways,
how to make it more efficient by simplifying the reasoning of the solution or by trying to implements other ways that actually reveals faster,
how to use methods and built-in functions like map, filter,any, sum, lambda etc... that we don't use in class but that are great ways to write the solution and that in the same moment simplifies the cyclomatic complexity(otherwise I surely wouldn't use them),
that there is always a way better than the mine to solve a problem, so if I see people on the leaderboard above me it means that there is a better way to arrive to the solution and so I start thinking to other 'anti-conformist' approaches.
Without the bonuses, I'm pretty confident that I wouldn't arrive to the level of knowledge and experience that I now have. Once I passed all the tests, I wouldn't have any motivation to implement it and make it better, right?. I found also great the idea of the peer assessment, this moment where we share our solutions and we try to understand and make the solution of our colleagues better. An anonymous way to help and being helped, even though the stars aren't objective. Now, my question is, why do we have to ruin everything with the secret tests? These tests weren't mentioned in the description of the course and we were informed of their existence thanks to the Italian forum no more than a week ago. For me, they managed to ruin what was the great idea of the course. Me and the other colleagues spend a lot of time daily on these homework in order to make a great result. I manage to took 34 in both the previous homework and I was in top 3 for efficiency and cc in both of them and I managed also to do my first 1cc code on the last one. To earn this result I spent many hours on coding, trying to understand how to reason and how to make a better code. It was rough for a beginning programmer like me but I managed to do it and I was very proud of the results that I achieved in a little more than one month. Nevertheless, after the secret tests, many of us lost their votes and some of us got completely destroyed by them, but for very little edge cases that no-one told us to think about(for instance, only 4 people passed the secret tests of the hw4). For example, I failed 3 secret tests of the HW4 because I used rindex (that returns an error if the element is not found) instead of rfind(that doesn't return an error) to search the last syllable. For this little thing I got my vote passed from 34 to 25 and now I have to do the recovery and I assure you that many students are in the same situation. Therefore they are overriding not only the huge amount of work, effort and time we spent to do it and the peer assessment link to him, but also the will and the craves of do a code and make it better. What's the point of struggling to do an homework if I could not have the result expected because of an 'empty string' not considered as a possible input? I know that the work that I did till now isn't useless, but I'm disappointed that the time spent on the homework got destroyed for a little thing that I wasn't told to consider. I'm not accusing anyone, I'm only displeased for the results of them as many other colleagues and I will suggest to review the idea of the secret test, because it's actually killing our desire to do better.
I didn't mean to offend anyone, I hope it will be a constructive comment.
Thanks if you read it all.