83 karma · joined June 12, 2016
I'm going to preface this with "I have no hard data to back this up", but I have a feeling that this isn't a matter of the last century as being more of a problem than previous ones. Rather, I think it's the globalization of communication that has brought it to light in that time. This sort of thing has probably been going on since there have been positions of power (pretty much forever) but in the last century it's become much more easy to report on cases when they're found. And now thanks to the internet, with the ease of communication between people that you may never meet in person otherwise, corroborating stories and figuring out that there's a problem is an easier process.
It does a lot to highlight the dumpster fire that is the terrible side of the human race, and many positions of power are still powerful enough to evade consequences too much of the time, but maybe one day it will give voice enough to the oppressed and abused to be able to start making a real difference. (Not that it should be _solely_ their responsibility, but in order for the process to start, they have to be able to speak and be heard.)
> The created binaries can be made executable independent of the Python installation, with --standalone and --onefile options.
I had a weird thing going on at first where the map data seemed really old, especially when I was at about "city" level. Interchanges and neighborhoods that I know that have been there since at least 2002 were nowhere to be found. It wasn't until I zoomed way in and then back out again did the map change and they showed up.
I've gotten to the point where a number of smaller tools I've put together can now be used in larger projects. I learned the hard way that just copying files around makes it hard to know which version is in that project, and upgrading, especially once there is more than one file, becomes a lot tougher. I learned the harder way that trying to link the same file into multiple projects is a great way to really screw things up.
About 4 or 5 months ago I made a real effort to try to learn how to use virtual environments (pipenv) and packaging to make it so that if I update one of the smaller tools, I don't clobber all the downstream projects that rely on it. I wanted to make it so that when I update something to add features or change things, I can go back and fix older projects it's used in at my leisure. I haven't even begun to touch on unit testing, and I have no clue what linting is. Things are kind of working so far, but it feels very hacky and fragile, and I know it can (and SHOULD) be better.
All of this stuff around packaging and being able to install those packages very daunting, and trying to stumble on the right tutorials is extremely frustrating. The vast majority of them assume I want to share my stuff with the world on PyPI, or that I have servers available to me to create private PyPI indexes, but I don't. Yet I still want my packages to "resolve their own dependencies" when I install or upgrade them.
And when it comes to learning things like testing, the few tutorials I've looked at either use different tools to do it, or their examples are so oversimplified that when I look at my own code, I don't know where to begin.
I say all of this because looking at this tutorial, it's more of the same. I want to make my code better. I want to make it easier to use those smaller projects in larger projects. But then it says things like "Every solid open-source project runs cloud tests after each commit, so we will too," but it doesn't do anything to explain what that is or why it should be done, besides "everyone does it, so you should, too."
I think what makes it even harder is that when something like this gets shared, there are so many conflicting opinions. Some people say to just use setuptools, other say that setuptools is on its way out and to use pyproject.toml (or some other tool) instead. It's all just so... hard!
I'm sorry. This is coming off a bit ranty, and that's not what I intended. I'm just feeling frustrated and I'm not sure of a better way to express that I need help with finding help. There are even a lot of things that I'm sure I need help with, but I just don't know what they are. It makes it really hard to verbalize what I need to another person, let alone to get the right words into a search engine to take me there.