Live data from Hacker News

Show HN: Intro to Python and Programming for non-CS majors

github.com

1–10 of 56 posts

Re: Show HN: Intro to Python and Programming for non-CS majors

#2
Hi there,

I am a PhD student in Operations Research and developed an Introduction to Python & Programming course for the Bachelor program at a business school.

Due to Corona, I got a chance to video tape it thoroughly (should have done that earlier).

Maybe someone here finds my lectures (playlist: https://www.youtube.com/playlist?list=PL-2JV1G3J10lQ2xokyQow...) useful or knows someone who does. The recordings are 25 hours in total. If you do the readings and exercises, you should allocate 90 - 120 hours roughly.

The GitHub repo is really an interactive book in Jupyter notebooks: https://github.com/webartifex/intro-to-python

As I didn't study CS myself, I think I provide another angle for newbies.

Pull requests with improvements are highly welcome. The materials contain lots of references to the Python community as well. I love this community: I started without any knowledge of Python in 2014 and the many conference talks and repos really help when learning.

Stay safe everybody, Alex

Re: Show HN: Intro to Python and Programming for non-CS majors

#4

Why Chapter 6 has no exercises? (It's not a complain. Just asking in case you forgot to link it.)

They should be ready tomorrow evening. Within the next two weeks, a missing chapter 9 on arrays will also be there. I spent around 50 hours doing the videos in the last couple of days while also holding remote office hours for the 80 students in my class at the university. Crazy situation at the moment, putting everything online due to Corona. We even had an infected student on campus, luckily mild version.

Didn't think anyone would comment here as there are so many Python intros out there :)

Re: Show HN: Intro to Python and Programming for non-CS majors

#5
Forgive me if I missed this, but I would highly recommend talking about virtual environments, pypi, and the existence of other things like pipenv.

The environment/dependency management story for Python is such a tire fire and I wish someone introduced me to it from a reasonably high level at the very beginning of my time with Python.

It doesn't have to dig deep. Just needs to talk about what these things are, why they exist and why it's such a challenge.

Too often I think people skip over these topics, considering them as nothing more than a means to an end. But by far and wide my largest challenges with Python has been environment and dependency management.

Re: Show HN: Intro to Python and Programming for non-CS majors

#6
Amazing content, thanks for making it public! For people lurking, it has Notebooks, Quiz (review) questions, AND exercises. This is very good.

@webartifex it could help the spread of your course if you could put the Notebooks in a self-hosted Jupyter Notebook environment, so students don't have to install anaconda and all that.

Shameless plug here, I'm the creator of Notebooks.ai, which is a hosted Jupyter Lab environment for students, 100% free (we only charge big schools, so teachers and students are free to use). Here's a quick demo of your first lecture: https://notebooks.ai/santiagobasulto/intro-to-python-demo

And aside from ours, there are other options like mybinder or Google Collab.

Re: Show HN: Intro to Python and Programming for non-CS majors

#8

Forgive me if I missed this, but I would highly recommend talking about virtual environments, pypi, and the existence of other things like pipenv. The environment/dependency management story for Python is such a tire fire and I wish someone introduced me to it from a reasonably high level at the very beginning of my time with Python. It doesn't have to dig deep. Just needs to talk about what these things are, why the…

I second this. Sure, there's a huge value in the beginner-friendly structure that Jupyter notebooks provide, but it's also a limiting factor as it's just a very small subset of the Python experience (I've personally never edited a single .ipynb file in my life)

Re: Show HN: Intro to Python and Programming for non-CS majors

#9

Forgive me if I missed this, but I would highly recommend talking about virtual environments, pypi, and the existence of other things like pipenv. The environment/dependency management story for Python is such a tire fire and I wish someone introduced me to it from a reasonably high level at the very beginning of my time with Python. It doesn't have to dig deep. Just needs to talk about what these things are, why the…

I agree that this is important.

My personal choice is to use pyenv together with poetry on a Linux machine.

Yet, please understand that I teach this course to absolute (!) beginners. That is why I chose to use the Anaconda Distribution in class, which comes with every package installed that I want my students to study.

Making your first steps in programming is hard enough and so I want to keep the "boiler plate" as small as possible.

But dependency management will be part of the more "advanced" lectures I will do in the future.

Re: Show HN: Intro to Python and Programming for non-CS majors

#10
Wow this is really thorough and well thought out. It's not just an "intro" but goes into all the language builtins, and common usage patterns (e.g. zip, map, etc), which many "intro-to" style courses skip over.

Code in repo is MIT licensed and videos are tagged as Creative Commons (CC BY). Finally a good OER course for people to learn Python!

Post reply on HN