{"id":44647,"date":"2024-08-27T21:02:05","date_gmt":"2024-08-28T01:02:05","guid":{"rendered":"https:\/\/mjtsai.com\/blog\/?p=44647"},"modified":"2026-01-07T15:11:13","modified_gmt":"2026-01-07T20:11:13","slug":"marlinspike-on-agile-and-security","status":"publish","type":"post","link":"https:\/\/mjtsai.com\/blog\/2024\/08\/27\/marlinspike-on-agile-and-security\/","title":{"rendered":"Marlinspike on Agile and Security"},"content":{"rendered":"<p><a href=\"https:\/\/www.theregister.com\/2024\/08\/09\/marlinspike\/\">Brandon Vigliarolo<\/a> (<a href=\"https:\/\/news.ycombinator.com\/item?id=41208627\">Hacker News<\/a>):<\/p>\n<blockquote cite=\"https:\/\/www.theregister.com\/2024\/08\/09\/marlinspike\/\"><p>Marlinspike opened the second day of Black Hat with a talk that was ostensibly supposed to be a fireside chat with Black Hat founder Jeff Moss, but the Signal founder stole the show with an opening chat laying out a case for reclaiming the &ldquo;magic&rdquo; of software development that&rsquo;s been lost after 20 years. That loss, he argued, was due to stuffing developers into &ldquo;black box abstraction layers&rdquo; that strip them of the freedom needed to be innovative.<\/p><p>[&#8230;]<\/p><p>Instead of allowing developers to operate from the bottom up in a way that lets them combine engineering expertise with the vision to see new capabilities in existing technology, agile teams end up siloed, working separately from each other, and without much visibility into what other teams are doing, he argued.<\/p><p>[&#8230;]<\/p><p>While software engineering has spent the past few decades struggling to become quicker, more flexible and, by extension, more abstracted, security researchers have been doing the opposite, said Marlinspike.<\/p><\/blockquote>\n\n<p><a href=\"https:\/\/irreal.org\/blog\/?p=12384\">Jon Snader<\/a>:<\/p>\n<blockquote cite=\"https:\/\/irreal.org\/blog\/?p=12384\">\n<p>He blames its current deplorable conditions on Agile but what he really means is layers and layers of abstraction that prevent the developer from understanding what is really happening with their software.<\/p>\n<p>[&#8230;]<\/p>\n<p>The difficulty is that our corporate industry leaders love this stuff because it enables them to produce loads of software faster and easier. The problem is that no one, including the developers, really understand what it&rsquo;s doing. The result is exploit after exploit. And, as Marlinspike says, a lack of joy on the part of those writing the software.<\/p>\n<\/blockquote>\n\n<p><a href=\"https:\/\/news.ycombinator.com\/item?id=41209161\">smokel<\/a>:<\/p>\n<blockquote cite=\"https:\/\/news.ycombinator.com\/item?id=41209161\">\n<p>Here's a theory on why (some form of) Agile is problematic: Subdividing work into smaller parts is typically beneficial. However, in computer programming, this approach often fails because even the smaller tasks require some creativity, and unexpected challenges are likely to arise.<\/p>\n<p>The person who did the subdividing gains a lot of insight while breaking down the larger problem. However, when transferring a portion of the work to a developer, much of this knowledge is inherently lost. The developer must then devise a creative solution, and lacking the necessary information, may either come up with a suboptimal solution or need further communication with the original architect.<\/p>\n<p>There is no clear-cut solution. Some might argue for more experienced developers who have all the necessary knowledge readily available in their heads. Others might advocate for better design diagrams and documentation to capture all the relevant information. Ultimately, it requires careful consideration, or luck, to strike the right balance. But the dogmas of Agile certainly aren't helping much.<\/p>\n<\/blockquote>\n\n<p>See also: <a href=\"https:\/\/news.ycombinator.com\/item?id=41209536\">Peter Naur<\/a> and <a href=\"https:\/\/news.ycombinator.com\/item?id=41287294\">ncharity<\/a>.<\/p>\n\n<p>Previously:<\/p>\n<ul>\n<li><a href=\"https:\/\/mjtsai.com\/blog\/2024\/02\/16\/on-the-insecurity-of-software-bloat\/\">On the Insecurity of Software Bloat<\/a><\/li>\n<\/ul>","protected":false},"excerpt":{"rendered":"<p>Brandon Vigliarolo (Hacker News): Marlinspike opened the second day of Black Hat with a talk that was ostensibly supposed to be a fireside chat with Black Hat founder Jeff Moss, but the Signal founder stole the show with an opening chat laying out a case for reclaiming the &ldquo;magic&rdquo; of software development that&rsquo;s been lost [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"apple_news_api_created_at":"2024-08-28T01:02:08Z","apple_news_api_id":"a9729224-7d34-4450-a1d6-acc709cac739","apple_news_api_modified_at":"2026-01-07T20:11:16Z","apple_news_api_revision":"AAAAAAAAAAAAAAAAAAAAAA==","apple_news_api_share_url":"https:\/\/apple.news\/AqXKSJH00RFCh1qzHCcrHOQ","apple_news_coverimage":0,"apple_news_coverimage_caption":"","apple_news_is_hidden":false,"apple_news_is_paid":false,"apple_news_is_preview":false,"apple_news_is_sponsored":false,"apple_news_maturity_rating":"","apple_news_metadata":"\"\"","apple_news_pullquote":"","apple_news_pullquote_position":"","apple_news_slug":"","apple_news_sections":"\"\"","apple_news_suppress_video_url":false,"apple_news_use_image_component":false,"footnotes":""},"categories":[4],"tags":[101,27,71,48],"class_list":["post-44647","post","type-post","status-publish","format-standard","hentry","category-programming-category","tag-business","tag-craft","tag-programming","tag-security"],"apple_news_notices":[],"_links":{"self":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/44647","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/comments?post=44647"}],"version-history":[{"count":2,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/44647\/revisions"}],"predecessor-version":[{"id":50642,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/posts\/44647\/revisions\/50642"}],"wp:attachment":[{"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/media?parent=44647"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/categories?post=44647"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mjtsai.com\/blog\/wp-json\/wp\/v2\/tags?post=44647"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}