Expressiveness comes later

2020-04-11 12:10

When I was young and was into graffiti I tried to find my own style. I liked some things but ultimately I wanted my work to look like nothing else. My problem was that my skills were not good enough. I never wanted to copy, I don't know if I felt some prejudice against that (likely) but also it was not very interesting to me. Of course I had to but I still struggled to connect things that I imagine with things that I was making, I just couldn't imagine with enough precision and breadth which physical world requires.

Things have been different when I became a programmer. Not only copying is acceptable, it is ultimately a good practice. Originality is generally not encouraged, uniformity is. Following "best practices" is how people learn and to things.

Yet no to programs look the same. If you two people write a program which does the same things you are likely to end up with two quite different programs, especially if program is non-trivial and programmer is skilled. Why is that? Shouldn't we all follow the same things? That's the most common misconception about programming: people thing that we write for computers. "Programs are meant to be read by humans and only incidentally for computers to execute." I am not a fan of Knuth and I was conflicted and offended by it when I first read it. "What a waste" I though. After years I started to think that Knuth doesn't mean it literally, I interpret it as "write readable code first, optimize later if needed".

But that's not how many people (and all beginners) write programs. They try to make it work and that's it. That's a very low bar in my opinion. What one should try to do is write a story. Guide your reader. Make accents. Separate it into logical pieces. Magically this often evokes the best design. It sounds like a lot of work but it doesn't have to, it's just another approach, more top-to-bottom one.

But you certainly need a skill for that. You need tools to be able to express yourself. When you can write a thing in many different ways, you need to know what you can and cannot do and what works best with what. That's my point. To be able to express things, you need to develop a language first. To tell a story, you need to learn words and phrases, how they work together and how to compose them. That's pretty obvious but I need to remind myself constantly. I learned a great deal about music and sound design recently but I still struggle with expressing myself, if something clicks, it's accidental, I didn't intend for that. I can try to do top-to-bottom but if I don't have control over details, it won't work, I have no choice but to submit to what works and that may be not what I want to say. I don't have my musical vocabulary to say what I want and I wanted to remind myself of that. Bridging the gap of those details with your vision is the essence of creative process in my opinion.

I don't argue that all the things should be done this way. I generally don't write this way, it's a stream of consciousness and I like it this way (or my brain is just damaged by microblogging beyond repair, you decide), I feel like it's more authentic and I also have little choice - I never studied how to write and I don't have tools to invoke feelings in you. I use them but they are based only on my limited intuition and experience, I don't tap into that vastness of writing knowledge we accumulated throughout history.

There's this moment in Whisper of the Heart where the old guy shows young writer a geode and says that he likes raw, unprocessed things the most.


I could always relate a lot with this.