Question: Had requirement to change the pod or deployment name.now when we deploy,we have 2 deployments and 3 pods each with old and new name 
So far i was deleting the old deployments manually.

do i need to manually delete the old deployment and pods or is there a better method?

Answer: 
You declare your `__init__` as `staticmethod` and so there is no `self` (or in your case `rec`) argument passed into your constructor when you create an object of your class.

```
k = Recorder() <--- will pass a reference, typical named self, into your __init__

```

Please take a look at 

1. [this](https://stackoverflow.com/questions/45505605/python-class-constructor-static)
2. [or this](https://softwareengineering.stackexchange.com/questions/380210/why-isnt-there-a-static-initializer-in-python)
3. [and this](https://realpython.com/instance-class-and-static-methods-demystified/)

when you want to use a static constructor.
There many problems in your code and one of them is that, the first argument of member functions must be `self` (like the `this` pointer). This is because, python's philosophy is,

> 
> Explicit is better than implicit
> 
> 
> 

In general, a python class looks like this:

```
class MyClass:
    def __init__(self, val):
        self.val = val

    def getVal(self):
        return self.val

    def setVal(self, val):
        self.val = val

obj = MyClass(5)
print(obj.getVal()) # prints 5
obj.setVal(4)
print(obj.getVal()) # prints 4

```

When you refactor your code to the above grammar, your code would start working. Also, do pick up some book that gives you an introduction to python in a systematic manner :)