Python Forum

Full Version: Elements of functional programming in Python course: need beta testers
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hey there folks. 

I've recently finished adding content to my online-course on basics of functional programming in Python. It is intended to be a brief introduction to the concepts of pure functions, higher-order functions, lambdas, immutable data structures, folds, lazy evaluation, some other related topics and their usage in Python programming.


The thing is, this course has been also made to participate in the contest arranged by the platform (you can read more about it here: adaptive.stepik.org/) but I haven't had a lot of feedback on how well is the theory presented, how good the tasks are and whether the automated tests work well. Any feedback would be extremely valuable. So if you're familiar with basics of Python programming and can spend some time on that, it would be awesome.

First thing you need to do is to register on the paltfrom: stepik.org

Then you can use this invitation link to enroll on the course:
stepik.org/invitation/ea053ece8a9352d17fc73f2936b9a97cc2f618bb/
 
After that, click learn and try it out. You should have acces to all the lessons available (both theoretical and practical). If you have any thoughts and experiences to share, it would be really useful. 

Thank you.
I looked at the first "theory" and first "practical". The first theory just says the video hasn't been uploaded. For the practical, it says
Quote:Rewrite the function below so it behaves as a pure function (Don't change anything outside the function's body).

def func(lst, n):
    for i in range(n):
        lst.append(i)
To fulfill the requirements, you can replace the body with pass. It really should elaborate - you want to return the result that otherwise would be stored in the argument, as well as what the rest says.

I'm not fully sure what the audience of this is (experienced functional programmers? experience Python programmers? newbie programmers?) but if they're confused about the task, instead of making effort with the material, I'd expect a low completion rate.

The platform doesn't seem very mature either. I was prompted with the same "tutorial" twice, and the first button after the box for submitting code was counter-intuitively an upload button instead of submission.

I haven't looked for alternatives to this, but who are the competitors? Why would someone use this one instead? How is it better?