Of Triggers and Vehicle Shopping

FYI: This is one of my infrequent non-tech posts.

We all have things that set us off…  situations that trigger visceral reactions of discomfort and maybe even anger. And we all handle ourselves differently in those situations. As I get older, I’m working hard to recognize and control reactions to my own triggers. This is for my own well-being and for the benefit of anyone who might also be in the blast zone at melt-down time. Unfortunately there is one scenario I don’t know if I will ever make peace with, and that would the vehicle buying experience.

I’ve never tolerated injustice very well, and I do not like participating in games that have rules that you’re not allowed to really know. I feel revulsion for those who prey on others, and simply don’t tolerate bullshit unless it’s under the heading of fun- and there is nothing fun about being played like a fiddle by unscrupulous humans out to separate you from as much of your hard-earned money as they can through a wide range of despicable tactics. There is  much about the typical car-buying experience that rubs me wrongly as it hits all of the above points. After X trips to the lot over the years and dealing with the process, I no longer even attempt to be civil. I’m not sure my physiology would even let me at this point. I see the lips start to move, and I know I’ve entered The Liars’ Zone, where scruples simply don’t exist.

One example: I recently stopped at a stereotypical sleazy dealership with my wife to get a sense of pricing on a specific truck model. We did a little spin around the block, and before Slicky Boy would even begin to divulge what the mostly arbitrary make-believe price was, he wrote out by hand on a blank piece of paper “Once I hear what the price of this vehicle is, I’ll be willing to make a deal today” or something to that effect, with a line drawn where I was supposed to put my signature.

WTF is THAT? Really- what is that supposed to amount to? Is he stealing my soul by getting my signature on some idiotic hand-scrawled declaration? Somehow gaining control by having me commit to something nonsensical that he hand-scrawled out on paper? Sorry Slick- F U in spades. And your troll manager back in his cave. This was bizarre, there is no other way to describe it.

My wife, being very perceptive, knew approximately what would come next and had the good sense to excuse herself (“uh, I left something in the car…)”. I kept myself together for about 30 seconds and then had to get out fast before I exercised a platinum-grade spewing of some of those special combinations of naughty words I learned during my military career, punctuated with obscene gestures you only come to know by growing up around Italian people. Managing those triggers.

But sooner or later I’d have to face reality again. My 2007 Jeep was showing it’s age, and the need to purchase wasn’t going away. My wife and I both have good jobs, but we also have three kids in college and a range of normal life expenses that haven’t let us amass the kind of dinero that lets you stroll onto a lot and wave a wad of bills around as cash buyers. So unfortunately, I needed something from this tribe of people I generally loath as they practice what to me see seems like government-sanctioned organized crime.

I had to make peace with it all, somehow.

And I did. But first I tried the CarGurus thing, the TrueCar stuff, and similar casting of the net to find “the best” price on what I was looking for across dozens of dealers. I also locked onto in my mind what I was willing to spend with no exceptions whatsoever. I NEEDED to have some control in this horrible process, I realized, but I knew that the enemy doesn’t want you to have any control.

I opted to try to “negotiate” (if you can call what I ended up doing negotiation) 100% online or on the phone. I wanted zero “on the lot” time fighting the fog of price and arriving at terms. Most dealers wanted nothing to do with it, and simply stopped responding after a couple of go rounds because I wouldn’t come to the dealership to get worked despite being very serious about buying a vehicle. Then I found someone who responded in a way that I felt very good about.

Finding a candidate truck with the specs and potentially the price I wanted from Internet scouring, I did the online inquiry by filling out the “I’m interested” form.  A gent named Mike came back via email urging me to come in and test drive it, etc- but I’d already driven these trucks and so opted to tell him “I gotta do as much of this as possible without coming to the dealership, no offense.” To Mike’s credit, he answered all of my questions, did not give off the typical obnoxious/pushy dealer vibe, and got me to the point where I said:

  • I’m interested, but will take care of my own financing (part of the control thing I realized I really needed)
  • Here’s what I will pay between cash down, my own loan, and the trade in of my old Jeep- total, drive it home, not-a-penny more
  • No interest in other vehicles, other finance options, or any further negotiation

It took a few hours and a phone call, but Mike got me. He let me have control, understood I wasn’t doing The Game that his industry fellows would have preferred, but still made it happen.

With this process, I kept my triggers in check. I never felt disadvantaged by a skewed game I’m nowhere near savvy enough to play the normal way. We both did OK in the deal, and I feel like I avoided metric tons of dealer assclownery that would have absolutely set me off me had I tried to get to the same point in person. For me, it really is THAT bad. I’d rather have another vasectomy than play car dealer games. Thankfully Mike was empowered to do it MY way for a change, and I applaud the dealership for helping me to feel like I actually did OK on this one, and on my own terms. And by that, I mean not just price-wise, but also process-wise.

Here’s what I ended up with:


So- if you are in upstate/central/western NY and find yourself in need of a vehicle, I can actually recommend Doan Dodge in Rochester. The showroom is fairly gorgeous, and they obviously move a lot of vehicles. My guy at Doan was Mike Huynh, and I recommend him as well. Which is a first for me, out of the many car dealers I’ve dealt with throughout my life. 

Move Wi-Fi Explorer From Old Mac to New

The Mac laptop that hosts my excellent Wi-Fi Explorer Pro application has seen better days. It’s time to put this awesome WLAN support tool from Adrian Granados on a newer Mac, but I was a bit stymied when I first tried to figure out how. I envisioned some sort of license key transfer, but just wasn’t seeing it… I queried my best WLAN community homies, and dropped a line to Adrian himself. Before a meaningful response came back, I figured it out, and so thought I’d share.

It’s easy-peasy, once you see it.

1. De-Activate Wi-Fi Explorer Pro on Old Machine, under “Help”

Deactivate WFE

2. Download, install trial version of Wi-Fi Explorer Pro on new machine

3. Fire up the program, find these options:

Activate WFE

4. Dig out your license file- search on “Paddle license” in your email:

WFE License

5. Enter the license key and activate the program. 

Like I said… easy.


  • Educational customers get 50% off. Details are here.
  • Everyone who attended WLPC Conference in February ’19 was given a card for a 30% discount on WiFi Explorer Pro. You need the code from the card, and the discount is available until 3/31/19.

Now you now.

Contemplating APIs and the WLAN State of Things

Having just attended the 2019 Wireless LAN Professionals Conference (WLPC), I got a few days full of really interesting perspective from other WLAN doers. I saw and heard predictions, hopes, and fears for what comes next as we roll toward 802.11ax, the coming of 6 GHz spectrum to Wi-Fi, and more widespread use of WPA3. There was a lot of good chatter, because there simply is no conference like WLPC (I recommend it to anyone who is in WLAN practice/management, or over those who who are).

One thing I heard A LOT about was APIs. And using Python to get more out of our WLAN hardware and management systems. And… how “you should all learn to do coding!” I have no issues with any of these, but I also tend to be a 10,000 foot thinker and so couldn’t help but ponder the real-world implications of all that when it comes to how wireless systems are actually run day-to-day. I also found that I wasn’t alone in my contemplation in talking with others at the event.

Let me get right to my points- I have great appreciation for the flexibility and capabilities that using APIs can bring to a WLAN system. But… that is balanced by a number of concerns:

  • If a vendor has historically put out crappy code that is developer-driven versus engineer-driven, how do we trust the developers to get it right when it comes to what data awaits engineers at the end of the APIs?
  • I fear that “and we have an API!” can become a cop-out for NOT putting out a complete enough NMS system for the high costs that you’ll still pay for these NMS systems. As in… “oh THAT feature is leveraged by the API”, and not in the expensive management GUI that maybe now is missing common-sense basic functionality.
  • In some ways APIs-to-the-rescue is a huge step forward, in other ways it’s an admission that vendors sometimes can’t build an NMS that doesn’t suck (because if they could, maybe we wouldn’t need APIs?) Maybe…
  • Not all WLAN staff teams will want to be in the programming business. Time will tell if they will be able to work effectively as they avoid the API and try to stick with the NMS and non-API tools.

None of this is necessarily my own strict opinion as I digest everything I’ve seen and heard at this year’s WLPC, but I heard enough from other people to know that the community is not in lockstep embrace of “API all the things”. Some teams are just stretched thin already, and pay a good buck for vendor tools so they don’t have to become programmers to keep their WLANs on the rails. Then there’s the always-relevant “evolve or watch your career die” school of thought that can’t be ignored either.

Fascinating times. Much change is in the air.

Now onto one of the most interesting things of all that I heard at WLPC: more on Open Config. Mike Albano from the Enterprise side at Google planted some fascinating seeds back in 2017 with a presentation he did at that year’s conference:

Introduction to OpenConfig; What Is It, What Does It Mean To Wi-Fi | Mike Albano | WLPC 2017 Phoenix from Wireless LAN Professionals on Vimeo.

Mike was on the stage again this year doing a little follow up on progress made with Open Config. He also participated in a Whiskey and Wireless Podcast with a couple of nicely-hatted lunatics and shared even more with an eager audience. I suggest you keep an eye out for both his recorded WLPC presentation and the podcast to come live (I’ll add the links here as well), because Open Config is the API concept on steroids. As mentioned in the 2017 video, but expanded on this year, Open Config seeks to make the software side of many vendors’ wireless offerings largely irrelevant. You gotta hear it.

Given that we’re in an era where WLAN vendors have declared themselves “software companies” who happen to put out some pretty crappy software and then charge through the nose for it, Open Config is interesting for reasons far beyond it’s API-ness.

Like I said, these are fascinating times.

Of Time Travel and Heartstrings

WARNING: This piece is not about wireless or technology per se. It’s a bit of reflection on life stuff shared with anyone who feels like reading. Apologies for the detour from tech, and I promise to get back to it with the next one.

Before I dig in with the heavy stuff, let me give some background. I was born in the late 60’s, graduated high school in the mid-80s, and did a decade in the Air Force. My wife and I have been married since our young 20s, and had three kids. Two are on the final leg of their PhD studies, and one is finishing undergraduate this May. Got all that?

Now think for a second about cameras, and how they’ve evolved.

The Badman Family Film Era

After almost a year of Air Force “tech school” for Electronic Warfare, I found my 19-year-old self at Clark Air Base in the Philippines. I had a paycheck, an interest in photography, and access to really nice camera equipment at a fraction of what it would cost in the US. I picked up a Canon AE1 Program and some nice lenses, years and years before digital cameras were a thing. Oh yeah- I forget to mention that it was dirt cheap buy film and get it developed in the Philippines, which was good because I took soooooo many pictures in my many outings (I  had a bicycle and a motorcycle and rode the hell out of both of them if I wasn’t catching the Death Bus up some windy mountain road). I also traveled for Uncle Sam to Korea and Okinawa while stationed at Clark. Eventually I moved on to Alaska for three years- and luckily had an Air Force co-worker who had a second gig developing film. I got a killer discount, and so shot thousands of images in the Great White North, too.

It turns out that you end up with a boatload of negatives when you shoot with film. But hold that thought…

My wife and I actually went to high school together, but got married five years after, in Alaska. We left the state the day after our wedding, in January, at -60 below driving home to see family in New York and then on to Mississippi where my next duty station was. We rolled my Bronco in the Yukon, and then the next 29 years were pretty much a blur. And I photographed it all, in great detail. Our pre-kid years on the Gulf Coast, our sons and dogs and adventures, including our last Air Force stop in New Mexico.  Fast-forward a bit to civilian life in Upstate NY, add our third child (daughter), and the fact that either my wife or I worked the shutter on that AEI Program at countless events and outings until somewhere around when the kids were in elementary and middle school. That’s about when digital photography got affordable, and we put the beloved Canon away…

Life Stuff

I’m guessing we had a fairly typical 20 some odd years with three kids. Highs and lows and wonderful times and many parties and holidays and coaching kids sports and camping and watching them grow and one thing after another and another. Just when you think life can’t ever change, it does. The oldest goes off to college. Then number two leaves. Then the youngest. You can’t believe their gone, but are thankful they are all doing OK.

Then one day, you find that bin full of old negatives.

Digitizing  Our History

Ladies and gents, this is an emotional roller-coaster. I have spent a number of hours over the last several weeks digging deep into my personal history. Many of these negatives were degrading to the point where they probably wouldn’t have lasted very much longer, so I’m glad I snatched their images for storage on my NAS before they were lost to time.  I’ve seen myself at every age since 19, my beautiful wife and I together as a young, happy and fairly naive couple getting started in a new place far from home. Every one of our children’s solo journey and each as part of our clan has shown itself to me in this endeavor. (Thankfully smiles and laughter outweigh any other emotion for all of them by an order of magnitude in everything I’ve seen).


It’s almost euphoric to watch this play out, balanced by the the involuntary sadness that comes knowing that they are also years that are behind us. For whatever reason, at least half of everything I’m scanning isn’t in any of our photo albums.

I’ve made a lot of strangers very happy by posting images to various Facebook groups (I Survived Clark AB, etc) so they can remember their own histories in these far-away, sometimes no-longer-there places. This is life, and in many cases, death- as a fair amount of people in the images are no longer with us.

Well Worth Doing

This is a time-consuming exercise, for sure. But, oh my suffering God, it’s also incredible. There is no “going back”, yet I feel like I’ve been able to cheat that universal truth a bit through these negatives. I’ll end up with terabytes of images, and I’ll figure out some way to copy them and get them to each of the kids. I’m sure many of the images will mean little to them, and that’s OK. They’ll have their childhood recorded for playback, minimally. Even if they only feel a tiny bit of what I’m feeling in going through all of these, the effort will have been worth it to me.

I’m really not that old, despite how all of this might sound. My generation saw a lot of technological transitions, which is pretty cool. If any of you youngsters made it to the end of this piece, I’ll spare you the lecture on how empowering and non-laborious digital photography is compared to film. But while I chip away at these negatives, I’m absolutely loving the old tech.



A Damn Handy Catalyst Switch Command

When it comes to working with Cisco’s Catalyst switches, there are a handful of commands that get used pretty frequently to tell what’s going on.  I’m talking about after configuration is done, and when you come back to a switch later on for whatever reason to troubleshoot or verify operational parameters. I won’t be telling you anything here that isn’t already in a slew of Cisco docs, but I am working up to a specific point.

These are very common in my world:

  • Show interface (status, counters, errors, etc)
  • Show power inline (PoE info)
  • Show CDP neigh/show LLDP neigh (connected network devices)
  • Show mac address-table (L2 addresses of connected devices)
  • Show log
  • Show VLAN (VLAN database for the switch)
  • Show run (how the switch is configured)

The list goes on, and as most of you reading this know there are also variations of the commands listed that get you more granular information- like detailed information per single interface, expanded CDP details, only the last so many log entries, etc.

Big deal, right? This is pretty basic stuff, I realize. But at the same time, I do feel compelled to give a call-out to one command that I’ve come to truly appreciate:

show interface switchport

This gem tells you a lot about an individual interface and is handy as heck when odd things might be afoot with VLANs. (It recently helped me get to the bottom of a VLAN issue involving the murky mystical VLAN 1 on a Catalyst 3650).

Here’s one instance from a production switch:

#sh interfaces gig 1/0/32 switchport
Name: Gi1/0/32
Switchport: Enabled
Administrative Mode: trunk
Operational Mode: down
Administrative Trunking Encapsulation: dot1q
Negotiation of Trunking: On
Access Mode VLAN: 1 (default)
Trunking Native Mode VLAN: 1 (default)
Administrative Native VLAN tagging: enabled
Voice VLAN: none
Administrative private-vlan host-association: none
Administrative private-vlan mapping: none
Administrative private-vlan trunk native VLAN: none
Administrative private-vlan trunk Native VLAN tagging: enabled
Administrative private-vlan trunk encapsulation: dot1q
Administrative private-vlan trunk normal VLANs: none
Administrative private-vlan trunk associations: none
Administrative private-vlan trunk mappings: none
Operational private-vlan: none
Trunking VLANs Enabled: 8,170
Pruning VLANs Enabled: 2-1001
Capture Mode Disabled
Capture VLANs Allowed: ALL

Protected: false
Unknown unicast blocked: disabled
Unknown multicast blocked: disabled
Appliance trust: none

Now contrast that with the simpler [sh run interface] command for the same port:

interface GigabitEthernet1/0/32
description pci test or ACS
switchport trunk allowed vlan 8,170
switchport mode trunk
storm-control broadcast level pps 2k 1.5k
storm-control action shutdown
storm-control action trap
service-policy output TACTEST

So, the [show run] command just scrapes the surface of the actual  bigger VLAN paradigm in play for interface, while [show interface switchport] brings all of the VLAN-specific information out into the open, possibly revealing parameters not obvious through the other commands.

It’s the little things, sometimes… I like this command a lot where multiple VLANs are in use.

The Other Intent-Based Networking

Anyone who is in networking and who knows me is likely aware that I find a fair amount of fault with “Intent-Based Networking”. It has rubbed me wrong since I first heard it as the latest Cisco campaign, having been through many other flavors-of-the-month through the years. I’ve struggled to find within myself exactly what about Intent Based Networking has been pissing me off, but admit that this bogeyman in my mind has been elusive… very hard to pin down. Yet something has been stuck in my craw, I tellya.

Is it the sea of buzzwords that came with it? Is it the coincidental timing of this blog that asks us to swallow that subscriptions somehow equal innovation? (Sorry Cisco- that is a ridiculous stretch, even for you). Or this article in the same time frame telling the world all the ways Cisco is turning up the marketing heat? Sure, put it all together and to me- a customer frustrated by code bugs, feature bloat, corporate bloat, mixed messages at various Cisco levels, and the way that staying a large Cisco customer smells more expensive now than it ever has- and all of that adds to the feeling of being smothered a bit. But even all of THIS isn’t the root of my revulsion at Intent-Based Networking.

But I figured out what is bugging me about Intent-Based Networking. (It came to me like a bolt out of the blue when I was playing Sock Guy with my pug dog.)

Before I get there, let’s take a detour to this Network World Article. I have only recently learned that Intent Based Networking is not just an obnoxious marketing slogan from Cisco, but it’s also recognized as a bigger thing that I had simply never heard of in this context by that name. From the article by Brandon Butler:

Gartner Research Vice President Andrew Lerner says intent-based networking systems (IBNS) are not new, and in fact the ideas behind IBNS have been around for years. What’s new is that machine learning algorithms have advanced to a point where IBNS could become a reality soon. Fundamentally, an IBNS is the idea of a network administrator defining a desired state of the network, and having automated network orchestration software implement those policies.

“IBNS is a stark departure from the way enterprise networks are managed today,” Lerner explains in a research note describing IBNS. “Currently, translation is manual, and algorithmic validation is absent… Intent-based networking systems monitor, identify and react in real time to changing network conditions.”

It goes on to say that IBNS, as a generic construct, has four basic aspects: Translation and validation, Automated implementation, Awareness of state, and Assurance and dynamic optimization/remediation.  Those don’t belong to Cisco, they are the make-up of the general concept of Intent Based Networking. It’s a good article and worth reading.

So back to my angst and irritation. I’ve identified two-co-equal notions that steam my clams when I hear Intent Based Networking, as laid on thick by Cisco.

#1 Irritant. I, and others, have written about being a bit insulted by “AI” as a fix to everything in networking. No one with common sense and a pulse denies that machine learning and artificial intelligence aren’t powerful concepts that can be transformative if implemented right. But… Cisco, Mist, and others tend to send the vibe “our shit is great because of AI and machine learning- we have the right buzzwords and those buzzwords alone would have your wallet salivating! Without this new magic, you suck and your networks suck and you are lost at sea and you have soooooo many problems!”

The problems with that? Some of us design and run really good networks and aren’t thirsting for some mystical deity to come scrape the dumb off of our asses. And… many of the companies and individuals behind the new network magic don’t have stellar track records of getting code and actual customer needs and wants right. To be forced into Intent-Based Networking as the only real evolutionary option does create some discomfort. The new stuff is priced way too high for what is and will remain essentially beta quality in many cases.

#2 Irritant. I’ve heard nothing in Cisco’s marketing about the other Intent-Based Networking. This is the one where CUSTOMER INTENT is for the network to actually and predictably work, with minimal code bugs, free of a gimmicky feel, and with a price structure that doesn’t write out the words “Fleece the Customer” in the sky with a smoke-writing bi-plane. What about OUR intent? Stability, predictability, and no bullshitty licensing paradigms that make sure we never really own what we buy- pretty sure that summarizes the intent of most customers… Like having a network that isn’t the cause of most of it’s own problems by the vendor not shipping problematic code? That’s intuitive, no?

Sometimes words are just words, but put “Intent Based” next to “Networking” and Maslow comes to mind- the foundationally important stuff is what the customer thinks about first.

THIS “Intent Based Networking” is more important than the other one from where I sit. The two notions don’t have to be mutually exclusive, but it feels like they are right now. From the customer perspective, we don’t just pivot from years of erratic code and odd TAC engagements to a brave new expensive and Intent-based world without great skepticism because Cisco’s new marketing army says it’s the thing to do. Tone it down and and talk WITH us, not AT us.

There- now we’ve solved it. I actually feel better getting it out.

(And don’t even get me going on the Network. Intuitive.)