One of the tangential benefits to having a very streamlined mainline/agile development process: you sometimes get ancillary contributions outside of work projects. Case in point: I had some free time this evening, and was thinking about doing some coding. In past orgs, this probably would have led to me experimenting with some new technology, refactoring some chunk of code which was bugging me, inventing something new, optimizing something, etc. Often these types of instances will lead to significant value creation for orgs (see the many anecdotal stories to this effect). In my case, I know that in my current situation, this would be largely pointless, and perhaps even counter-productive. Changes cannot be merged unless approved and assigned to releases in advance, large changes induce high personal risk, refactoring is generally discouraged, and the divergent-branch methodology means that every branch will add maintenance overhead for me for literally months, just to have the potential to have something be eventually approved. In short, every single process in place is aligned to push back against this type of inclination. So, obviously, I didn't do that, and did other things instead. I'd note that, incidentally, the org/management is well aware of this state, and has made a management decision to enforce it; in essence, they are intentionally sacrificing that potential innovation and value for additional stability and control of the processes. I'm not asserting either path is unequivocally good/bad; I'm just noting the benefits and costs inherent in those decisions, which are sometimes overlooked.
Nick Carroll’s Post
More Relevant Posts
-
Welcome to reality. It takes a lot of courage, it seems, to take on the latest hype and say, "I'm not that convinced, you know.". We switched from the era of disruptive technologies to the era of compliance, where everyone is doing the same thing just because it feels safer and more comfortable to mess with things the same way others do. Agile is the way you mess things up while pretending to feed and satisfy the anxiety of the customers, who would like to know that "something is movin'" and that those damn donut-eater workers are doing something. All in all, that goes down to the absurd idea in the West that you should measure everything and that you can create metrics and KPIs to know what's going on and monitor if everything seems to be fine according to my long list of parameters that someone in some book listed as good values. Then workers burn out, software became an absurd patchwork of poorly designed code, and bugs and security issues skyrocket but hey... we're releasing something every week! YaY! How "performant" we are, sir! The fact is, people are not cattle, though that distinction blurs for Capitalism. #agile #software #development #developers https://lnkd.in/gEyFxGzQ
To view or add a comment, sign in
-
Agile is Killing Software Innovation, Says Moxie Marlinspike: There's a rot at the heart of modern software development that's destroying innovation, and infosec legend Moxie Marlinspike believes he knows exactly what's to blame: Agile development. Marlinspike argued that Agile methodologies, widely adopted over the past two decades, have confined developers to "black box abstraction layers" that limit creativity and understanding of underlying systems. "We spent the past 20 years onboarding people into software by putting them into black box abstraction layers, and then putting them into organizations composed of black box abstraction layers," Marlinspike said. He contended this approach has left many software engineers unable to do more than derivative work, lacking the deep understanding necessary for groundbreaking developments. Thistle Technologies CEO Window Snyder echoed these concerns, noting that many programmers now lack knowledge of low-level languages and machine code interactions. Marlinspike posited that security researchers, who routinely probe beneath surface-level abstractions, are better positioned to drive innovation in software development. Read more of this story at Slashdot.
To view or add a comment, sign in
-
Agile is Killing Software Innovation, Says Moxie Marlinspike: There's a rot at the heart of modern software development that's destroying innovation, and infosec legend Moxie Marlinspike believes he knows exactly what's to blame: Agile development. Marlinspike argued that Agile methodologies, widely adopted over the past two decades, have confined developers to "black box abstraction layers" that limit creativity and understanding of underlying systems. "We spent the past 20 years onboarding people into software by putting them into black box abstraction layers, and then putting them into organizations composed of black box abstraction layers," Marlinspike said. He contended this approach has left many software engineers unable to do more than derivative work, lacking the deep understanding necessary for groundbreaking developments. Thistle Technologies CEO Window Snyder echoed these concerns, noting that many programmers now lack knowledge of low-level languages and machine code interactions. Marlinspike posited that security researchers, who routinely probe beneath surface-level abstractions, are better positioned to drive innovation in software development. Read more of this story at Slashdot.
To view or add a comment, sign in
-
Has Agile turned from a solution into a problem? Moxie Marlinspike's critique on modern software development is a wake-up call. Layers of abstraction and the relentless push for speed are creating a generation of engineers disconnected from the core technology. This isn't just a technical issue; it stifles innovation. When developers can't grasp what's beneath the surface, how can they push boundaries? Agreeing with Moxie, we need to rethink our approach. Agile brought many benefits, but it's time to balance speed with depth of understanding. Let's prioritize mastery over mere execution and reignite true innovation in software development. Check this out: https://lnkd.in/eYKKpi6j
Agile is killing software innovation, says Moxie Marlinspike
theregister.com
To view or add a comment, sign in
-
Tips for improving your software development game Adopt Agile and DevOps Practices: Emphasize iterative development, continuous integration, and deployment to improve responsiveness and collaboration. This helps in maintaining high-quality output and adapting to changes quickly. Enhance Code Quality: Use code reviews, pair programming, and static code analysis tools to ensure high standards. Regularly refactor code to maintain readability and manageability. Prioritize Testing: Implement automated testing, including unit, integration, and regression tests, to catch issues early. Incorporate test-driven development (TDD) to write tests before the actual code, ensuring functionality meets requirements from the start. Focus on Security: Integrate security practices throughout the development lifecycle (DevSecOps). Conduct regular security audits and use tools for vulnerability scanning and code analysis. Invest in Continuous Learning: Encourage ongoing education and training for developers. Stay updated with the latest technologies and methodologies through courses, conferences, and certifications. Improve Collaboration: Foster a culture of open communication within teams. Use collaborative tools like Slack, JIRA, or Trello to keep everyone on the same page and streamline project management. Optimize Performance: Continuously monitor and improve application performance. Use performance testing tools to identify bottlenecks and optimize code for better efficiency. Embrace Automation: Automate repetitive tasks to free up developers' time for more critical work. This includes CI/CD pipelines, infrastructure as code, and automated testing. Manage Technical Debt: Regularly address and prioritize technical debt to prevent it from accumulating and causing long-term issues. This includes code that may be quick to write but hard to maintain. User-Centered Design: Keep the end-user in mind throughout the development process. Conduct usability testing and gather user feedback to ensure the final product meets user needs and expectations. #SoftwareDevelopment #DevOps #Agile #CodeQuality #AutomatedTesting #ContinuousIntegration #DevSecOps #ContinuousLearning #Collaboration #PerformanceOptimization #TechnicalDebt #UserCenteredDesign #CodingBestPractices #SoftwareEngineering #TechInnovation
To view or add a comment, sign in
-
Agile is Killing Software Innovation, Says Moxie Marlinspike: There's a rot at the heart of modern software development that's destroying innovation, and infosec legend Moxie Marlinspike believes he knows exactly what's to blame: Agile development. Marlinspike argued that Agile methodologies, widely adopted over the past two decades, have confined developers to "black box abstraction layers" that limit creativity and understanding of underlying systems. "We spent the past 20 years onboarding people into software by putting them into black box abstraction layers, and then putting them into organizations composed of black box abstraction layers," Marlinspike said. He contended this approach has left many software engineers unable to do more than derivative work, lacking the deep understanding necessary for groundbreaking developments. Thistle Technologies CEO Window Snyder echoed these concerns, noting that many programmers now lack knowledge of low-level languages and machine code interactions. Marlinspike posited that security researchers, who routinely probe beneath surface-level abstractions, are better positioned to drive innovation in software development. Read more of this story at Slashdot.
To view or add a comment, sign in
-
In today's fast-paced tech world, it's crucial to rethink our approach to #software #development. While #Agile methodologies have their benefits, recent insights highlight the importance of a robust requirements engineering process and a culture that fosters psychological safety. Clear and accurate requirements are the foundation of successful projects. Equally important is creating an environment where team members can openly discuss and solve problems, preventing developer #burnout and ensuring high-quality software delivery. Having been on the brink of burnout more than once in my career, I am still searching for the systemic error in the way we work today. It's time to question the blind adoption of Agile practices and focus on what truly matters: thorough preparation and a supportive, problem-solving culture. Here is the link to the study: https://lnkd.in/eYvYaGpX
268% Higher Failure Rates for Agile Software Projects, Study Finds
engprax.com
To view or add a comment, sign in
-
Successful software development in a dynamic environment depends on open communication and collaboration among team members, clients, and stakeholders. Read more 👉 https://lttr.ai/ARQhG #SoftwareDevelopment #Agile #SoftwareEngineering #ProjectManagement #ArticleDives #Process #ContinuousLearning
What is Adaptive Software Development \(ASD\) and how does it compare to Scrum and Kanban?
denoise.digital
To view or add a comment, sign in
-
Agile software development has not cured the ills affecting the industry. The reasons are many, varied and complex, but the the important bit remains depressingly simple: software development is HARD. AI, despite its promise, is unlikely to change the status quo any time soon. My recent readings have brought me to "Impact Engineering" as a possible method for improving software development success rates. The book is not long and it's definitely not a literary masterpiece, but it does offer some interesting ideas. Give it and the referenced article a read, they're worth your time.
'Impact Engineering' development approach outperforms Agile
https://www.developer-tech.com
To view or add a comment, sign in
-
"we spent the past 20 years onboarding people into software by putting them into black box abstraction layers, and then putting them into organizations composed of black box abstraction layers" The problem isn't because of Agile. Greed is at the top -- everyone wants to get rich. This has created the production line mentality. Developers are rewarded for clever tricks that -- at best -- raise the level of abstraction or simply reduce the amount of typing. They're moved up the ladder based on how well they get along, not their problem-solving skills or innovative contributions. Hammer down every nail, until all of the originators have left, and the only value extracted is in maintenance and emergency fixes. Not Agile. To move forward, Agile should be looked at as an empowerment technique, not management control.
Agile is killing software innovation, says Moxie Marlinspike
theregister.com
To view or add a comment, sign in