Over the course of the past 3 years, I’ve been creating a lot of content.
- YouTube videos
- Blogs for myself and various vendors
- Speaking internationally
One thing that I’m constantly thinking about is does creating content means I’m losing my engineering chops?
I’ve battled with this thought process for a while now and to be honest, it’s probably why I’m still consulting (I consult roughly 10 hours per week creating cloud services in AWS and writing automation code, primarily Python and Terraform, for production-level environments).
I’ve come to the conclusion recently, literally this week, that perhaps the thought process of I’m losing my engineering chops is incorrect. I’d like to explain why.
Content Code vs Production Code
One thing I found while consulting and creating content is this – the code I write isn’t much different.
When I’m creating content on say, Terraform or Python, I’m still following all of the proper production-level standards:
- Writing good tests
- Ensuring I’m using the language standards (like PEP8)
- Ensuring the code is secure and stored in source control
- Creating PRs and good commit messages
- Creating clean code that others can easily read
etc. etc… you get the point.
Another thing I do is, pretty much for all of my content, I create real-world scenarios for the content. The real-world scenarios come from my years as an engineer, consulting, and seeing what people are looking in terms of a solution. For example, I’ll browse Reddit or consulting job postings to see what organizations are looking to create for a project/environment, and then I’ll create the solution myself for my content.
If you think about it, realistically, the approach I’m taking for my content isn’t much different than if I wrote the code for an organization. The only difference is I’m doing it under my accounts instead of theirs.
Content vs Production Environments
When the big thing to create content for was on-prem solutions, like Windows servers, Linux servers, ESXi, Hyper-V, etc. it makes sense that the content couldn’t be like a production environment. After all, I doubt anyone was creating content that contained 50 servers for high availability in a data center somewhere.
With the cloud, it’s quite different. My AWS account that I’m creating services on isn’t different than an organization’s AWS account. I’m still using all of the AWS best practices, setting up proper AZ scaling, auto-scaling groups, multi-region, etc.
When it comes to creating content for cloud computing, the services and solutions you create won’t be far off.
Another thing to think about is this – how many times have you worked at an organization that was using the architecture to build a solution for their environment from AWS architecture diagrams? Engineers didn’t write those example architecture diagrams, content creators did.
Mindset Is the Same
I’ll admit that there are content creators that primarily focus on creating content and training for certifications only. When that’s the case, a lot of the content doesn’t come from real-world scenarios (although it absolutely can). Its sole purpose is to teach someone what they need to pass the test.
Although, this can vary on the certification. Let’s take the Kubernetes certifications for example. They aren’t multiple choice. You have to be inside of an environment, on a terminal, writing the commands needed and actually creating a solution (I certainly hope more certifications follow this path…). If that’s the case, the content creators need to teach students how to use Kubernetes, not just the theory.
When content creators are creating content around using a specific cloud service, writing an app, writing automation, and many other scenarios, a lot of those ideas (at least for me) are coming from real-world solutions and scenarios that I’d like to solve, sometimes out of morbid curiosity and sometimes I read/see/hear about an issue an organization is having, so I solve the problem in my content.
I’ve struggled with the idea for a while that I need to consult to create good content, but what I’m finding throughout my journey is that’s not the case. I can take the same engineering mindset and same scenarios as organizations are solving to create my content.
Here’s the bullet list that I came up with to create this blog post.
- Content code can be production level
- Content creators can create scenarios that are real-world based
- Content creators can follow the same steps as an engineer would to write their code
- There’s really no difference between a content creators code and an engineers code if the content creator creates it at the same level
- The workflow from an idea/vision perspective to getting it into code and out in the wild is the same process
- When you really think about it, if you’re a content creator that’s creating cloud and coding real-world projects, the only difference between the content creator and an engineer at a full-time job is where the code and cloud services are sitting