The curious incident of the dog in the night-time…

In the 90s, the world of software development pivoted around a concept called “Object Oriented Programming.” The previous unit of capability in an application was its functions or procedures (hence the later moniker “Procedural Programming”) where a program would move through a series of steps, often in a loop, executing functional steps (check for user input, process that input, write the result somewhere, repeat).

In Object Oriented Programming, an application is made up of things (or, “objects”) just like in the real world. Objects have functions, but they also have properties, and events. This lent itself well to the Graphical User Interface, where something like a button is easily understood as an object. A button has a property that describes its label text, an event that happens when its pressed, and a function it performs when that press is complete. Objects also have hierarchy, where one object is the “parent” of another — a model that lets a programmer travel a program from its higher level functions, to its smallest blocks of capability.

More powerful languages included a sophisticated feature called “classes.” These are a little harder to explain. If you think of a car as an object, then abstract that a little: a car is an object in a Vehicle class. All vehicles share some common properties, like a chassis and a seat, common functions like MoveForward, MoveBackward, and common events like StartingUp. Creating the class lets you define those once, and every object that derives from that class shares those attributes automatically.

You can then create a “sub-class”, called FourWheeledMotorVehicles, which shares all the common properties and functions of the Vehicle class, but declares its own set of common attributes. You can apply this cascading inheritance through as many sub-classes as you want, but you can’t actually interact with them — to do that, you have to create a object which is an instance of a class. An object inherits all the properties of the class it derives from, and those become interactive when the object is instantiated (created).

An information “super highway” then is full of objects that can be queried for information (through their properties) given instructions (through their functions) and can inform other objects of what’s happening to them (through their events.) And the class inheritance approach lets a programmer understand things about many objects, without having to know the full details about each of them (eg: most objects on this highway derive from the Vehicle class, so if I know how to get information from a Vehicle, I know how to get information from most of the objects.)

To get more information, a programmer may have to learn how to talk to the FourWheeledVehicle class; those capabilities are a little more specialized (some of what I learn might not be applicable to another class called TwoWheeledVehicle) but for that set of objects, also more specific and powerful.

Of course, this is only a surface explanation, and I provide it only to point out that this was a powerful concept that helped change computing permanently. One of the pioneers of Object Oriented Programming was NeXT, who delivered a brand new operating system around this model. That OS, called NeXTStep became Apple’s OSX, and iOS, powering modern Macs and iPhones. Other vendors were working on similar efforts, and by the end of the 90s, the pivot was complete… for some people.

The thing is, this powerful shift never really came to manufacturing — not fully. Manufacturing technology has layers, with primitive, physical switches, motors and buttons at the bottom, and orchestration and business software at the top. Those layers were famously modeled at Purdue in the 90s; a first step toward understanding the flow of data in an operation. At the top layers, most software moved to Object Oriented Programming — having been delivered by, and for, Information Technology (IT) resources. In the mid-to-bottom layers, technology remained largely in the realm of the electrical engineer; skilled in orchestrating logic flow, and used to working with physical wiring, programming for the electrical engineer evolved from wiring diagrams, into a concept called “ladder logic.” Ladder logic allows a programmer to express functions and loops in software, which are designed to be applied against physical equipment. This kind of programming is written to a PLC (Programmable Logic Controller) or PAC (Programmable Automation Controller) that controls the operation. We often call this Operational Technology (OT).

The result of this alternate evolution is that there is no object model in the lower layers of a manufacturing network. Sure, there are physical objects, and there’s a mapping between rungs of ladder logic, and points of data (called tags), to the real world — but that mapping is largely in the programmers head. There’s no forcing mechanism (and rarely even the facility) to model manufacturing objects in code. As a result, the individual or team who programmed a machine can look into the code and understand how the machine works — but no one else can. Nothing else can. Another program can’t come along, inspect the objects, map them against classes of common capabilities, and create value out of the information the system emits…because there’s no way to understand what that information means, without asking a human being to participate.

This is where my career began, about 20 years ago: building higher level information software systems that attempted to assemble an after-the-fact object model for a manufacturing system — by asking a human to construct it. If we could just get people to participate in (re)establishing an object model, we could give them powerful information (analytics) about what was happening with their systems. It took the industry most of two decades to realize that this wasn’t broadly accomplishable. The divide between the skills of the people who build manufacturing systems, and the skills of people who built information systems, was too hard and too expensive to bridge. For an “information superhighway” to come to life inside manufacturing, we were going to need to bridge the gap on-behalf of our users.

That’s what Shelby does — in a small way. By discovering devices on a manufacturing network, Shelby can match each of them to a device Class that we pre-define inside of Shelby (we call these “Profiles”). Using the closest match we can find, we’re able to create an instance of that device inside Shelby’s object model, and automatically begin asking the device about its status (calling functions), collecting information (defining properties) and surfacing diagnostic notifications (events), about some of the primitive components of the network. Shelby can’t understand what those parts are doing, or many details about how the objects are related to each other — that info is still trapped in the ladder logic. But it can do something we couldn’t before: it can create information value automatically, and begin to bridge operational and informational technology worlds together. That’s why Shelby works in minutes, where all other information software takes days, weeks or months.

SherlockThis is only the beginning, of course. Understanding parts of a system is an important step along the way, but we need to get inside the head of the implementer — and the best surface we have for that is the Controller (PLC); the place where the engineer articulated their understanding, and intent for, the system. To automate this understanding is another technology leap, one that goes beyond modeling the presence of devices, and begins to understand the physics of an operation. That’s where Sherlock comes in, and that’s why its one of the most important innovations manufacturing will see this decade…

Advertisements

Why I stopped attending your church

Its been a frustrating 6 years trying to find a church home here in the States. There’s lots of them, sometimes they’re just barely afloat, and when you get there, you start to wonder why they keep trying. We’ve been to lots, and given up on quite a few. We’re not fickle “church shoppers”. We know that churches are made up of imperfect people, like ourselves, and therefore there is no perfect church. We’re willing to make a commitment, and love other people through their foibles and hope they can put up with ours. But with the kids approaching middle school, its reasonable to have a minimal set of expectations, so that we can maintain that commitment through their challenging “youth group” years. Here’s some of the reasons we haven’t been able to find a permanent church home (within a reasonable drive of our actual home!)

You weren’t prepared

Having a theme and an anchor verse for your message is not preparation. You are charged with delivering the most important material in history — take that responsibility seriously. A good sermon requires careful study, serious exegesis, historical research, and thoughtful application, delivered in a structure that allows even the most immature congregant to follow along as you deliver the material. You don’t get to just pick a topic and pray for the Spirit to speak through you. Granted, thinly prepared material, disguised with a charismatic, folksy story-telling style is at least entertaining (I’ll get to that in a minute), but it doesn’t make up for a lack of substance. Disorganized rambling is even worse.

Whether you intend to deliver a topical message or an expository one, I expect your sermon to be backed by a significant chunk of contiguous scripture, which is read aloud and, during the course of your sermon, is properly contextualized (from its source) and applied (to the target.) And I say “contiguous scripture” because you’re not allowed to pull one verse from the Old Testament, another from the New Testament, and claim the Bible backs up whatever point you’re making — that’s called proof-texting, and you should be shown out of the room when you do it. That doesn’t mean you can’t show relationships in Scripture — it means you don’t get to make up your own.

(By the way, be real careful about fresh new discoveries in the Word — most of them aren’t fresh and new. Most of them are heresy that someone in the 1st century already tried.)

Your music wasn’t worship

I get it, church music is hard. Different people have different tastes, and most don’t like to be outside their comfort zone. Immature believers are unwilling to put their personal preferences aside for the good of the body. My point is not about style or preference, its about who the music is for (hint, its supposed to be for God!) When you lead corporate music, your job is to facilitate the worship of others, not put on a show, impose your preferences, or create an experience. You should all but disappear.

There are lots of ways to get that wrong: are you the only one who knows the song you’re singing? are you selecting a variety of styles so even the most “immature” congregant can feel a part of the worship — or are you only selecting your favorite style and hoping everyone else adapts to you? did you rehearse together in advance so that you can lead properly? is the tempo so slow that people are yawning? did you decide not to sing Christmas songs at Christmas for some reason? if you’ve rejected hymnals on the belief that no one can read music, are the words on the screen at least the ones you’re actually going to sing, or are you planning to free-form it, and leave everyone guessing? are you singing so many songs that the congregation is tired and the older folks have to sit down?

You don’t have to cater to everyone’s preference. You do have to create an inclusive and transparent environment, so that you disappear and God can become the focus. The golden rule for church music: don’t be a distraction…

You thought this was an entertainment venue

Related to music, but not strictly limited to it, I did not attend your church service to be entertained by you. There are plenty of entertainment venues in the world — I can go to a movie theater, a play or a concert if I want to be entertained. I didn’t come here for that. I came to be with fellow believers, to worship God, and hopefully to feed and be fed in the Word. Sound, lights and video can facilitate that, if used appropriately and with restraint, but they shouldn’t replace it.

I have no problem with technology in worship — we can give glory to God with the tools He gave us. But if we replace worship with tech or media, or use those things in ways that are so distracting that we can’t focus on what we’re there for, then we have made an idol of our technology, and we should repent of our sin and stop.

You tried to manipulate my emotions instead of engaging my brain

This kind of manipulation can happen with tech and media, but it also happens in more subtle ways. Repeating a line or chorus in a song repeatedly is a technique used in cults to induce a suggestive state — don’t do it. God doesn’t need us in a suggestive state to speak to us through you. Three times is plenty of repetition for healthy communication. “Setting a mood” by changing the lighting, inviting weeping testimonials on stage or playing them in a video, or delivering prayers that are disguised instructions to the congregation (“God, we know that many in the room want to come forward right now…”) are blatantly manipulative. I’m not talking about spontaneous response to the Holy Spirit — I’m talking about staged, planned activities designed to induce an emotional response. These are inappropriate.

Instead, allow God to deal with matters of the heart — what I feel is not your responsibility. Instead, pour over the Word, earnestly seek what God would have you share, and communicate that clearly and intelligently. Prepare your message with multiple levels of depth so that you can speak to everyone, no matter where they’re at in their maturity or life. By all means, use anecdotes or testimonials to help me understand or apply the message, but if you find yourself trying to create a feeling, or appeal to an emotion, just stop. That’s not teaching, its manipulating, and its wrong.

You didn’t create an on-ramp

Unfortunately, most of the churches who get the above things wrong are the ones who get this right. The inverse is also often true. You can get everything wrong, and keep people who came for the wrong reasons. You can get everything else right, but if you don’t have a way for me to fit in, you fail too.

And really it doesn’t take much. I’ve been a “professional church lay person” for 20 years — I’ve been a dedicated volunteer in many ministries, a part of church leadership, and I even have a seminary certificate. I’m ready to plug-in… if I can figure out how! We once attended an (almost everything right) church for a year, including signing up for a small group, going to kids activities, and trying to get ourselves invited to other events. After a year, no one knew our names except for the people we knew before we started going, and the people in our small group wouldn’t make eye contact when we saw them outside the group. One time I went as a new-comer to a dad-and-son event at this church, and I was the only one identifying and greeting other new-comers.

Here’s another hint: an on-ramp isn’t inviting new comers to identify themselves to the entire congregation, or participate in a large group activity that makes them stand out. Its a “Getting Started” class facilitated by a few members of the congregation who are gifted in hospitality, or a “Welcome Lunch” with the elders or pastor.

If your church can’t engage a mature Christian that’s ready and willing to get involved, then how will you ever reach the lost?

Getting it right

There’s lots of books out there, and lots of “mega church” patterns to try to follow. But despite all the church strategy, I suspect its much easier than you think. From all the churches we’ve seen over the years, I think the formula is pretty simple:

  • Pastors: study the Word, communicate as clearly as you can, trust God to speak to the heart.
  • Music leaders: don’t put on a show, don’t try to create a mood. Just lead music that everyone can sing and try to be invisible, so people can focus on God instead of you. If that means there’s less people on stage, and less technology involved, so be it.
  • Church body: love God, and love your neighbor as yourself.

We won’t all get these things right all the time, but if you’d at least try, it’d be a lot easier to stick with you through the tough spots.

Markovian Parallax Denigrate

I’ve written about the tyranny of ‘or’ before. Turns out, in your mid (to-late) 30s, one of the toughest “ors” is work vs. family.

Don’t get me wrong, it should be an “and” not an “or” — but that doesn’t hold up well in reality. When a sales guy schedules a 4:30pm on a Friday, directly over-lapping the planned family skiing outing, and becomes or. When you travel internationally, and calling the kids before school means stepping out of a room full of VPs and their high-powered meeting, its an or. But those are fairly manageable ors.

If career growth requires re-location, it means taking your kids out of their environment and trying to re-plant them somewhere new, and that’s a little harder to choose. On one side of the picture, its the job that provides the environment, and when only one parent is working, the job needs to take priority. The job provides the home, so it doesn’t matter how comfortable things are right now — that comfort goes away without a job. On the other side of things, there’s a difference between job having, and job growing. Its probably possible to just have the same job for a long time (an entire childhood?) and not progress at all. If that’s true, then comfort is only at risk if the employer goes away.

Unfortunately, I don’t know what that latter scenario looks like. How do you decide, in your career, that you’ve reached the point of “enough” growth? At what point does someone say to themselves, “this is what I want to do forever?” Because if its possible to hold the same relative position for 20 years, while your kids grow up and launch out on their own, I’m quite sure its impossible to resume your previous velocity when that time period is up. At some point, it must become clear to all who observe you that you are no longer capable of anything else. So the bargain you find you’ve struck is that you can stay comfortable for 20 years, as long as you’re willing to stay there for 45.

And I have a pretty big data sample to back-up this theory. I’ve met many colleagues over the years who’ve been doing the same job most of their lives, and are just hanging on until retirement. Of those people, the post-retirement dreams I’ve heard reflect the stagnation they’ve come to accept. One guy I met, near his last day, thought he might go to dog shows in his retirement. Another was going to join a gardening club. If someone had told those people when they were 20 that thing they were working toward for the next 4.5 decades, the culmination of their career, the pinnacle of their achievement, and reward for their years of steady labor… was dog shows or gardening… would they not have run away screaming?

And isn’t escaping that worth some discomfort for the family? After-all, our kids learn from our example. For all they may resent the discomfort of change, would their adult selves not more intensely resent having a pattern of blandness instilled in them? Ben asked me the other day why grown-ups don’t have the same imagination that kids do. Maybe its because we’ve traded imagination for stability and comfort. Once you’ve put on the harness of a 30-year mortgage, and found a good school for your kids, maybe you can’t tolerate anything so scary as change, so you accept that things you imagined as a child were fiction, and that this is all you’ll ever be…

How do you balance what your kids need now, with what you’ll both need in the future? What if settling for something that seems good enough now, means you miss the opportunity to give them something great tomorrow?

Don’t read into this that we’re moving anywhere. We have no plans to, and we’re trying to avoid anything that might cause such a plan to emerge. But the corner I’ve found myself painted into is starting to feel pretty constrained, and if I can’t find a window to crawl out of, we may eventually have to entertain some ors again…

So I Tied An Onion To My Belt – 2017 Edition

So we’ve begun our third year in Ohio, and it looks like we’re sticking around. 2017 was a little more expensive than we had initially planned, but we managed to pull it all off and end the year in the black.

After springing for an over-due trip to Europe for Nic and I in 2016, we got the opportunity to do it again early in 2017 — this time exploring Swiss Alps, piggy-backing on a work trip. Definitely an advantage to having Nana and Papa within driving distance!

The summer was the culmination of my professional efforts here in Ohio, with the launch of my very first product. Not my first product launch, but the first time that the product being launched was mine. As Product Owner for a pretty awesome team, it was exciting to see it coming to life — and get a pretty positive reception from customers and partners alike. It would have been a good time for an exit, something we opted to skip this time — but others did not. There may yet be a second act to Shelby, so we’ll see how that shapes up in 2018. Plus it gave us an excuse to take a family trip to Disney World in Florida, which was great for the kids — especially because Grandma was able to join us!

The kids continue to thrive in school. Ben’s done much better in the gifted program, Abi’s never had any academic challenges but the social adjustment was toughest on her — but she’s got that figured out now, and Eli pretty much runs her first grade class. Nic remains very involved at the school, taking on the role of treasurer of the PTO this year — experiencing all the drama and workload of a workplace, but without any sort of financial compensation for her effort. It does keep her close to the kids, and gives her a voice in school matters. Our county will go through some budget reductions next year, so knowing what’s coming as far as school closings and re-arrangements helps us think ahead.

We’re also on our third attempt at finding a church home. Volunteering every other weekend at a downtown church has been our most consistent church life experience. Finding something close to home to make our regular weekly commitment to has been an exercise in frustration, so hopefully this one works. We did get an invite to join in to a denominational family camp this past summer, which made for some wonderful memories for the kids — and maybe a new annual tradition.

We celebrated Christmas not in snow, but basking in the sun in Grand Cayman, which is a much better place to be than Ohio in the winter. The transition back to the cold and snow was pretty brutal, but it was a great visit with my parents, and definitely another trip we’d like to repeat.

In 2018 we hope to make it west-ward to see my family all in one place, and visit some friends and scenery we miss. Otherwise, more home maintenance/improvement projects, and keeping our older (but much loved) cars on the road should about consume our spare money and time budgets. Some changes will probably be necessary at work, to continue to grow, but we’ll try to keep those limited to ones that won’t change home life too much…

Last Man Standing

I’ve pretty much made a career out of good timing. Technology moves in waves, and riding those waves correctly means enjoying the highs and getting out before the crashes. For example, a successful product launch is a great high, but what comes after the launch is only partially dictated by what led up to it. The market is fickle, and success or failure is largely out of your control. Getting out after the launch gives you the best possible outcome: if the product succeeds, you get to tell everyone you were part of it. If it doesn’t, well, its in the past, and you can just move on…

Besides, incrementally improving an existing business year-over-year is nowhere near as thrilling as creating one out of whole cloth. So as a general rule, when I feel like I’ve learned what I need to, I look for another wave to catch. This timing has served me pretty well for almost two decades. So when we decided we were not looking to leave after my recent product launch, it was a definite break from tradition. On the other hand, my boss, who’d been riding the same wave up and down for 24 years, decided this was his high point, and opted to exit. And he wasn’t even the first. I was hired in a group of “Platform Leaders”, by a Director that unceremoniously exited the company a few months later. Two years after that, and I’m the only one of them left in that role.

Being the last man standing is definitely a new experience for me.

Ohio probably isn’t on anyone’s map of must-visit places. But taxes are reasonable, schools are good, government is usually only a little bit right of center, and real estate is affordable (if a little slow-moving.) Its a pretty decent place to hunker down for our kid’s sake. And while the job isn’t going to make us wealthy, it does pay the bills, and seems to continue to present opportunities for growth. Maybe developing an existing business is a challenge worth taking on, and its definitely time to add some management experience to my resume. So, for now at least, I’m the acting business manager for our new products teams — my own two, and one I’ve inherited. I’ll have to interview for the promotion sooner or later, and its definitely not a “sure thing” but its looking like I’ll stick around to see what happens.

Shelby’s big brother gets announced next week, and I’m certain there will be interesting things in store for at least another year or two…

Swan Song – A Saab Story

In 1945, Saab Automobile group was spun out of Saab AB, the Swedish jet manufacturer, with a goal of using their military technology to compete in the consumer automobile market. From the beginning, their engineering team was willing to ignore established tropes, and try new things. The first car, the 92 was designed to have the silhouette of an airplane wing, and had a 2-stroke engine, with a clever approach to keeping the mixed oil and gas lubrication flowing, even while coasting.

In 1989, GM purchased 50% of the recently restructured group, with an option to purchase the other 50% later — which they exercised in 2000, in an attempt to establish Saab as an American-owned but European-heritage alternative to German luxury cars. During the GM era, the Swedish engineers were pushed to normalize their approach — although they frequently rebelled, re-thinking and re-adding quirky changes to the GM-platformed vehicles, improving their safety, reliability and uniqueness. Following GM’s financial troubles in the early 2000s, Saab was jettisoned by their American owners and purchased by Dutch supercar maker, Spyker. Although Spyker had big ambitions for Saab, and produced a truly stunning concept car (appropriately called the Phoenix) they too fell on financial hard times. After a failed attempt to sell the brand and IP to a Chinese car manufacturer in 2012, the Swedish government stepped in and purchased the manufacturing assets, creating the National Electric Vehicle company (NEVS), which managed to produce a small number of re-engineered 93s in 2014, including an all-electric prototype, before restructuring themselves to sell new electric car technology with, and to, the Chinese, and relinquishing the brand back to Saab AB (who still make jet planes!)

A few good things happened during these final years of Saab. One was the establishment of an independent parts company, now known as Orio, with rights (and molds) to Saab parts and manufacturing processes. The other good things were a briefly produced SUV, the Cadillac-derived 94-X, and its brother, the Next Gen 95 — the first true overhaul of the venerable 95 since the early 2000s.

They may not have known it at the time, but the NG95 was to be their swan song: a last attempt at a unique and beautiful Saab. Based, in large part, on GM’s Epsilon 2 platform, the NG 95 contains all the modern tech Saab fans had been pining for, while retaining Saab’s quirky style, and obsession with performance and safety. Only 654 NG 95s were produced for North America in 2010, and just over 2700 in 2011.

2010 NG 95 Aero left. 2009 93 Aero right.

I have loved my 2009 93, and enjoyed fixing it up and lightly customizing it, using accessories and tech made in the Swedish after-market — in some cases, by former Saab engineers who continued their labor of love long after they were laid off. But when the chance came up to grab a 2010 NG95 for only (after negotiation) $9000 (and after learning that my Tesla won’t be available for another 2 years) I jumped at it.

Mine is a 2010, and only Aero’s were made that year — the high end model, so its loaded: air conditioned seats, all wheel drive, power folding mirrors, an intelligent traffic camera that reads traffic signs and monitors your lane position, and a heads-up display that projects key driving information unobtrusively in your windshield. The backseat entertainment system includes two-channel audio, and dual fold-out displays, linked to the DVD player in the head unit.

It also came with 100,000 miles on it, a cracked windshield, a broken headlight, scratched paint, some broken and loose interior bits, and an apparent dearth of regular maintenance. In other words, a fixer-upper. Fortunately, Saab fans seem to love nothing more than helping each other out, and I’ve already made a new local friend who has multiple Saabs — including a NG 95 in his family. So work is underway on smoothing out the rough edges. Fortunately, its still a blast to drive while I fix it up. Thanks to Saab’s jet plane legacy, every one of them comes with a twin scroll turbo charger that blasts you past traffic with a whoosh that sounds like adrenaline feels.

My 93 has gone to a good home, where it will be stewarded by our pastor’s wife until Ben is old enough for his own jet plane. And I couldn’t be happier with the two years of projects sitting in my garage, stanced to pounce on the highway whenever I get the itch — or just need to drive to work…