You're doing agile wrong

Sdílet
Vložit
  • čas přidán 3. 06. 2024
  • Today we're going to talk about a key part of software development that doesn't involve writing software.
    ❤️ If you would like to support what I do, I have set up a patreon here: / noboilerplate - Thank you!
    📄 All my videos are built in compile-checked markdown, transcript sourcecode available here github.com/0atman/noboilerplate this is also where you'll find links to everything mentioned.
    🖊️ Corrections are in the pinned ERRATA comment.
    🦀 Start your Rust journey here: doc.rust-lang.org/stable/book/
    🙏🏻 CREDITS & PROMO
    My name is Tris Oaten and I produce fast, technical videos.
    Follow me here / 0atman
    Website for the show: noboilerplate.org
    Come chat to me on my discord server: / discord
    If you like sci-fi, I also produce a hopepunk podcast narrated by a little AI, videos written in Rust! www.lostterminal.com
    If urban fantasy is more your thing, I also produce a podcast of wonderful modern folktales www.modemprometheus.com
    👏🏻 Special thanks to my patreon sponsors:
    - Affax
    - JC Andrever-Wright
    And to all my patrons!

Komentáře • 658

  • @NoBoilerplate
    @NoBoilerplate  Před rokem +554

    ERRATA
    - The cost of failure is only nearly zero if you iterate quickly. If you wait 6 months to demo it to your stakeholders, well... you get what you deserve.
    - I somehow got NFTs and NFC mixed up. What a shame, it's a halfway decent joke otherwise.
    - I realise I didn't mention what I recommend. I'd start with:
    + A 5-minute standup in the morning
    + Around a kanban board
    + With a WIP limit of team size/2
    + Demo as often as you can
    - NOT ALL DOCUMENTATION IS BAD, sorry I wasn't clear. I love code documentation, api docs, etc - what I don't like is process documentation, overhead documentation, all the stuff that literally doesn't matter if you don't do it.

    • @TobiDub
      @TobiDub Před rokem +12

      Why the WIP limit? Do you think that each issue should be worked on by at least two people? Why not WIP limit

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +38

      @@TobiDub Pairing is really, really good.

    • @LoveLearnShareGrow
      @LoveLearnShareGrow Před rokem +63

      @@NoBoilerplate I've heard so much good stuff about pairing, but as an introvert I find it exhausting and the opposite of fun. What I love is diving into a challenge, grokking it, solving it, then sharing it for review/discussion. Pairing (for me) is good for knowledge transfer and overcoming real blockers, but otherwise I want to play music and code by myself.

    • @someonespotatohmm9513
      @someonespotatohmm9513 Před rokem +11

      My limited experience is mostly solo projects that are quite detached from other current work. In that case I would still say do the standup just in case there is the possibility for knowledge sharing. But also a weekly +-30min meeting with whoever is in charge of the project your work is attached to. Keeps everyone up to date and it is nice to have some fixed time to look at what the ideas/issues are.
      Never skim on documentation though. Even if it is the basic stuff, someone who is new to the environment you use will thank you for it.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +23

      @@LoveLearnShareGrow extremely relatable - try using a 10-minute pairing as a kick-off on a task. Get going with help from a friend, then do the rest of the work solo

  • @BurtonJohnson
    @BurtonJohnson Před rokem +1664

    At my last job, I let my manager know that I felt that we were having too many meetings, and he told me that he valued my insight, and scheduled a meeting to discuss the matter.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +290

      I've started asking at the top of a meeting "what would happen if we didn't have this meeting?"

    • @rishatsharafiev
      @rishatsharafiev Před rokem +47

      Same, i've finally left my job and landed another one with twice bigger salary and it's not so annoying yet.

    • @gebbygeb3547
      @gebbygeb3547 Před rokem +48

      Wait this literally happened to me and I thought it was strangely a waste because the urgency just dies while we wait for that appointment.

    • @BurtonJohnson
      @BurtonJohnson Před rokem +30

      @@NoBoilerplate I like, "By the end of this meeting, we will have"

    • @CalifornianViking
      @CalifornianViking Před rokem +23

      We should all reject meeting invites that don't describe the objectives of the meeting. The "How the world will look different after this meeting" approach is good.

  • @fishfpv9916
    @fishfpv9916 Před rokem +407

    I worked at a place this summer and by week 2 I got my manager to completely ditch sprints and stories. We had a small team of 3 and just had a list of tasks and just took the highest priority issues. When someone got stuck we did pair programing. Probably the smoothest and fastest working project I have ever worked on. Really hate all the ceremonies involved in scrum

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +53

      This is the way.

    • @Winnetou17
      @Winnetou17 Před rokem +38

      This works because you're 3 people. Grow to 8 and it will most likely fall apart unless everybody has the same knowledge/seniority and way of doing things (which is rare).

    • @strangnet
      @strangnet Před rokem +8

      @@Winnetou17 there's no limit to the team size when it comes to working with Kanban. Why would it fall apart?

    • @vorrakedryom6547
      @vorrakedryom6547 Před rokem +5

      @@strangnet Ever heard of the "pizza team" ?
      Also ... the more tickets in a single column of your Kanban, the harder it will be to make sure you don't forget anything

    • @LetsRocka
      @LetsRocka Před rokem +14

      Getting stuck and pair programming with somebody in the team is always such a fun bonding moment.

  • @SimGunther
    @SimGunther Před rokem +245

    Corporate agile = several waterfalls happening simultaneously while not being able to find documentation divided in 50 pieces stored in 100 different places

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +10

      yup!

    • @75yado
      @75yado Před 7 měsíci +10

      Even worse because waterfall has some phases which are usually omitted in the corpo Agile but they are crucial to get the work done

    • @akam9919
      @akam9919 Před 4 měsíci +1

      Oh, and some pieces are replicated thrice or more with only one of them being up to date.

    • @boldvankaalen3896
      @boldvankaalen3896 Před 3 měsíci +2

      corporate agile is the opposite of real agile.

  • @laskinne0258
    @laskinne0258 Před rokem +122

    I was at a company one time for about 2 1/2 years. We had a scrum master whose job was basically just to waste everyone's time organizing scrum meetings and install and manage processes. We had a 6 month cycle that went like this:
    -New scrum processes/set of meetings gets announced
    -Everyone tries to follow it for about 2 weeks and then anxiety due to lack of productivity began to build
    -Every starts quietly ignoring the processes as much as possible to get work done
    -Productivity eventually grinds to a halt, disasters begin to mount
    -By month 4, we're in full-on firefighting mode. Everyone completely and totally throws all rules out the window, stops giving a shit about anything process-related, and just starts working and getting shit done.
    -By month 6, the smoke clears.
    -New scrum processes/set of meetings gets announced.

  • @GoldenBeholden
    @GoldenBeholden Před rokem +89

    I prefer "briefings" over "meetings", if that makes sense. For example: we were considering moving from RIBs to an architecture optimised for SwiftUI, but we weren't sure which one. The initial meeting to discuss this matter was pretty much an hour wasted. However, a senior engineer ended up implementing every single viable option within our existing skeleton -- the briefing to explain his findings took us to a conclusion within twenty minutes.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +17

      Very nice, I don't hate that - I also dig 'kick-offs' which sound very similar

  • @MechMK1
    @MechMK1 Před rokem +36

    I recently re-wrote a piece of internal software. It took me about 4 days of prototyping, then actually doing it. Then another week of testing. After two weeks, yi told my boss about the re-write, and that it was done and now working better-than-ever.
    Had I asked about the project beforehand, the planning phase alone would have taken a month

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +7

      Sneak in XP

    • @duncanedwards8258
      @duncanedwards8258 Před 8 měsíci +9

      Hence one of my favourite expressions: "It is easier to get forgiveness than permission."

  • @cg21
    @cg21 Před 7 měsíci +33

    We shared this video in the company and I talked to the dev team I work closest with if we should change anything, drop any meetings etc.
    They unanimously said that all the meetings are needed and that they really like the way we work. We are running 3-week sprints and do a production release after each sprint and the team likes that we can cherish the progress we made together.
    But in turn we keep all other meetings to a minimum: We only meet when there is something to discuss and make sure only the people attend that are involved in the agenda.
    Team likes it, customer likes it therefore I like it 🙂

    • @NoBoilerplate
      @NoBoilerplate  Před 7 měsíci +15

      YES dude, that's great to hear. Sounds like you're doing the right thing: Checking in on the process, asking if it needs tweaking. Nice!

  • @shupu2530
    @shupu2530 Před rokem +60

    Working in video game industry, I can say that for small teams, you might be right. But for large-scale team with limited budget, deadlines, changing scopes, and large number of people from various disciplines, "over planning" is kind of necessary.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +54

      Totally understood. My video isn't to say that I am smarter than a million software companies doing things with heavyweight processes - but that it's important to question the one-size-fits all approach. I'm advocating starting from the agile manifesto and working up. In many companies you'll reverse-engineer sprints, and that's fine if that's what works at your company - but I bet it'll be more custom.

  • @christinanull5098
    @christinanull5098 Před rokem +76

    On my team I found it was insane we were pointing issues that take less time to solve than the time we spent in that meeting pointing them

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +8

      get mad!

    • @CalifornianViking
      @CalifornianViking Před rokem +21

      @@NoBoilerplate I actually tried that, it did not end well. I was fed up with the amount of time we spent in meetings yelling at each other about how things sucked instead of working on solving the problems. Suggesting that picked the people that could (and should) solve the problem and move forward resulted in more yelling.
      BTW: The term "planning" needs some explanation. There is the planning where people estimate time and drag things out on a Gannt chart, and then there is the planning when software engineer(s) look at a problem and determine how to break it into manageable parts (often creates an architecture). The first is useless, the second is critical.
      Some people treat the "no planning" approach as if people should just start typing out code on a keyboard; this rarely works. I find that there is a big difference between "coders" and "software engineers"; coders write code, software engineers solve problems using and writing software.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +3

      @@CalifornianViking exactly right. Love planning. Hate estimation.

    • @benmerk4086
      @benmerk4086 Před rokem +9

      @@NoBoilerplate Scrum Master here with a genuine question, without any estimation, how can a company assess volume for client expectation setting on large scale projects? Like most companies, ours wants to continue to grow, so we are always lining up new projects, but without estimation one could overfill the pipeline and ruin relationships due to a failure to deliver within a reasonable time frame.
      Generally my guilds have placed the focus on being close with our estimates (we use story points, so ideally within 1 deviation up or down) and focus on learning about what questions we can ask or what discovery we could have done if the difference is significantly larger. In our planning we don't spend much time on the estimate itself and instead focus on making sure whoever is tackling the work has as much info as they need to feel comfortable with the task.
      I understand the pragmatic desire to mitigate superfluous meetings and try to safeguard that for my guilds, but those I hear being proponents of an estimate-less, and status meeting-less environment I don't feel are considering some of the real business necessities outside of the Dev dept.
      Also, how would a company set a budget for a project without a relative understanding of the effort, personnel, and time required to complete it?
      Please don't read any of this as snark, it's me genuinely trying to improve my game to better support my guilds and understand divergent view points.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +6

      @@benmerk4086 Hi Ben, you sound like one of the good ones, I've had the pleasure of meeting many in my career.
      My problem with estimating individual stories is that my feeling is that the bounds for error are well over 100% due to the extra stuff that happens during a sprint to get work done. Undiscovered problems and hold-ups, or the other way, with work that is surprisingly easy.
      Estimation at the story level is what I have a problem with, because it seems to me to be just as good as top-down estimation. And top-down estimation doesn't take up any of my expensive team's time.
      To be clear: story planning and kicking off I'm down with, seems useful. But estimating time or effort? That's a much more dubious value proposition for me, after 15 years of developing. 1/TFB/NFC might me 90% of the way there ;-)

  • @MeanSoybean
    @MeanSoybean Před rokem +264

    You're one of those people who talk fast enough that I don't have to put on 1.8x speed to listen. Truly, No Boilerplate.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +44

      The first version I recorded was compressed into 6 minutes if you can believe it. Folks on my discord were like S L O W D O W N and they were right!

    • @Flackon
      @Flackon Před rokem +7

      1.8x?

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +17

      @@Flackon Funny story, I actually do my first edit of my recorded scripts at 1.5x.
      Second pass is at normal speed, last pass is to sync up the video.

    • @bunny_the_lifeguard9789
      @bunny_the_lifeguard9789 Před rokem +7

      And then there is fireship always rushing through his videos like he has to run to the toilet 😂

    • @4cps777
      @4cps777 Před rokem +1

      I watch him at 2x. My attention span is kinda nonexistent at this point

  • @FiZ
    @FiZ Před rokem +23

    Several years ago, I found a decent metaphor for explaining software development to non-technical managers: it's not an assembly line, it's creative writing.
    No, seriously. Sometimes, our tickets are just correcting a typo, or a mis-ordered page. But most of the meat of our work is adding/removing/modifying entire chapters, or storylines, all while maintaining story cohesion and continuity. Now imagine that it's an entire series of novels, and you have multiple authors making large changes to the same book at once!
    I have still found plenty of terrible managers and companies that couldn't be convinced to give a rip, but some are willing to process that, and realize what programmers are expected to do

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +10

      Steve, you've hit the nail on the head: We're not factory workers, we're artists.

    • @borg_cube
      @borg_cube Před rokem +5

      Brilliant comparison.

  • @sufilevy
    @sufilevy Před rokem +220

    Yoooo agile??? This is not Rust and I LOVE IT!
    Mixing your regular Rust content with other smart stuff is really nice. Keep it going!

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +78

      oh what a RELIEF! This video is such a risk for me, I've got lots to talk about around technical topics and I want to get to them! Thank you :-)

    • @watynecc3309
      @watynecc3309 Před rokem +6

      @@NoBoilerplate Poggers

    • @albo4life6082
      @albo4life6082 Před rokem +9

      @@NoBoilerplate I think you should realize fans like myself atleast… really appreciate and respect your knowledge on all things not just rust :)

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +13

      @@albo4life6082 Thank you so much for saying so 🙂 I'm excited, I'll try more ideas!

    • @MrPlaneCrashers
      @MrPlaneCrashers Před rokem +4

      ​@@NoBoilerplate I'm honestly super duper happy you are exploring out of your comfort zone. The video you just shared is by far the most interesting and valuable technical video I have watched ever.

  • @allesarfint
    @allesarfint Před rokem +189

    The problem with Agile is the fact that they gave it a name, agile is supposed to be an adjective, not a noun.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +41

      I like this explaination

    • @jan-lukas
      @jan-lukas Před 7 měsíci +5

      It's not what you do, it's how you do it

  • @El-Burrito
    @El-Burrito Před rokem +24

    Your point on estimation is a breath of fresh air. I always hated being asked to estimate how long something would take as I really never had a clue. Then I started following the advice of "however long you think it's going to take, double it" and all of a sudden people are asking me why everything is going to take so long. I don't know!!

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +12

      The sad truth is that all these ceremonies are overhead and add no value, we all know this but go along with it and it takes 50% of our time.

    • @RedditSideways
      @RedditSideways Před 6 měsíci

      if you keep estimating things, and you still don't have a clue, it's probably, because you really don't...

  • @sploders1019
    @sploders1019 Před rokem +40

    I love this! This is definitely going on my bookmarks. My last company used SAFe, and I completely related to the “spending more time in meetings than actually writing code” part. I HATE story estimation, and think it’s too arbitrary of a metric. I feel like a lot of the stories I estimated could have been done by the time I finished estimating them! The approach you suggested is what I’ve been thinking this whole time. Every team is different, and you can’t force a complete methodology and business practice on everyone. It needs to be *agile* and adaptable. However, taking a massive project and not breaking it down or tracking the pieces is overwhelming, so agile is certainly valuable, it’s just about analyzing it objectively, taking what works, and leaving what doesnt

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +5

      Thank you! SAFe sounds just terrible!

    • @domincwild
      @domincwild Před rokem +5

      My previous company did this and it drove me completely insane. You saw some improvement you could make to the code base real quick? Think again friend. You need a JIRA for that, you need to discuss the work to be done, it'll cause re-testing, you have automated tests? Well it might break something. Can't risk that, even though it's not in production yet...
      Funnily enough, our JIRA's were terrible quality too. Vague boundaries for the work, we spent literally 4 hours a day "refining" tickets, that took realistically less time to implement than the hours we spent discussing them. Massive refining calls with the entire team for those 4 hours. It was an "I&P" sprint, innovation and planning and it was 90% planning. One of their innovative ideas to make our JIRA tickets better? "mini" 3 amigos (this is in addition to the regular 3 amigos the ticket goes through). Before you pick up a ticket, have ANOTHER MEETING you MUST HAVE a dev, QA and a business person to begin the work. Because that 4 hour discussion wasn't enough.
      One of our "senior" devs got so blocked on doing work for the project, he enjoyed working more on side-projects than the real project. Wouldn't even seek out and try to do the "real" work anymore.
      It was such a disaster. But makes for a nice'ol horror story. It really makes you appreciate proper agile, tearing back all the nonsense, cutting the crap, having a team that speaks their mind etc. Makes a world of difference.

  • @Imevul
    @Imevul Před rokem +19

    While I do agree with many of the points in this video, I have been in projects where this breaks down, and where meticulous planning up-front was imperative for the projects success.
    Specifically, I would like to point out the "the cost of failure is nearly zero" statement. For example, when the thing you're developing is responsible for billing millions of customers correctly, there's really no room for error. Not planning at all, releasing a just-about-finished version, and hoping to get feedback from your customers is not an option. That's a great way to get sued and/or get the authorities involved, and the cost of that is huge. Similar issues when you have to make sure the thing you're developing follows any contractual or legal obligations, really.
    Also, "It's the only thing that works" is definitely, provably not true. People were doing software development successfully long before Agile came around. Maybe just chose the best tool for the job, instead of claiming there's only one true way of doing things, eh?

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +9

      I think we're talking at cross-purposes, let me clarify my statements in the video:
      1. The cost of failure is nearly zero is true in an iterative approach, but false in waterfall. If you show your user what you are doing every week, instead of after 6 months, it doesn't really matter if they don't like it in the first week.
      2. The folks that wrote the agile manifesto didn't really invent anything, they just documented what high-performing teams were already doing.
      I didn't mention it in the video, but the secret here is that "agile" is just the scientific method: Doing what provably works, not doing what doesn't work.
      So it's no wonder people everywhere were basically doing the same thing!

  • @dwmichaels
    @dwmichaels Před rokem +20

    The elephant in the room is that we need to change the way we work. I believe the creators of the Agile Manifesto aren't the first folks to come to the conclusion that we can do better. They called it Agile, but it's really just "stop wasting my time and let me get something done". There are a lot of folks that are working and don't understand what being a professional is all about. Our (in the US) educational system doesn't teach us how to think independently, it teaches us to follow directions. I find the most frustrated developers are those who do think independently and are not given the freedom to act on what they believe is the right thing to do.
    The various frameworks are there to help. You take what works and discard the rest. Companies implement teams but don't understand the purpose behind teams. The majority of companies are still working in a top-down hierarchical mindset. "I'm the boss, do what I say". People new to the workforce don't understand any other way and are trained to behave the same way, so as they move up, the next wave gets the same treatment. All with positive intent but terrible results.
    If you are a young developer/engineer, etc. you should know the Agile Manifesto. It was written by someone just like you, just after 25-30 years of work experience. Don't tell your Scrum Masters that Agile sucks, show them how Agile works. Build software, demo it to stakeholders, get feedback and iterate. Work as a team towards a common goal (not everybody working on something different) and get to know the people you work with every day. In my opinion, as a team, you should want to meet every day to understand what your plan is for the day and identify any impediments to your progress. Sprint review, sprint retrospective, backlog refinement - these are all things you should want to do and if you do them, the time is inconsequential. Why wait for a day or time to show your new working software off? Do it as soon as it's ready. If you identify a better way to do something, why wait for 2 weeks to talk about it? You should always be discussing the next things you'll need to take on. You'll need to do these things to get feedback and get better. Scrum gives you the framework, but what people rarely talk about is the adaptability. Take what works, discard the rest.
    When it comes to estimates, don't think of it as a prediction as much as a safety warning. You should think in terms of small pieces of work you can create and test frequently so you can get customer feedback. Estimation is an exercise you can use to consider what will be required to develop a piece of working software. The sooner you can show it off and get feedback, the sooner you get confirmation that the direction you are going in is the right one. The longer you spend before getting feedback, the harder it will be to change direction.
    Stop fighting Agile. Understand it and fight for what it really represents. You have a retro? Talk about what is really on your mind? What is NOT working and what do you want to change that will allow you to deliver working software quickly? Got a meeting that you don't want to attend? Is there an agenda? Do you KNOW how you are supposed to contribute? If not, can you decline? Are you empowered? If so, decline. If you get pushback, then you can discuss what empowerment really means. Are you assigned work or do you take work? Are you trying to get better? What would help you improve your skillset? Be an active participant in making you and your team better. Be curious and ask questions.
    Finally, there are plenty of metrics for Agile and measuring what a team produces. But are you able to easily show how often you deploy to production AND what you deployed to production? The majority of metrics are really for the use of the team to understand if they are improving. The only metric that should matter to management is are you delivering valuable working software on a regular basis (are the stakeholders/customers happy?).

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +2

      Really great take, thank you.

    • @donparkison4617
      @donparkison4617 Před rokem +2

      "The only metric that should matter to management is are you delivering valuable working software on a regular basis (are the stakeholders/customers happy?)." -- This is 100 percent how it should be.
      Unfortunately, most managers come from a PM background and are addicted to charts. If they cant have their (gag) Gantt charts, then they want to see those burn down charts. If these people didnt exist we wouldnt need Scrum. XP would have been just fine. In my opinion, Agile was created to undo the mess that PMI certs have made. Only to have PMs transition to Scrum Masters and Managers and do the same thing they did before with bastardized agile terms thrown on top.

    • @dwmichaels
      @dwmichaels Před rokem +3

      @@donparkison4617 IMO, Agile was created to get away from the manufacturing mindset. A group of people who didn't need to be told what to do got together and came up with a set of values & principles that anyone could follow which would just allow people to get the important work done. That was followed by frameworks because management didn't understand just values & principles. Then it became profitable to teach people and certify people and... well, you know where we are.
      I agree that Agile shouldn't be a thing. It should just be the way we work. If delivering value (and the most important value) early and often, not burning out your people or treating them poorly is important, just do it. You don't need a framework to make that happen.

    • @donparkison4617
      @donparkison4617 Před rokem +1

      @@dwmichaels Agree completely.

  • @landineidor
    @landineidor Před rokem +55

    As a former agile coach I worked with and consulted many teams and individuals. You my good sir get a lot right, and it bugs to hear it, even though I preach it almost the exact same way.
    I was organizing internal "scrum basics" trainings and also conducted trainings in other companies for years and I always put a lot of emphasis on the theoretical side of Scrum and WHY it was created and WHAT problem it originally should solve.
    Scrum has nothing to do with estimations or velocity or user stories etc. All these things "parasited" their way into Scrum, making it de facto bad. No one today knows what a user story actually is, but it is such a common buzzword, that everyone needs to use it, or they are "doing a bad job"...
    That being said, you made a couple of statements to which I don't fully agree:
    * As per Scrum guide, Scrum meetings are not ceremonies, but events, and if your plannings, reviews and retros have no deep significance there is clearly something wrong with the implementation
    * Sprints are no framework for management, it is a frame to give the team a structured way of tackling "problems" (= making the product better), the frame consists of: understanding the problems and find a way to solve it (planning/refinement), implement it and keep each other up2date on the progress (Sprint and daily), review the work done on a product level (review) and review the work done on a interaction-level (retro)
    ** This can be seen by the fact that in daily only the team members are allowed to talk. It is NO status meeting, this is a meeting for the team to check which member needs help to do a good job.
    * Just build something and get your customers feedback is easy to say, but so hard to actually accomplish. Sprints are a really good start to do it. If the team is mature enough in handling this kind of process in a quicker timeframe, do it. But hear me out: It is beyond tough to do.
    As said, there are some excellent points in this video and it really bugs me that Scrum is being pushed into this management frame. Scrum is a product development framework. Estimations, velocity and burndown charts may be practices that many consider "part of scrum", but - oh boy - this just shows how little so many management people have understood in creating a good product today.

    • @errrzarrr
      @errrzarrr Před rokem +9

      A testimony from an ex- High Priest of the Sacred Bureaucratic Cult

  • @lukivan8
    @lukivan8 Před rokem +63

    Variety from no boilerplate. I love this. Keep this up

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +16

      I've got HUGE plans. Next video is back to a Rust one, just in case, but I'm going to branch out in 2023! XD

    • @lukivan8
      @lukivan8 Před rokem +5

      @@NoBoilerplate you aspired me to provide helpful content for other people (mostly narrow targeted tho). Great to see you grow. Maybe I will start my own channel when I finish my 20th meeting about changing api routes that we forgot to change in previous sprints. Frontend devs are also there btw)
      Great video, continue confidently)

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +4

      @@lukivan8 Fantastic, share it with me when you're published!

    • @lukivan8
      @lukivan8 Před rokem +4

      @@NoBoilerplate Will make English subtitles just for u

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +4

      @@lukivan8 You're very kind! I bet the auto-generated ones will be 99% right ;-)
      My scripts are here if that makes your job easier github.com/0atman/noboilerplate/tree/main/scripts

  • @TheSpinTensor
    @TheSpinTensor Před rokem +13

    I build an OpenSource Profiler with one of my colleagues, and we had an extremely tight deadline. So we just puzzeld it together, figuring out what we needed on the fly. After we just managed to make it work before the deadline, I spend the last one and a half years to rewrite it as a sideproject, because now I knew what we actually wanted from the start.

    • @absalomdraconis
      @absalomdraconis Před rokem +4

      In my experience, the third reimplementation of something is usually really good: one implementation to explore the concept (realizing your initial mistakes along the way), one implementation to build a decent version (realizing deeper defects along the way), one implementation to get really polished (avoiding e.g. most technical debt in the process).

  • @eliotcamel7799
    @eliotcamel7799 Před rokem +5

    "Working software over comprehensive documentation" is good sometimes, but a more consistently valuable goal is to have a good balance between maintainability and immediate progress. It's the multi-armed bandit problem: "a fixed limited set of resources must be allocated between competing (alternative) choices in a way that maximizes their expected gain, when each choice's properties are only partially known at the time of allocation, and may become better understood as time passes or by allocating resources to the choice." (Wikipedia) However, I think agile forgoes this conclusion because of the role us devs often find ourselves in. The customer is always right, and if they requested something, they will get it. If the product they recieve makes no sense long-term, that's on them. They don't understand the code (they may not even have it), so at a certain point, if they want features, they will need to wait for the necessary refactoring. If the people who wrote the code are having a hard time maintaining /adding to it, then good luck finding a replacement who can do it faster.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +1

      Totally agreed, the manifesto authors knew that "working software" is "maintainable software".

  • @davidg421
    @davidg421 Před rokem +48

    Elephant in the room no one addresses: what happens when the developers that were working in the project quit and there is no documentation and the code is a mess. Good luck being the one that has to handle that

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +4

      ouch!

    • @errrzarrr
      @errrzarrr Před rokem +7

      Is pretty obvious and happens all the time because approximate time of a developer in a company is 20 to 24months.
      Blame Agile for being anti documentation, now teams need more meetings to verbally explain the same all over again to the new hires.

    • @BigheadGenius
      @BigheadGenius Před rokem +3

      That’s always been the Achilles Heel of “purest” Agile development. “Let’s skip the func spec because Agile Manifesto!” Developer(s) split and there goes the project deadline with them… because client projects tend to come with project scopes and project deadlines - something else that doesn’t seem to have been considered in this sort of “it takes as long as takes” approach to project management.

    • @absalomdraconis
      @absalomdraconis Před rokem +2

      @@BigheadGenius : Every coin has two sides- the spec needs to be met within the deadline, but sometimes the deadline doesn't allow enough time to meet the spec.

    • @luciojb
      @luciojb Před rokem +6

      "the code is the documentation"

  • @cd-bitcrshr
    @cd-bitcrshr Před rokem +39

    Incredible work. You've made extremely valuable content from the start, and I look forward to seeing what's to come.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +8

      Thank you so much Chandler, this was a bit of a risk for me, so it's great to hear :-)

  • @adamhenriksson6007
    @adamhenriksson6007 Před rokem +6

    I would like to say that LEAN manufacturing is the best parallel to agile software development. The Goal and The Phoenix Project are fantastic books, and they really focus on creating simple solutions for local problems. General, clear goals for software management does not really exist. I will try to make a pitch:
    1. Increase throughput of releases which customers want
    2. Decrease cost of features and cost of errors
    3. Reduce WIP and dead code (this does not mean "do not write code", but instead, "do not leave features unfinished", and "remove code from production that does not do anything")
    I tried to replace throughput with lead-times of testable releases, but it just does not seem to make enough sense. If these are the goals, then the goal of any software development organization should be to "Increase throughput of features while decreasing cost of each deliverable during its lifetime while reducing unfinished features and unused code", and agile should be the method for striving towards that goal.

  • @StrixyN
    @StrixyN Před rokem +15

    I used to sit though 8 to 9 hour long planning sessions every 2nd Monday with the entire dev team and the entire leadership team. We produced absolutely useless software that none of our customers bought. Company collapsed. We all got fired. I have refused to do Scrum or "Agile-ish" ever since.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +4

      I'm sad you had this experience, I think we've all had some experience like this (maybe not the company failing every time).
      Faith in scrum in defiance of evidence is the insanity in many places.
      If you hear people calling something agile that doesn't make sense with the manifesto, call it out, they're praying, not planning.

    • @errrzarrr
      @errrzarrr Před rokem +3

      Funny thing is you as dev get the fingers pointed at you because of low productivity and poor performance. Get that on your stigma and you are dead.

    • @BigCarso
      @BigCarso Před rokem

      Well no, I've had the opposite experience. Scrum has been the best process I've worked with.

    • @BigCarso
      @BigCarso Před rokem

      @@errrzarrr That isn't part of agile or scrum. That's just managers being dicks

  • @dwylhq874
    @dwylhq874 Před rokem +6

    Great video Tristram! ❤
    Having recently worked for a FinTech client that had a "Scrum of Scrums" in a JIRA Monster and hired _expensive_ "Agile Coaches" (people who don't _remember_ the last time they wrote any code, or worse don't know _how_ to code ...) to implement SAFe across the org, we _wish_ this video had existed and we could have shared it ... Thanks! 🙏

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +1

      Yikes!

    • @dwylhq874
      @dwylhq874 Před rokem +1

      ​@@NoBoilerplate Yeah ...
      imaging spending **60+%** of your work week in meetings ... 😢
      Try to explain to non-technical managers that meetings is not where the actual _work_ gets done.
      Totally Agree that "Agile is the only thing that works".
      Sadly, most people "practicing" Agile aren't engineers.
      Most people don't value the Engineer's time
      because they aren't _paying_ for it out of their own pockets ...
      Wasting an Engineer's time in endless meetings is _horrible_.
      Anyway, thanks again for making this video. ❤

  • @marcovitale8808
    @marcovitale8808 Před rokem +20

    One of the most interesting video i've ever seen. I've always hated SCRUM, and had become resigned to the (mis)idea that SCRUM = Agile, this video literally changed my mindset, thank you!

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +4

      oh my pleasure! It's a wild industry we're in, right?

    • @BigCarso
      @BigCarso Před rokem +1

      Well to be honest a large part of scrum comes directly from the agile principles. Standup and retros are specifically mentioned in agile principles.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +1

      @@BigCarso which agile principles? agilemanifesto.org

  • @NicolaDeLazzari
    @NicolaDeLazzari Před rokem +7

    The key is to find the balance according to your team and your product. The solution is never black or white. Methodologies run on agile by itself where you can iterate in order to have the best working methodology for you.

  • @ponderatulify
    @ponderatulify Před rokem +5

    I agree with estimations, and the moral duty that if it's simple no need to plan it.
    We use estimations for stakeholders and for us to gauge relative difficulty. If this is a 3, and the next one takes significantly more work it's a 5
    . If the next one has the same amount of work, but it involves other teams, other stakeholders, we bump it up. I mean these are heuristics more than anything. I don't care how management uses them.
    I value processes a lot. Should I spend all day writing to people in the slack channel reporting bugs on the website? Or should I have a workflow for them, to open a ticket, mark it as urgent or not, we pick it up, they can folllow process, they must fill in all fields to describe the bug.
    Retro if used properly can be used to get honest feedback, bring improvements and the team together, if it's not hijacked by someone else wasting time talking about a task.

  • @jameender
    @jameender Před rokem +7

    Straight to the point, no bs, just pure knowledge. I love your work! ❤

  • @maxpursian
    @maxpursian Před rokem +10

    Nice switch up of content! Would love to see some Obsidian content from you soon :)
    On the topic of agile: our team decided to change the approach from a more scrum oriented version too, we still have some meetings but are a lot more chill about doing meetings if we would rather focus on coding. Your point on the story points has piqued my interest, I might bring that up, because I really don't see much of an advantage in the numbers too, but TFB and NFC are good to mention on a user story!

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +2

      Yeah, that was new to me too. Basically it's "yes this is a story" "too big" "more info needed". I love it.

  • @rancidbeef582
    @rancidbeef582 Před rokem +11

    OMG, you nailed this on every point. Thank you! There's no telling how many days of my life I've wasted in daily stand-ups listening to people try to make it seem like they were productive since the same time yesterday. The micro-managers just love it. And out of all those thousands of meetings, I would wager I've heard something useful in maybe five of them. To management, Agile is synonymous to Scrum, instead of Scrum being a subset. I would like to try Kanban, but no one seems to know what that is. And the Scrum process becomes the new religious dogma. You estimated more hours of work than remain in the sprint because something is taking longer than expected? Oh No! The burndown chart is now in the red! You better work late to fix that for the arbitrary sprint deadline so our retrospective charts look pretty! This shit has really ruined my love of a career in software development. I currently work in the defense sector. You can imagine how bureaucratic any process becomes in an industry that's tied so close to government, the epitome of inefficient "process". I can't wait to retire.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +5

      That sounds tough my friend. See if you can get into a smaller, younger company, and in the interview ask them how many hours of meetings they have in a week.
      If they don't know, thank them for their time.

  • @aDifferentJT
    @aDifferentJT Před 7 měsíci +1

    Developing software equates to drawing the blueprint, not building the house. A design phase before building any software is like a design phase before drawing any blueprints.
    The construction phase for software is compilation, it’s very cheap, writing the code is the design phase.

  • @davidbroadhurst8107
    @davidbroadhurst8107 Před rokem +2

    I agree at some companies Agile only got acceptance when it became waterfall by a different name. I think of Agile as a way for a team to find a way to work efficiently that suits them best. There's also a huge range of types of software that can effect the process of building software, e.g. mission critical, highly secure, massive scale, regulated / audited, entertainment etc.

  • @seinfan9
    @seinfan9 Před 5 měsíci +5

    Most meetings I put together as an engineer, people walk out commenting that it was productive and they got something out of it. Most meetings the scum leaders put together is met with exasperation and thought to be a waste of time.

  • @sids911
    @sids911 Před rokem +3

    Another good quality video from No Boilerplate, I love the fast-paced data dense videos no matter the content of it. I believe I watched another video from another channel which shouted you out too for this, just nice to see your way of doing things is getting known.

    • @sids911
      @sids911 Před rokem +1

      dumb me... its code to the moon's video if I remember correctly.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +1

      Yeah! I contacted Ken and we did a cross-promo, it was very friendly :-)

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +1

      Thank you so much!

  • @mihail3852
    @mihail3852 Před rokem +7

    Scrum is a great tool if is applied properly and in the right context.
    I’m a SM in for a team of 11, working with other 8 teams on a large scale solution for the private operations of one of the biggest banks in the world. Now, think about the amount of stakeholders, strategic projects, impact of every change,the amount of dependencies and so on.
    In this environment, Scrum does for us exactly the opposite of what you said: it allows me to shield the team, reduce the noise and keep the team focused on what it has to be done.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +6

      I've also been in teams where scrum has worked well - the thesis in this video is that scrum is not a one-size-fits-all method, and I suspect the majority of teams using scrum would be better suited with something else

  • @da47934
    @da47934 Před 10 měsíci +1

    I would add that, while "working software" is important, working software that doesn't add value (eg, solve a problem, meet a need) is by definition valueless. You're not done when you release working software, you're done when the value exists (eg, problem is gone, need is met). Working software is your current best guess at what might provide that value, but it's not the point. It's merely a measurable, doable means to that end. Put another way, working software is a lead metric; value added is a lag metric. Value is what matters, but you can't directly add value: you can only directly make software. So make software. But if the indirect but actually-important value doesn't result, go figure out what software to make (or rework or some other non-software solution) until it does.

  • @0xkeez
    @0xkeez Před 26 dny

    I love this, thank you! I've stumbled into becoming a programmer using no-code tools and now I'm building software for clients. Since building software was a hobby and the no-code space is tiny and somewhat disconnected/ostracised from CS circles I have found it hard to understand how to take an idea from a client and deliver. Estimation and over planning is truly a killer. Thanks again this helped me think a lot clearer about all this.

  • @xJoeKing
    @xJoeKing Před 11 měsíci

    Love your topic / analysis / discussion videos!

  • @rdean150
    @rdean150 Před rokem +2

    Working software is #1, yes absolutely. Supportable, stable software is the second most important metric. And because there's almost always a phase 2 to any well built software, HOW it is written is very often important as well. As in, cleanly designed code written with an understanding that it will likely need to be extended handle additional use-cases. This is where product managers can make or break a project. If the devs go into it with an expectation that their current requirements are the only requirements, they will bake that assumption into the design. This can make phase 2 dramatically more difficult (and take a lot longer), as it may well require rewriting big chunks of phase 1 in order to accommodate the expanded requirements.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem

      Couldn't agree more, maintainable, well-documented software is working software

  • @ColinM9991
    @ColinM9991 Před rokem +7

    Really good to see you promote "Code to the Moon".
    There are some poor quality content creators who upload videos that cover nothing other than the Rust docs.
    On the other hand, both of you upload really good content that resonates with me, as somebody who has been working as a software engineer for almost a decade. There are real, enterprise concerns being mentioned here.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem

      I'm so pleased, thank you!

    • @rancidbeef582
      @rancidbeef582 Před rokem +1

      @@NoBoilerplate Yeah, I'm definitely going to check out CTTM. And I've really enjoyed your Rust videos as well!

  • @foursixnine
    @foursixnine Před rokem +1

    This is without doubt one of the best things about agile I’ve heard in a while! Thanks for putting the word out there!, will look at the source for the inspiration too!

  • @calculated8115
    @calculated8115 Před rokem +9

    I haven't seen such a good channel in such a long time. Just wanted to leave this here. Keep it up. Your positive impact on me has been insane.

  • @JohnnysaidWhat
    @JohnnysaidWhat Před rokem +7

    Things tend to break in the middle. I’ve had managers that are process trolls and jira cult leaders. Surprisingly their projects turnout like dog💩. Micro managing knowledge workers is a great way to lose good knowledge workers.

  • @carapas_
    @carapas_ Před rokem +3

    The most favourite and absolutely correct: just deliver a value.

  • @zamplify
    @zamplify Před 11 měsíci +1

    I've been subscribed for a while but I just started *paying attention*. Outstanding content, I'm rebuilding my whole perspective tech stack.

  • @TheLopais
    @TheLopais Před rokem +3

    Thank you for putting what I've been feeling for the past couple months into such clear language. Great video!

  • @pho3nyx
    @pho3nyx Před rokem +3

    I really like your videos, but this time I feel the need to write a comment
    because my jimmies are a bit rustled.
    First of all, I 100% agree that what's currently out there in the industry has
    long stopped being (or never was) "Agile" in the original sense and instead is a
    bullshit marketing term for management, making things worse than better. That
    being said, i doubt that just following the Agile Manifesto is enough to lead us
    out of the software development process jungle.
    - The reason the Agile Manifesto has survived for as long as it has is because it
    is not really actionable (and that's ok, its purpose is to outline the
    fundamental values of agile work).
    - Even for pure software projects, people struggle to translate the Manifesto and its
    12 principles into actionable steps for the trenches of the software development industry.
    Even the most fundamental question, "what is valuable?" is extremely hard to answer and
    "involve customers" is only the beginning.
    - Many software projects (I'd argue the vast majority) are entangled with domains that
    have longer cycle times like certification, electronics, hardware etc.
    requirements and constraints are coming from.
    - I don't know what "working software" is. Is it when the customer is happy? Is technical
    quality part of it? Maintainability?
    I don't want to sound unfair because it's a 8 minute video which can't just solve a methodological
    question of the past 40 years. I guess what I am trying to say is that we are still
    far away from a methodology where we can say "do that and you'll get a good software product".

    • @NoBoilerplate
      @NoBoilerplate  Před rokem

      Thank you for your comment, good to chat - I totally agree, my video mostly points out what is currently not working, rather than provide answers.
      The FIRST STEP is to realise that scrum/kanban/solid isn't the only way to do it - the way to do it is to start with your exact problem and domain, understand the agile principles, then work your way up from there.
      As you say, if you're bound to long lead times or hardware or government policy, you will work your way up to something that builds those immutable foundations in.
      But you'll never know if you don't start from the manifesto and work up! :-)

  • @ahmed.systems
    @ahmed.systems Před rokem +11

    Informative and good as ever. One little suggestion if I may: why don't you add the numbering to the video title later on. I think it'd be better for the algorithm if people didn't think each video was part of a series (which they kind of aren't since they have self contained topics)

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +7

      OOH thank you, gonna remove that now

    • @ahmed.systems
      @ahmed.systems Před rokem +5

      @@NoBoilerplate Thank YOU for the quality content, that's what makes me wish for this channel to grow big

  • @Seltyk
    @Seltyk Před 5 měsíci +1

    A friend of mine once said that Agile is a fancy name for "engineers talking to each other". By cutting out the middle man, i.e. management (which I prefer to call "manglement"), the managers realized that their jobs were pointless and that they are dead weight to the company. They got business degrees, not engineering degrees; "doing things" isn't in their playbook. Of course, they have to justify their employment somehow, rent isn't gonna pay itself, so they take the only option they know of: forcibly inject themselves into the engineers' workflow through meetings and convoluted protocols. They then hoist this bastard procedure above their heads and shout "Agile!" or "EOS!" while the engineers decry vital hours of lost development time.

    • @NoBoilerplate
      @NoBoilerplate  Před 5 měsíci +1

      Exactly right.
      A Pig and a Chicken are walking down the road.
      The Chicken says: "Hey Pig, I was thinking we should open a restaurant!"
      Pig replies: "Hm, maybe, what would we call it?"
      The Chicken responds: "How about 'ham-n-eggs'?"
      The Pig thinks for a moment and says: "No thanks. I'd be committed, but you'd only be involved."
      No chickens are allowed to speak at my standups.

  • @DanoTheNerd
    @DanoTheNerd Před 6 měsíci +1

    Most of the time when someone blames scrum or other frameworks, it's not the fault of the framework, but the companies/managers.
    for example: having to much meetings when spending one to two hours a day refineing and estimating is not part of agile. in scrum it is the responsibility of the product owner to refine, that developers can work efficiently. estimation is not required. but most people think it is part of scrum and blame it for, then in fact it is not.
    you don't need to do that if this is not fitting for you.
    working more agile should never be a overhead. it should give you more. more feedack. more transparency, clearer storries, and than: more (quality) time to code and not spending an hour figuring out what a story with only a title should mean, and doing it twice because you misjudged.
    keep focus what you realy need to do, to be agile, and stop blaming scrum for companie specific decisions

  • @jakehallam2113
    @jakehallam2113 Před 10 měsíci +1

    I've seen a couple of places do scrum and agile and what they've all failed to do is iterate. Developers work twice as fast and are 10 times more enthusiastic when they have a rough crappy prototype of the final product. If the choices are "A crap prototype in 2 days" or "A nearly finished product in 2 months", I guarentee the crap prototype will turn into the finished product in way less time.

  • @gordonsulc8319
    @gordonsulc8319 Před 7 měsíci +1

    This might be the most succinct and illuminating explanation of the issues on this topic. Which is even more amazing considering the portion of time devoted to crediting another person!

    • @NoBoilerplate
      @NoBoilerplate  Před 7 měsíci

      Thank you so much! Ken from CTTM and I started at about the same time, and so we connected and did this little shout-out swap! It's such a nice community!

  • @codetothemoon
    @codetothemoon Před rokem +2

    Thanks for the shoutout, and fantastic video!!! Agile can definitely be a footgun in the wrong hands.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem

      My pleasure, your videos are so great, Ken! Thank you for making them :-)

  • @Noble166
    @Noble166 Před rokem +2

    I was surprised to come across a video about project management on Your channel instead of Rust but I've enjoyed it a lot. I'm looking forward to more videos about IT as a whole.
    I'll pay more attention to how I spend my time at work. I'd rather spend it on developing software and developing my skills than wasting it.
    What I'll try using immediately is the idea you suggested in the comments. I'll try bootstrapping a new task by starting off with pair programming for the first 10-20 minutes and then let the assignee finish the task themselfs. As much as I'm willing to belive in the effectiveness of pair programming, it tires me too much to be forced to sit and code in a fixed time frame.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem

      pairing is REALLY tiring, you gotta take it slow - I'm glad you saw that comment, perhaps I'll talk about my suggestions in a future video

  •  Před rokem +1

    Here is the agile interpretation I was thinking the same thing about. You explained it much better than me.😅

  • @DefeatistElitist
    @DefeatistElitist Před rokem +3

    You know what they say: "The tradition of all dead generations weighs like a nightmare on the brains of the living."

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +2

      Oof that's heavy.
      I've heard a similar one: "I'd rather disappoint my grandparents than my grandchildren".

  • @tomw0815
    @tomw0815 Před 5 měsíci +1

    Exactly. Read the manifesto and don't use the the shorted version with only bullet points like "working software over comprehensive documentation" that are so easily misinterpreted wrong.

  • @ali.khosro
    @ali.khosro Před rokem +1

    I follow your very useful videos and I also follow Allen and Dave and Martin. I do dislike Scrum, Ceremonial Agile, SAFe (ugh!), and more than anything Jira and certifications.
    There is one way to learn and do Agile: Do agile! And there is one way to learn it (besides doing it): do it with people who have done it before and successfully if you are lucky to be in such a team.
    BUT, one thing I guess we overlook is the FORMAT. In the long term, Format is more important than Content! That is why religions with rigid ceremonies last and liberal approaches to religion ceremonies die. In software design, this is projected in Conway Law. Maybe, the only design law in software that I am aware of.
    It is important to have simple but (kind of) rigid formats, processes, chart, team formation, communications, version control, release cycles, CI/CD in order to have a successful product for a very long time.

  • @iandrake4683
    @iandrake4683 Před rokem +2

    Agile is great in certain circumstances. However, in some cases, building software IS like building a bridge or a house and detailed planing IS necessary.
    But in the software industry we a fad followers. New framework, cool. New language, awesome. New management process, sure. And we do this without ever considering if these things make sense for the TYPE of project we're working on.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +1

      I'm not saying agile CAN'T scale up to building bridges, in fact I'm saying it absolutely can - I work in the UK's Government Digital Service - we use as lightweight processes as needed.
      On billion/week payment processing systems, you better believe it's heavyweight with change-request etc, but when we needed to roll out the covid tracking app, we did that shit AGILE. www.gov.uk/service-manual/agile-delivery
      (my opinions are my own, to be clear)
      'Agile' is just responding to reality. Totally agreed that reality occasionally needs heavier weight processes. But it should be as light as possible.

  • @jahinzmaan5012
    @jahinzmaan5012 Před 4 měsíci +1

    Who makes the tasks in agile?
    What are the tasks entirely based upon?
    Without the daily standup, how do you track the completion of the project?

  • @glennismade
    @glennismade Před 6 měsíci +2

    Scrum is a terrible trap to end up in for most organisations. The issue isn't scrum directly. But rather that its not meant to be implemented organisation wide in a fixed manner. Agile isn't a process, its a methodology to approaching software development in a dynamic and flexible way.
    The issue is, Scrum takes the inherently reactive approach of agile and applies a very traditional pre-emptive narrative to it. You can't plan your way out of chaos. You need to have a goal in mind and drive towards it in as small steps as possible.
    I'm a huge fan of XP practices and applying periodic goals to a kanban style of working. The way I see it, you need to have three things to be effective in an agile enviornment:
    1. an overarching goal for the next 3-6 months (Some idea, some technical principle, some project vision)
    2. a rough plan for the next couple of weeks (some chunk of work, like implement caching, redo front end rendering etc)
    3. willingness to scrap almost everything
    Without that, you have nothing. You need goals, and targets, but you need to accept failure is part of the process. You implement idea x, move on, if X is no longer fit for purpose you redo it..
    SO, you have a goal -- some new project, you have a very rough idea of what it needs to look like, you start throwing things together, POC's and spikes etc. just do it quick and dirty. Then you take look at what works, whats broken, whats horrible to look at, work with etc, Then you two together a rough idea for what needs to be replaced or redone. you have three categories:
    1. Now
    2. Next
    3. later
    You don't score, you don't estimate, you say, this is now, this is next, this is later, If management need estimates, you say now = small, next = medium, later = large. You don't do anything too large, you look at work, see if you can implement it, break it up if not, But that's it.
    every time you finish a few tasks you bring in the next piece of work. Heck, you can make it so you don't pick up more work until the entire team is finished if you want to avoid true kanban,. but you should just try and implement stuff.
    Jira is a brilliant and a terrible tool devs. Its great for keeping track of what you're doing, but its often a anchor. Jira should be used simple to keep track of whats being worked on. Nothing more. Maybe for AC's or bug reporting. But that's it.
    Test everything. but avoid massive UAT servers and test environments, Try and avoid regression tests and integration tests,. You want to keep testing light, fast and effective.
    Next time someone mentioned Scrum certs or agile coaches, run away. push back as hard as possible,. you don't need an agile coach, you need to just start being more active and more deliberate. pragmatism is the key here. Oh, this solution works, but will likely break at 10x the projected load, unless you know you'll ever hit that, just implement it. move on, refactor and replace later.

    • @NoBoilerplate
      @NoBoilerplate  Před 6 měsíci +1

      makes sense, the framers of the Manifesto came from the XP crowd, and all hate scrum!

    • @glennismade
      @glennismade Před 6 měsíci +1

      @@NoBoilerplate the wild thing is, it didn’t need to be like this. Developers have done this to ourselves. We’ve pushed and pushed from agile and Scrum constantly for decades trying to move away from waterfall and have allowed agile and scrum to become synonymous with each other. We’ve allowed for our goals to be more autonomous and efficient and reactive to be co-opted by middle management and project managers. And we can’t blame them.
      The only real solution is to break down the barriers between product and engineering and really make it clear the processes needed to deliver a solution.
      Hilariously, the most effective and efficient team I ever worked with was a full on waterfall team. It’s wild to think, but they were genius. They managed their roadmaps like series of micro waterfalls and planned everything to the limit. But in tiny tiny chunks of 3 weeks. It was wild.
      But, I don’t think that approach would work in most cases.

    • @meelooxavier6502
      @meelooxavier6502 Před 5 měsíci +1

      I like your style!

  • @Zicore47
    @Zicore47 Před 6 měsíci +1

    This sums up the problems with the way we use agile really well.

  • @MrSilence95
    @MrSilence95 Před rokem +3

    F**king hell I watched this video 4 times in the last three days and I cannot express how hard this video hits working for a company that is a contractor for a company that wants us to work in a SaFe environment. This summarizes all issues that we currently face and the reasons why this is not working
    Thank you!

    • @NoBoilerplate
      @NoBoilerplate  Před rokem

      My pleasure, I'm sorry I don't have many answers for you!

  • @JorgetePanete
    @JorgetePanete Před rokem +2

    Big teams can respond to change fast, in my case we're 2 devs and we should have planned from the start, but that did not depend on me and we're way overdue since changes take long

  • @da47934
    @da47934 Před 10 měsíci +1

    This occurred to me for the first time while pausing to reread the manifesto bits at 1:15. "Individuals and interactions over process and tools." Scrum (which isn't agile, I know) and how it has been implemented at past companies is almost exclusive process and tools.

  • @KurtiZv
    @KurtiZv Před 7 měsíci +1

    What an excellent and clear summary.
    You cut through so much noise and bullshit on this topic. Well done.
    Saving this to show managers

  • @mudi2000a
    @mudi2000a Před rokem +2

    Regarding the documentation, I agree that good code is self documenting. BUT as soon as you leave pure development and enter the realm of DevOps and need to deal with Operations then documentation is a must. Especially if you need to do 24/7 and the skill level in the team varies.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +1

      Good documentation is part of a good system, absolutely.

  • @chrsjms
    @chrsjms Před 10 měsíci +1

    I love the message, and couldn't agree more about agile. Management often look at scrum and safe as this prescriptive cure all and quickly lose most of the value out of their developers by bogging them down. I do have a nitpick with the idea of not estimating and by relation; sprint planning. In my experience, there is great value in communicating with the team on what everyone is planning to build, and the outcomes they hope to achieve. This helps limit waste if we are actually iterating fast. Most of all, I value the information the team learns together at the end during a retrospective. As for heavy tool usage, large companies in the US have a lot of conflict actually working this way, especially public ones. There are many metrics that have to be tracked for audit and tax purposes, and the overhead caused by tools are used to (hopefully) automate that tracking. Not to mention the need to track and plan for large releases across the enterprise's projects.

  • @cassiuslives4807
    @cassiuslives4807 Před 8 měsíci +1

    I agree that the overhead and ceremonies are an excessive veneer of corporate control. Nevertheless, those come from two fundamental realities: 1) businesses need to finance R&D and ensure return on investment 2) customers have timelines for delivery, so promised delivery dates are important for customer service
    So the "you're doing agile wrong" says to me "I'm an artist why don't people pay me for what I want to make". There's a bit of entitlement to the sentiment.
    Are there ways to bridge this? Yes, and it involves devs and product owners spending more time with customers and understanding what they want, and why they want it, and why they want it when... straight out of the horse's mouth. The dev team needs to be part of the feature bidding process.

    • @NoBoilerplate
      @NoBoilerplate  Před 8 měsíci

      We completely agree on the best way to do it right: Early customer feedback, straight from the horse's mouth. But estimating how long that best way will take is VERY difficult.
      Ask a poet how many poems they can write in a year, they will say "I literally cannot tell you"
      Ask a developer how many features they can write in a year, they will say "I literally cannot tell you".
      I'm not being entitled, it's just how it works, and anyone who tells you otherwise has something to sell you.

    • @cassiuslives4807
      @cassiuslives4807 Před 8 měsíci +1

      @@NoBoilerplate well my finance office will ask "how long will it take to build the feature or meet the requirement", and the customer will ask "how long will it take for you to keep your promises"....
      ....a poet can shrug and say that "I literally cannot tell you" but then both the board and the customer say "well then I literally cannot pay you."
      ... and that's before CyberSec run a linter over the code and CICD pipeline and insist that it has to be fortified before it's suitable for Production deployment.

    • @NoBoilerplate
      @NoBoilerplate  Před 8 měsíci

      @@cassiuslives4807 I don't doubt there are ways to give estimates to those people, both time and money. The agile manifesto does not say anything about that, and cramming in estimation into it causes a great deal of problems.

  • @jkasee
    @jkasee Před rokem +1

    Fully agreed that too much process and ceremony can be detrimental to progress. But on the other hand, in my humble experience, certain tools, agreed upon ways of working, documentation, feedback from both customers and from peers and some ways of making sure devs and dev teams aren't working on duplicated, competing stuff or some stuff that should be cared about goes without caring are a must. So is connecting all that jazz to the other parts of the organizaion. On the other hand I'm all for competing prototypes, but we should have everyone commit to the one with most long-term merit and coherence for the overall solution.
    Too often I feel like "being agile" is used as an excuse for not doing any planning and not coordinating work with the company as a whole and all sorts of unmaintainable gung-ho short term hacks that screw you over in the long run. I feel that there's a lot of good stuff built into Scrum and most of the events seem to have a valid purpose. I would be very interested experiencing a reasonable implementation. I have never witnessed Scrum in action myself.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem

      'being agile' does indeed tend to cover a multitude of sins - I hope you've seen I'm arguging for an evidence-based approach. If scrum works for your team, great! If a heavyweight process works, great. It has to WORK for you - there's no one-size-fits-all, but there doesn't have to be.

    • @jkasee
      @jkasee Před rokem

      @@NoBoilerplate Thx for the reply! :) Working as a mixed IT admin and software developer for a programming house that also does electronics and device manufacturing and very much doesn't forcibly restrict your role inside one particular box sure puts a whole lot of spin on thinking about these matters and grants an unbearably wide perspective on many types of issues and viewpoints. I try to think about it all too much for my own good, but hey, being holistic is a good thing right? And it sure doesn't get boring. Now if only I could grasp all of it or at least the most significant parts from all over the biz and make some concrete good come out of all the pondering and wondering :D Or die trying. Work in progress.

  • @maxreuv
    @maxreuv Před rokem +1

    Nailed it! No scrum, build/deliver direct to end-user - great, but in my company, engineers are shielded from the end-user by a layer of technical management. It makes it this much harder to penetrate this bubble.

  • @transatlant1c
    @transatlant1c Před 9 měsíci +1

    I’d absolutely love to roll back the cruft and plan less, it certainly sounds like the way. The main problem (in public sector anyway) is the PM who needs to report the project progress to their bosses. Whilst there’s many ways to do this, they almost always fall back on sprint burn down, which requires all the other planning junk to work, so it gets done as a necessity prerequisite. Still sucks though.

    • @NoBoilerplate
      @NoBoilerplate  Před 9 měsíci +1

      I worked in the uk's Government Digital Service for 4 years, finishing only recently, so I feel that!
      My advice would be for the PM to focus on larger features, demoable outcomes, rather than tickets. %age through a certain releasable epic, perhaps.

    • @transatlant1c
      @transatlant1c Před 9 měsíci +1

      @@NoBoilerplate agree! Show progress through showcases/demos, whatever they’re called it’s not important. I will continue to fight the good fight, currently trying to convince the org to not do ‘backlog grooming’ on day 2 of the current sprint…..

  • @MrNerdHair
    @MrNerdHair Před 11 měsíci +1

    I'd very much appreciate your perspective on how to address nonfunctional requirements in the context of agile (or whatever) development. I'm a security guy, and it's really hard to sell customers, or even other engineers, on a "feature" that just consists of "stuff not breaking." That's applicable to security in particular, but also in general to reliability concerns and architecture work, as well as handling technical debt.
    Usually the customer can't give useful feedback (because it works fine if they're not pushing to prod, and ideally all they see is things not breaking), management doesn't understand why it can't just be handled in the same style as acceptance criteria, and engineers don't want anyone bloating their tickets' AC with things they can't directly test for.

    • @NoBoilerplate
      @NoBoilerplate  Před 11 měsíci

      I understand, I worked for a year and a half in one of the uk government's cybersecurity departments! You must have buy-in from the top. Ideally before the breach, but when it happens, THEN you make sure you get it.

  • @adriantombu
    @adriantombu Před rokem +3

    I have more than a decade of professional experience and I'm yet to work for a company that is not doing "Agile" the way every developer hates it (bazillion of meetings, estimations, poker planning, 2 weeks sprint, etc.). It's gotten to the point where when I see "agile" in a job description, I just close the tab and forget about that company. I'm 36 and I've never worked in a truly agile company. Depressing.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +1

      Hey! We're the same age! But yeah, it's SO rare. I worked in a Thoughtworks-run company, and it was KINDOF good. Pairing, and lightweight scrum. But the CTO still screamed "WHEN ARE WE GOING TO MAKE THE PRODUCT" half way through another 2h meeting once. That was funny.

  • @PLay1Lets
    @PLay1Lets Před rokem +2

    Just wanted to let you know that you are my favorite tech-youtube channel and the only one that i would watch again and again, not because i dont understand, but because i love your voice and points... must have watched some of the rust videos like 5+ times.
    Keep on fighting the good fight and take this comment for the algorithm : )

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +1

      That's fantastic news! I was a bit apprehensive about releasing this video, as it's outside my usual type, but everyone's so nice about it! Thank you :-)
      If you want to hear more of my voice, there's 10 seasons of Lost Terminal to enjoy, I'm so proud of it czcams.com/video/p3bDE9kszMc/video.html

    • @PLay1Lets
      @PLay1Lets Před rokem

      @@NoBoilerplate I was going to ask where you learned speaking like that, but had to do a double take, it does say SEASONS up there, jesus

  • @DanielLiljeberg
    @DanielLiljeberg Před 8 měsíci +1

    I like this. I feel agile, or the perversion of it that companies today believe is agile, is something we need to have a sober discussion about. I feel it has become "tell teams to do X" and the core values have been forgotten. Just like you say, the teams are supposed to figure things out as they go so their solution fit in their eco system and with their knowlege and challanges.
    With that said I do believe Scrum (which made a concious decision to move away from ceremonies to events) can faclititate successfull agile development when working with complex problems.
    But Scrum is incomplete by design. It only "mandates" the core aspects that are needed for the feedback loop and continued learning to take place.
    The problem is that several things not part of Scrum have become what many believe Scrum is. Burn down charts, story points, valocity... and on and on.
    Sure, if they help your team in their work you can use them, but they are not mandated by Scrum... but sadly they often are by management. Which by itself is an indicator that the plot of the entire thing is lost to the organization.

  • @adamd0ggg2
    @adamd0ggg2 Před rokem +1

    You would not believe the depth of argument, over an hour, I had with using number story points or t-shirt sizes. The other developer likes numbers, specifically golden ratio numbers, with arguments of arithmetic purity. I like my stories small, medium and large. It's all estimation anyway, I'd rather convey the gut feeling rather than some analytical numbers detached form the human experience of actually developing software. He conveyed the want and necessity of managers to track progress and work from developers. The sizes don't do that. But if my boss is relying on these numbers to gauge progress then he is too detached from the project to be an effective manager.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +1

      I too try to argue for t-shirt sizes: S M L.
      I've been in teams that had a whole STORE of different sizes. 3XL I kid you not.
      I now am fully converted to 1, TFB, NFC!

  • @adarshsrivastava1941
    @adarshsrivastava1941 Před rokem +2

    In my previous org I used to spent more time in filling data on our scrum project management tool Targetprocess then actual development.

  • @KeithSader
    @KeithSader Před 5 měsíci +1

    Thank you for a video that confirms all of my 'agile' biases :-)

  • @Flapjack4795
    @Flapjack4795 Před rokem +3

    Fresh air, thank you!
    Thoughts on Next.js 13 and Turbopack?

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +2

      Thank you! Not tried them, any good?

    • @Flapjack4795
      @Flapjack4795 Před rokem +1

      @@NoBoilerplate Currently looking into this, should be really fast from a User point of view as they are moving more to server side rendering. If you get around to look into this, I would love to hear your thoughts, Thanks!

  • @ChrisKunicki
    @ChrisKunicki Před 7 měsíci +1

    What would you suggest as a starting point for learning SCRUM?

    • @NoBoilerplate
      @NoBoilerplate  Před 7 měsíci +1

      scrum is nothing, wikipedia can teach you scrum:
      "Scrum prescribes for teams to break work into goals to be completed within time-boxed iterations, called sprints. Each sprint is no longer than one month and commonly lasts two weeks. The scrum team assesses progress in time-boxed, stand-up meetings of up to 15 minutes, called daily scrums. At the end of the sprint, the team holds two further meetings: one sprint review to demonstrate the work for stakeholders and solicit feedback, and one internal sprint retrospective."
      Learning what WORKS for software teams is very different.
      The Manifesto works, but doesn't prescribe very much, and that is because it's very different team-by-team. Scrum might work for some teams, kanban might work for others.
      I'm sorry that's not the answer you wanted, managing artists (which is what software developers are) can't possibly be the same in every team. But I do have a recommended reading list for you:
      holub.com/reading/

  • @danielbernalbrito4381
    @danielbernalbrito4381 Před rokem +1

    Incredible! Thank you!

    • @NoBoilerplate
      @NoBoilerplate  Před rokem

      Thank you! Judging by your avatar, you're gonna LOVE tomorrow's video XD

  • @rickwoods5274
    @rickwoods5274 Před 7 měsíci +1

    I'm forty seconds into this video, and can I just say. "Agile sucks -- specifically the way it is understood in most companies around the world today." The scroll of truth here is _that means agile sucks_.
    If one user gets a thing wrong because they didn't read, it's user error. If _most_ users get a thing wrong "because they didn't read"... it's bad UX and you need to do user behavior analysis to figure out how to get users to the destination more smoothly.
    This is the same. If "most" companies don't understand agile, then sorry, it's agile that's the problem.
    EDIT: Okay I watched the whole thing. Despite being pretty negative above, I actually agree with every point made in this video (at least partly, some completely). And if you are willing to wrench control of the term "agile" away from scrum's clutches, then yeah, it's great.

    • @NoBoilerplate
      @NoBoilerplate  Před 7 měsíci

      Thank you for the update to the comment.
      It's a common pattern to see unrelated products or ideas trading on the good name of something else.
      (see: "Quaker" oats, "recyclable" vs "recycled", the erasure of the meaning of "socialism", etc. etc.)

  • @mctainshcom
    @mctainshcom Před rokem +2

    I’ve been programming to 32 years. You are 100% correct 👍

  • @Voljinable
    @Voljinable Před 7 měsíci +1

    As a beginning project manager who now mostly helps with small tasks in ict, its good to hear. Im not a programmer but i like scripting and automating. I hope to not become like the dreaded managers that exist and find ways to use agile that work. Thanks for this!

    • @NoBoilerplate
      @NoBoilerplate  Před 7 měsíci +1

      The best PMs I've worked with have understood the manifesto clearly, and nearly made themselves invisible by educating the team how to be self-organising.
      Do read these two short books if you've not already, excellent practical applications of agile ideas:
      - Rework
      - Remote

    • @Voljinable
      @Voljinable Před 7 měsíci +1

      @@NoBoilerplate thanks for the recommendation! Are the books by jason fried & david heinemeier hansson? I luckily got a giftcard for books from work so ill definitely be buying them!

    • @NoBoilerplate
      @NoBoilerplate  Před 7 měsíci +1

      @@Voljinable You've got it! They're from 37 Signals, the company that makes Ruby on Rails!

  • @captnoplan3926
    @captnoplan3926 Před 10 měsíci +1

    What you described assumes that you have a team of highly capable developers. In the corporate world you often don't have this and hence why you need guardrails.

  • @Queso2469
    @Queso2469 Před rokem +1

    I think this is a model that makes sense in the context of a piece of software being built collaboratively with a customer as a service, which is frequent in spaces like web development, but starts seeing some major friction in software written as product (eg video games). Software as a product needs to be able to sell itself, not just meet needs. It can never meet needs if it doesn't get bought. We can't go back and forth with our customers until we have customers. We do what we can to estimate, and simulate, customer feedback. But at the end of the day we have millions of customers, we'll only ever hear from a vanishing fraction of them, and mostly after we've already finished and wrapped a product. And in games especially the meaning of "working" has significant logistical overhead to even define and measure. What is working code when the only measure of working is "fun" that has to fit into a multi hour, sometimes multi month consumer context?

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +1

      A common problem - I believe the common solution is using a "client proxy". If you can't get the client, then get a simularcrum - product owners, or game lead designers or testers etc. I totally agree that it's a difficult problem, and I'm not suggesting any other solution than to start with the manifesto and build up from there.
      A game dev studio shouldn't just use scrum and hope!

  • @holmnerd
    @holmnerd Před rokem +6

    Were being taught agile through scrum, where I'm studying CS, but I've often felt that it was impossible to estimate tasks that involve technology you haven't even learned. This has lead to us ditching most of the ceremonies of SCRUM, and instead focusing on getting work done. This however lead to another problem, where the less experienced members of a group end up stuck, confused and/or left behind, since they rely on a lot of the planning for certain tasks, in order to break down the given problem. So as a student I feel kinda stuck between these ideas.
    Any ideas on how to handle such situations, and what is your opinion on agile development from a students/learners perspective?

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +2

      Normalise task kick-offs. "Hey folks, I'm about to start task X, Could I have a few people to kick me off and get me going on it? Thanks!"

    • @arthurderyckere8732
      @arthurderyckere8732 Před rokem +1

      Pair programming

    • @NoBoilerplate
      @NoBoilerplate  Před rokem

      @@arthurderyckere8732 LOVE pairing. A core part of XP, which scrum ruined.

    • @rancidbeef582
      @rancidbeef582 Před rokem +1

      I wondered how schools were handling this, since agile wasn't really a thing when I was in school. Hell, we never covered anything about managing / planning large projects. It was always just one-off programming assignments. Actually thinking of my first real job after college, we basically did a simple "agile", it just wasn't called that. We'd have meetings when necessary to plan stuff and go to work. We'd have impromptu meetings whenever needed to clarify issues or ask for help. It was awesome.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem

      @@rancidbeef582 Agile's basically just the scientific method. Hypothesis, experiment, theory or repeat.

  • @nicolashumbert8344
    @nicolashumbert8344 Před rokem +2

    Your content is always top notch quality. But this one, sir, is just so accurate... As a dev who suffered a lot from Scrum, I can't agree more.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +2

      We're all working in the code mines, being whipped by scrum overlords

  • @Honken
    @Honken Před rokem +1

    This is my favorite video of yours, bravo!

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +1

      Wow, really! Thank you so much, I was really worried about doing something new!

  • @hanswoast7
    @hanswoast7 Před rokem +2

    I worked in a company with extremely good documentation written by full time requirements engineers (v-model) and then one that does bad agile with absolutely no documentation. Even though I like the ideas of agile, I like having good documentation even more. My current job is pure and utter chaos.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +1

      Check my ERRATA comment: I'm sorry I wasn't clear in the video:
      Process documentation is valuable! But working software is MORE valuable.
      User documentation and api docs are PART of working software.

  • @andreicojea
    @andreicojea Před rokem +1

    Absolutely loved this ❤

  • @antonymechin280
    @antonymechin280 Před rokem +1

    Pretty clear but I have to disagree regarding the documentation, at least the internal documentation.
    - First the domain can be complexe and you cannot expect people to go through implementation detail to understand the complexity. As an example, AWS has some great lib with good documentation but some of the core concept need higher level documentation, containing illustrations and stuff.
    Introducing new comers to a complexe problem through a code base is utopic.
    - Second, the code base is the final iteration of the product. It does not contain the information related to the previous versions, why it evolved the way it is today. Having an internal documentation explaining the rational between the implementation of a feature is crucial, otherwise it will be lost and create endless debates.
    I agree it’s a lot of time invested but IMO, it’s worth it at an extent.
    Note regarding sizing: don’t be fool. The main purpose of sizing is for managers to compare developers’ velocity. However, it also helps to spot potential divergence regarding the complexity of a task, which sometimes reveals some unsuspected consequences of a feature.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem

      In my experience the inaccuracy of bottom-up story points is so great (over 100%) that any statistics and trends are not to be trusted.

  • @ponderatulify
    @ponderatulify Před rokem +2

    Individuals and collaboration over process and tools is hard man. Not once have I watched engineers go back and forth over a topic, forgetting the goal, the impact of the said change (negligible), and just weighing pros and cons over something that really doesn't make a difference.
    Another thing. We use checklists for our PRs. Why am I supposed to keep in mind every concern for that PR? Think about what changed, see if it concerns the items in the checklists. You use the checklist as leverage. Free up cognitive power for more creative stuff instead of menial stuff like remembering things.
    My principle is if it's not written down, it doesn't exist.

    • @NoBoilerplate
      @NoBoilerplate  Před rokem +1

      Totally agree, I really love a high-documentation culture in a team. As a part-time remote worker, if things aren't written down, they can't involve me!
      I don't think "individuals and collaboration" only means "talking".
      At least, I hope not!

  • @donparkison4617
    @donparkison4617 Před rokem +1

    I agree with a lot of your premise but not necessarily your prescription. Over my career I have fought and fought with people who do half assed scrum and use Jira and stand ups to micro manage developers. So really, the motivation of the leader of the dev team should be to protect the team from micro management and unrealistic expectations. If the motivation of the leader is to impress his/her bosses with cool metrics the whole thing is doomed. Scrum is just another stick to beat people with at that point.
    So if the team lead / manager has the right motivation, how do they protect the team from PMs and C suite nobheads? Thats what velocity & capacity are for and you cant do those things without sprints or estimating. Here is another place where this often goes wrong. When managers (usually those PMs) insist on estimating in hours instead of story points, or even worse they talk in story points, but equate them to time boxes. When I see a team estimating in hours or time boxes (other than the sprint itself) and its obvious their process sucks. They are trying to make good burn down charts, not good software.
    The only reason story points exist are to compute a velocity (average story points per sprint) in order to calculate capacity (Velocity adjusted for availability). And the reason capacity exist is to protect the team from overwork, micromanagement and an unsustainable pace being forced on them from on high. This is the team's capacity. That is all they can take on this iteration. And if you do it right, you leave room for refactoring, testing and innovation in process.
    Here is another huge red flag. If you hear anyone wanting to 'increase team velocity' or compare teams against each other using velocity, then you have managers creating unsustainable pace. And what happens when we work at an unsustainable pace? Our code sucks, I.E. we have broken the cardinal rule by putting the process over the software. People being forced to work faster, inevitably introduce more errors into the code and innovate less.
    I always say, never confuse the Artifacts of work for Actual work. BUT, you need some number of artifacts to show to the people paying the bills that working software is being delivered at a reasonable rate or to estimate when a certain number of important features will be delivered. But this isnt really for them, its for the team. Is so managers dont feel the need to dive in and get in the way by trying to 'get the project on track'. That is always a disaster. We all have lived it.
    But after all that, if you have the choice to do True Agile, where story points, estimation, sprints and velocity dont exist because you dont have to report to people who have no understanding of how software is built, then great! Maybe you work for yourself or a cool startup that gets it. You enjoy a rare and wonderful place. But thats not the world most of us live in. The best we can do is create a shield around the team so they can do work in as close to an agile way as possible. That is what scrum is supposed to do. Give management enough information to not panic and to leave the team the F**k alone.

  • @mari_murphy
    @mari_murphy Před měsícem

    Hey Tris, are you familiar with requirements engineering?
    I'm trying to learn it and I couldn't really find a video (series) that works for me. But I know your videos and, if you can and are willing to, I would be very thankful if you made a video about it. It would help me a lot

  • @ikituriflash
    @ikituriflash Před 7 měsíci +1

    how much would AI and its abilitiy to comment and document code help in the quest for documentation? in my experience a lot.