8 ms·
How do interruptions impact different software engineering activities
- yodon 2y ago40 or so years later, the book Peopleware by DeMarco and Lister remains the best quantitative study on environmental impacts on developer productivity. The world has changed significantly since it was written, so you have to translate their measurements to modern contexts, but it's easier to translate real data on human behavior than to guess based on guesses.
- froh 2y agothe OP is a journalistic summary of Breaking the Flow: A Study of Interruptions During Software Engineering Activities Yimeng Ma, Yu Huang, Kevin Leach (2024) icsi Portugal it's not properly quoted, but it's directly linked, prominently. yes, I agree, peopleware is on the must have reading list, but this article certainly is not guesses on guesses
- NomDePlum 2y agoPeopleware is indeed still very relevant. Always felt Slack by DeMarco made important points around efficiency seeking damaging actual effectiveness, which I always found very convincing and chimed with my own experience.
- black_13 2y agoAgile is number one interuption of all enginnering activity .
- wink 2y agoNot sure if this is supposed to be sarcasm, but only from the direction of "lock the developers in a room and look what surfaces after half a year". Picking what to work on for [time] without external additions is a pretty good improvement over getting new assignments daily. Or maybe you're just doing it wrong, I'm not here to defend anything codified in Agile, I'm just saying that elements of what most people call scrum has been the best I've seen in over 20 years. Maybe I just missed the days of locking yourself in your single office.
- p_l 2y agoI suspect it's more about the way many people experience "scrum". The basic building blocks can actually work great, it's often how they are executed and how many places go very much micromanagement wrapped in agile's skin while also instituting lots and lots of meetings - total opposite of what both Agile and XP advocated. Some of the best agile/scrum I ever worked under came from "Scrum master" who explicitly stated that one of his jobs was to see what approaches work and change what doesn't work for the team.
- exe34 2y ago> see what approaches work and change what doesn't work for the team. unfortunately from my experience, "what works" can vary wildly from person to person. One person wants to be given a task and left alone to understand it and write some throwaway code as part of the understanding process. another person wants to bikeshed it to death first before letting you touch any code. so the first person has to hide the work on the prototype and pretend to come up with the insights for the first time during the bikeshedding session.
- p_l 2y agoWhich is why their job was to figure out a model for the team. This specific team. Sometimes you can compromise, sometimes you can figure a proper allocation of resources, sometimes you can part amicably instead of murderously.
- pydry 2y agoScrum is a bit too proscriptive to allow for that. One of the things that "works" is killing sprints, for instance, but scrum isn't scrum without a sprint.
- TeMPOraL 2y ago> "Scrum master" who explicitly stated that one of his jobs was to see what approaches work and change what doesn't work for the team. Ironically, if I were to give one-sentence summary of what the idea behind Agile is, it would be exactly that: "see what approaches work and change what doesn't work for the team". Running through that feedback loop rapidly is the whole point of Agile, and the one thing that actually distinguishes it from typical management methods at the time (as opposed to silly comparisons with "waterfall" boogeyman that never even existed). Everything else is process - the thing that's supposed to be sculpted. Focusing on that is committing the sin explicitly called out in the Manifesto - putting process over people.
- AdamN 2y agoI've found that agile works if velocity is static and used for estimates ONLY and is flat over time. Once velocity is measured as an output metric and there is an attempt to improve it, you've just left agile and are now in a morass. In the end, very simple Kanban is the way to go if your org can handle it.
- smitelli 2y agoIt’s worth pointing out that the “Agile” philosophy is literally 4-5 lines long: > Individuals and interactions over processes and tools > Working software over comprehensive documentation > Customer collaboration over contract negotiation > Responding to change over following a plan > That is, while there is value in the items on the right, we value the items on the left more. The thing I think everyone has grown to universally despise is the cargo cult of “Scrum” that got bolted onto that.
- marcosdumay 2y agoIt's not Scrum. Scrum wasn't even the first. (I think it was XP.) The problem is all the "Agile methodologies". Every single one. (Also, notice that "Agile methodology" as an idea is already against the first principle there.)
- SoftTalker 2y agoYes. As soon as you're conducting ritual ceremonies such as daily standups, you're no longer agile.
- nyrikki 2y agoIt is the pseudoscience of Taylorism and 'Scientific management', not the manifesto, which is really just a repackaged form of modern organization theory. The DOD agile BS PDF covers most of it. https://media.defense.gov/2018/oct/09/2002049591/-1/-1/0/dib_detecting_agile_bs_2018.10.05.pdf https://media.defense.gov/2018/oct/09/2002049591/-1/-1/0/dib... Once the consultant forms start to monetize the GAO's agile assessment guide things should get better IMHO. Unless that gets co-oped somehow, which is possible. How GM screwed up on the NUMMI plant shows how it is a Taylorism problem if you want something outside of tech. But even TOGAF and ITIL are adjusting because the feds will require it. Taylor measured people loading pig iron into train cars, faked a lot of things and the BCG/McKinsey types packaged and solid it. It has always been BS, is part of why the US manufacturing sector failed as well as why the USSR failed. Pretty hard to kill but it needs to die.
- pydry 2y agoThe problem is that those are a really vague and metaphorical 4-5 lines so it's hard to argue against somebody projecting whatever the hell meaning they want on to it. I'd argue that "agile" where I have done it and it worked well is at its core about tightening up OODA loops - with code (refactoring+tests+iterative improvements), with customer interaction (frequent interaction/experiment driven tests), with team organization (retros, adapting team processes). Feedback loops are, however, not mentioned once in the philosophy and neither are any concrete examples of "agile" or "not agile". Agile as a concept will stop being broken when people stop saying "to me, agile means X". Which will probably never happen - I suspect people will just stop talking about it one day and start using different terms for all the concrete steps that are sometimes filed under "agile" but which actually work.
- marcosdumay 2y agoDailies have the social contract of "you get to talk to the developers every morning, so shut-up the rest of the day", what on theory should be really great. The only problem is that all the problem people never take the hint, and the well-behaved people tend to take it to an extreme. So on practice it both doesn't get rid of the interruptions, and delay everybody's work due to the latency you need for avoiding interruptions.
- jimmaswell 2y agoPeople have complained to my boss when I've said the standup was designed to be as short as possible, maybe 10 minutes max, because it was done standing up. It's not called the sitdown. But ours can run over an hour. It's agonizing sitting there for an hour waiting to hear my name among the 99% of noise entirely irrelevant to me.
- TeMPOraL 2y ago> It's agonizing sitting there for an hour waiting to hear my name among the 99% of noise entirely irrelevant to me. More than once I've been asked discretely by my PM if everything is OK with me, because half an hour down a team meeting whose contents is "99% of noise entirely irrelevant to me", I'm too exhausted trying to control my movements to keep my body from telegraphing the fact I'm bored out of my mind. Turns out, to an outside party, I start looking like I haven't slept the night, or am about to get a stroke, or something.
- mleonhard 2y agoThe study had only 20 people.
- jjallen 2y agoI find taking mini breaks, whether visiting the restroom or being interrupted by my kids to be quite beneficial actually. It gives my mind a few seconds or a minute or two to do background processing and potentially come up with a better way of doing something. Or to realize that I’m not working on the most important thing in the first place.
- napsterbr 2y agoSure, and I agree with you, but what you described is just a break, not an interruption. These breaks were taken at a "natural" time, when you felt one was needed. By definition, an interruption is a "break" when you don't want one.
- macNchz 2y agoAdditionally, a break might be an opportunity for your mind to continue working on whatever it was you left off with, whereas an interruption explicitly redirects your attention to another topic. When I’m deep in the weeds on a task, stepping away for a walk in the park, a workout, or to prepare a meal or some coffee, affords me the opportunity to clear the micro details of the task from my mind while retaining the macro at the tip of my attention. This state is very frequently where the best insights on the task emerge, whereas an interruption resets both micro and macro attention entirely to something else.
- jjallen 2y agoMy son storming into my room unexpectedly is definitely an interruption.
- TeMPOraL 2y ago> I find taking mini breaks, whether visiting the restroom or being interrupted by my kids to be quite beneficial actually. For me, it depends. When working at home with kids around, I actually dread the restroom break or making myself a cup of tea, because in those two minutes I'm out of the home office, it's virtually guaranteed they'll drag me into whatever is happening at home at the given moment, wiping my focus entirely. Sometimes this does break me out of being fixated on doing the wrong thing, but more often than not, it just plain prevents me from doing any thing at all.
- rednafi 2y agoWe're also a picky bunch. A short coffee break or a chat with someone I like doesn't hurt as much as a "quick question" from Joe in Sales does.
- marcosdumay 2y agoOne single "quick question" doesn't do a lot of harm... If you have an average of 4/day or more, it will probably consume all of your working time. But one of them isn't a problem at all. And there's the problem, because it's both not a problem in small numbers, and a DoS attack still in small numbers.
- rednafi 2y agoA quick question from a fellow engineer is almost always quick; unfortunately, that's not the case for most other situations.
- TeMPOraL 2y agoA "quick question" from non-engineers (and even fresh engineers not yet used to the idea of focusing on work at work, or in general people who don't understand they're not the centre of the world) is usually carrying within it a request (or demand) to do something for the other person. A genuine "quick question" is one to which a quick "I don't know" or "not now!" is an acceptable answer. Those are easy to navigate - if you feel like considering it fully will break your focus, you can just decline answering it. If you can't, it means the question is really a disguised attempt to offload work onto you; engaging with it is giving permission to the other party to pull you in and try to keep you there.
- steve1977 2y agoWell, one question probably causes around 10-15 minutes of harm (not counting the time to actually answer the question). So yeah - have 4 of these a day and you've wasted an hour. Have this every working day and you've already wasted half a day per week.
- edoceo 2y ago
- redelbee 2y agoInterruptions are productivity and creativity killers. Middle managers are of questionable utility but that layer of an organization would be much more effective if it focused ruthlessly on removing distractions. I worked at a small company where a significant portion of my effort went toward shielding my team from the distractions created by a CEO who couldn’t seem to help meddling in every aspect of the business. I think it’s because he started out doing, or at least being involved with, many of the functions of the company and had a hard time letting go as we grew. Even after the organization grew to 50+ people he couldn’t keep himself out of the nitty gritty details, but the format of the distraction changed over time. Instead of walking up to people and interrupting them in person (a double whammy according to this study, including both an “important” person and the in-person aspect), he would send what we called “Slack attacks” throughout the day. These were paragraphs-long Slack messages without any semblance of organization, punctuation, or line breaks. Fortunately, many of these messages were sent during the very early hours of the morning so they could be dealt with first thing in the AM, but that wasn’t always the case. In the first phase I literally moved my team location and reorganized the desk arrangement so it was harder for him to get in and bug everyone. I had to “guard” the area and try to stop him from physically entering the space, which was always a strange dance. I couldn’t control his Slack messaging behavior so I worked with people to understand that while yes “the CEO is asking you for urgent work in Slack” seems like a valid reason to switch gears, but instead let me work to figure out what actually needs to be done and we’ll catch up later about what to do. It was a weird dynamic but there was no doubt the distractions were a drag on performance. Every time he went on vacation we saw a marked increase in productivity, and more creative solutions seemed to come up as well. I don’t wish this type of environment on anyone but in a way I’m glad to have gone through it and learned some lessons about interruptions and how to avoid them.
- alexpotato 2y agoIn defense of middle managers: When I was a middle manager at a past job, my team kept getting bombarded with meeting requests (it was a "fire drill all the time" kind of place). I ended up making a 4 hour "team meeting" every Friday morning to give them focus time. I mentioned to them that they could have done the same on their own if they wanted. My team lead pointed out that since our calendars were visible in the department, having me as the organized gave the meeting more "weight" and so line employees were less likely to push for time in that slot.
- khana 2y ago[dead]
- catchcatchcatch 2y agoThere’s people that don’t have adhd that can handle notifications. That’s the thing with being impulsive - those disorders are mental illnesses (quite technically) and will limit your net worth. It’s like why do all developers need to be listening to the orchestra or radio while programming?
- crackez 2y agoHard disagree. It's not at all a mental illness. That's ignorant. Some of the most technically adept people I know are on the spectrum and they are incredibly valuable. We're talking Chief architects, lead/senior engineers, Network engineers, and the list goes on. People like that probably have divergent neurochemistry compared to you. Learn to leverage that asset and stop being a Karen. Feigned wisdom isn't.
- steve1977 2y agoTo be excellent, you are by definition "not normal".
- steve1977 2y agoMaybe those people who "can handle notifications" are just less much less productive as a baseline to start with? Hence they don't feel the impact as much. I often find this with people who think they are good at "multitasking".
- jimmaswell 2y agoI certainly handle distractions better with my ADHD medication, personally.
- steve1977 2y agoAnd do you also feel that your productivity is higher in general (without distractions) when taking medication?
- 2y ago
- 65 2y agoMicrosoft Teams is perhaps the worst communication software your company can have for Software Engineers. People usually don't use the half-baked threads capabilities because they're separate and not intuitive, so it's usually just endless chat messages, all at once. And so you get constant pinging all day. And then I need to mute my Teams chats, which is also risky because I could have gotten an important message.
- black_13 2y ago[dead]