earn the White PyBites Ninja earn the Yellow PyBites Ninja earn the Orange PyBites Ninja right arrow earn more PyBites Ninja belts and certificates
The best way to learn to code in Python is to actually use the language.

Our platform offers effective Test Driven Learning which will be key to your progress.

Join thousands of Pythonistas and start coding!

Join us on our PyBites Platform
Click here to code!

Code Challenge 55 - #100DaysOfCode Curriculum Generator - Review

Posted by PyBites on Tue 23 October 2018 in Challenges • 2 min read

In this article we review last week's #100DaysOfCode Curriculum Generator code challenge.

Final reminder: Hacktoberfest

8 days left to have your PRs to our challenges repo count towards Hacktoberfest No. 5.

Community Pull Requests

Another 10+ PRs this week, cool!

Check out the awesome PRs by our community for PCC55 (or from fork: git checkout community && git merge upstream/community):


vipinreyo wrote a script that requests and parses our platform and collects meta data from our challenges and bites. From that list it will randomly create a task list for 100 days and return it as a JSON string.

danshorstein built 100 Days of Awesome Python. Using the Awesome Python repo it creates a curriculum of 100 days of python awesomeness. Each day you get a new library to explore. It started as a random selection, but he then wrote a second version to sort the libraries on the lowest number of stars so the libraries selected are lesser known.

bbelderbos made a #100DaysOfCode Reading Planner, a script that takes one or more book IDs from our reading list app which allowed him to put his curriculum to test starting his long desired #100DaysOfData.

PCC55 Lessons

I had fun with list comprehensions and JSON

Requests and Beautifulsoup are awesome.

The json part was easy, the complex part was how to evenly split 4 or 5 books over 100 days: some days you finish a book, but still have pages left (from "avg pages per day") you need to spend on the new book, going with generators / itertools.islice made this easier to accomplish, which was a great learning exercise.

Read Code for Fun and Profit

You can look at all submitted code here and/or on our Community branch.

Other learnings we spotted in Pull Requests for other challenges this week:

(PCC02) I had more practice with generators and itertools, learning how to use them effectively.

(PCC04) yield and Tweepy

(PCC14) More knowledge about decorators

(PCC42) I improved my regular expression skills, learning about capturing groups.

Thanks to everyone for your participation in our blog code challenges! Keep the PRs coming and include a README.md with one or more screenshots if you want to be featured in this weekly review post.

Become a Python Ninja

Master Python through Code Challenges:

  • Subscribe to our blog (sidebar) to get new PyBites Code Challenges (PCCs) in your inbox.

  • Take any of our 50+ challenges on our platform.

  • Prefer coding bite-sized Python exercises in the comfort of your browser? Try our growing collection of Bites of Py.

  • Want to do the #100DaysOfCode but not sure what to work on? Take our course and/or start logging your 100 Days progress using our Progress Grid Feature on our platform.

Keep Calm and Code in Python!

-- Bob and Julian

See an error in this post? Please submit a pull request on Github.