
This may be superfluous in this forum, but my suggestion for a good approach to the copying/searching problem is to have students first make a pseudo-code design of a solution, and then build small parts of that algorithm, and then incrementally assemble them into a solution.
That way they wouldn't find an online solution which matches their individual pre-submitted components, and it emphasizes the constructive (compositional) nature of modular software good practice, and how well FP supports that.
One can then give incremental changes to the functional requirements, which impact some of the components, but not the overall composed design.
Dr. Gregory Guthrie
Maharishi International University
----------------------------------------------------------------
-----Original Message-----
From: Haskell-Cafe
Dear mighty Haskell list,
I am a high-school teacher in the US (California, Palo Alto). We have an advanced CS course that students can take after completing the AP-CS-A (in Java). This is usually Juniors and Seniors, after at least 2 or 3 courses of coding (Python+Java). Traditionally, I've done a potpourri of subjects, mostly search algorithms as applied to 'games'. Of course a little bit of data-structure comes in, and each year we did some 'other' interesting subject (like halftoning, barcodes, and so on) and investigated and implemented algorithms there.
THIS year, for the second half, I would like us to do Functional-Programming. From what I have seen, my students over the years tend to write more and more convoluted codes, electing first to search on stackOverFlow for some similar pattern, rather than think and find a concise and clean solution. I think FP would supply them with a new way of thinking, which will help with whatever they will write later on.
I've been coding with Haskell for about 7 years, so feel ok leading the class.
The question: I have many books on Haskell (i think 'all', but who knows. Haskell, Real world Haskell, Learn you a haskell for great good, programming in haskell, and many more). ---> I am looking for something more hands-on and 'fun' for HS students. may i say the buzzword 'project based', or maybe better 'problem based' for our case. Something that I could teach a little, and then we can solve a bunch of problems, and teach a little more, and so on.
It doesn't have to be a Book!! Just an outline of a course someone did with associated bunch of problems would be awesome. We have 18 weeks in a semester. My thought right now (if I don't find anything) is to relyon Euler project early problems. These are often clean and simple in Haskell. Or otherwise some CSES problems (which we've done in Java).
Ok, long enough email.
If you have material and can share here, great! If you have material and want to reach out privately, please do (zbaharav@kehillah.org mailto:zbaharav@kehillah.org). If you have a good pointer, that would be appreciated.
Thanks in advance for any help! Zachi (Dr. Zachi Baharav, HS teacher (after 20 years in Industry and academia))
_______________________________________________ Haskell-Cafe mailing list To (un)subscribe, modify options or view archives go to: http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe Only members subscribed via the mailman list are allowed to post.
_______________________________________________ Haskell-Cafe mailing list To (un)subscribe, modify options or view archives go to: http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe Only members subscribed via the mailman list are allowed to post.