Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

algorithms 101 #16

Open
linclark opened this issue Jul 30, 2014 · 17 comments
Open

algorithms 101 #16

linclark opened this issue Jul 30, 2014 · 17 comments

Comments

@linclark
Copy link
Contributor

Still on the fence about whether this would be helpful as a workshopper, so looking for other's opinions.

The idea is to take a college intro level Algorithms course (like this one from Princeton), and create an exercise for each algorithm. This should hopefully make the course (which is taught in Java) more accessible to JS devs.

I've started testing it out at https://github.com/linclark/algorithms-101, and will continue working on it if others think it would be helpful.

@timoxley
Copy link

YES. great idea.

@dgoutam
Copy link

dgoutam commented Jul 30, 2014

Great. Keen to check it out.

@vetri02
Copy link

vetri02 commented Jul 31, 2014

Definitely

@MatthewLarner
Copy link

Totes a great idea.

@connor11528
Copy link

yeah this would be awesome. I've been writing js for a while but don't have a CS degree. I get asked about algorithms and don't know much about the specifics +1

@rosskukulinski
Copy link

@linclark I think this is a great idea. Would you want any help/assistance? Let me know. I'd be happy to play-test or help with a section or two.

@mmckelvy
Copy link

Yes, would be very interested in this.

@leonletto
Copy link

Yes please!

@ascott1
Copy link

ascott1 commented Aug 1, 2014

Yes, please! This would be awesome.

@linclark
Copy link
Contributor Author

linclark commented Aug 2, 2014

thanks for the feedback, everyone!

@rosskukulinski I added a few scaffold exercises and issues to track their development, let me know if you have any questions.

@rosskukulinski
Copy link

@linclark ran through the Welcome and quick-find on OSX with no problems. Looking good!

I do wonder if the fact that algorithm code solutions seems to come directly from the video is a downside?

@linclark
Copy link
Contributor Author

linclark commented Aug 4, 2014

I had thought about that myself. In the end, I think it's still valuable because it gives the learner experience walking through each of the algorithms, even if it isn't as challenging.

One thing to do to make it more challenging could be to have an exercise a the end of each section in which they have to apply an algorithm to a real life situation. For example, the Coursera course has you apply UnionFind to the percolation problem. It would take a lot of work to come up with applications that were challenging enough but not too challenging.

Another way to engage the learner more might be animating the validation. For example, if the learner was working on ShellSort, they'd see an animated version of this chart running their submission next to an animation of the solution.

@rosskukulinski
Copy link

Good points. I like your idea of having a final exercise for each section that applies the algorithms they've used (can you say, 'hello module reuse!') to a harder problem.

@yuvilio
Copy link

yuvilio commented Sep 7, 2014

This is a fab workshop and off to a great start from the current exercises. Would love to see an exercise on counting steps as one the many ways of assessing an algorithm's speed. Not sure about whether it's in scope or how to go about it through. All i saw out of the box was console.time() , and that's not statement based.

@grabbou
Copy link

grabbou commented Mar 11, 2015

Is anybody (@linclark) working on this currently? If not, I am happy to continue further development.

@linclark
Copy link
Contributor Author

Mentioned in the issue you opened there, but will add here too... feel free to submit PRs for the open issues.

@grabbou
Copy link

grabbou commented Mar 12, 2015

Thanks.. Been thinking about those based on data structures, like BFS based on binary tree, shall we use existing implementations or another workshop with all of them and possibly export solutions so the workshop can be used as a dependency?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests