What I'm Learning
The Conflict
In my quest to becoming ultra-knowledgeable and super good at everything networking and servers, I find that I often try to learn too many things at the same time. I find that this leads to lower information retention and general disorganization, which ironically detracts from my ambitious goals.
As I discover this about myself, I am trying to get resources to navigate this better (oh the irony) and I think this quote from The Organized Mind sums it up pretty well:
“Trying to do too many things at once actually diminishes the quality of our work. Multitasking is not a virtue; it’s a hindrance.”
With this in mind, how do I approach learning in a simpler and more effective way? First, I am defining the scope of how I want to use each tool. Once I have this scope, the learning will come easier with doing.
Starting with What I Have
To start off, I have a computer that is built from hardware that I scavenged from older projects—whether that be a custom gaming PC or a test-bench PC that I used for testing and benchmarking GPUs. Here’s the hardware:
- Gigabyte B450M motherboard
- AMD Athlon 3000G with Radeon Vega graphics
- Team T-force 16GB DDR4 3200 RAM
- 240GB M.2 SSD (boot drive) + 4TB HDD
- EVGA 550 G3 PSU
- All inside the Silverstone SG11B Case
While not glorious or state-of-the-art equipment, it is very capable of giving me a jumping-off point to learning a lot of the skills that I want to gain.
Learning Linux
Scope: Understanding Linux for everyday use and system administration, focusing on command-line proficiency, scripting, and network management. I am using Ubuntu Desktop as I already have some familiarity with it from my first years in college.
- Where I’m at: Learning and practicing basic commands and file system navigation via the terminal.
- What I’m Learning: How to write shell scripts to automate repetitive tasks and improve efficiency.
- Where I’m Going: Use this as my base home server, manage user permissions, and configure network services.
Learning Docker
Scope: Using Docker to create, deploy, and manage containerized applications, while gaining more insight into how containers work.
- Where I’m at: Installed Docker on my existing setup and running simple containers. Redeploying applications such as Plex in a Docker container that isn’t borked (whoops) to understand the workflow.
- What I’m Learning: Full utilization of Docker Compose and multi-container applications.
Learning Ansible
Scope: Leveraging Ansible for automation to streamline and manage network infrastructure tasks, from configuration management to application deployment.
- Where I’m at: Installed Ansible and wrote basic playbooks to automate updating and upgrading packages on a single device.
- What I’m Learning: Using Ansible to manage configurations on my home network, including updates and security patches.
- Where I’m Going: Still exploring what i would utilize this for as my setup is very small at this point.
Putting It All Together
By focusing on these specific areas and using my existing hardware, I can create a structured and practical learning path. This approach helps me avoid the pitfalls of trying to learn too many things at once and allows me to build a solid foundation in each area.
With a clear scope for each tool and a practical setup to apply my learning, I can stay organized and make meaningful progress towards my goals. This method not only enhances information retention but also keeps me motivated as I see tangible results from my efforts.
Conclusion
In my quest to become ultra-knowledgeable and proficient in networking and servers, simplifying my approach and defining clear goals has been crucial. With a focus on Docker, Ansible, and Linux, and leveraging my current hardware setup, I am well on my way to achieving my ambitions. Remember, it’s not about how many things you learn but how well you learn them. Focus, practice, and persistence are the keys to success (I hope). Thank you for coming to my TED talk 😉