#python
Tag
-
Python version epochs are broken
In PEP440 Python introduced Version Epochs as a mechanism to allow projects to change versioning scheme.
-
A beginner's guide to managing Kubernetes resources in Python with kr8s
Managing Kubernetes resources with Python has never been easier thanks to the kr8s Kubernetes client for Python.
-
Running Dask on Databricks
Databricks is a very popular data analytics platform used by data scientists, engineers, and businesses around the world.
-
Running Dask workloads on multiple cluster backends with zero code changes using dask-ctl
Sometimes you want to write some code using Dask which can then be run against multiple different cluster backends.
-
EffVer: Version your code by the effort required to upgrade
Version numbers are hard to get right. Semantic Versioning (SemVer) communicates backward compatibility via version numbers which often lead to a false sense of security and broken promises.
-
How to get typer to show help by default
I love using typer for creating CLI tools in Python. It makes creating complex trees of subcommands really straightforward.
-
Comparison of kr8s vs other Python libraries for Kubernetes
I’ve been working on kr8s for a while now and one of my core goals is to build a Python library for Kubernetes that is the most simple, readable and produces the most maintainable code.
-
Livestream notes: Replacing aiohttp with httpx in kr8s
This post will be updated with notes from the livestream throughout the day. Today I will be streaming some open source code refactoring.
-
Introducing kr8s, a new Kubernetes client library for Python inspired by kubectl
For the last few months I’ve been tinkering with a new Kubernetes client library for Python called kr8s.
-
Debugging Data Science workflows at scale
May 12, 2023 15 minute read #python, #dask, #kubernetes, #apache-beam, #google-cloud, #google-kubernetes-engineThe more we scale up our workloads the more we run into bugs that only appear at scale.
-
Sometimes I regret using CalVer
Over the last few years, many open-source Python projects that I work on have switched to CalVer.
-
Using Dask on KubeFlow with the Dask Kubernetes Operator
Kubeflow is a popular Machine Learning and MLOps platform built on Kubernetes for designing and running Machine Learning pipelines for training models and providing inference services.
-
How to set environment variables on your Dask workers
When working with Dask clusters you often need the remote worker environment to match you local environment.
-
Branding your open source Python package
Having a brand can help give your open source project some legitimacy, and you don’t need to be a designer to see these benefits.
-
The evolution of a Dask Distributed user
This week was the 2021 Dask Summit and one of the workshops that we ran covered many deployment options for Dask Distributed.
-
Building a contributor community for your open source project
With our open source project published on GitHub we probably want to allow folks to contribute changes.
-
Communicating with your open source community
Once your open source Python project has users and a community you will likely want to communicate with them in an official capacity.
-
Building a user community for your open source project
Now that our open source Python project exists and users can install it we will want to turn our attention to sustainability, reach and ongoing maintenance.
-
Documenting Python projects with Sphinx and Read the Docs
In part four of this series we discussed documenting our code as we went along by adding docstrings throughout out project.
-
Automating releases of Python packages with GitHub Actions
In this post we will cover automatically packaging and releasing our project when a new git tag is pushed to GitHub.
-
Testing and Continuous Integration for Python packages with GitHub Actions
In this post we will cover automatically running our tests when we push new code to GitHub, and when contributors raise Pull Requests against our project.
-
Awaitable Objects and Async Context Managers in Python
Python objects are synchronous by default. When working with asyncio if we create an object the __init__ is a regular function and we cannot do any async work in here.
-
Test driven development in Python
What is test driven development (TDD)? Test driven development is a style of development where you write your tests before you write your code.
-
Testing your Python package
In this post we will cover testing our code. Testing There are many many great resources out there for learning about testing software.
-
Documenting your Python code
This post will cover documenting our code. Specifically adding documentation within the code itself. Docstrings Right now our code is undocumented, so if the user inspects our function they will only see the interface (the way you call it) but with no other context.
-
Running Dask tutorials
Aug 21, 2020 20 minute read #python, #dask, #distributed-computing, #open-source, #community, #tutorials ArchiveOriginally published on the Dask blog on August 21st, 2020. For the last couple of months we’ve been running community tutorials every three weeks or so.
-
The current state of distributed Dask clusters
Originally published on the Dask blog on July 23rd, 2020. Dask enables you to build up a graph of the computation you want to perform and then executes it in parallel for you.
-
Publishing open source Python packages on GitHub, PyPI and Conda Forge
In this post we will cover making our code available to people. This is the bit where we open the source!
-
Versioning and formatting your Python code
In this post, we will cover a few project hygiene things that we may want to put into place to make our lives easier in the future.
-
Testing static sites with Lighthouse CI and GitHub Actions
Feb 13, 2020 7 minute read #python, #github, #tutorial, #github-actions, #static-sites, #lighthouse-ciWhen you build a website you want pages to load as quickly as possible for users.
-
Creating an open source Python project from scratch
Have you had a great idea for an open-source Python library that you think people will find useful, but you don’t know where to begin in creating and publishing it?
-
Creating GitHub Actions in Python
Note: This post is also available in Go flavour. GitHub Actions provide a way to automate your software development workflows on GitHub.
-
Cleaning up conda environments
Often when I’m developing or debugging in Python I end up creating throw away conda environments.
-
ChatOps - Automation via chat
Originally published on the Met Office Informatics Lab blog on December 19th, 2017. ChatOps - Automation via chat This article is a companion to a workshop on using chat to automate ops workflows.
-
Getting started with VMwares ESXi/vSphere API in Python
In 2013 VMware dropped their Python library for accessing the API for ESXi/vSphere on GitHub. This is great, however it isn’t the easiest library in the world to use.
-
How to easy_install and pip through a proxy
If you’re trying to install a Python package using easy_install or pip and you connect to the internet via a proxy you’ll need to make a few changes to your setup.
-
Python script: Recursively remove empty folders/directories
So as part of a script I’m writing I needed the ability to recursively remove empty folders/directories from a filesystem.