Publishing group projects on PyPi đź’Ş

Santiago Basulto
rmotr.com
Published in
3 min readJun 11, 2016

--

90% of the rmotr.com experience is coding. Not reading, not watching lessons, just plain roll-up-your-sleeves coding. On top of that, the code you’re working on is supposed to be challenging and “useful”. We don’t like toy projects, we don’t like “build a simple CRUD system” projects.

A few days ago, a student decided to parse the June version of the “Who is Hiring?” post on Hacker News. That inspired us and we decided to turn it into one of our group projects (coding projects our students have to work on). It was decided, Saturday’s group project would be to build a command-line utility that would let you analyze Hacker News posts and extract information about the job offers.

When we were thinking about the features they needed to implement for the group project, we thought how cool it’d be to make them publish their projects on PyPi. We believe that packaging and PyPi publishing is a necessary skill to have if you want to be a good Python programmer, but we were afraid that it could be too challenging for them. We decided to go ahead and make them do it, and if it was too hard we’d help them as much as we could to have them published.

Did you know Patrick is a great Python hacker?

After just two days, the result was simply amazing. With a little bit of help from Click and Beautiful Soup, our students built commands that would take different keywords (and combinations of keywords) and would tell how many job offers containing those keywords were posted. It’s a clear example of the beauty of Python: its power-simplicity balance. How valuable it is for a person who’s been coding just for a few months to be able to create a real life program, that serves a real purpose?

Real example of a project published by students.

In retrospective, we now feel dumb for thinking it’d be too challenging for them to publish on PyPi. Our students are, at their very hearts, hackers. And hackers love challenges.

You can see a real example of a project published by Phillip Wright and David Granas here: https://pypi.python.org/pypi/rmotr-b6-c1-g2-jobs-detector.

If you want to play around just do:

$ pip install rmotr-b6-c1-g2-jobs-detector
Example of running the command with a few keywords

If you want to learn more of how this command was built using Beautiful Soup take a look at this post: https://medium.com/rmotr-com/analyze-hn-who-is-hiring-with-a-little-bit-of-python-and-beautiful-soup-f2b49e65d219.

--

--