[HN Gopher] Big Ball of Mud (1999)
       ___________________________________________________________________
        
       Big Ball of Mud (1999)
        
       Author : softwaredoug
       Score  : 104 points
       Date   : 2023-04-07 13:22 UTC (9 hours ago)
        
 (HTM) web link (www.laputan.org)
 (TXT) w3m dump (www.laputan.org)
        
       | ChrisMarshallNY wrote:
       | This is a great article, but it has some considerable history, on
       | HN: https://news.ycombinator.com/from?site=laputan.org
        
         | dang wrote:
         | Reposts are fine after a year or so!
         | https://news.ycombinator.com/newsfaq.html
         | 
         | These seem to be the threads with comments:
         | 
         |  _Big Ball of Mud (1999)_ -
         | https://news.ycombinator.com/item?id=28915865 - Oct 2021 (23
         | comments)
         | 
         |  _Big Ball of Mud (1999)_ -
         | https://news.ycombinator.com/item?id=22365496 - Feb 2020 (48
         | comments)
         | 
         |  _Big Ball of Mud_ -
         | https://news.ycombinator.com/item?id=21650011 - Nov 2019 (1
         | comment)
         | 
         |  _Big Ball of Mud (1999)_ -
         | https://news.ycombinator.com/item?id=21484045 - Nov 2019 (1
         | comment)
         | 
         |  _Big Ball of Mud (1999)_ -
         | https://news.ycombinator.com/item?id=13716667 - Feb 2017 (6
         | comments)
         | 
         |  _Big Ball of Mud (1999)_ -
         | https://news.ycombinator.com/item?id=9989424 - Aug 2015 (9
         | comments)
         | 
         |  _Big Ball of Mud_ -
         | https://news.ycombinator.com/item?id=6745991 - Nov 2013 (21
         | comments)
         | 
         |  _Big Ball of Mud_ -
         | https://news.ycombinator.com/item?id=911445 - Oct 2009 (2
         | comments)
         | 
         |  _The "Big Ball of Mud" Pattern_ -
         | https://news.ycombinator.com/item?id=10259 - April 2007 (2
         | comments)
        
           | delano wrote:
           | Thanks for taking the time to do this.
        
       | vrglvrglvrgl wrote:
       | [dead]
        
       | Caitlynmeeks wrote:
       | aka main.cpp
        
       | dunk010 wrote:
       | One of the best articles about software engineering ever written.
       | They should pin it to the top of the HN front page :P
        
         | foobiekr wrote:
         | Agreed. Reading this in 1999 actually explained everything I'd
         | seen and everything I would see. I've read a lot of papers but
         | this is the one I see in real life every week for 22 years.
        
       | dmoy wrote:
       | Every time this is posted I forget and think it's going to be
       | about the art form that is, roughly, a big ball of mud that's
       | polished ridiculously smooth.
       | 
       | https://en.wikipedia.org/wiki/Dorodango
        
       | fossuser wrote:
       | I liked this urbit related blog post that starts with the 'big
       | ball of mud' and thinks about how to avoid this if you were to
       | boil the ocean and redesign everything:
       | https://moronlab.blogspot.com/2010/01/urbit-functional-progr...
        
       | anotheraccount9 wrote:
       | EWD 215: A Case against the GO TO Statement (Go-to statement
       | considered harmful):
       | https://www.cs.utexas.edu/users/EWD/ewd02xx/EWD215.PDF
        
       | api wrote:
       | Seems like a lot of "cloud native" software is this, and nobody
       | suffers but the people who have to work on it or pay the massive
       | cloud bill.
        
         | ChrisMarshallNY wrote:
         | This describes the app I've been developing for the last couple
         | of years.
         | 
         | I've been working with a nontechnical team, who didn't really
         | know what they wanted, and it "accreted," over a period of
         | about 20 months.
         | 
         | After we had basically decided that we had finalized the
         | features (they _finally_ knew what they wanted), I tossed out
         | the entire old codebase, refactored the business logic into a
         | framework-independent package module, and have been rewriting
         | the UI, with a designer, on top of that.
         | 
         | Every now and then, I can use some snippets from the old
         | codebase, but the majority of the code is new.
         | 
         | It adds about three months to the schedule, but it is totally
         | worth it.
        
           | dopidopHN wrote:
           | Is the old system still running or do you only keep the
           | codebase around for reference?
        
             | ChrisMarshallNY wrote:
             | It's not a running system. It's an iOS app.
             | 
             | The backend (servers) are running (they haven't changed
             | much), but I keep the old codebase around for snippets.
        
         | bitwize wrote:
         | Well, "the only thing that matters in software is the
         | experience of the user", so don't expect much change as long as
         | the UI looks fresh and the users are happy.
        
         | foobiekr wrote:
         | The authors could not have even imagined the crazy new
         | innovations in mud balls that microservices would create. And
         | much harder to address.
        
           | marcosdumay wrote:
           | Microservices are the act of getting the your ball empty of
           | mud by taking small pieces, squeezing them as hard as you
           | can, and throwing the results all back at the large ball.
        
         | rco8786 wrote:
         | All software eventually becomes this, "cloud native" or
         | otherwise. It is the "everything evolves into crabs" of
         | software.
        
       | windowshopping wrote:
       | I find the all caps links scattered throughout this article
       | extremely annoying for some reason. Just distracting. Feels very
       | 90s. I'm glad we're 24 years past this style of content.
        
       ___________________________________________________________________
       (page generated 2023-04-07 23:00 UTC)