Scrum At Scale and Society

(This column is posted at www.StevenSavage.com, Steve’s Tumblr, and Pillowfort.  Find out more at my newsletter, and all my social media at my linktr.ee)

As per my last post I said I will be talking more (but not entirely) about politics. And if you think I’m going to jump into something big, right now, not really. Well I kind of am. Because I want to share something that I find useful in thinking about society, politics, and how we get things done at scale.

It won’t surprise you that it’s about Agile methods, but one that affects my politics – and might give you a few ideas.

For anyone not familiar with Agile (a vanishingly small number of people who read me as I talk about it a lot), it’s an approach to work, started in software, about reasonably-sized teams working in short increments. The popular method is Scrum, where teams take a list of priorities, tackle a limited set over a short time, and then review and do it all over again. I’ve applied it to writing, art, and more.

But as you may guess, small teams is like about 5 people give or take. So how do you do a big project? Well someone invented Scrum At Scale. You have teams, but team leads from those team meet on their OWN Scrum teams to coordinate. Bigger project? Then you have teams of team leads of team leads, and pile it as high as possible. It’s pretty cool and isn’t the giant process-haul that rival SAFE is.

It also affected my view of politics.

First, one of the problems of politics is non-participation or exclusion. To be part of society is to be part of it, like it or not. At the same time plenty of people want to exclude others to get their own “selectorate” to make holding power easier, and of course usually screwing over everyone else. Scrum at Scale made me realize how important it is for people to be involved and involved at multiple levels.

You should pay attention to your community, but also to your state/province, federal, and the world and be involved. If necessary hold office even if it’s an informal community thing. Good leaders should also be trusted if they can and have held positions at lower levels and have actually done something. I’m no military adventurist by a long shot, but there’s a reason I sometimes vote for ex-mils as well as doctors, emergency workers, etc.

Scrum at Scale is about being involved and being in touch among levels. A team lead on the lowest level scrum team might be a representative on one team, and the team above that, and so on. That’s the kind of thing software development or society needs – integration of people.

But there’s one more factor as well. Scrum of Scrums, especially, emphasizes communicating problems upward. What a team below can’t solve, the team above tries to tackle, and so on up the chain. Eventually unsolvable problems land on a leadership group, and if no one else can fix them that’s their job.

Problems go up, solutions come down. If you’ve ever seen politicians try to solve issues that they usually make up you realize how important this idea is. The higher up the chain you are the more you should help fix the unfixable things below. If no problems come up then you keep things running, which is important because I can say quite cynically many a problem is caused by a politician trying to keep their job.

Honestly, a lot of my politics are influenced by things that aren’t seen as political – project management, biology, and so on. But as I’ve noted before everything is really political, so we should learn from everything.

Steven Savage

The Wasteful Efficiency of the Large

(This column is posted at www.StevenSavage.com, Steve’s Tumblr, and Pillowfort.  Find out more at my newsletter, and all my social media at my linktr.ee)

I’ve been thinking of large, easy-to-deploy, fast-to-scale solutions can be an inefficient waste of time. Before I go into my inevitable rant-o-speculation, let me note the origin – Chinese history and Agile. Trust me, it’s worth it.

As to Chinese History, I’ve had a deep interest in the Taoists and because of that some of Chinese history and culture. The Taoists provide a body of philosophy, meditation, and sarcastic humor while focusing on simplicity, uncomplicated-ness, and a kind of mystical realism. Chinese History is replete with scholar-bureaucrats whom I deeply relate to because I’m me. This means I can read about a figure who is essentially “He was in the Department of Awesome Flowcharts and a famous Taoist scholar” and go “yeah, this dude rocks.”

Early on in philosophical Taoism there’s an emphasis on frugality, not-over reaching, and taking care of things while small. Arguably the “journey of a thousand miles begins with a single step” originated in the Tao Te Ching (Chapter 64). If you focus on small things before they’re large and not overdoing it, you get a lot done without, well, doing a lot.

Now does this sound like Agile? Well now you can see where this comes in . . . and learn even more about my personality. I love Agile’s focus on small, meaningful incremental change. The tenth Agile principle even states success is what you don’t have to do. Well done Agile Projects do what is needed, no more, and thus get a lot done – and even save time by not overdoing things.

By now if you know me, you can see where this is going in the world of IT solutions, so thanks for humoring my above explanation. Now let me rant about discussions I have with my friends in IT which is . . . most of them.

Back in my day (hey, I’ve been in IT 30 years) I saw a lot of custom IT systems. I built them. Whatever you needed for your specific needs might not have an off-the-shelf solution, and if it existed it was large and expensive. So when you had to make something custom you learned the issue, solved the solution, then watched your code decay for ten years after getting a promotion. Maintenance was an issue, but at least it was small.

(Software is an expense, talent is the investment.)

In time people of course made solutions that were scalable, that were customizable, that built on layers and layers of code over the decades. We took advantage of cloud computing, of distribution systems. Any large provider of services can instantly set up your small business because of years of investment.

You can implement the same solution as the big guys, or customize a solution . . .

. . . except everything is now all so large.

You just bought, say, an infrastructure tracking tool. Sure it’s on the cloud, but only runs in this one browser. Also you have to figure which modules to activate. You have to train your team. You also have a lot of features you may not need, but everyone wants them as they’re there and easy to use (for the people who want them). You may not have to maintain the system, but you have to get everyone on board something they never participated in making and isn’t based on your specific needs.

Oh, and as soon as a certain web security company who’s name sounds like “Clown Strife” goes under your inventory system is unreachable. Well, also half your other systems are too, but I digress because I still flash back to that outage.

Now you’re using all of this stuff to ease paperwork while creating more paperwork. You are probably entering data you don’t need but it was one of the features. You now have to reconcile the new system with the old system, which is months of work and means you need a consultant. You’re trying to get everyone aligned on something that you basically dropped on them and they make workarounds.

I have met people who were still solving problems with spreadsheets because the applications didn’t work. I have been those people.

You quickly and efficiency implemented a big solution that doesn’t quite work and thus you make more work and waste more time. You have small issues to solve and maybe if you solved them first you wouldn’t be here. Plus maybe you had no gain once all the overhead is taken account of.

All that new work you added may be worse than the janky old system – and you can’t tell.

Right now in technology we can implement huge, powerful solutions easily with no concept of the small picture that makes them work. We don’t even know if they serve the small picture as the “Big Thing” becomes paramount. You can buy a solution and not solve anything and may not know.

Maybe it was worth it slowly maintaining and upgrading the system you had. Or having done it right in the first place. B Or a piecemeal migration.

This is a reminder of Agile, of the Taoists, all having a point. Solutions are often about the small things, about working on something before it’s large, of doing what’s needed – and not letting things grow into a problem. I think in the world of IT we’ve accumulated so much tech, so many solutions it’s easy to just throw a Big Thing at a problem. That may not solve the problem, it may make more of them.

There are situations that need bottom-up implementation and that’s a lot of them. Yes, you might be able to use a Big Solution, but only after you get what you need, and probably do it incrementally. You have to address the small to fix the big, not throw the Big at whatever else is Big and hope.

Also let’s face it, sometimes we get Big Solutions because we let something get out of hand and hope it’ll fix it. We forgot the lesson of starting small then repeat it.

Think small. It’s the way to do big things right as opposed to just doing a Big Thing and hoping.

Steven Savage

Can You Imagine Starting?

(This column is posted at www.StevenSavage.com, Steve’s Tumblr, and Pillowfort.  Find out more at my newsletter, and all my social media at my linktr.ee)

I was going to do a post on media forms and what we can learn about today’s media from the Dada art movement, but Serdar had to go and get all brilliant and discuss how people can’t and shouldn’t wait for the right conditions to start something. It deserves it’s own blogpost, so me discussing art movements has to wait.

Serdar points out how people wait for the right conditions and how you can always find advice, from Doris Lessing to Buddhism that the time is never right, never perfect. The problem of course is helping people understand it’s time to get off their butts and do it. If you’ve ever tried to get someone – or yourself – “going” you know what I mean.

Now I work with Agile methodologies, as anyone who’s known me for five minutes is aware. Agile is about breaking work down, doing it in order of importance, and very importantly getting going. Just start and take feedback later – in fact doing something means you at least get feedback so you can do better (or even just quit). Agile isn’t “move fast, break things” it’s “move fast, make things.”

Thus as you can imagine I have to help people “get started” and “just get going.” Which should be easy as I have a lot of experience, a lot of certifications, and a very irritatingly effective attitude of “just do it.” Should be easy with a person like me, right?

Of course you know the answer is that it’s not, which irritates me at an irrational level. Sometime I “buddy up” with “just give it a try.” Sometimes I “Agile harder.” Sometimes I end up a therapist. But Serdar’s post made me realize in some cases what people lack is the ability to imagine starting. It’s easy to look at a big project or some ambitious idea and be so overwhelmed you can’t imagine starting – and in some cases it’s easier to imagine failing.

It’s easy to imagine not starting. I’ve realized as I mull offer Serdar’s writings that people like me are trained imagining how to start, other people have that imagination of how to start and we have to help others develop that capacity.

Of course easier said than done, and each person or group is an individual case. Maybe we have to inspire. Maybe we have to (in some cases literally) draw a picture. Maybe we encourage a prototype. Maybe we just “give it a shot.” But we need people to be able to see starting despite “imperfect” conditions.

Which means when we’re trying to help someone overcome a fear of imperfect conditions, our first job might be to help them see what’s possible. But the next job is helping them develop that imagination.

Steven Savage