Programming Algorithms
I posted three of the four algorithms that we made last semester up on the wiki, but I did not post Djikstra. The Djikstra that we have was from one of the participant's DSA 2 homework and I don't want the ACM to post a fully working Djikstra for everyone to see and use. You know that there will be some people in DSA 2 now and in the future that will try to use our implementation and call it their own.
No, it's not our job, but the CS department may have issues with us providing it and I want to stay on good terms with them. If we do provide it, we should get the department's approval first. We should also make changes to the algorithm too because it was taken straight from a DSA2 assignment without any modifications.
I agree with Trever that it's not our job to protect students from themselves. A full implementation of Dijkstra's algorithm is available pretty much anywhere; all you have to do is ask Google. However, since we would be providing super easy and obvious access to it, and since we don't want to appear as if we are providing answers to students, I vote we talk to the department about it. Specifically, we should talk to whoever's teaching DSA2 this semester.
We should also keep in mind that Dijkstra might not be the only algorithm that students are required to implement in DSA2 or other classes. Something as simple as a palindrome checker (which we've done at programming practice in the past) showed up in the first assignment for OOP. (BTW, if anyone is looking for a reason to be on the team, this is probably the most convincing one. I wrote that particular OOP assignment in less than 10 minutes, because I'd already seen it at practice)



And if they do, they forfeit the benefit of learning it themselves. Its only a bad thing for them if they do, and I don't think its our job to protect them from that.