I said in another post that I hated all the ceremonies, including standup. And it goes without saying that means long standups.
But, one team I was one, we had long ass standup and it was perfect. It was very dev-driven, we were facing hard problems, and that was our time of the day to really nerd out. The PM would get bored after about 15-20 minutes and then we'd be working out how to deal with the issues that faced us. Sure, it could have happened at any point of the day, but that was our designated time where we were all in the office (this was pre-pandemic)
That seems unproductive. You end up having a room full of people discussing problems that should be solved by one or two people outside of the standup. That's contrary to what a stand up meeting should be. Don't do that.
That's the issue where the PM has so much power. In our company the engineering team dictates their process. They can do however they like as long as they ship the products on time.
Because in real world people play with the hand they are dealt with. Team hasn't quit because there are no better jobs with empowered developers are waiting.
The real question is why is the team putting up with this? They should be complaining about the PM and wasted time every chance they get, at the "retro", team meetings, and 1:1's... Complain, complain, complain.
> It may be explicitly stated, but I’ve never had a scrum meeting without all managers and project managers.
This, this, this and a thousand times this.
It's always the same with Scrum. Every time you point out something clearly wrong, the response is always "well that's not really scrum, you're doing it wrong".
It's like when discussing communism with some diehard fans - when you point out the flaws, the response is always "well that wasn't real communism that's why it failed".
Well to both of those camps I say: if most attempts ended up implementing it "incorrectly" in the end, it's not a very useful framework to begin with then, is it?
I have seen teams actually do the Scrum-according-to-the-textbook, but those are rare. Most companies are just doing whatever their managers think is a good idea, and they call it "Scrum".
Ironically, the last time my team was doing Scrum-according-to-the-textbook, it was a decision of the developers... and then the higher management told us to stop, because the entire company decided to switch to "Scrum" (as in: endless meetings with managers present, no retrospective, but we call it "Scrum" because it sounds like we know what we are doing), so basically we had to abandon Scrum in the name of "Scrum".
My conclusion from this experience is that Scrum-according-to-the-textbook never happens as a top-down decision. The managers have strong ideas about how things are supposed to work, and they are unwilling to change their ideas, although they may agree to rename them to "Scrum".
I actually get the real-communism-has-never-been-tried vibe from people who say "scrum sucks, agile is the good idea". Scrum is simply what happens when Agile meets corporate reality. Make "agile" a popular buzzword among the managers... and soon you will see people complaining that agile in practice means endless meetings etc.
> Well to both of those camps I say: if most attempts ended up implementing it "incorrectly" in the end, it's not a very useful framework to begin with then, is it?
If your process to trim the hedges is much faster than normal, but also involves juggling chainsaws at the same time; it's possible your process is bad, because most people will fail to do it the way you've laid out.
(I'm agreeing with you, if that wasn't obvious... it's a pretty bad analogy, to be fair)
> It's always the same with Scrum. Every time you point out something clearly wrong, the response is always "well that's not really scrum, you're doing it wrong".
Scrum is a victim of semantic drift. The vast majority of people "doing scrum" have never read the guide and are just doing things that other people have told them is Scrum.
It's not Scrum's fault that people have hijacked its name for something completely different. It happens often.
What people call Scrum isn't really Scrum. What people call REST isn't really REST. What people call DevOps isn't really DevOps.
People using the wrong word for something doesn't mean the original definition of the word is invalid.
It's fairly different from the Communism situation in that people discussing Communism are generally talking about the same concepts and the debate is whether or not they're feasible. With the other terms I used above, people are using the same words to talk about completely different concepts with different definitions.
> It's not Scrum's fault that people have hijacked its name for something completely different. It happens often.
Scrum contains so many pitfalls that it's inevitable to get it wrong. Oh, the Sprint Review is NOT a report to management? Please do tell me where this then happens instead. If a manager can attend a 1 hour meeting to summarize the 2-3 weeks that the sprint was about, it will be abused.
> People using the wrong word for something doesn't mean the original definition of the word is invalid.
It doesn't make the original definition invalid, but words mean what society uses them to mean, which changes over time.
So agile & scrum do in fact today mean constant status meetings, treating professional developers as mindless cogs and keep everyone in line with a constant stream of tickets chosen by someone else.
Perhaps it's not what it meant in some idealistic manifesto lost to history, but it is what it means to developers employed in the industry today.
Scrum (or agile) done wrong is a unimaginable nightmare (I actually do have first-hand experience with that). But, overwhelmingly, my experience with scrum has been nothing but sweetness and light. When it is done right, all the stress melts away. Seriously. Just an absolute joy.
Are those who have toxic experiences with scrum actually a majority, or are they just a vocal minority? I'm curious if there's any data on that.
> Scrum (or agile) done wrong is a unimaginable nightmare
I agree. The issue is that I have literally never seen it done "right". It doesn't practically matter what agile is theoretically supposed to be, it matters what it actually is.
> People using the wrong word for something doesn't mean the original definition of the word is invalid.
Yeah, it's literally the worse thing you can do. I mean, not for the original definition of literally, but the new definition of literally, which is literally not literally, and actually literally in the dictionary with the definition of "not literally".
Just saying, at some point, the definition everyone uses becomes _the_ definition. And yes, I'm not a fan either.
That similarity is superficial. It is observing that no ideology perfectly survives implementation - which is true, but there is no alternative option so it isn't a useful observation.
We don't have any successful countries that use communist ideologies because central planning is destructive and the abolishment of private property is catastrophic. Calling for communism is tantamount to wishing for death and destruction. The path to success through communism is something like China where they eventually learned to do the opposite of communism and got great results.
We do have lots of successful companies using Scrum. They hire Scrum masters. They see Scrum as adding value. The scrum ideal is generally a bit of a compass towards higher value add. So scrum as an ideology seems to be net-successful even if implemented wrong.
>So scrum as an ideology seems to be net-successful even if implemented wrong.
How do you get to this conclusion? I haven't seen any implementation of scrum that didn't slow down development speed, due to unnecessary meetings and micromanagement.
This might be that I've only seen 8 or so "implementations". If there's any evidence that scrum is a key net positive I'd like to see it at this point.
Kanban IME can work well if the manager understood the core principle: Limit amount of concurrent work, use daily standup to prioritize work and unblock people hitting the multitasking limit.
Sadly this concept which is the core tenet of Kanban and can be explained in one sentence was still too much to grasp for some managers, but I've at least seen most Kanban implementations be either a net positive, or neutral.
I might be biased by my own experience, but I still need to see a Scrum implementation that doesn't grind productivity to a halt.
The company isn't optimising for fastest development speed. They typically optimise for low variance, consistent value in support of existing processes.
Interestingly, if you want highest value then for software it is best to use a high-variance strategy. But that is never going to come out of a company large enough to need professional management because it is pointless to manage large numbers of people to a high variance strategy. Google is an interesting case study where they tried that and, by and large, flopped. It makes more sense to spin out separate companies VC-style. I assume programmers occasionally quit companies, build something and sell it back to the company at extortionate prices which would be the right way to do fast development.
That isn't to say professional management is bad - large companies need it. It is just a fact that large companies aren't good at development and something like scrum elevates them from total failure to unproductive but fumbling in a good direction.
>scrum elevates them from total failure to unproductive but fumbling in a good direction.
Where's the evidence for this? I kind of agree on big corporate not being able to achieve great development speed. But they had a system before scrum, and I've yet to see scrum not completely destroying every metric of development achievement, whether it's throughput, latency or iteration speed.
The evidence is in the company choosing scrum then sticking with it. They believe it helped.
> I've yet to see scrum not completely destroying every metric of development achievement, whether it's throughput, latency or iteration speed.
It is too hard to argue from vague anecdotes, so I am resisting the urge to try. However, I will say that if that is a demonstrable thing and there was no upside then it would be surprising that scrum sticks as well as it does.
>scrum then sticking with it. They believe it helped.
Not necessarily. It's well known that there are many psychological biases in favor of keeping the status quo. Whether it's the sunk cost fallacy, the escalation of commitment or the endowment effect.
Humans tend to stick with bad decisions way longer than rational.
I think the problem here is we've had a huge trend in switching to scrum, but then people stick with failed scrum because it's the new status quo. Switching back to waterfall can't be sold by consultants. Even if it would help.
I'd go on a sarcastic rant here, but it's hard to stop myself. Don't read further if exaggerations upset you.
Sure, there are upsides, but they are hardly benefitting software engineering speed, quality, stability and developer happiness. The biggest upsides are for management:
- keeping the engineers under tight control by one of their business types (PO)
- making sure long-term thinking (like "what am I doing in this company") is suppressed by having a horizon of only 2 weeks in which you are supposed to give all you have to hit an arbitrary deadline. And then you start again! /s
- scrum has the beautiful effect of making engineers feeling either like kindergartners:
1. what did you do yesterday, Timmy? (standup)
2. Let's play with some cards, kids (planning poker)
3. Let's review what we learned last two weeks, children, and let's see what progress you made on your bean drawings (retros and demos)
How can you want a salary increase or question big man POs decisions, when you've just been acting like a kid for the last two weeks? Don't get me wrong, I do see the benefit of retros, demos, and some kind of planning and sync, but the way scrum just dumps it on you and prescribes you how to do it is just humiliating. Adults can sync, plan, retrospect and demonstrate what they did on their own volition and don't need some framework to tell them when and how, and two parental figures (the PO and Scrum master) to tell them what to do and when.
> The evidence is in the company choosing scrum then sticking with it. They believe it helped.
Many people also believe the Earth is flat and are sticking with that belief.
We absolutely learned something since the 90s that was beneficial. Corporative software projects now have about a two times higher chance of success than they had back then.
Also, we almost certainly learned that thing from Agile. There is no other credible source.
But the article has a clear point that places where people say they are practicing Agile has an even lower success rate than the overall one from the 90s. So it seems that the actual lesson from the Agile manifest was only learned by the people who don't claim to practice it.
> We absolutely learned something since the 90s that was beneficial.
Yes, software engineering has evolved, but to attribute its successes to the methodology used is like attributing higher cancer survival rates to better hospital management. In reality, it's due to the availability of better drugs, more understanding, and a lot of R&D, and it has 0 to do with management. Same with software engineering: we use better tooling, libraries, hardware is more commodified, and a lot of things we don't have to do ourselves. All things that have nothing to do with the methodology.
> So it seems that the actual lesson from the Agile manifest was only learned by the people who don't claim to practice it.
No methodology/manifest and no amount of management can compete with smart, qualified adult people being invested in their craft, and having autonomy and ownership on what they are building. The projects that succeeded are projects having those people, regardless of the methodology. In a way, people succeeded despite Agile, not because of it.
Could it possible be that.... you're not doing it right. lol
It is another great point. But it is another great point about how the process in your organization could be improved. Nothing says you have to have two parental figures.
And why on earth would you have a dedicated scrum master?! It's just not a job that should be requiring that much labor. Just have one part-time scrum master in the entire company who periodically audits and coaches teams who aren't doing the process right. Or coaches teams through the initial learning curve, as required.
In scrum and non-scrum processes that I have worked with, the PO comes from the marketing/sales team. On the theory that, if anyone has the pulse of what customers in aggregate actually want, it's going to be them. Also a part time job. But essential for injecting some realistic sense of "value" into the development planning equation. The direct contribution of a good PO is to make sure that the team is contributing work output to features that customers actually want. A good PO contributes enormously to team productivity.
Compared to what, exactly? I can't imagine you could say anything like that if you had experience with any of the heavy development processes that preceded scrum/agile methodologies.
The funny thing is that "communism" is a highly overloaded term, with several very precise definitions, one of what is so successful that about every country currently implements and people that dismiss it are ignored and considered radical. (But then, nobody calls that one "communism" nowadays, the the people pushing the others will really hate you if you talk about it.)
While "scrum" is a proper name with a single definition that anybody can look that is absolutely not precise enough for anybody to follow. By definition you can't really do scrum right.
>It's always the same with Scrum. Every time you point out something clearly wrong, the response is always "well that's not really scrum, you're doing it wrong".
Yeah, that would be the correct response. If we were discussing communism, and you started complaining that under communism everyone has to stand on one leg and hop up and down, a communist would correctly point out that hopping on one leg is not communism.
>Well to both of those camps I say: if most attempts ended up implementing it "incorrectly" in the end, it's not a very useful framework to begin with then, is it?
This is like saying that exercise isn't useful because most people who attempt it don't stick with it. Doing actual scrum is hard (particularly for managers), so a lot of teams can't stick with it. That doesn't mean it isn't useful.
>It's like when discussing communism with some diehard fans - when you point out the flaws, the response is always "well that wasn't real communism that's why it failed".
Nitpicking, but the Soviet Union, for example, never claimed they were already a communist state. They were the "Union of Soviet Socialist Republics", not "Communist Republics". Their idea was that, to have communism, you must have a transitional form of government first, "socialist government". The USSR even once had a motto, "we will build communism by 1980".
It's like if someone said they were following some other development process which would eventually lead them to Scrum. But no one does that and just calls it Scrum :)
> It's always the same with Scrum. Every time you point out something clearly wrong, the response is always "well that's not really scrum, you're doing it wrong".
Well, you are.
Give this shitty process you’re being forced to follow some other name and stop blaming Scrum.
Do Scrum properly and you’ll see why it’s actually fairly good.
> if most attempts ended up implementing it "incorrectly" in the end, it's not a very useful framework to begin with then, is it?
You can’t say that as you’ve not actually done the thing.
The main problem is that most managers and senior company people feel like they want more control that scrum allows them to have, and their use their power to overrule it. That’s their problem and not the fault of the Scrum system.
You may be onto something with communism. It’s definitely not resiliant to the kinds of paychopaths that end up dictators for life. I wish I knew why. Probably something to do with threats of violence.
As someone who works in a hard-tech startup, where daily standups in production manufacturing teams are part of the daily culture.
1) Anything longer than 15 minutes is insane
2) What do you even talk about for an hour?
3) Why do you even do standups for design work? What "blockers" could you possibly have that require daily, 15 minute tagups with the entire crew?
On #2, nothing. People stay an hour trying to look busy because somebody on the meeting expect them to be busy and the meeting to be important. So they spend an hour talking about nothing.
On #3, blockers exist more on design than on operation. But the idea of a daily meeting to solve blockers is crazy-stupid. Imagine if operations did this, every time somebody's work get a wrong input, you'd stop their line until the next morning. That's why operations dailies aren't about blockers, and instead about information sharing. But design work doesn't have separate teams that need to share information, so they invent a bullshit reason to still have the meeting.
We once had 1 hour long standups. The reasons were:
1) large team
2) many devs loved to go into detail about their work, and no one stopped them
3) the expectation was that a standup must be about describing what you did yesterday, in detail
What we did:
1) split the team into subteams where each team has their own standup (down to 5-15 min)
2) the standup's facilitator now stops devs from going into too much detail, "you guys can discuss it further after the standup"
3) now the expectation is that a standup should be about checking the project status and if there are any blockers, and that's it, you don't have to recount your whole yesterday in great detail
> 2) the standup's facilitator now stops devs from going into too much detail, "you guys can discuss it further after the standup"
I said this in another comment, but a standup I'm part of tables these until the end of the call; and then anyone not involved in that conversation can drop off. It seems like a reasonable compromise to balance the need to get people together to discuss something against the need to not keep people tied up. It helps mitigate the issue of people not wanting to plan a meeting to just "talk about" something (when that's actually what is needed).
So I think one thing that seems to pop up in people’s anecdotes is “well someone wanted to just talk about what they did yesterday.”
Which I suspect comes from the manager/PM going “so what’d you do yesterday?”
I’ve been taught, and I teach others, that in the standup you drive the questions. Usually along this framework:
1) I assigned you Task A yesterday. Did you finish Task A?
2) If yes, awesome. I have Task B for you. Or, go help Bob with Task C.
3) If no, cool. Why? What happened? Is there anyone in this circle that can help you? How can I help you.
4) Open Ended Questions/Comments that we need to circle up on later
5) General Announcements
15 - 30 minutes depending on the size of the team, scope complexity, etc. No one should be talking for more than two minutes. If whatever they need takes longer than 2 minutes, that’s taken offline and a flag something is wrong.
If you’re going to treat the software development like a factory, you must assign and manage work like a factory.
If you’re going to treat it like magazine publishing, you must assign and manage work like a publication.
Pick one. And stop having hour long standups y’all are crazy.
> If you’re going to treat the software development like a factory, you must assign and manage work like a factory.
What you described above is more like kindergarten, which is why any sufficiently seasoned developer hates Scrum with all the passion they have. It is mostly belittling, humiliating, and not even very productive at the end.
Interestingly, Scrum almost always ends up like being in the kindergarten, instead of addressing the real pain points, as it should be (eg. involve the business in the development process). But that takes real effort, which is hard, and therefore no PM or manager is interested in.
>What you described above is more like kindergarten
You ever try organizing and managing the work of multiple skilled tradesmen that feed into a single integrated product on tight deadlines? Do you know what works really well in that kind of environment?
Telling people what to do and then checking in on them to see if they’re doing well.
Is this kindergarten? I don’t remember being a skilled tradesmen working on building components for complex assemblies on tight deadlines in Kindergarten.
I concede that I am unfamiliar with what a normal “scrum” session looks like outside of what is said in the Agile manifesto and the many anecdotes floating around. I do know that Scrum took a lot of cues from TPS/Lean of the 80s and tried to feed it to Software.
And as far as I can see, it’s not working because the profession and the products do not fit this factory model.
What everyone seems to yearn for seems to match more closely to the model followed by magazines and other such publications. Product Management the profession mirrors more the Editor than the Production Manager, SWEs mirror writers/editors-at-large, etc.
Self respecting writers in any newsroom would balk at being subjected to daily scrums that take away from precious research/writing time. And to put some kind of regular pace on progress, metrics, etc. to what really is very bursty, deep focus work is also ridiculous. Whether it takes you 5 hours or 5 days to write the piece, so long as it is of quality and meets the deadline what does it matter. And even if you miss the deadline, you could alway be slotted into the next issue unless the piece was a cornerstone piece to the issue, in which case a good editor would have assigned it with ample time or given it to the best writer on the roster.
Hell I like this analogy. Might spend more time thinking about it and talking to SWE friends about it. Feel free to expand. Maybe this will free everyone from the shackles of Scrum.
One of the projects I'm on has a standup every day, and it generally lasts less than 15 minutes. Sometimes, a topic comes up that needs more discuss and it's tabled until the end of the call. At the end, anyone that doesn't need (or want, sometimes it's useful to just listen in) to be part of the additional discussion drops off and it turns from standup to technical discussion. It works pretty well.
Our PM quit a month ago and now we have stand-ups without any managers. I think it made the developers more responsible and involved: every stand-up a new dev gets the role of a facilitator. Previously, it was a one-man show. The stand-ups have become slightly shorter, too.
2 years ago we had 1 hour long dailies because the team was too large. We split into 3 subteams, each has their own stand-up. Now it's down to 15 minutes max.
They also tend to make the stand-ups one hour long.