Re: course-setup -- utilities to create notebook-based courses

kirby urner via Edu-sig <[email protected]> Sun, 22 Mar 2026 09:58:38 -0700
Newsgroups gmane.comp.python.education
Message-ID <CAPJgG3ThHgA4-AhhzDUV9ahQyFAvU31FCTs-5iQeTWzsTK5a9w@mail.gmail.com>
--===============9044380723330904058==
Content-Type: multipart/alternative; boundary="0000000000000e8696064d9fd53e"

--0000000000000e8696064d9fd53e
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Greetings Reuven, I track your work in various ways and admire how you
contribute to the Python ecosystem.

Along the lines you're exploring, of course setup using AI tools, I point
to:

https://github.com/docxology

owned by one of my collaborators on various projects.  His README gives a
sense of the scope.

He's currently teaching introductory bio at a community college and prison
both, documenting how he uses AI tools in an open source fashion.

For my part, I share your focus on Jupyter.  As an example of my kind of
output in the last few days:

https://github.com/4dsolutions/m4w/blob/main/ProductLog.ipynb

I imitate Jake VanderPlas in committing entire Notebook-based curricula to
Github.

Keep up the good work!

Kirby


On Sun, Mar 22, 2026 at 9:47=E2=80=AFAM Reuven M. Lerner via Edu-sig <
[email protected]> wrote:

> Hi, all!
>
> I've been teaching Python for a long time -- and I always live-code into
> Jupyter/Marimo, never using slides.
>
> Over the years, I created some programs that would allow me to quickly
> set up and retire courses. Each course was its own Git repository, and
> was linked to a matching GitHub repo. That way, I could run Jupyter on
> my local machine, and use the "gitautopush" package to push it to
> GitHub, where it would be visible.
>
> I've long had a list of functions that I wanted to implement, to make
> course-setup better for myself, and more generally useful for the
> community.
>
> Thanks to some time over the last week, and working with Claude Code,
> I'm happy to say that course-setup has never been better. (And yes, I
> used this as something of an experiment in agent-based coding; I'm happy
> to discuss my experiences.)
>
> course-setup continues to be a key time saver in my teaching. I hope
> that it'll be useful for some of you, as well.
>
> More info is at PyPI: https://pypi.org/project/course-setup/
> The source is on GitHub: https://github.com/reuven/course-setup
>
> Any comments, questions, and PRs are welcome!
>
> Reuven
> --
> Reuven M. Lerner, PhD -- Training in Python and data science
> Mobile, WhatsApp: +972-54-496-8405
> Improve your Python, Pandas, and Git: https://LernerPython.com
> Level up your Pandas with weekly puzzles: https://BambooWeekly.com
>
> _______________________________________________
> Edu-sig mailing list -- [email protected]
> To unsubscribe send an email to [email protected]
> https://mail.python.org/mailman3//lists/edu-sig.python.org
> Member address: [email protected]
>

--0000000000000e8696064d9fd53e
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:verdana,=
sans-serif;font-size:small"><br></div><div class=3D"gmail_default" style=3D=
"font-family:verdana,sans-serif;font-size:small">Greetings Reuven, I track =
your work in various ways and admire how you contribute to the Python ecosy=
stem.</div><div class=3D"gmail_default" style=3D"font-family:verdana,sans-s=
erif;font-size:small"><br></div><div class=3D"gmail_default" style=3D"font-=
family:verdana,sans-serif;font-size:small">Along the lines you&#39;re explo=
ring, of course setup using AI tools, I point to:</div><div class=3D"gmail_=
default" style=3D"font-family:verdana,sans-serif;font-size:small"><br></div=
><div class=3D"gmail_default" style=3D"font-family:verdana,sans-serif;font-=
size:small"><a href=3D"https://github.com/docxology">https://github.com/doc=
xology</a></div><div class=3D"gmail_default" style=3D"font-family:verdana,s=
ans-serif;font-size:small"><br></div><div class=3D"gmail_default" style=3D"=
font-family:verdana,sans-serif;font-size:small">owned by one of my collabor=
ators=C2=A0on various projects.=C2=A0 His README gives a sense of the scope=
.</div><div class=3D"gmail_default" style=3D"font-family:verdana,sans-serif=
;font-size:small"><br></div><div class=3D"gmail_default" style=3D"font-fami=
ly:verdana,sans-serif;font-size:small">He&#39;s currently teaching introduc=
tory bio at a community college and prison both, documenting how he uses AI=
 tools in an open source fashion.</div><div class=3D"gmail_default" style=
=3D"font-family:verdana,sans-serif;font-size:small"><br></div><div class=3D=
"gmail_default" style=3D"font-family:verdana,sans-serif;font-size:small">Fo=
r my part, I share your focus on Jupyter.=C2=A0 As an example of my kind of=
 output in the last few days:</div><div class=3D"gmail_default" style=3D"fo=
nt-family:verdana,sans-serif;font-size:small"><br></div><div class=3D"gmail=
_default" style=3D"font-family:verdana,sans-serif;font-size:small"><a href=
=3D"https://github.com/4dsolutions/m4w/blob/main/ProductLog.ipynb">https://=
github.com/4dsolutions/m4w/blob/main/ProductLog.ipynb</a></div><div class=
=3D"gmail_default" style=3D"font-family:verdana,sans-serif;font-size:small"=
><br></div><div class=3D"gmail_default" style=3D"font-family:verdana,sans-s=
erif;font-size:small">I imitate Jake VanderPlas in committing entire Notebo=
ok-based curricula to Github.</div><div class=3D"gmail_default" style=3D"fo=
nt-family:verdana,sans-serif;font-size:small"><br></div><div class=3D"gmail=
_default" style=3D"font-family:verdana,sans-serif;font-size:small">Keep up =
the good work!</div><div class=3D"gmail_default" style=3D"font-family:verda=
na,sans-serif;font-size:small"><br></div><div class=3D"gmail_default" style=
=3D"font-family:verdana,sans-serif;font-size:small">Kirby</div><div class=
=3D"gmail_default" style=3D"font-family:verdana,sans-serif;font-size:small"=
><br></div></div><br><div class=3D"gmail_quote gmail_quote_container"><div =
dir=3D"ltr" class=3D"gmail_attr">On Sun, Mar 22, 2026 at 9:47=E2=80=AFAM Re=
uven M. Lerner via Edu-sig &lt;<a href=3D"mailto:[email protected]">edu-si=
[email protected]</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" styl=
e=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);paddin=
g-left:1ex">Hi, all!<br>
<br>
I&#39;ve been teaching Python for a long time -- and I always live-code int=
o <br>
Jupyter/Marimo, never using slides.<br>
<br>
Over the years, I created some programs that would allow me to quickly <br>
set up and retire courses. Each course was its own Git repository, and <br>
was linked to a matching GitHub repo. That way, I could run Jupyter on <br>
my local machine, and use the &quot;gitautopush&quot; package to push it to=
 <br>
GitHub, where it would be visible.<br>
<br>
I&#39;ve long had a list of functions that I wanted to implement, to make <=
br>
course-setup better for myself, and more generally useful for the <br>
community.<br>
<br>
Thanks to some time over the last week, and working with Claude Code, <br>
I&#39;m happy to say that course-setup has never been better. (And yes, I <=
br>
used this as something of an experiment in agent-based coding; I&#39;m happ=
y <br>
to discuss my experiences.)<br>
<br>
course-setup continues to be a key time saver in my teaching. I hope <br>
that it&#39;ll be useful for some of you, as well.<br>
<br>
More info is at PyPI: <a href=3D"https://pypi.org/project/course-setup/" re=
l=3D"noreferrer" target=3D"_blank">https://pypi.org/project/course-setup/</=
a><br>
The source is on GitHub: <a href=3D"https://github.com/reuven/course-setup"=
 rel=3D"noreferrer" target=3D"_blank">https://github.com/reuven/course-setu=
p</a><br>
<br>
Any comments, questions, and PRs are welcome!<br>
<br>
Reuven<br>
-- <br>
Reuven M. Lerner, PhD -- Training in Python and data science<br>
Mobile, WhatsApp: +972-54-496-8405<br>
Improve your Python, Pandas, and Git: <a href=3D"https://LernerPython.com" =
rel=3D"noreferrer" target=3D"_blank">https://LernerPython.com</a><br>
Level up your Pandas with weekly puzzles: <a href=3D"https://BambooWeekly.c=
om" rel=3D"noreferrer" target=3D"_blank">https://BambooWeekly.com</a><br>
<br>
_______________________________________________<br>
Edu-sig mailing list -- <a href=3D"mailto:[email protected]" target=3D"_bl=
ank">[email protected]</a><br>
To unsubscribe send an email to <a href=3D"mailto:[email protected]"=
 target=3D"_blank">[email protected]</a><br>
<a href=3D"https://mail.python.org/mailman3//lists/edu-sig.python.org" rel=
=3D"noreferrer" target=3D"_blank">https://mail.python.org/mailman3//lists/e=
du-sig.python.org</a><br>
Member address: <a href=3D"mailto:[email protected]" target=3D"_blank">=
[email protected]</a><br>
</blockquote></div>

--0000000000000e8696064d9fd53e--

--===============9044380723330904058==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Edu-sig mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3//lists/edu-sig.python.org
Member address: [email protected]

--===============9044380723330904058==--