Let Me Tell You About My Tool

So, sorry for the clickbait title, but…

How do you convince your bosses to look at some sort of scripting you can do to make the job easier I’m running into a couple tasks at the NewJob that I think I might be able to partially automate via some python scripting*. I can probably bang it together on a laptop (this isn’t exactly Big Data, just text mangling) and I’m keeping it “local” in the sense of nothing that goes outside the company or even directly reaches out to devices for configs.

I did an earlier Javascript tool to automate another text-mangling task, and did it on my own time (only a couple hours) and incomplete, with the disclaimer that I could put more time in if it’s helpful, and what I show is just a proof-of-concept. No real response.

I guess there’s concerns that if everything is automated that’s less jobs for people, but I’m just replacing the boring parts at best. And there’s a lot of work, just not for me right now.

So anyone have any experience trying to convince management to get them resources for something like this? I’m mainly looking at a LAMP stack or Linux account on a VM somewhere, probably a pretty minimal allocation as it’s just running scripts for tools and internal-only.

  • Which means I have to learn enough python, but there’s a pre-existing library for what I need that I can’t find in my prefered tool, JavaScript**

**Anyone got a Javascript library to help parse Cisco IOS config files?

1 Like

Somewhere there is a warehouse filled with documents on best practices, and they all talk about automation, process repeatability, and results reproducability. Present that to them and tell them that if you’re doing something by hand, there’s always the ability to screw something up.

My standard way of tackling this is to produce a management-friendly paper that covers:

  1. Management summary of the problem with the current situation (lack of consistency, overhead of Y hours per day/week etc etc) and expected benefits (consistency, better customer satisfaction, savings of N hours per day/week etc etc)
  2. Expands the current situation, pulling in some of the worst case real examples (it took 3 months to track down the compromised laptop; we shipped a broken laptop and wasted 3 weeks of the staff member’s time diagnosing the fault and putting it right; etc etc).
  3. Details of what the proposal is going to achieve, and how much it will take to implement it (by spending £5K and 3 weeks on this we’ll save an estimated £100K in wasted staff time and free up 2 members of staff for other work)
  4. Some examples, internal or external, where this approach has been used and provided benefits.

In my most recent case we had a situation where it was taking the team as long to document what they had done as do the actual work, and the quality of that documentation was questionable at best. I pulled together a short piece on how we could automate almost all of it, using work I’d done elsewhere as one example and also referencing some commercial reporting tools. That was enough to get approval for a proof of concept, and we’ve automated up the wazoo since (we’re doing with 2 staff now what we’d have needed a few hundred to do back then).

edit: missed a word

1 Like

Tell them you saw a “viral” video about it on YouTube?

Tell them a manager at another company did the same thing and the CEO’s salary tripled?

You can lead a mangler to common sense… Well, actually, you can’t.

@CryHavok’s got it. You will only get management’s attention by framing this in terms of cost/benefit. Trying to go other routes can be actively damaging and can, if your management is particularly jackassy, make it look like you’re dodging work. “Look,” they might think you’re saying, “I took time I could have been doing my job to figure out how to not do my job as hard and I made some nerd stuff! Look at how I’m spending my time nerding out rather than working! Look at how disconnected I am from helping the company succeed! I only help myself!”

Ugh. Bitter memories of IT. Sorry.

Instead, you’ve got to do what @CryHavok says. “I noticed an opportunity for process improvement that could result in N minutes per day of reduction in bottlenecked time, and/or that could result in $X possible overhead savings due to decreased cycle time on Task Y!” and go from there.

Bottom line: if you’re in IT, and it sounds like you are, regardless of the company you’re probably considered a cost center, not a core competency and certainly not revenue generating. As such, every single argument you make about your job—be it a process argument or an equipment argument or anything else—will almost certainly have to be framed in terms of direct cost reductions. And I’m not talking about “you gotta spend more to save more” kind of cost reductions where you present ROI and TCO and show savings over multiple quarters after an up-front increase in costs, since too many middle managers these days only care about that up-front costs. You have to outsmart them at their own stupid bullshit game and trick them into giving you what you want, because 99 times out of 100, they won’t understand what you do or how you do it in anything more than the broadest dumb manager terms, and you’ll come across as the whiny IT nerd who has no idea how business works and just wants more shiny toys.

Ugh again. Maybe I spent too long working in dysfunctional IT environments.


Error on Line 19. Statement requires the existence of a functional IT environment.


I think what I’m going to do is do a sort of ‘clean room’ prototype. Basically, maintain the wall between work and home until it’s been given official blessing. So for my test config, use home stuff. Nothing that could be considered ‘company secrets’ at all. Get it a bit polished, then present to my boss and see if it flies.

I go stealth for this sort of thing. Easier to beg forgiveness and all that.

Write the script and anytime you have to perform the task, use the script to do it instead of doing it manually. After a few cycles, go to management with documentation of the time required to do it manually, then say “oh, and BTW the last 6 times I did it, it took 20% of the time because I wrote this script.”

This also assumes that you work within a ticketing system where the time for such tasks is recorded. That really helps with the documentation.