In Greek mythology, Sisyphus or Sisyphos (/ˈsɪsɪfəs/; Ancient Greek: Σίσυφος Sísyphos) was the founder and king of Ephyra (now known as Corinth). Zeus punished him for cheating death twice by being forced to roll an immense boulder up a hill only for it to roll down every time it neared the top, repeating this action for eternity. Through the classical influence on modern culture, tasks that are both laborious and futile are therefore described as Sisyphean (/sɪsɪˈfiːən/). [credit Wikipedia]
There are a lot of times I have heard of people in web and software development feeling that their efforts reflected those of the above described mythological king. Even though I have only been in the industry a short while I myself have even seen glimmers of it in my own undertakings. The subject is one made up of a huge number of languages, libraries, frameworks and patterns. Surely impossible to know completely. But here is why that shouldn’t get you down.
Imagine you are Sisyphus. You struggle with all your might to get that stone up the hill, and it does get up the hill. That is progress, regardless of being faced with the stone back at the bottom of the hill at the start of each day. The previous day was not a waste because you proved that the stone can, in fact, be moved. The trick is to recognise both the futility along with the laborious nature of the task. Recognise and accept them both.
Consider the stance of the famous French philosopher Albert Camus. Known for being a great influence on existentialism, which is define as “a philosophical theory or approach which emphasizes the existence of the individual person as a free and responsible agent determining their own development through acts of the will.” It is actually a character from one of his most famous writings The Stranger named Meursault that I want to remind you of. He is the reason that this book became my all time favourite book and the thing that I learnt from him, and in turn hope to pass on to you, is that life really “is what it is”, nothing more and nothing less. This is what I think you need to remind yourself of when facing a seemingly impossible task. It might be impossible to complete to perfection, but so what? You can still do it, and when you do, you’re very likely to get something out of it. But you mustn’t forget that it is, to a degree, ultimately futile and ensure that you stop when you’ve done enough. Thanks to it all being a little pointless, you are totally in control of when is enough.
When you take this level of control over your actions, it becomes part of the reward of those actions. Choose to struggle, because it is one of the greatest teachers, but take your lesson and go. You are not futile because the task is, you are making yourself better, stronger and smarter by going through the exercise.
As I’m writing this my internet connection is becoming increasingly unreliable and I’m likely to loose most of what I’ve written. I will continue writing because it will ultimately help me to become a better writer. Maybe teach me the lesson to plan better, make notes first or a draft. Maybe be more prepared and plug an ethernet cable in and don’t trust the awful router we have in the house. See? lessons in struggle.
In closing, my main points are;
- This industry is hard, but learn as much as you can anyway
- Be sure to control when you stop between efforts
- There are plenty of lessons to be learnt in “failures”
It’s widely laughed at, the cyclic nature of the technology we’re all here trying to build. I’ll leave you with a great (and fitting) cartoon/chart I came across while putting stuff together for this.