3,398 karma · joined February 26, 2007
You can buy individual courses, or get a subscription that includes all of them, at https://LernerPython.com .
I've written two books for Manning: Python Workout (https://PythonWorkout.com/), and Pandas Workout (https://PandasWorkout.com/). They're full of exercises that'll increase your fluency in Python and Pandas, respectively.
I also teach online for O'Reilly, tweet frequently about Python (@reuvenmlerner) and Threads (@reuvenlerner), and post videos on my YouTube channel (https://YouTube.com/reuvenlerner).
I created one of the first 100 Web sites in the world (http://tech.mit.edu/), graduated from MIT in 1993 and got a PhD in learning sciences from Northwestern in 2014. I've been consulting since 1995.
I live in Modi'in, Israel with my wife and three children.
I'm OK with Lisp output, but maybe that just shows how old I am. :-)
I wonder if it's possible (or wise) to have two different compilers for a language -- one that's optimized for such tight loops, and another that does thorough checking, etc. You know, kind of like -O, but at a much deeper level.
I think that we had some great ideas, including guiding instructors in the creation of online classes using the best proven pedagogical tools and theories. You could connect lessons to standards (if you were in a school, or wanted to be associated with one), or could do it free-form, or could use templates of various sorts.
I ended up finishing the PhD, so I can't complain too much! And as I wrote, I was probalby not a good person to run a startup; I'm much happier with my life as a bootstrapped freelancer. But it was hard to realize that I spent a year or so working on this with very little to show for it -- especially knowing that it might have thrived under a more experienced leader.
So your points are all valid -- but I'm trying to address pain points people have repeatedly raised, and that I myself experienced, and flatten the learning curve for as many people as possible.
I had some thoughts about how things could improve, but the core developers said that anyone with their own ideas had better think through all of the implications, because packaging is super hairy.
The uv folks basically took that as a challenge, and said, "What if we have one package manager that replaces literally everything else in the packaging ecosystem, hiding the stuff that people find confusing or annoying?" Color me impressed; they really did it.
System-wide package installs are a weird quirk of my own work, since I'm doing very little product development and lots of one-off classes. I'm not at all recommending that "normal" developers do this, and I make sure to say that in all of the courses I teach.
When I shared this post with them, my students said that it clarified things they didn't previously understand, even after reading the documentation. Part of the problem is that the documentation describes lots of options, rather than explicitly encouraging one particular path and model.
So I don't think it's just me; people are excited about uv, but aren't quite sure how to use it. But hey, I could be wrong!
As for your comment about venvs -- I teach them, I demonstrate them, and I use them when I work on programming projects.
I mostly create one-off Jupyter notebooks, which don't (in my opinion) merit their own venvs, because I don't care about locking versions. That said, I'm switching everything such that every class I teach will have not only a GitHub repo, but also a uv project, and thus an implicit venv behind the scenes. I still don't have to worry about package conflicts, but I want to be more in line with community conventions.
But whenever there was a chance to take the mask off, people did. If there was food around, people immediately ditched the masks and stayed with food or drink in their hand to justify keeping the masks off. I was at one small (10-person) session where everyone agreed to keep masks off, gingerly making sure that no one objected. We then all made sure to have drinks in front of us to "justify" doing so.
And when people went outside, the masks were off. At the PSF member lunch, where we ate together, masks were off as soon as we got food. At the PyLadies auction, where we (again) ate together, people were also without masks. I'll note that the auction took place in the same room where talks had taken place several hours earlier, with strict mask enforcement (and adherence).
Bottom line, people were generally willing to follow the rules. But there was a lot of grumbling about why there should be a mask mandate in 2024, and what the justification was for having one.
1. I absolutely, positively love meeting new people at PyCon, regardless of their background, level, etc. I learn new things from just about everyone I meet, and that's a huge part of the fun for me. I'm frustrated that I don't get a chance to just meet and chat with more people during the conference, and actively try to eat meals with people I don't yet know so that I can get to know them.
2. Part of the greatness of the Python community is that we realize other people, regardless of their fame, are just that -- people. They were unknown at some point, and people were nice to them. So they'll probably be nice to you, too.
3. Every community has jerks, Python included. If someone famous isn't nice to you, then just ignore them from that point on, and concentrate on the numerous nice people. It's not worth getting riled up or upset about it.
But we all live with some level of risk. Keeping the risk level at or near zero isn't realistic, or something that most people want. We cross the street, travel in cars, etc.
I find it weird that PyCon had a mandatory masking policy, when medical conferences staffed by doctors and disease experts don't have such a policy any more. And I'm guessing that PyCon's policy was made by well-meaning people who aren't doctors or medical experts.
My suggestion -- and yes, I wrote this in my PyCon follow-up survey -- is that our masking policy follow whatever the CDC, AMA, or a similar body is doing for its conferences at the time PyCon takes place. If the experts require masking, then we should do so, also. And if they don't, then we should encourage people to mask if they need or want to, but we shouldn't force it upon everyone.
In other words: PyCon should make decisions about the conference and Python-related things. Medical decisions should be left to outside experts.
PyCon is overwhelming and delightful in every way -- and it just gets more so every time I attend. That said, you managed to see a ton of amazing stuff and people, which is quite impressive.
I hope to see you back in Pittsburgh next year!
I don't think that it's a sob story at all. I think that it's (a) incredibly funny that they would make such a mistake, (b) a combination of bad UI and bad service on Meta's part, and (c) crazy that even three Meta employees cannot undo such a ban.
So yes: It was my fault that I didn't notice or care faster. And sure, you can call this a sob story. But I think that beyond my personal experience and issues here, this points to some deeper problems with Meta, as well as other large companies that depend on AI.
I noticed the ban, and then didn't do anything about it for one year.
Some were advertising my paid courses on Python and Pandas.
Others were advertising my free courses about regular expressions.
Still others were advertising my mailing list.
None of this comes even close to anything illegal, unless I'm massively mistaken.