Feature Request: View Alternative/Ideal Solutions

Hi guys.

I’m unsure if this is the right place for a feature request. But here it is anyway :slight_smile:.

Background:
After having completed an algorithm challenge, having a victory :coffee: and feeling all warm and smug you see that you didn’t use any of the recommended methods/arguments/functions/etc…

So now you wonder how the “ideal” solution to this problem would have been. Or how this solution would have been solved using the recommended tools. You don’t feel like wiping your progress and starting anew using only the recommended tools… but you’re still curious.

Here’s the request:
Upon finishing a challenge, being able to view the ‘expected’ or ‘ideal’ solution and compare that to your own.

If this is a silly idea, please let me know. If anyone else have found a way to check what a better solution would be to a challenge, please let me know too.

Thanks!

I think being able to see alternative solutions is good.

I think the challenges are a little too open-ended to have ‘ideal’ solutions. ‘Ideal’ could mean any of the following to somebody, depending on what you need for a particular project:

  • Fewest lines of code
  • Use of advanced algorithms/data structures
  • Highest performance
  • Most readable

And these often contradict each other.

Agreed. I often still get caught up that my solutions to problems are not elegant enough (elegant being terse, clever code). But really, my ideal solution is that it actually works! Ideal is definitely subjective in many cases. Unless you’re using Python, in which case the philosophy is that there is only one “correct” solution :laughing:

Also, those clever solutions are often difficult to read and comprehend for other people, but that’s beside the point.

Thank you @P1xt.

Very glad that you can actually find other solutions from other campers :smiley:.

Now I just have to be very good and try not to peek when I’m getting frustrated at a problem.

I like that there are hints in the wiki and I think that should/could be integrated in the interactive curriculum. When you really struggle, instead of trying to find an answer its a slight and gentle nudge in the right direction.

@zaclem01 and vkg Yes. I think elegance is probably the right word.

If a method/function exists that sorts is built in to the language, use that instead of rewriting a sorting function.
I think that I’m struggling my way through problems that already have solutions tailor made. Just because I’m not too familiar with them or don’t know they exist.

I believe this struggling with something till it works is the right way to learn. Most definitely, but after bashing your head in a couple times to figure out why it works, alternate solutions will help make it stick better or help you do things more efficiently / faster next time round. At least, that’s what I think.

Thanks all!

I do think it would be a good idea if a user would be pointed directly to the wiki page after finishing a challenge. Right now they are a bit hidden in the forums, not everyone may realise these exist.

I would also prefer the topics to be open so anyone can share their solution. From other online courses I found that reading other people’s solutions can be very enlightning, even sometimes when they are somewhat less than elegant.

A voting system a la stackoverflow would be very cool, but I suppose that’s not very easy to implement on the forum here.