Dammit Jim, I’m a Network Engineer, Not Leo Tolstoy

As the date of my R&S Lab approaches, looking at practice lab diagrams, specifications and instructions left me thinking about documentation.  I have always been of the opinion that documentation should be effective but minimal, but this has been at odds with the philosophies of documentation I have come up against professionally over the years.

This stems from a perhaps unjustified belief that someone who is going to look at my documentation in a professional capacity will know what they are doing.  I have always thought that when presented with a clear, detailed network diagram, showing interfaces, circuit IDs, IP addresses and VLAN information and access to the archive of device configurations, the experienced engineer should be able to formulate a reasonable knowledge of the network in short order. Of course, all networks will have their oddities, which may need some more detailed exposition. And one of the most common things I have been asked to explain over the years is why someone who had long-since retired did something in a particular way, especially if that configuration was entirely reasonable at the time but now, ten years down the track, it may seem anachronistic.

But I maintain that effective documentation does not have to be, to use the classic cliché, War and Peace.

However, I have come up against a culture where my philosophy of documentation, which may be characterized as “writing for the competent” has met resistance.  I think the assumption by the War and Peace school of documentation has been that network issues or implementations need not be attended to by networking professionals; that with a sufficient level of detail, the network may be rebuilt after the nuclear holocaust by the last surviving mutant janitor.

Which of course misses the point that when all you are doing is cribbing from a detailed set of instructions (which in my experience reached the absurdity of actually documenting each command entered to perform any given task), any deviation or anomaly requires a level of experience to resolve which obviates the need for the level of detail in the documentation.

There needs to be a happy medium in the network documentation.  You can’t go too far in the minimalist direction, or the some of the finer detail may get lost, but too much documentation quickly becomes redundant.  And if the level of documentation required is too onerous, then busy network engineers will not have the time to keep it current, especially if the network is even slightly dynamic.  It is amazing how much useful information you can fit easily on a good diagram using good tools, especially if the hard copies desired by the documentation nazis can be printed in A3 or larger.

To make a further literary allusion, all the mariner asks is a tall ship and a star to steer her by.  All I ask is a good diagram detailing the L2 and L3 information, a configuration archive and a good dose of experience.

Of course, as someone who worked on four generations of the same network over fifteen years, and could tell you the IP addresses of every switch and give you the reason why that particular addressing scheme was used in that building in 1998, maybe I am a little myopic here.  Maybe my assumptions about competence and experience are old hat in the modern world where the specialist skills are being devalued and we really will need the gardener to be able to configure OSPF from your doco in a radiation-blasted hellscape.  Feel free to comment.

About Matthew Mengel

Matthew was a Senior Network Engineer for a regional educational institution in Australia for over 15 years, working with Cisco equipment across many different product areas. However, in April 2011 he resigned, and is took seven months of long service leave to de-stress and re-boot before moving back into the job market. Currently working as the Network Engineer for a non-profit organization, he is studying for the CCIE R&S. He does Warhammer 40K miniatures painting for which he has little talent, but enjoys nonetheless. Astronomy is another interest, and he completed a Master of Philosophy in Astrophysics in 2005. He is on twitter infrequently as @mengelm.

  • http://twitter.com/ssl_boy Glen Kemp

    Great post, “writing for the competent” is my new favourite phrase; and I hate that the expectation that experience can be cancelled out just writing everything down as verbosely as possible.

  • http://twitter.com/cloudtoad Derick Winkworth

    here come the “if only” comments…  ”if only then we would all be in pure documentation nirvana…”  

    I agree with this post.  Especially the “last surviving mutant janitor” comment.  I’m not writing a textbook on the magic of packets.  At some point the supporting engineer has to exercise their existing knowledge of networking and their ability to look up information in vendor docs (both Cisco and Juniper have fantastic free on-line documentation) to solve problems.

    Apple said to “THINK DIFFERENT.”  I’d like to shorten that to just “THINK.”

  • http://etherealmind.com Etherealmind

    I’ll would take a slightly different view here. I think Matthew is talking about Network Documentation – and broadly agree. I feel that Network Documentation need only three things. 

    - diagrams
    - bullet points
    - tables

    Importantly, no adjectives – nothing in a network document should need description – therefore I agree with “writing for the competent”. 

    However, you also need to communicate with fellow workers by email. Or write proposals, or initiate ideas, and build consensus or support for an idea. Now, this is where you need to write more like, say, Neil Gaiman or Robert Heinlein (Tolstoy is very boring). 

    In this sense, good communication never goes out of fashion and good writing can get you what you want !

    • http://packetpushers.net/author/ecbanks Ethan Banks

      I have spent lots of time writing e-mail to coworkers that go unread, so while I believe in the concept, I’ve gotten cynical about it.

    • Matthew Mengel

      Or, better yet, write as Dostoyevsky.  As I once heard it said, that man knew his way around long-winded misery.  Sometimes appropriate for what we have to deal with…

    • Matthew Mengel

      You are right; I was referring to documenting our own work for the benefit of ourselves and those who come after us, but I wholeheartedly agree that for the wider audience, the style of writing needs to be different.

  • http://packetpushers.net/author/ecbanks Ethan Banks

    I have two flavors of documentation I write. One is for the network staffer who needs context, reassurance, and detail to be confident in whatever task is outlined in my document. I think of it as a mentoring document. I write those to establish a baseline with the person. “Go search for blah-blah in the wiki, read it, and then come back to me with your questions.” I have also used those sorts of documents as a basis for training. I don’t write many of those. They take forever, they are a pain to maintain, and they are underappreciated.

    The other flavor I write mostly for me…or to widen it out a bit, I’m “writing for the competent.” Those are detailed only where necessary (IP blocks, VLANs, circuit IDs), and explanatory only when the logic implemented in a given solution is suspect or just plain weird. “The user authenticates through the proxy server, but the auth module was incompatible with the prod RADIUS box, so we nailed up a quick MS IAS box to overcome the issue and make the project deadline. And that’s why I hate blah-blah…etc.” You get the idea. I want that document to be quick and dirty, remind me of why I did what I did six months or a year ago, and speak my language.

  • Anonymous

    …but think of that poor last surviving mutant janitor. *tear*

  • Markh

    Gail wants “total brain-dump” documentation so she can completely hand-off (abandon?) responsibility for bank functions (& of governance?).
    I think it’s highly unlikely anyone would accept a realistic budget for the time required to do this.
    I don’t have specific knowledge of WBC but it’s highly likely the starting point is patchy at best and significant amounts of the knowledge vanished with wave after wave of staff turnover from WBC & it’s outsourcers.
    Good luck with that !

    http://www.theaustralian.com.au/australian-it/it-business/westpac-spruiks-bestsourcing-plans/story-e6frganx-1226184144664

  • Anonymous

    I agree, network docs should be short and to the point, also like Ethan said…only detail the oddities. 

    But here is the issue I see and have seen. Mr. John starts at company X, company X gives Mr. John the network diagram designed by the engineer who has been at the company for 50 years and then ask Mr. John to support the network. 

    The problem is, the diagram is either outdated, or lacks significant information because the engineer took too many things for granted because he has worked at company X for so long. 

    While the documentation should be short and concise, it should be made from the viewpoint of a new engineer coming into the fold. You can’t all the information floating around in someones head. 

  • Jim

    Sounds like you were not able to handle the work of a Network Engineer; you quit after 15 years, you pansy!