Readit News logoReadit News
reuven commented on 30 things I've learned from 30 years as a Python freelancer   lerner.co.il/2025/12/08/3... · Posted by u/reuven
saint-evan · 18 days ago
>About 20 years ago, I tried to found a startup. The ideas were good, and the team was good, but the execution was awful, and while we almost raised some money, we didn’t quite get there. Our failure was my fault. And I was pretty upset. And yet? In retrospect I’m happy that it didn’t happen, because I’ve seen what it means to get an investment. The world needs investors and people with big enough dreams to need venture capital – and I’m glad that I didn’t end up being one of them.

I wish the Author would explain what he meant by this. I'm hugely interested in this story and the 'why' of it.

reuven · 18 days ago
While working on a PhD in technology and education, I thought that it might be worth creating a SaaS for people to teach whatever they want. This was back in early 2008, when such sites didn't exist. I assembled a team, and we made some progress, and even got a commitment from one funder. But I didn't really understand how to manage the team, and everyone was working very part-time on the project, and we didn't really have anything serious we could show, even after a few months. And the funder was only willing to invest if we found a second investor, which we didn't. So we ended up abandoning the project.

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.

reuven commented on You're probably using uv wrong   lerner.co.il/2025/08/28/y... · Posted by u/reuven
fluidcruft · 4 months ago
I'm going to be honest: uv made sense to me because I already knew poetry and it was mostly a glance at the intro and then searching to figure out how to do XYZ that I already knew how to do. I can't really say learning about uv workspaces make any freaking sense to me from to docs. I don't think it's unfair to consider uv's documentation to be reference material rather than learning tools.

Now, I'm not saying I learned anything from the article (I gave up when it was talking about "uv pip" which I have never ever used and have no real idea why anyone would ever use, but that's okay). I don't think the article is a good fit for the HN python audience, and that's also okay. But I don't doubt many people can find value in it. "uv pip" exists even though I have never used it so clearly someone must be using it. I haven't used pip in years so it's not a reference point I am starting from. People do use pip and that's okay. Those people didn't suffer through figuring out poetry etc.

I do suspect that people who do system install of packages want uv workspaces. I think I want to migrate to that for my less engineered one-off jupyter calculations stuff since so far the things I've managed to get working for that sort of project have been either monorepos (which have their own issues) or millions of venvs (which constantly sync and take up space). But again I've tried to read and figure out that uv workspaces workflow and I give up after an hour or so of not figuring it out. So that's just to say I have learned to only go to astral's docs as references and even then they are incomplete (I had to guess a bit how to add a git repo via ssh as a dependency)

reuven · 4 months ago
A lot of people I know, including many of my students, first heard about uv as a lightning-fast replacement for pip. That's what piqued their interest, and that's also more or less where they stopped. Just yesterday, someone was asking me about whether uv knows about handling different versions of Python, or if it only installs packages.

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.

reuven commented on You're probably using uv wrong   lerner.co.il/2025/08/28/y... · Posted by u/reuven
gorjusborg · 4 months ago
I think uv is probably taking on too much.

I prefer using a general tool manager like mise to manage runtime versions. It works consistently per language and doesn't change how you launch programs.

reuven · 4 months ago
I dunno, every single conference I've attended over the years had at least one talk trying to make sense of packaging -- downloading, installing, venvs, creating wheelfiles, and distributing to PyPI. It was nice to say that you could choose your own tools, but it was a huge, confusing, daunting mess for many people.

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.

reuven commented on You're probably using uv wrong   lerner.co.il/2025/08/28/y... · Posted by u/reuven
peterdsharpe · 4 months ago
This was a disappointing article: based on the provocative title, I was hoping to learn something new. Everything in here is already clear to anyone who has read the "Getting Started" page of uv, and I don't know anyone who is making these mistakes (system-wide package installs on a venv-first package manager?) with uv.
reuven · 4 months ago
Sorry to disappoint! I can tell you that many people I've met, including those who have read the documentation, kept asking questions about how to use uv. This article is a summary that I came up with, based on my experience and theirs.

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.

reuven commented on You're probably using uv wrong   lerner.co.il/2025/08/28/y... · Posted by u/reuven
BoredPositron · 4 months ago
You are assuming that everyone makes the same mistakes you do and write an article about it that basically just rehashes the documentation?

>> But actually, that’s not quite true — I don’t really use virtual environments very much, so I would just install packages on my global Python installation

This is an absolute red flag especially for someone who teaches python.

reuven · 4 months ago
I teach Python professionally, and constantly get questions from my students about how they should be using uv, and how to integrate it with pip, pyenv, venvs, and the like.

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.

u/reuven

KarmaCake day3370February 26, 2007
About
I teach Python and data science to companies around the world. Most days, I teach engineers at companies ranging from the Fortune 100 to smart start-ups.

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.

View Original