"I don't know what still newer marvels will make writing twice as easy in the next 30 years. But I do know they won't make writing twice as good. That will still require plain old hard thinking [...]." - On Writing Well by William Zinsser
Natural language is an omnipresent interface. We use it in our lives every single day, and we've yearned to use it for technology in the same way. Large Language Models are the bridging stone getting us closer to that wish. Yet, many of us, including myself, are not proficient in using this interface particularly well. Luckily, society has had many years to reflect on this topic.
While traveling to Japan, I started reading William Zinsser's On Writing Well. The introduction made me pause. In it, he describes how the arrival of word processors triggered two opposing developments: Good writers got better and bad writers got worse. It was not because words changed. Instead, by lowering the barrier to writing, the new technology introduced a non-obvious catch. In his own words:
"Nobody told all the new computer writers that the essence of writing is rewriting. Just because they're writing fluently doesn't mean they're writing well."
Writing is not getting clearer by adding an increasing amount of words to it. Good writers know they need to experiment, revise and reshape their creation until every element serves a purpose. Computer screens avoided the need for retyping, making them faster and better.
Something similar can be observed with the emergence of low-code and no-code tools. Creating applications or any automated business logic became easier than ever to transform ideas into working solutions. The number of deployed automation increased as the barrier of entry drastically decreased. It is no longer required to study different types, methods, and algorithms, as well as the strengths and weaknesses of the language in which they've been embedded. You can simply start building. But what is true for writing is also true for software development: Just because they're developing fluently doesn't mean they're developing well.
Well-crafted software is not just a combination of individual features stitched together. It is an enabler for scalable value creation. Therefore, with low-code and no-code platforms rising, the same thing happened again: Good developers got better and bad developers got worse. Low-code does not mean either the problem or the solution is low-complexity. Often, these platforms lower required implementation efforts, allowing good developers to focus more on experimentation, refinement, and improvement - until every element serves a purpose.
In contrast, other developers stop working on a functionality once they see the expected results. Why bother with it any longer if we can add more logic to it at any given time? The user experience, however, will differ with both approaches, similar to how some texts or books are more enjoyable than others.
Low-code does not mean either the problem or the solution is low-complexity.
Considering both examples, there might be a pattern that has less to do with the advancement of technology but rather how we humans react to them. Generative AI will again be one of these advancements that will reduce the barriers to creating: Be it content, applications, or, more broadly, experiences. As history often rhymes, I'm willing to bet that two things will happen again: Good creators will get better and bad creators will get worse.
Creating any type of experience will be simpler than ever before. Chain any number of words together, and you will be given output in your desired medium. However, while some people will use this to rapidly experiment, iterate and revisit how they create novel experiences, others will chase the latest blueprint or mega-prompt instead. They will apply them to recreate different variations of the same, over and over again.
What do I expect to be the differentiation factors between those two groups: The ability to form and formulate clear thoughts. The combination of strong thinking and good communication will remain the craft to hone, with Generative AI being the lever to provide unprecedented levels of impact.
The remaining question is: Do you want to treat it as a craft to be mastered or a tool to be used only when needed?