Fundamentals vs. Knowing your Tools

The fundament upon which all our knowledge and learning rests is the inexplicable.Arthur Schopenhauer

There have been some recent discussions on my radar around knowing your fundamentals versus knowing how to operate certain tools/software/etc. like an expert.
This drove me back to my experiences with programming in high school and what I later found out about networking/technology in general.

When I first learned a programming language (BASIC and later on PASCAL/Delphi) I had sometimes problems to grasp what certain things I typed into the source code file really meant. And to be honest – I still have my problems when it comes to object-oriented programming and concepts related to this.
But then I started working on a private project with PHP and thought it would be fun to learn some C++ – and suddenly I realized:
In some way this is all the same!”
Well – I later learned, that it is all rooted in the same concepts and methodologies and only the implementation in a certain language differs (but even those lines are blurry for a majority of programming languages) – So I had this moment, where it made “click” and from that day, I really don’t had any problems with programming anymore.

Of course I’m not a programmer nowadays and I don’t want to become one either – it is simply not for me – but fairly recently I had a similar experience to what I just described above:

When I had my first sysadmin/network admin job I was all about getting into the CLI and the nerd knobs – there was nothing else and I pictured myself as the guy who would become an expert in the tools I had at my disposal. But the more I learned about the standards and protocols – the fundamentals – behind all this, the more I realized:
This is somehow the same as the programming thing
– and this drove me into the direction of getting more into the fundamentals and ultimately into design/architecture and how it all relates to business.

So the question that remains is: What is more important? Fundamentals or knowing how specific tools work?

My answer is: Both.

For some people it can be the same as for me:
From specific to more general (and in that way being able to apply something you learned in the past to the new shiny toy). Learning how to operate a specific product/technology can help understand how the underlying concept was meant to work, after all.

For others it will be sticking with the tools and relearning them again and again in a way, when there are updates and replacements – which is OK, too. Because those people know the tiny bits and problems you could have with this device/tool/software/etc – and this knowledge is needed to in todays complex technology landscape, too.

In the end, everyone has to find out, what’s most interesting for his/her own development and as a daily (work) driver.

If you are more interested in the topic and what other, more smart people than myself think about this, I recommend you check out these two podcast episodes:

Heavy Networking Episode 502 from the PacketPushers:


The Hedge Episode 30:

And feel free to hit me up in the comments or on Twitter / LinkedIn if you want to share your own thoughts on this with me.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: