Not to mention public cloud providers dragging their feet on implementing basic IPv6 functionality as if it was some sort of obscure feature instead of… the Internet protocol for the last two decades.
All the cloud providers I rent services from offer IPv6. It's only the really big ones that seem to be dragging their feet.
I suppose the multi-AZ stuff makes things more complicated, but my $5 VPS host had IPv6 like what, ten years ago?
This does have one small benefit: since none of the large cloud providers seem to do competent IPv6, you can avoid scanners, scrapers, and other log polluters on personal services by just hosting them on IPv6.
> Is anyone aware of why those decisions not to adopt IPv6 were made?
Because they have all the IPv4 address they need and so do not see a shortage, unlike those that are not mega-corps and are struggling:
> I work for a Native American tribe in the PNW. We scrambled to get the reservation reliable internet in the later part of 2019. We managed to cover most of the reservation with wi-max and wifi with a fiber back haul configuration. We are now slowly getting more stable and reliable fiber to the home(FttH) service installed to as many homes as we can, but it is slow process covering the mostly rural landscape doing all the work in house.
[…]
> We learned a very expensive lesson. 71% of the IPv4 traffic we were supporting was from ROKU devices. 9% coming from DishNetwork & DirectTV satellite tuners, 11% from HomeSecurity cameras and systems, and remaining 9% we replaced extremely outdated Point of Sale(POS) equipment. So we cut ROKU some slack three years ago by spending a little over $300k just to support their devices.
I’ve settled for pyenv and poetry for my projects.
As a former Homebrew maintainer, allow me to stress another thing:
Don’t use your system’s (or even your system-level package manager’s) Python environment for your Python projects.
That Python environment isn’t for you. It exists primarily for one single reason: to make other packages work that happen to depend on Python.
The same goes for Node.js, Ruby and other fast-evolving platforms.
Now, if you _do_ use that environment, the packaging police isn’t exactly coming for you. Just be aware that maintainers are free to version-bump or even remove the environment at any time without notice. That’s why you’re going to be happier and safer if you use *env- (pyenv, nodenv, …) managed installations.
This is a relatively new and dangerous way of thinking about operating systems. Due to the massive futureshock of libs rapidly changing under-foot people have had to switch to containerization as a mitigation. And now people have been containerizing so long they are starting to believe it is the proper way to do things.
It's not. Giving up the idea of an operating system with system libraries is very bad. The idea that you have to set up an entirely new lib environment to run every single script is absurd and it has dire consequences for software longevity and portability. With no more OS system as a base an OS is fractured into literally innumerable possibilities. Gone is the idea of a distro being the same for everyone using it. Gone is the ability to just install things. And we're left with a pile of containers that make debugging things when they go wrong even harder.
Nix is taking this concept to the extreme and absurd, but using pyenv for every script is almost as bad. pyenv is not version management approach to Python. It's a bandaid that doesn't address the actual issue.
> This is a relatively new and dangerous way of thinking about operating systems.
One could as well say: this is a response to faster-than-ever evolving platforms.
> Giving up the idea of an operating system with system libraries is very bad.
Good point. I don’t like the situation either.
I’m not sure there’s a good remedy. For example, how are system package maintainers supposed to know that your personal script is now ready to migrate, so they can finally bump system Python?
> using pyenv for every script is almost as bad. pyenv is not version management approach to Python. It's a bandaid that doesn't address the actual issue.
Not sure if I’m understanding you correctly here. You’re saying that using pyenv for every script is bad. Are you against venvs, too? Because you could apply a similar argument to those.
Firstly, this is about the core platform, not third-party libraries.
Secondly, I absolutely do keep all my projects in lock-step with the latest stable platform version.
My point is that I do that deliberately and in a controlled way, decoupled from my system package manager’s decisions.
I certainly don’t appreciate waking up to dozens of unexpected compile errors and warnings due to some random system Python version bump.
> Don’t use your system’s (or even your system-level package manager’s) Python environment for your Python projects.
I get the reasoning but I disagree with this as a blanket statement.
For my own stuff, I stick with certain OS versions that I know and trust. If I standardize on Ubuntu 22.04 for example, I know that it will only ever ship Python 3.10 (plus patch releases). If I ever need another version, that's what the deadsnakes repositories are for. Ubuntu is never going to spontaneously upgrade the `python3` package to 3.11, especially not in an LTS release.
I understand the situation is different on Mac (and possibly Windows?) as they have a history of shipping outdated (and/or broken) Python environments and any system upgrade has the potential to bump your Python version.
Python's virtual environments may be somewhat clunky but it's entirely possible (and not even that hard) to keep project libraries and dependencies completely isolated from the system's with the various venv tools that exist these days.
At work, we have a large in-house ecosystem of scripts, modules, and packages written in Python so it's easier to tell developers, "pyenv is our supported Python environment, use anything else at your own risk."
You’re right of course; I’ve never really used Ubuntu, so I’ve never come to enjoy that level of stability.
I used to have a Mac, which is shipping with outdated platforms, and used Homebrew on it, which has a rolling-release model. I’ve switched to Arch since, which also happens to be a rolling release. That’s the context I’m coming from.
> Ubuntu is never going to spontaneously upgrade the `python3` package to 3.11, especially not in an LTS release.
Even then, your teammate may use a different LTS or even different distro than you do, ending up using a different Python version on your project than you do. I wouldn’t be willing to deal with that drift.
> Python's virtual environments may be somewhat clunky but it's entirely possible (and not even that hard) to keep project libraries and dependencies completely isolated from the system's with the various venv tools that exist these days.
Absolutely. However, even when using venvs, I still don’t want my venv to point to /usr/bin/python. Hence the `pyenv install -s && pyenv exec pip install poetry && pyenv exec poetry install` instead of just `poetry install`.
Windows doesn't ship Python out of the box at all, so there's no "system-level Python" there. The closest you can get to that is installing it from the app Store, but each major Python version gets a separate package there.
A solution to this is for creators to make the same move as ecommerce businesses going from Etsy to Shopify. Getting closer to the money and having patrons pay them through their own domain. I believe in this idea so much that I built a solution for creators who want to do exactly that -> https://jetpeak.co
Policy interest rates have wide reaching impacts across society, sometimes second and third order effects that can be hard to predict. Generally though, increasing interest rates encourages more saving instead of borrowing. Less borrowing means less aggregate spending. The overall effect is that people buy less stuff (lower demand). This lowers prices if the supply stays the same.
"Properly" is a debatable term in the world of economics since its not a hard science. The best we can hope for is to gather many different perspectives and combine them into a reasonable blended average.
If it helps you at all, I just published a new post on rising interest rates, what effects they might have and how you might cope better with them: https://ericvanular.com/rising-interest-rates
Big fan of SQLAlchemy & Alembic as well - I had originally assumed that these tools were for people using Flask and the like. Curious how you use it with Django? Django has a built in migration manager or so I thought
We had a PHP app with MySQL and built out our new user management and billing in Django with Postgres.
I created SQLAlchemy models to map the PHP MySQL tables to Python, implemented the Django password hashing steps in PHP and let both apps access both databases as we slowly ported things to Django.
It worked very, very well even given the complexity. And running migrations all from Python kept it all in one spot conceptually.
Thanks for building Backblaze. If you're able to share some feedback with the team - this is an extremely important factor. If you can ensure downtime is avoided during maintenance windows, it will make your service much more viable for production systems
This is an unreasonable expectation. The whole point of a maintenance window is to allot an expected time when there might be downtime.
Otherwise, the maintenance window becomes 24hx365, since "ensuring downtime is avoided during maintenance window" means literally - make a maintenance window have the same uptime as non-maintenance window.
It's not necessarily unreasonable, it just depends on what kind of product they want to offer. S3, Google Storage, etc. do not have a maintenance window that I'm aware of. That's not to say they would never go down, but if they do you would expect an alert and an apology, at least. Many application require this kind of expected uptime, but of course there are others (backup, etc) that would not.
If you have some umm other useful tips for that 100% uptime let the rest of the world know. I am more happy with realistic and upfront statements from B2 than some wishful thinking from potential users.
Great to see more funding pouring into this space. Getting capitalism financially aligned with climate action is going to the critical lever. If you'd like to put your money where your mouth is, check out https://enviro.work to find work opportunities related to sustainability. (disclaimer: I'm the founder)
2020 has brought permanent change to the working world and the way that economic incentives are pointed. In this post, we walk through how the effects we’re starting to see today will reward those who can position themselves well in the next couple of years. A vaccine is starting to be deployed as of the time of writing and we can imagine how a post COVID world will play out. Having worked with data for some time, I can confidently say that forecasting is generally wrong for most things - but forecasts that anticipate how incentives will affect behaviour are usually right...