4 ms·
You've asked the wrong question. The most valuable knowledge skill is being knowledgeable enough to communicate with your audience on their terms. For example
by suprjami 4y ago
You've asked the wrong question.
The most valuable knowledge skill is being knowledgeable enough to communicate with your audience on their terms.
For example, I work on Linux kernel networking, and I'm usually helping people solve problems with that.
I expect an application developer to have some vague idea that their applications make TCP sessions, maybe they've even read a webpage about the SYN and SYN+ACK handshake. I expect them to be able to follow a heavily annotated and well-explained packet capture where I walk them through a problem line by line in detail, and to ask sensible questions if they don't understand.
I don't expect application developers to know all the various corner cases that traffic can be silently dropped by the Linux kernel for a variety of reasons, and be able to use the various Linux tools and debuggers to pinpoint which specific one of those reasons is causing their application problem. That's my job.
Likewise, I think it's reasonable of me to roughly understand the ways that applications are built and deployed, and which programming constructs and libraries are available to the authors. Maybe I can tell them how to manipulate their java.net.Socket object to achieve something, maybe I can suggest they use a connection pool instead of rapidly cycling through new connections all the time.
There are things which are reasonable for everyone within a domain to know, and things which really only specialists know. Being able to communicate that knowledge to and from others is the key.