From unconsciously incompetent to consciously incompetent
One of the cool things about software development is that despite writing code for 5 years professionally and just under 10 altogether, there are still a phenomenal number of things that I don’t know how to do.
The learning opportunities are vast!
One of the areas which I’ve known I don’t know that much about is Unix command line tools such as awk and sed.
Since the majority of projects that I’ve worked on have involved using Windows as the development environment I’ve never had extended exposure to the types of problems we get on a project which require their use.
I’ve finally got the opportunity on my current project and my colleague Priyank and I have been looking to use those tools wherever we can.
We’ve learnt how to do some very basic commands with both the tools and although those few command have been very useful for allowing us to quickly manipulate text files we didn’t quite realise how little we knew until coming across Eric Pement’s 'useful one-line scripts for Sed' article.
I knew that Sed and Awk were powerful tools but I had no idea that you could do this many things with them.
I’m now reading the sed and awk book so that I can close this gap in my knowledge and trying to use these tools wherever possible even if it does slow me down a bit initially.
In terms of the four stages of competency model I would say I’ve moved from being 'unconsciously incompetent' with respect to sed and awk to being 'consciously incompetent'.
Now I just need to reach competence!
About the author
I'm currently working on short form content at ClickHouse. I publish short 5 minute videos showing how to solve data problems on YouTube @LearnDataWithMark. I previously worked on graph analytics at Neo4j, where I also co-authored the O'Reilly Graph Algorithms Book with Amy Hodler.